Obrigado pelo interesse em contribuir! Este guia resume o essencial.
- Procure uma issue existente ou abra uma nova descrevendo o problema/proposta antes de PRs grandes.
- O repositório usa UTF-8 (sem BOM), LF e newline final — já configurado em
.editorconfig.
- Faça um fork e crie uma branch:
git checkout -b feature/minha-mudanca - Implemente a mudança com testes (os projetos de teste ficam em
tests/) - Garanta build e testes verdes:
dotnet build Codout.Framework.sln dotnet test Codout.Framework.sln - Abra um Pull Request descrevendo motivação e impacto
Seguimos Conventional Commits:
fix:, feat:, chore:, docs:, ci:, refactor:, test: — com escopo
opcional pelo nome curto do pacote (ex.: fix(ef): ...). Mensagens em modo
imperativo, primeira linha com até 72 caracteres.
- Cada pacote tem
<Version>no próprio.csproje segue SemVer — não versione pacotes que sua mudança não toca. - O CHANGELOG.md é por pacote, sob a data da mudança.
- Releases são disparados por tag (
<short-name>-v<X.Y.Z>) e publicados no NuGet.org via GitHub Actions. O mapeamento de nomes curtos está em.github/release-packages.json. Criação de tags é responsabilidade dos mantenedores.
- Mudanças que quebram API pública exigem bump major e destaque no CHANGELOG.
- Não remova membros
[Obsolete]fora de um major.
Ao contribuir, você concorda que sua contribuição será licenciada sob a MIT License.