Компания GitHub Inc, принадлежащая Microsoft и функционирующая в качестве независимого бизнес-подразделения, объявила об успешном завершении сделки по покупке бизнеса компании NPM Inc, контролирующей разработку пакетного менеджера NPM и занимающейся поддержанием репозитория NPM. Репозиторий NPM обслуживает более 1.3 млн пакетов, которыми пользуются около 12 млн разработчиков. В месяц фиксируется около 75 миллиардов загрузок. Сумма сделки не называется.
Ahmad Nassri, технический директор NPM Inc, сообщил о решении уйти из команды NPM, отдохнуть, проанализировать свой опыт и воспользоваться новыми возможностями (в профиле Ахмеда появились данные, что он занял должность техдиректора в компании Fractional). Айзек Шлютер (Isaac Z. Schlueter), создатель NPM, продолжит работать над проектом.
GitHub пообещал, что репозиторий NPM всегда останется бесплатным и общедоступным для всех разработчиков. GitHub назвал три ключевые области дальнейшего развития NPM: взаимодействие с сообществом (учёт мнения разработчиков на языке JavaScript при развитии сревиса), расширение базовых возможностей и инвестирование в развитие инфраструктуры и платформы. Инфраструктура будет развиваться в направлении повышения надёжности, масштабируемости и производительности репозитория.
Для повышения безопасности процессов публикации и доставки пакетов планируется произвести интеграцию NPM в инфраструктуру GitHub. Интеграция также позволит использовать интерфейс GitHub для подготовки и размещения NPM-пакетов — изменения в пакетах можно будет отслеживать в GitHub от поступления pull-запроса до публикации новой версии npm-пакета. Предоставляемые в GitHub средства выявления уязвимостей и информирования об уязвимостях в репозиториях будут применимы и для NPM-пакетов. Для финансирования работы сопровождающих и авторов NPM-пакетов будет доступен сервис GitHub Sponsors.
Развитие функциональности NPM сосредоточится на повышении удобства повседневной работы с пакетным менеджером разработчиков и сопровождающих. Из ожидаемых в npm 7 значительных новшеств можно отметить рабочие области (Workspaces — позволяют агрегировать в один пакет зависимости из нескольких пакетов для их установки за один шаг), улучшение процесса публикации пакетов и расширение поддержки мультифакторной аутентификации.
Напомним, что в прошлом году компания NPM Inc пережила смену руководства, череду увольнений сотрудников и поиск инвесторов. Из-за сложившейся неопределённости в отношении дальнейшем судьбы NPM и неверия в то, что компания будет отстаивать интересы сообщества, а не инвесторов, группа сотрудников во главе с бывшим техдиректором NPM основала репозиторий пакетов Entropic. Новый проект призван был устранить зависимость экосистемы JavaScript/Node.js от одной компании, полностью контролирующей разработку пакетного менеджера и поддержание репозитория. По мнению основателей Entropic, у сообщества нет рычагов для привлечения NPM Inc к ответственности за совершаемые действия, а ориентация на получение прибыли мешает реализации первичных с точки зрения сообщества, но не приносящих денег и требующих дополнительных ресурсов, возможностей, таких как поддержка верификации по цифровой подписи.