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.

Читайте также
В TypeScript 5.3 добавили ​​поддержку атрибутов импорта
В TypeScript 5.3 добавили ​​поддержку атрибутов импорта
В TypeScript 5.3 добавили ​​поддержку атрибутов импорта

TS теперь включает одну опцию для определенного редактора, прежде он добавлял модификатор типа, полагаясь на настройки разработчика

Стандартизация сигналов в JavaScript
Стандартизация сигналов в JavaScript
Стандартизация сигналов в JavaScript

Подобно Промисам которые прошли стандартизацию Promises TC39 в ES2015 зарождается новый стандарт для управление реактивностью с помощью Signals.

Dev новости: Инструменты и интеграции ИИ, Pull Requests Gone Wild
Dev новости: Инструменты и интеграции ИИ, Pull Requests Gone Wild
Dev новости: Инструменты и интеграции ИИ, Pull Requests Gone Wild

На этой неделе OpenAI привлекла внимание новостями о добавлении дополнительной памяти к ChatGPT и представлении Sora, новой модели текста в видео, но разработчиков могут заинтересовать и другие объявления компании.

Gleam 1.0: Статически типизированный функциональный язык на Erlang VM достиг v1.0
Gleam 1.0: Статически типизированный функциональный язык на Erlang VM достиг v1.0
Gleam 1.0: Статически типизированный функциональный язык на Erlang VM достиг v1.0

Gleam, функциональный язык с акторной моделью, работающий на виртуальной машине Erlang (BEAM), достиг версии 1.0. Это означает, что теперь он готов к использованию в производственных системах с гарантией обратной совместимости на основе семантического версионирования. Gleam стремится быть языком с небольшой областью применения, легким для чтения и понимания, а также выразительным. Преимущества Gleam: Конкуренция на BEAM […]