AdonisJS v6: Полный переход на современные стандарты JavaScript

Переход на современные стандарты Ключевое изменение в AdonisJS v6 – полная поддержка современных стандартов JavaScript: ECMAScript Modules (ESM) и TypeScript. Это обеспечивает совместимость с последними версиями пакетов и повышает безопасность благодаря доступу к актуальным исправлениям уязвимостей. Приложения AdonisJS v6 теперь по умолчанию используют TypeScript и ESM, однако разработчики по-прежнему могут устанавливать и применять пакеты, написанные […]

Переход на современные стандарты

Ключевое изменение в AdonisJS v6 – полная поддержка современных стандартов JavaScript: ECMAScript Modules (ESM) и TypeScript. Это обеспечивает совместимость с последними версиями пакетов и повышает безопасность благодаря доступу к актуальным исправлениям уязвимостей. Приложения AdonisJS v6 теперь по умолчанию используют TypeScript и ESM, однако разработчики по-прежнему могут устанавливать и применять пакеты, написанные в CommonJS.

Упрощение работы с TypeScript

В AdonisJS v6 больше не требуются хуки компилятора TypeScript, знакомые пользователям v5. Теперь фреймворк позволяет использовать обычные JavaScript-импорты без необходимости задействовать официальный API компилятора. Это упрощает код и даёт разработчикам свободу выбора других инструментов JIT-компиляции, таких как ESBuild или SWC.

Повышенная безопасность типов

AdonisJS v6 улучшает проверку типов за счёт изменений в маршрутах, контроллерах, ссылках на middleware, файлах AdonisRC и обработчиках событий. Вместо магических строк используются прямые импорты в маршрутах и контроллерах, что повышает безопасность типов и читаемость кода. Ссылки на middleware и файлы AdonisRC теперь управляются через TypeScript, улучшая понимание кода и удобство разработки.

Класс-базированные события

Ещё одно нововведение – поддержка класс-базированных событий. Разработчики могут определять события как классы, инкапсулируя идентификатор события и данные в единой структуре. Такой подход улучшает проверку типов и обеспечивает более чистое управление событиями в приложении.

Vite – новый официальный бандлер

AdonisJS v6 отказывается от Webpack Encore в пользу Vite как основного инструмента для сборки фронтенд-ресурсов. Новая система генерации проектов и API codemods позволяют более эффективно настраивать пакеты и генерировать код.  Также представлена VineJS – новая официальная библиотека валидации. VineJS обещает более высокую скорость, расширенный набор функций и удобный API по сравнению с предыдущим модулем валидации.

Улучшенная документация

В релизе улучшена документация AdonisJS, которая теперь охватывает ранее не описанные темы, такие как контейнер зависимостей (IoC) и поставщики сервисов. Фреймворк стремится предоставить разработчикам исчерпывающие руководства и справочники для облегчения обучения.

Планы на будущее

Команда AdonisJS планирует сосредоточиться на стабилизации фреймворка, исправлении ошибок и улучшении руководства по миграции. Ожидается, что в ближайшие недели несколько пакетов, включая Drive, Limiter, Lucid Slugify, Attachment Lite, привязку модели к маршруту и проверки работоспособности (Health checks), будут перенесены в AdonisJS v6.

Читайте также
Copilot Enterprise представляет поиск и лучшие настраиваемые практики
Copilot Enterprise представляет поиск и лучшие настраиваемые практики
Copilot Enterprise представляет поиск и лучшие настраиваемые практики

По словам вице-президента GitHub, Copilot Enterprise открывает новые возможности в кодовом помощнике и знаменует собой эру трансформации ИИ.

Какой эффект от музыки при написании кода
Какой эффект от музыки при написании кода
Какой эффект от музыки при написании кода

Часто это делаю, хотя это плохая привычка и может мешать. Почему?

Текстовые приложения на основе Python переходят в веб
Текстовые приложения на основе Python переходят в веб
Текстовые приложения на основе Python переходят в веб

Облачный сервис Textual Cloud Service позволит запускать в веб-браузерах консоли на языке Python, которые созданы с использованием фреймворка Textual.

Node.js вводит экспериментальную поддержку TypeScript
Node.js вводит экспериментальную поддержку TypeScript
Node.js вводит экспериментальную поддержку TypeScript

Недавно в Node.js была добавлена экспериментальная возможность выполнения файлов на TypeScript. Эта новая опция активируется с помощью флага —experimental-strip-types, что означает, что Node.js будет транслировать исходный код TypeScript в JavaScript перед выполнением.