Byla vydána verze platformy pro spolupráci Forgejo 9.0, která umožňuje nasazení systému pro spolupráci s Git repozitáři na vašich serverech, připomínající úkoly řešené GitHubem, Bitbucketem a Gitlabem. Forgejo je fork projektu Gitea, který se zase odštěpil od platformy Gogs. Oddělení Forgejo proběhlo v roce 2022 po pokusech o komercializaci Gitea a převodu správy do rukou komerční společnosti. Projekt Forgejo dodržuje principy nezávislého řízení a odpovědnosti vůči komunitě. Na použití Forgejo přešel Git hosting Codeberg.org. Kód projektu je napsán v jazyce Go a je distribuován pod licencí MIT.
Klíčovými vlastnostmi platformy je nízká spotřeba zdrojů (může být používána na desce Raspberry Pi nebo v levných VPS) a jednoduchý proces instalace. Jsou k dispozici standardní funkce práce s projekty, jako je správa úkolů, sledování problémů (issues), pull requesty, wiki, nástroje pro koordinaci skupin vývojářů, příprava verzí, automatizace nasazení balíčků do repozitářů, správa oprávnění, integrace s platformami pro kontinuální integraci, vyhledávání v kódu, autentizace přes LDAP a OAuth, přístup k repozitáři prostřednictvím protokolů SSH a HTTP/HTTPS, připojení webhooks pro integraci se Slackem, Discordem a dalšími službami, podpora Git hooks a Git LFS, nástroje pro migraci a zrcadlení repozitářů. Zvlášť se zdůrazňuje možnost využití protokolu ActivityPub pro spojení jednotlivých servery vývojáře.
Hlavní změny:
- Byl proveden přechod z permissivní licence MIT na copyleft licenci GPLv3+ pro nový kód. Změna licence usnadní zapojení do projektu kódu distribuovaného pod copyleft licencemi, které nejsou kompatibilní s MIT, a také sníží riziko nezdravých obchodních praktik, jako je vazba uživatele na určitého poskytovatele a vytváření modifikovaných verzí Forgejo, které jsou distribuovány s dodatečnými omezeními.
- Byla přidána počáteční implementace systému nastavitelného kvótování, které umožňuje omezit velikost uživatelských dat na serveru. Implementace je založena na nastavení jemných kvót (soft quota), jejichž překročení je kontrolováno pouze před provedením operací, ale není omezeno v případě překročení kvóty během vykonávání operací.
- Bylo povoleno použití SSH klíčů místo hesel pro autentizaci při operacích zrcadlení.
- Pro práci s Gitem zůstal pouze backend založený na standardních nástrojích Git. Bylo odstraněno backendové řešení go-git s implementací Gitu v jazyce Go, což usnadní údržbu, umožní rozvoj Forgejo bez ohledu na funkčnost go-git a vyloučí problémy s poškozením repozitářů, které se vyskytovaly v go-git.
- Byl odstraněn poskytovatel relací na bázi databáze Couchbase, protože je závislý na proprietary softwaru, jehož možnosti testování jsou omezené.
Zdroj: opennet.ru
