📦 Express 5.1.0 is out!
✅ v5 is now the default on #npm
🛠️ New #codemod for easy migration from v4
📅 LTS timeline announced (including v4 EOL)

Big step for #express 👏👏👏

👉 https://expressjs.com/2025/03/31/v5-1-latest-release.html

Express@5.1.0: Now the Default on npm with LTS Timeline

Express 5.1.0 is now the default on npm, and we're introducing an official LTS schedule for the v4 and v5 release lines.

Say hello to ember-vite-codemod! Bringing Vite to your Ember app is now just one command away 🐹 As part of the Ember Initiative, we built a codemod that upgrades classic Ember apps to Vite smoothly. Step-by-step, keeping Ember modern.

Read more on @BlueCut piece ➡️ https://mainmatter.com/blog/2025/03/10/ember-vite-codemod/

#EmberJS #Vite #Codemod #WebDev

Ember Vite Codemod - Mainmatter

Announcing the first release of ember-vite-codemod

Mainmatter
BlueCutOfficial/articles/ember-initiative-journey/week-3.md at main · BlueCutOfficial/BlueCutOfficial

Contribute to BlueCutOfficial/BlueCutOfficial development by creating an account on GitHub.

GitHub
BlueCutOfficial/articles/ember-initiative-journey/week-1.md at main · BlueCutOfficial/BlueCutOfficial

Contribute to BlueCutOfficial/BlueCutOfficial development by creating an account on GitHub.

GitHub
Has anyone had any experience using Syntax Tree to create codemods? I have used Synvert in the past, but wondering if Syntax Tree is also capable of playing that role. #formatting #codemod #refactoring

Мощь AST в действии, или как переписать код 10 летней давности на ES6-модули и ничего не сломать

Всем привет! Меня зовут Кирилл и я работаю фронтенд-разработчиком. Я расскажу о том, как мы перевели несколько тысяч файлов, написанных на JavaScript, с легаси кода, который использовал goog.module , на новые ES6-модули с помощью построения и преобразования абстрактного синтаксического дерева. Эта статья будет полезна тем, у кого тоже возникла потребность в рефакторинге большого количества кода.

https://habr.com/ru/companies/ispring/articles/822975/

#javascript #jscodeshift #ast #рефакторинг #codemod

Мощь AST в действии, или как переписать код 10 летней давности на ES6-модули и ничего не сломать

Всем привет! Меня зовут Кирилл и я работаю фронтенд-разработчиком. Я расскажу о том, как мы перевели несколько тысяч файлов, написанных на JavaScript, с легаси кода, который использовал goog.module ,...

Хабр

Принципы непрерывного рефакторинга

Работа со старым кодом для многих команд является частью повседневных обязанностей. За свою карьеру я видел и применял разные способы борьбы с тяжестью легаси. Они обычно сводились к одному из трёх основных сценариев: " Работает - не трогай! ": вообще забить на чистки и ничего не менять. В некоторых случаях валидный подход. Но в коде, который приходится менять хотя бы даже эпизодически (фиксы багов, мелкие доделки, смена окружения и т.п.), со временем неизбежно приводит к катастрофе. Вам надо что-то поменять в коде, и это оказывается невозможно сделать легко. Даже за тривиальные изменения приходится платить большой кровью. " Я прочитал Роберта Мартина ": включаем чистки в обычный код. Надеваем галстук бойскаута и чистим код прямо по ходу работы над текущими задачами. Отправляем его коллегам на ревью и ждём несколько дней, покуда они не разберутся, где заканчиваются рефакторинги и начинаются непосредственно изменения по задаче. Или же уходим по кривой дорожке рефакторингов в тёмный лес и продалбываем к чертям все изначальные сроки. Когда начинаешь приводить код к идеалу, не всегда бывает так легко остановиться! " Нужен порядок и учёт ": делаем отдельные коммиты с чистками, но нерегулярно - только когда в дело берётся соответствующий тикет. Правда, тикеты на рефакторинг почему-то регулярно получают самый низкий приоритет во время планирования и маринуются в беклоге месяцами. Но что уж тут поделать? Это всё ловушки! Все эти сценарии страдают одной общей проблемой: темп чисток неудовлетворительно низок. Код зарастает грязью и происходит неизбежная деградация. Задачи делаются всё медленнее, процент дефектов всё выше, отвращение от работы с кодом растёт, новички адаптируются всё медленнее и медленнее. Все несчастны и не знают, что делать. За прошедший год я нащупал и отточил ещё один подход, который лишён указанных недостатков. И теперь готов поделиться им с вами.

https://habr.com/ru/articles/774722/

#refactoring #clean_code #codemod #siebenapp #mikado_method #legacy_code

Принципы непрерывного рефакторинга

Работа со старым кодом для многих команд является частью повседневных обязанностей. За свою карьеру я видел и применял разные способы борьбы с тяжестью легаси. Они обычно сводились к одному из трёх...

Хабр

Working on the ember-addon-migrator (auto v1 to v2 conversion), I just added the ability for the rollup config to be transformed so that addons that provide things other than components can succeed their build phase.

Just a quick codemod! 🎉

#EmberJS #JavaScript #WebDev #Codemod #Node #NodeJS #Programming

https://github.com/NullVoxPopuli/ember-addon-migrator/pull/42/files#diff-e40f1c88a2b9c35684cb5fa42e5f5f3573045c8947876cc646ccca04dd854226R117

Add ember-autofocus-modifier-v5.0.0 to test suite by NullVoxPopuli · Pull Request #42 · NullVoxPopuli/ember-addon-migrator

another JS addon. TS may have to be fixed elsewhere 😢 These fixture tests: ensure build succeeds ensure ember test succeeds afterwards

GitHub