Contributing
Questo repository è il contratto pubblicato stabile. Mantienilo piccolo, mantienilo stabile. Quasi ogni modifica è governata dal versionamento - leggilo prima.
Regole sulle dipendenze
L'assembly abstractions deve referenziare solo:
- la BCL, e
- il framework reference
Microsoft.AspNetCore.App.
Non aggiungere riferimenti a Schuly.Application (quei tipi vivono in SchulyBackend e non vengono pubblicati).
Il repository distribuisce le DLL del backend
Schuly.Domain.dlleSchuly.Infrastructure.dllcome binari precompilati sottosrc/Schuly.Plugin.Abstractions/libs/(sincronizzati dal backend), così i plugin ottengono un accesso tipizzato al database; i pacchetti EF Core di cui queste DLL hanno bisogno sono dichiarati nel csproj. Non trasformarle in riferimenti di progetto e non importare altro codice sorgente del backend in questo repository.
Workflow (obbligatorio)
- Apri un'issue etichettata che descrive la modifica. Usa la label corretta affinché release-drafter risolva correttamente la versione successiva (
breaking-change,feature,documentation,CI/CD,dependencies,bug,refactor). - Crea un branch da
main:feature/<issue#>_PascalCaseoppurefix/<issue#>_PascalCase. Non committare mai direttamente sumain. - Apri una PR con
Closes #<issue>. Il corpo della PR è solo Summary +Closes #<issue>- niente piani di test. - Squash-merge ed elimina il branch.
I soggetti dei commit sono brevi e all'imperativo.
Nessuna attribuzione AI
Non aggiungere mai attribuzioni AI / assistente da nessuna parte - né nei messaggi di commit, né nelle descrizioni delle PR, né nei testi delle issue. Nessun trailer Co-Authored-By, nessuna riga "generated with". Mai.
Scegliere il bump di versione
Vedi la tabella in versionamento. La label di PR che scegli determina la versione della release, quindi scegli con attenzione.
