Veröffentlichung der kollaborativen Entwicklungsplattform Kallithea 0.5

Eingereicht von Veröffentlichung eines Repository-Management-Systems Kallithea 0.5, basierend Enthusiasten und Vertreter der Software Freedom Conservancy, um die Entwicklung der freien Codebasis RhodeCode fortzusetzen Transformationen diese Plattform in ein halbproprietäres kommerzielles Produkt umzuwandeln. Mit Kallithea können Sie eine Entwicklungsmanagement-Infrastruktur bereitstellen, die Git- und Mercurial-Versionskontrollsysteme unterstützt und in ihren Aufgaben GitHub, GitLab und Bitbucket ähnelt. Der Projektcode ist in Python geschrieben und vertrieben von lizenziert unter GPLv3.

Kallithea umfasst einen Hochleistungsserver zur Verarbeitung von Push/Pull-Anfragen und eine Weboberfläche zur Organisation der kollaborativen Entwicklung, die es Ihnen ermöglicht, Repositories zu verwalten, Zugriffsrechte zu teilen, Code zu überprüfen, die Aktivitäten anderer Teilnehmer zu verfolgen, Projekte zu forken, Pull-Anfragen zu senden oder Ändern Sie den Code mithilfe eines einfachen Editors. Die Integration mit einer zentralen Unternehmensbenutzerdatenbank basierend auf LDAP oder ActiveDirectory wird unterstützt. Die Erstellung von Repository-Gruppen und Entwicklergruppen mit einheitlicher Verwaltung der Gruppenmitglieder wird unterstützt. Das Erscheinungsbild der Benutzeroberfläche kann über das Vorlagensystem einfach geändert werden. Eine visuelle Darstellung der Aktivität in Form von Diagrammen wird unterstützt. Das Change-Review-System unterstützt die Diskussion von Änderungen und das Versenden von Benachrichtigungen.

Der Serverteil der Plattform ist multithreaded, sodass Sie mehrere Pull-/Push-Anfragen gleichzeitig bedienen können. Um die Leistung zu steigern, nutzt das System aktiv Caching und führt Aktionen im asynchronen Modus aus. Das System verfügt über integrierte Backup-Tools, die es Ihnen ermöglichen, alle Daten regelmäßig zu archivieren und über „scp“ eine Kopie zu speichern. Um die Aktivität in Repositorys zu verfolgen, wird eine spezielle Ebene unterstützt, die ein Protokoll aller Anfragen führt und die Authentifizierung jeder Anfrage ermöglicht. Für die Arbeit mit Repositories wird eine Bibliothek verwendet VCSProjektmetadaten können in SQLite, PostgreSQL oder anderen von SQLAlchemy unterstützten Datenbanken gespeichert werden.

Wichtigste Änderungen:

  • Es ist möglich, über SSH über eine URL wie „ssh://“ auf das Repository zuzugreifen.[E-Mail geschützt] /name/von/repository". Die Authentifizierung beim Zugriff auf ein Repository über SSH basiert auf dem öffentlichen Schlüssel des Benutzers (mit oder ohne zusätzlichen Passwortschutz des Schlüssels, je nach Präferenz des Benutzers). Das Hochladen des Schlüssels (~/.ssh/id_rsa.pub) auf den Server erfolgt über die Kallithea-Webschnittstelle, die das Speichern des Schlüssels in der Datei „authorized_keys“ automatisiert. Es wird darauf hingewiesen, dass die Leistung beim Arbeiten mit dem Repository über SSH höher ist als beim Zugriff auf das Repository über HTTPS.
  • Unterstützung für das verteilte Versionskontrollsystem Mercurial 5.2 hinzugefügt.
  • Die Funktion „Admin > Einstellungen > Visuell > (HTTP) URL klonen“ wurde überarbeitet, deren Handler nun explizit auf das Vorhandensein der Strings „{repo}“ und „_{repoid}“ prüft.
  • Das Zugriffsrechtesystem wurde bereinigt – Zugriffsrechte werden immer nur als zusätzlich betrachtet, d. h. Es ist gewährleistet, dass jeder Benutzer mindestens die gleichen Rechte wie der Standardbenutzer hat.
  • Die Unterstützung für die Einstellung api_access_controllers_whitelist wurde aus der Konfigurationsdatei entfernt. Die Authentifizierung über einen API-Zugriffsschlüssel gewährt dem Benutzer nun automatisch Zugriff auf alle APIs, die ihm gestattet sind.
  • Die Unterstützung für Python 2.6 wurde eingestellt. Derzeit wird nur der Python 2.7-Zweig unterstützt, die Entwickler arbeiten jedoch daran, vollständige Unterstützung für Python 3.x bereitzustellen.
  • Die Repository-Sperrfunktion (Pull-to-Lock, Push-to-Unlock) wurde entfernt.

Source: opennet.ru

Kommentar hinzufügen