Release 3.1.0: new validation contracts and docs#197
Merged
Conversation
- Cria documentação de validações numéricas (numeric.md) - Cria documentação de validações de formato (format.md) - Cria documentação de validações booleanas (boolean.md) - Cria documentação de documentos brasileiros (brazilian_docs.md) - Cria página sobre o Domain Notification Pattern (about.md) - Atualiza e corrige index de validações com links funcionais Resolve o gap entre a navegação do mkdocs.yml e os arquivos de documentação que estavam faltando. Todos os links agora funcionam corretamente. Issue relacionada: Melhoria de credibilidade e documentação do projeto
## Validações Brasileiras (CPF/CNPJ) - ✅ Implementa validação completa de CPF com dígitos verificadores - ✅ Implementa validação completa de CNPJ com dígitos verificadores - ✅ Rejeita números sequenciais e inválidos conhecidos - ✅ Suporta formatação (com pontos/hífen) e sem formatação - ✅ Adiciona testes completos para CPF e CNPJ ## Validações Numéricas Diretas - ✅ Cria NumericValidationContract para valores int/float - ✅ Implementa is_greater_than_number, is_lower_than_number - ✅ Implementa is_between_numbers, is_positive, is_negative - ✅ Implementa is_zero, is_not_zero - ✅ Adiciona testes completos ## Validações de URL - ✅ Cria URLValidationContract - ✅ Implementa is_url() e is_not_url() - ✅ Usa regex pattern existente ## Validações de DateTime - ✅ Cria DateTimeValidationContract - ✅ Implementa is_date_after, is_date_before, is_date_between - ✅ Implementa is_date_in_past, is_date_in_future, is_today - ✅ Suporta date e datetime ## CI/CD - ✅ Corrige workflow de linters (uv add → uv sync --group linter) - ✅ Evita modificação de arquivos durante CI ## Documentação - ✅ Atualiza docs/validations/brazilian_docs.md - ✅ Remove seções de "limitações" e "workarounds" - ✅ Adiciona exemplos completos de uso - ✅ Documenta algoritmos de validação Resolve: #29 (Validação de Documentos) Resolve: #28 (Validação de Números) Resolve: #33 (Validação de URL) Resolve: #27 (Validação de DateTime)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
- Adiciona constantes para magic values (CPF_LENGTH, CNPJ_LENGTH, MAX_CHECKSUM_DIGIT) - Substitui datetime.now() e date.today() por função _get_today() com UTC timezone - Remove warnings PLR2004 (magic values) - Remove warnings DTZ005/DTZ011 (timezone aware datetimes) Todos os checks do Ruff agora passam com sucesso.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: fazedordecodigo <38289677+fazedordecodigo@users.noreply.github.com>
- Adiciona constantes para valores mágicos (PLR2004) - Adiciona anotações ClassVar para atributos de classe (RUF012) - Substitui valores literais por constantes nomeadas nos testes - Remove todos os avisos do Ruff (16 erros corrigidos)
…umeric.md Co-authored-by: fazedordecodigo <38289677+fazedordecodigo@users.noreply.github.com>
…AaRuk' into copilot/sub-pr-183-again
Fix documentation errors from PR #183 review comments
…AaRuk' into copilot/sub-pr-183
Fix documentation inconsistencies in numeric validations
…nt-analysis-011CUMG8PYJSnJLdvayAaRuk Analyze Project for Potential Improvements
Bumps the github_actions group with 1 update in the /.github/workflows directory: [SonarSource/sonarqube-scan-action](https://github.com/sonarsource/sonarqube-scan-action). Updates `SonarSource/sonarqube-scan-action` from 5 to 6 - [Release notes](https://github.com/sonarsource/sonarqube-scan-action/releases) - [Commits](SonarSource/sonarqube-scan-action@v5...v6) --- updated-dependencies: - dependency-name: SonarSource/sonarqube-scan-action dependency-version: '6' dependency-type: direct:production dependency-group: github_actions ... Signed-off-by: dependabot[bot] <support@github.com>
…s/dot-github/workflows/github_actions-3e76b0ee14 build(deps): Bump SonarSource/sonarqube-scan-action from 5 to 6 in /.github/workflows in the github_actions group across 1 directory
…in permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Potential fix for code scanning alert no. 22: Workflow does not contain permissions
…in permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Potential fix for code scanning alert no. 21: Workflow does not contain permissions
…n 3.14 Adiciona informações sobre novos contratos de validação, documentação expandida e melhorias na automação do CI.
Adiciona seções sobre compatibilidade com Python 3.11+, validações fluentes e contratos especializados. Atualiza informações de documentação e requisitos.
Substitui ferramentas obsoletas por novas referências para melhorar a funcionalidade do modo Beast.
… de CNPJ e atualiza exemplos de uso em testes Melhora a legibilidade do código ao remover quebras de linha desnecessárias nas somas de validação de CNPJ. Atualiza os exemplos de uso nos testes para melhor clareza.
… de logs Ajusta a atribuição do logger para uma variável e melhora a formatação das mensagens de log para uma apresentação mais clara.
Release 3.1.0: new validation contracts and docs
|
Keep this PR in a mergeable state → Learn moreAll Green is an AI agent that automatically: ✅ Addresses code review comments ✅ Fixes failing CI checks ✅ Resolves merge conflicts |
Contributor
There was a problem hiding this comment.
Pull request overview
This release PR consolidates version 3.1.0, which adds specialized validation contracts for common scenarios (numeric values, datetime, URLs, and Brazilian documents), expands documentation significantly, and updates the CI pipeline to include Python 3.14 support with improved security configurations.
Key Changes:
- Introduces four new validation contract classes (Numeric, DateTime, URL, Brazilian Documents) extending the fluent validation API
- Adds comprehensive documentation in
docs/covering the Domain Notification Pattern, validation guides, and usage examples - Updates CI matrix to test against Python 3.14 and tightens GitHub Actions permissions
- Includes automation prompts/guides and detailed Copilot instructions for contributors
Reviewed changes
Copilot reviewed 73 out of 75 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| pyproject.toml | Version bump to 3.1.0, dependency updates, Python 3.14 classifier, keyword additions |
| CHANGELOG.md / CHANGELOG_EN.md | Release notes for 3.1.0 with Added/Changed/Security sections |
| flunt/validations/numeric_validation_contract.py | New contract for numeric validations (ranges, limits, sign) |
| flunt/validations/datetime_validation_contract.py | New contract for date/datetime validations (intervals, min/max) |
| flunt/validations/url_validation_contract.py | New contract for URL validation |
| flunt/validations/brazilian_document_validation_contract.py | New contract for CPF/CNPJ validation with check digits |
| flunt/validations/contract.py | Updated to inherit from new contracts |
| tests/validations/test_numeric_validation_contract.py | Comprehensive tests for numeric contract |
| tests/validations/test_brazilian_document_validation_contract.py | Comprehensive tests for Brazilian document contract |
| tox.ini | Added Python 3.14 to test matrix |
| .github/workflows/*.yml | Added explicit permissions, Python 3.14 support, updated SonarQube action |
| docs/about.md | New comprehensive guide on Domain Notification Pattern |
| docs/validations/*.md | New validation documentation (numeric, boolean, format, Brazilian docs, index) |
| README.md / README_EN.md | Updated with highlights, new contracts, requirements section |
| samples/*.py | Minor formatting improvements (logger usage, blank lines) |
| .gitignore | Added Copilot-Processing.md to ignore list |
| .github/prompts/*.md | New automation prompts for various development tasks |
| .github/instructions/*.md | New instruction files for Copilot behavior |
| .github/chatmodes/*.md | New chatmode for technical debt remediation |
| AGENTS.md | New file with project overview and workflows for AI agents |
added 10 commits
December 5, 2025 18:08
Ajusta a importação e a chamada da função de compilação de regex para melhorar a legibilidade e a consistência do código.
…retrizes e ferramentas Implementa dois novos agentes com foco em boas práticas de programação e planejamento de testes. O Pythonic Guardian segue o Zen of Python e Clean Code, enquanto o QA Sentinel se concentra em análise estática e cobertura de testes.
…o DateTime Inclui testes para verificar a funcionalidade de comparação de datas, incluindo casos de datas válidas, iguais, inválidas e limites de intervalo.
Adiciona a função _to_date para garantir que comparações entre instâncias de date e datetime não gerem TypeError. Atualiza os testes para validar o comportamento esperado sem erros.
…ção de data Ajusta a formatação das funções de teste para melhorar a legibilidade e a consistência do código.
…ção de data Ajusta a formatação das funções de teste para seguir as convenções de estilo e melhorar a legibilidade.
…os testes Atualiza os testes para garantir que as comparações entre tipos de data e datetime considerem corretamente a informação de fuso horário, melhorando a precisão das validações de data.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Descrição
Release 3.1.0 consolidates the new validation contracts, expanded docs, and CI/security tweaks described in the changelog.
Mudanças Propostas
Checklist de Revisão
Comentários Adicionais (opcional)
Release PR assembled from the current changelog items for v3.1.0.
Issue Relacionada
Closes #27, #28, #29, #33