Drew DeVault, autore dell'ambiente utente e del client email , implementazione di un hub per progetti nella piattaforma di sviluppo collaborativo che sta creando . Gli sviluppatori possono ora creare progetti diversi servizi, oltre a visualizzare progetti esistenti ed effettuare ricerche tra di essi.
La piattaforma SourceHut è nota per la sua possibilità di funzionare completamente senza JavaScript, alta performance e per l'organizzazione del lavoro in mini-servizi in stile Unix. La funzionalità del progetto in SourceHut è costituita da componenti separati, che possono essere combinati e utilizzati singolarmente, ad esempio, solo ticket o solo codice senza l'obbligo di collegare il repository con i ticket. Questa possibilità di combinare liberamente le risorse rende difficile definire quali risorse siano relative a un progetto. L'hub per progetti affronta questo problema e offre la possibilità di raccogliere tutte le informazioni relative a un progetto in un unico luogo. Ad esempio, ora è possibile inserire su una pagina del progetto una descrizione generale e includere i repository, le sezioni di tracciamento dei problemi, la documentazione, i canali di supporto e le mailing list associate.
Per l'integrazione con piattaforme esterne, è disponibile un'API e un sistema di connessione tramite webhooks. Tra le possibili funzionalità aggiuntive, Sourcehut offre supporto per wiki, sistemi di integrazione continua, discussioni via email, visualizzazione ad albero degli archivi delle newsletter e revisione delle modifiche tramite il web, oltre alla possibilità di aggiungere annotazioni al codice (collegamenti e documentazione). Oltre a Git, c'è supporto anche per Mercurial. Il codice è scritto in Python e Go, e sott Licenza GPLv3.
è possibile creare repository pubblici, privati e riservati con un sistema di controllo accessi flessibile, che consente di coinvolgere anche utenti senza account locali (autenticazione tramite OAuth o partecipazione via email). Per informare e coordinare le correzioni delle vulnerabilità, è disponibile un sistema di report privati sui problemi. Le email inviate da ciascun servizio sono cifrate e verificate utilizzando PGP. Per l'accesso viene applicata l'autenticazione a due fattori basata su chiavi temporanee TOTP. Viene tenuto un log dettagliato per l'analisi degli incidenti.
L'infrastruttura integrata di integrazione continua consente
l'esecuzione di build automatizzate in ambienti virtuali su vari sistemi Linux e BSD. È consentito il trasferimento diretto nel CI delle attività di build senza la loro archiviazione nel repository. I risultati delle build vengono mostrati nell'interfaccia, inviati via email o trasmessi tramite webhook. Per analizzare i guasti, è possibile connettersi agli ambienti di build tramite SSH.
Attualmente, Sourcehut opera più rapidamente rispetto ai servizi concorrenti; ad esempio, le pagine con informazioni riassuntive, elenco dei commit, log delle modifiche, visualizzazione del codice, problemi e struttura delle cartelle si aprono 3-4 volte più velocemente di GitHub e GitLab, e 8-10 volte più velocemente di Bitbucket. Va notato che Sourcehut non ha ancora lasciato la fase di sviluppo alpha e molte funzionalità pianificate non sono ancora disponibili, ad esempio non c'è ancora un'interfaccia web per le richieste di merge (la richiesta di merge viene creata tramite l'apertura di un ticket e l'allegato del link al ramo secondario in Git). Un lato negativo è anche l'interfaccia particolare, non familiare per gli utenti di GitHub e GitLab, ma, tuttavia, semplice e subito comprensibile.
Fonte: opennet.ru
