Mitwirken¶
Wo Sie anfangen, wenn Sie am Code von Evey arbeiten möchten, und was ein Pull Request bestehen muss. Die Dokumente für Mitwirkende liegen beim Code auf GitHub, nicht auf dieser Website. Diese Seite verweist auf sie.
Wo Sie anfangen¶
| Sie möchten | Lesen Sie |
|---|---|
| Evey aus dem Quellcode bauen und starten | DEV.md |
| Die Regeln für einen Beitrag kennen: Branches, Commits, Tests, die Lizenzvereinbarung | CONTRIBUTING.md |
| Sich in einer halben Stunde im Code zurechtfinden | Karte der Codebasis |
| Die Schichten und die abgegrenzten Kontexte verstehen | Architektur |
| Den Konventionen folgen, die der Code schon nutzt | Code-Konventionen |
| An der Oberfläche arbeiten | Designsystem des Frontends |
| Wissen, warum eine grundlegende Wahl getroffen wurde | Architekturentscheidungen |
| Eine Version veröffentlichen | Runbook für Veröffentlichungen |
Warum ein Entscheidungsprotokoll, und wo¶
Jede grundlegende Wahl hat ein Architektur-Entscheidungsprotokoll: die hexagonale Struktur, wie die Bereiche von Plugin-Tokens begrenzt sind, warum die Installation aus einer einzigen Compose-Datei besteht, wie ein einziger Wiedergabeplan für jeden Client entscheidet. Jedes Protokoll hält den Kontext fest, die abgewogenen Möglichkeiten, was gewählt wurde und was es kostet. Sie liegen im Repository, neben dem Code, den sie erklären. Lesen Sie sie zuerst, bevor Sie vorschlagen, eine dieser Entscheidungen zu ändern.
Bevor Sie einen Pull Request öffnen¶
- Führen Sie
make pre-pushaus: Das ist die Prüfschranke. Sie führt die Prüfungen der CI lokal aus, in dieser Reihenfolge: vet, Suche nach Schwachstellen, Build, Unit-Tests mit-race, Frontend (Typprüfung, Lint, Unit-Tests), Sicherheitsprüfung, Lint, Architekturwächter, Commit-Hygiene, Suche nach Geheimnissen, Prüfung auf inkompatible Proto-Änderungen, ein Build aus einem sauberen Checkout, die Integrationsprüfungen für Repository und Transkodierung und das TV-Audit. - Schreiben Sie Tests für neues Verhalten und für jede Fehlerbehebung.
- Bei einem externen Beitrag akzeptieren Sie einmal die Lizenzvereinbarung für Mitwirkende: Evey steht unter AGPL-3.0-or-later und kann auch unter einer kommerziellen Lizenz angeboten werden. Das Urheberrecht an Ihrer Arbeit behalten Sie.
Die Prüfschranke baut weder das Docker-Image noch die Android-Apps
Wenn Sie das Dockerfile oder Kotlin-Code geändert haben, bauen Sie sie
vor dem Push selbst (docker build --target runtime, die
Release-Aufgabe von Gradle).
Sicherheitsprobleme werden nicht öffentlich gemeldet: Schreiben Sie an
security@eveyproject.org (siehe SECURITY.md).