Опубликован выпуск платформы совместной разработки Forgejo 8.0, которая с февраля полностью отделилась в самодостаточный проект от системы Gitea (ранее Forgejo развивался в форме синхронизированного форка). Проект позволяет развернуть на своих серверах систему для совместной работы с репозиториями Git, напоминающую по решаемым задачам GitHub, Bitbucket и Gitlab. Форк был создан в 2022 году после попыток коммерциализации Gitea и перехода управления в руки коммерческой компании. В Forgejo было продолжено применение принципов независимого управления и сохранена подконтрольность сообществу. Код проекта написан на языке Go и распространяется под лицензией MIT. Под управлением Forgejo работает хостинг Codeberg.org.
Ключевыми особенностями платформы является низкое потребление ресурсов (может использоваться на плате Raspberry Pi или в дешёвых VPS) и простой процесс установки. Предоставляются типовые возможности работы с проектами, такие как управление задачами, отслеживание проблем (issues), pull-запросы, wiki, средства для координации групп разработчиков, подготовка релизов, автоматизация размещения пакетов в репозиториях, управление правами доступа, сопряжение с платформами непрерывной интеграции, поиск кода, аутентификация через LDAP и OAuth, доступ к репозиторию по протоколам SSH и HTTP/HTTPS, подключение web-хуков для интеграции со Slack, Discord и другими сервисами, поддержка Git-хуков и Git LFS, инструменты для миграции и зеркалирования репозиториев. Отдельно выделяется возможность использования протокола ActivityPub для объединения в федеративную сеть отдельных серверов разработчиков.
Основные изменения:
- Проведена работа по удалению несвободных зависимостей. В реализации web-интерфейса для отрисовки графика наиболее активных участников использовалась несвободная JavaScript-библиотека GSAP. В новой версии код, привязанный к данной библиотеке, заменён на новую реализацию, использующую библиотеку chart.js.
Кроме того, аудит выявил ещё два компонента c несовместимыми лицензиями, используемые для поддержки формата цитирования APA (American Psychological Association) и в экспериментальном движке отрисовки блок-схем на базе библиотеки elkjs. Поддержка формата APA пока удалена (рекомендуется использовать более распространённый формат BibTeX), а движок elkjs исключён из состава подключаемой библиотеки Mermaid.
- Предоставлена возможность ручного вызова Action-обработчиков c данными, заданными пользователем через web-интерфейс.
- По умолчанию при установке отключена опция, разрешающая самостоятельную регистрацию пользователей в платформе (пользователей может добавлять только администратор). Предполагается, что изменение позволит сократить число остающихся без сопровождения установок, позволяющих спамерам добавлять свои учётные записи.
- Предоставлена возможность скрытия в интерфейсе файлов и архивов, автоматически генерируемых для релизов, для того чтобы не путать их с архивами, загруженными пользователем (например, в некоторых проектах архив с исходным кодом для релиза загружается отдельно разработчиками и отличается от автоматически генерируемого).
- Утверждена политика минимализации случайных изменений интерфейса пользователя, суть которой в том, что интерфейс будет развиваться по возможности без нарушения привычного уклада на основе потребностей пользователей и анализа их работы, а не на основе неподтверждённых предположений, что то или иное изменение будет полезным.
- Прекращена поддержка СУБД Microsoft SQL Server из-за проблематичности организовать автоматическое тестирование интеграции с проприетарной системой.
- Предоставлена возможность обновления до Forgejo 8 систем на базе Gitea 1.21 и более новых выпусков.