Сегодня я рад представить официальный релиз Nest 6 — прогрессивного Node.js фреймворка для создания эффективных корпоративных серверных приложений. Для нашего сообщества последний год не прошёл бесследно: популярность выросла почти на 300%, что в 4 раза больше, чем у какой-либо из существующих HTTP-библиотек. О Nest рассказывали на большом количестве конференций по всему миру, было создано множество статей и видеоматериалов. 2018 год был невероятным, а 2019 будет ещё лучше! Новый релиз готовит множество крутых функций! К сожалению, мы не успеем осветить их все, но обязательно остановимся на самых горячих из них! В предыдущих версиях Nest каждый провайдер использовался совместно несколькими запросами. Использование синглтонов снижает потребление памяти и повышает производительность приложения. Тем не менее в некоторых случаях может понадобиться дополнительный контроль жизненного цикла каждого из провайдеров. Например, при реализации отдельного кэша для каждого запроса в GraphQL-приложении при создании многопользовательских систем. Для решения подобных задач IoC-контейнер теперь имеет ещё один уровень детализации, позволяющий создавать новые injection scopes —Transient Scope и Request Scope. Ранее работа каждого канала коммуникации микросервисов была выстроена на основе парадигмы запроса/ответа. Подобный механизм взаимодействия прекрасно подходил для обмена сообщениями между многочисленными внешними сервисами. Увидев подтверждение, вы могли быть уверены, что сервис действительно получил сообщение. Однако для некоторых систем необязательно создавать двунаправленные каналы, поскольку это приводит к возникновению излишних накладных расходов, когда нужно всего лишь опубликовать событие (без запроса какого-либо ответа). Именно поэтому мы ввели обмен сообщений на основе событий. Благодаря этой парадигме, достаточно просто уведомить различные сервисы сообщением, если, например, где-то в системе возникла определенная ситуация. А ещё оказалось, что это решение в будущем предоставит возможность интегрировать более сложные платформы обмена сообщениями. Следите за новостями! Лежащий в основе Nest пакет Angular DevKit был обновлён, а значит, интерфейс командной строки теперь показывает подсказки. Более того, мы добавили поддержку nest g lib, что поможет упростить разработку при использовании единого репозитория. Официальная документация Nest была переработана, и теперь она полностью написана на Markdown. На наш взгляд, так будет намного проще работать с документацией, и со временем мы сможем сделать её ещё лучше. Приятная новость: Angular Console (UI для Angular CLI) теперь поддерживает Nest! Nest становится главным решением для создания структурированных масштабируемых Node-приложений в репозитории Angular. Кроме того, недавно мы запустили официальный канал Discord. Подписывайтесь на канал и вливайтесь в обсуждение Nest и других интересных тем! Следуйте инструкциям, чтобы перенести существующие проекты. Следует избавиться от любых предупреждений о нежелательности применения какой-либо части программы, которые могут появиться в консоли. Nest — проект под лицензией MIT с открытым исходным кодом. Его текущая разработка стала возможной благодаря поддержке сообщества, нашего главного спонсора — Valor Software и других компаний. Недавно к этому списку присоединились ещё два спонсора — Blueanchor и NovoLogic. Спасибо вам! Нам пришлось пройти долгий путь, работая допоздна и в выходные, не видя сна сутками, чтобы наш фреймворк появился на свет. Я верю, что добро спасёт мир! ️  Если вы хотели бы внести свой вклад в наш проект, перейдите по ссылке. В экосистеме всё ещё есть некоторые моменты, которые хотелось бы улучшить. CTO TestMace