GitHub объявил о запуске нового сервиса Package Registry, в рамках которого разработчикам предоставлена возможность публикации и распространения пакетов с приложениями и библиотеками. Поддерживается создание как приватных репозиториев пакетов, доступных только для определённых групп разработчиков, так и публичных общедоступных репозиториев для поставки готовых сборок своих программ и библиотек.

Представленный сервис позволяет вести разработку кода и подготовку пакетов в одном месте, а также организовать централизованный процесс доставки зависимостей напрямую с GitHub, минуя посредников и специфичные для разных платформ репозитории пакетов. Для установки и публикации пакетов при помощи GitHub Package Registry могут использоваться уже существующие привычные пакетные менеджеры и команды, такие как npm, docker, mvn, nuget и gem — в зависимости от предпочтений подключается один из предоставлямых GitHub внешних репозиториев пакетов — npm.pkg.github.com, docker.pkg.github.com, maven.pkg.github.com, nuget.pkg.github.com или rubygems.pkg.github.com.

В настоящее время сервис находится на стадии бета-тестировании, в рамках которого по заявке доступ предоставляется бесплатно для всех видов репозиториев. После завершения тестирования бесплатный доступ будет ограничен только публичными репозиториями и репозиториями с открытым ПО. Для разработчиков открытых проектов, предложенный сервис может оказаться полезным для организации тестирования предварительных версий перед формированием окончательных релизов, попадающих в основные репозитории. Для ускорения загрузки пакетов применяется глобальная кэширующая сеть доставки контента, прозрачная для пользователей и не требующая отдельного выбора зеркал.

Для публикации пакетов используется та же учётная запись, что и для доступа к коду на GitHub. По сути в дополнение к секциям «теги» и «релизы» предложена новая секция «пакеты», работа с которой органично вписывается в текущий процесс работы с GitHub. Служба поиска расширена новой секцией для поиска пакетов. Имеющиеся настройки прав доступа к репозиториям с кодом автоматически наследуются для пакетов, что позволяет в одном месте управлять доступом как к коду, так и к сборкам. Предоставляется система web-хуков для подключения своих обработчиков, вызываемых перед или после публикации и API для обеспечения интеграции внешних инструментов с GitHub Package Registry. Также доступны отчёт со статистикой загрузки и историей версий.