brutils-python icon indicating copy to clipboard operation
brutils-python copied to clipboard

478

Open pauloguyss opened this issue 2 months ago • 2 comments

Descrição

Resolve o formato novo de CNPJ que estará em vigor a partir de 2026 no utilitário 'cnpj'.

Mudanças Propostas

  • Utilitário cnpj agora pode tratar CNPJs do novo formato de CNPJ disponibilizado em: https://normasinternet2.receita.fazenda.gov.br/#/consulta/externa/141102

Checklist de Revisão

  • [X] Eu li o Contributing.md
  • [X] Os testes foram adicionados ou atualizados para refletir as mudanças (se aplicável).
  • [X] Foi adicionada uma entrada no changelog / Meu PR não necessita de uma nova entrada no changelog.
  • [X] A documentação em português foi atualizada ou criada, se necessário.
  • [X] Se feita a documentação, a atualização do arquivo em inglês.
  • [X] Eu documentei as minhas mudanças no código, adicionando docstrings e comentários. Instruções
  • [X] O código segue as diretrizes de estilo e padrões de codificação do projeto.
  • [X] Todos os testes passam. Instruções
  • [X] O Pull Request foi testado localmente. Instruções
  • [X] Não há conflitos de mesclagem.

Comentários Adicionais (opcional)

Issue Relacionada

https://github.com/brazilian-utils/python/issues/478

Closes #478

pauloguyss avatar Oct 27 '25 14:10 pauloguyss

📌 Esta mensagem está tanto em português quanto em inglês (mais abaixo) — assim todo mundo consegue acompanhar! 📌 This message is in both Portuguese and English (further down) — so everyone can follow along!

🇧🇷 Português

Oi! Muito obrigada por abrir esse pull request 💜

Por aqui, seguimos o padrão do Conventional Commits para os títulos das PRs. Esse padrão ajuda a manter o histórico do projeto organizado e claro.

No seu caso, o título do PR precisa de um pequeno ajuste pra ficar dentro desse formato. Isso é super comum no começo, então suaveee!

👉 Um título válido geralmente começa com um prefixo como:

  • build: para mudanças no sistema de build ou dependências externas
  • chore: para tarefas de manutenção
  • ci: para integrações contínuas
  • docs: para mudanças na documentação
  • feat: para novas funcionalidades
  • fix: para correções de bugs
  • perf: para melhorias de performance
  • refactor: para melhorias internas no código
  • revert: para reverter um commit anterior
  • style: para mudanças de formatação
  • test: para adição ou ajustes de testes

Exemplos de títulos que adoraríamos ver por aqui:

prefixo: mensagem descritiva
feat: permitir que o objeto de configuração fornecido estenda outras configurações
fix: corrige pequenos erros de digitação no código

Esses são só alguns exemplos — a documentação oficial tem mais opções e explicações.

Antes de seguir com o PR, dá uma olhadinha lá pra entender bem o padrão — isso vai te ajudar bastante nesta e em futuras contribuições também.

O título atual está assim (fora do padrão esperado):

No release type found in pull request title "478". Add a prefix to indicate what kind of release this pull request corresponds to. For reference, see https://www.conventionalcommits.org/

Available types:
 - build
 - chore
 - ci
 - docs
 - feat
 - fix
 - perf
 - refactor
 - revert
 - style
 - test

Qualquer dúvida, é só chamar por aqui! Estamos aqui para te ajudar!

🇬🇧 English

Hey there and thank you for opening this pull request! 💜

In this project, we follow the Conventional Commits specification for PR titles. This helps keep the commit history organized and clean.

In your case, the PR title needs a small adjustment to match the expected format. Totally normal if this is your first time — no stress!

👉 A valid PR title usually starts with a prefix like:

  • build: for build system or external dependency changes
  • chore: for maintenance tasks
  • ci: for continuous integration changes
  • docs: for documentation updates
  • feat: for new features
  • fix: for bug fixes
  • perf: for performance improvements
  • refactor: for internal code improvements
  • revert: for reverting a previous commit
  • style: for formatting changes
  • test: for test additions or changes

Examples of titles we'd love to see here:

prefix: descriptive message
feat: allow the provided config object to extend other configurations
fix: correct minor typos in the code

These are just a few examples — the official documentation has more options and great explanations. Before continuing with the PR, we recommend reading it — it'll really help with this and future contributions.

💡 Here's the current title (which doesn't follow the expected format):

No release type found in pull request title "478". Add a prefix to indicate what kind of release this pull request corresponds to. For reference, see https://www.conventionalcommits.org/

Available types:
 - build
 - chore
 - ci
 - docs
 - feat
 - fix
 - perf
 - refactor
 - revert
 - style
 - test

Let us know if you need help updating it — we’re here to support you!

github-actions[bot] avatar Oct 27 '25 14:10 github-actions[bot]

Eu fiz um PR em outro projeto fazendo esta validação. Não é necessário criar duas funções diferentes para CNPJs com ou sem caracteres alfanuméricos. Se você fizer a conversão dos caracteres em valores ASCII e colocar o offset correto, a mesma função de validação para os dígitos verificadores se mantém (por sinal esse é um dos motivos para a Receita Federal ter escolhido essa solução para a expansão). Então não há necessidade de criar a is_alphanumeric_cnpj por exemplo, sendo viável manter apenas a validate como já existe.

rennerocha avatar Oct 27 '25 14:10 rennerocha

@pauloguyss boa tarde! precisamos reavaliar melhor essa issue e por enquanto vou fechar o teu pr.. agradecemos pela sua contribuição! 🎉

niltonpimentel02 avatar Nov 04 '25 19:11 niltonpimentel02