jQuery 4.0.0 выпущен — ES-модули, Trusted Types и удаление устаревших API

ReactNode.jsDevOps

Что случилось

  • Проект jQuery выпустил jQuery 4.0.0 17 января 2026 года — первый крупный релиз за почти десятилетие. Он модернизирует библиотеку, переведя исходники на ES-модули, добавив совместимость с Trusted Types / CSP, удалив давно устаревшие API и обходы в старых браузерах, и выпустив более компактную версию "slim", которая исключает Deferred-объекты и колбэки. (blog.jquery.com)

Почему это важно для команд полного стека (практическое влияние)

  • Безопасность: jQuery 4 добавляет совместимость с Trusted Types и снижает трение CSP для приложений, требующих require-trusted-types-for. Если ваш сайт использует строгий CSP, jQuery 4 уменьшит необходимость разрешать рискованные инлайновые скрипты — но вы всё равно должны проверить любые пути кода, которые генерируют HTML-строки. (blog.jquery.com)
  • Инструменты и сборщики: исходники библиотеки теперь публикуются как ES-модули. Это означает, что вы можете импортировать jQuery напрямую с современными сборщиками и браузерами (import jquery from "jquery"), улучшив tree-shaking и интеграцию с конвейерами сборки, ориентированными на ESM (Vite, Rspack, Rollup, Turbopack). Ожидайте немного другой формы бандлов и более простой переход для инструментов, основанных на модулях. (blog.jquery.com)
  • Совместимость и размер: jQuery 4 прекращает поддержку очень старых браузеров (IE ≤10, Edge Legacy, старые сборки iOS/Android). Упрощённая версия удаляет Deferred-объекты в пользу нативных Promises, уменьшая размер кода и поощряя современные асинхронные паттерны — важно для бюджета производительности и прогрессивного улучшения. (blog.jquery.com)
  • Разрушающие изменения: удалено несколько устаревших API (пример: jQuery.isArray, jQuery.trim, jQuery.parseJSON и набор внутренних методов прототипа массива). Эти удаления сознательны: нативные API браузеров теперь охватывают большинство случаев. Проекты, полагающиеся на эти старые помощники, должны быть обновлены или запущен вспомогательный инструмент jQuery Migrate. (blog.jquery.com)

Немедленный, критически важный чек-лист (что сделать на этой неделе)

  1. Зафиксируйте зависимость и протестируйте
    • В ветке фич зафиксируйте зависимость на текущую мажорную версию ([email protected]) и запустите полный набор тестов (E2E + юнит). Используйте покрытие браузеров, соответствующее матрице ваших клиентов. (blog.jquery.com)
  2. Запустите jQuery Migrate в режиме разработки
    • Используйте официальный помощник jQuery Migrate, чтобы выявить удалённые API и регрессии поведения до выпуска. Исправляйте или помечайте каждое место вызова; не оставляйте миграцию включённой в продакшене без уведомления. (blog.jquery.com)
  3. Аудит CSP и Trusted Types
    • Если ваше приложение соблюдает строгий CSP (no-inline) или Trusted Types, убедитесь, что ваши динамические пути к HTML используют TrustedHTML или иным образом безопасные конструкторы. jQuery 4 снижает трение, но не устраняет потребность в безопасной обработке HTML. (blog.jquery.com)
  4. Пересмотрите асинхронные паттерны
    • Замените зависимость от Deferred-объектов/колбэков jQuery на нативные Promises/async-await, где возможно — особенно в путях кода, используемых страницами с серверной отрисовкой или потоками гидратации. Упрощённая сборка удаляет Deferred-объекты в пользу нативных API. (blog.jquery.com)
  5. Обновите конфигурации сборщика и CI
    • Убедитесь, что ваш сборщик разрешает точку входа ESM (некоторые проекты всё ещё ссылаются на устаревшие сборки). Проверьте tree-shaking и поведение HMR в режиме разработки. Добавьте интеграционный тест, который импортирует jQuery как ESM-модуль, чтобы рано выявлять регресии упаковки. (blog.jquery.com)
  6. План прогрессивной миграции для устаревших приложений
    • Для крупных устаревших кодовых баз применяйте поэтапный подход:
      • Этап 1: запустите помощник миграции + автоматические тесты
      • Этап 2: замените удалённые помощники на нативные эквиваленты
      • Этап 3: рассмотрите удаление jQuery полностью из нового UI-кода в пользу решений-фреймворков-родных (React/Vue/Svelte), где это уместно.

Почему это по‑прежнему актуально для команд React/Node.js

  • Даже приложения с фокусом на React могут содержать устаревшие виджеты, сторонние плагины или страницы, отрисованные на сервере, которые включают jQuery. Обновление устраняет устаревшие обходы браузеров, повышает безопасность CSP и упрощает сборку. Для сборочных конвейеров на базе Node.js источники ES-модулей снимают часть трудностей в инструментах SSR и делают графы зависимостей более предсказуемыми во время сборки. (blog.jquery.com)

Итог jQuery 4.0.0 — это выпуск с дальновидной перспективой: меньшего размера, модуль‑нативный и более безопасный. Он не требует больших переработок, но требует аудита и краткого плана миграции для проектов с длительным использованием jQuery. Рассматривайте это как окно обслуживания с низким риском и высокой ценностью — обновляйте в ветке, запустите инструмент migrate и внедряйте изменения через CI с целенаправленными тестами.

Источник

  • Official jQuery announcement: jQuery 4.0.0 (January 17, 2026). (blog.jquery.com)

Источник

Читать дальше