-
Notifications
You must be signed in to change notification settings - Fork 42
Criação do endpoint '/health' #42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
Maxwbh
wants to merge
128
commits into
akretion:master
Choose a base branch
from
Maxwbh:master
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
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
Update brcobranca
Update to use repo master.
Bumps [rack](https://github.com/rack/rack) from 2.2.2 to 2.2.3. - [Release notes](https://github.com/rack/rack/releases) - [Changelog](https://github.com/rack/rack/blob/master/CHANGELOG.md) - [Commits](rack/rack@v2.2.2...2.2.3) Signed-off-by: dependabot[bot] <[email protected]>
Bumps [puma](https://github.com/puma/puma) from 4.3.5 to 4.3.8. - [Release notes](https://github.com/puma/puma/releases) - [Changelog](https://github.com/puma/puma/blob/master/History.md) - [Commits](puma/puma@v4.3.5...v4.3.8) Signed-off-by: dependabot[bot] <[email protected]>
Bump rack from 2.2.2 to 2.2.3
Bump puma from 4.3.5 to 4.3.8
Change repo to waiting PR Unicred CNAB400 merge in the main repo.
NameError at /api/boleto/multi uninitialized constant Brcobranca::Bol…
[IMP] Atualização BRCobranca versão 10.0.0 .
- ✅ Adicionar arquivo VERSION (1.0.0) com versionamento semântico - ✅ Criar CHANGELOG.md seguindo padrão Keep a Changelog - ✅ Criar pacote Python completo (boleto-cnab-client) - ✅ Implementar BoletoClient com retry automático - ✅ Adicionar type hints e dataclasses (BoletoData, BoletoResponse) - ✅ Criar exceções customizadas para tratamento de erros - ✅ Adicionar setup.py para instalação via pip - ✅ Documentar instalação e uso no README do cliente Python - ✅ Adicionar exemplos completos para todos os bancos - ✅ Criar requirements.txt com dependências Cliente Python features: - Interface Pythonic simples e intuitiva - Suporte para 6+ bancos brasileiros - Retry com backoff exponencial - Validação antes de gerar boleto - Health check da API - Logging configurável - Documentação completa com exemplos
Scripts de versionamento: - ✅ Criar bump-version.sh para versionamento semântico - ✅ Automatizar incremento MAJOR.MINOR.PATCH - ✅ Atualizar VERSION, CHANGELOG.md e __init__.py automaticamente - ✅ Documentar uso do script em scripts/README.md Exemplos Python completos: - ✅ exemplo_basico.py - Fluxo completo iniciante - ✅ exemplo_sicoob.py - Particularidades do Sicoob - ✅ exemplo_multiplos_bancos.py - Geração para 6 bancos - ✅ exemplo_tratamento_erros.py - Error handling robusto - ✅ README.md dos exemplos com documentação detalhada Características dos exemplos: - Código comentado e didático - Tratamento de erros completo - Dados de teste para todos os bancos - Troubleshooting de problemas comuns - Scripts executáveis (chmod +x) Documentação de versionamento: - Instruções para patch/minor/major - Exemplos de uso - Integração com CI/CD - Boas práticas
Destaques adicionados: - ✅ Badges de versão, Python e licença - ✅ Seção dedicada ao Cliente Python com exemplo de uso - ✅ Link direto para instalação via pip - ✅ Estrutura do projeto atualizada (python-client/, scripts/, VERSION) - ✅ Seção de versionamento semântico - ✅ Características expandidas (15+ recursos listados) - ✅ Tecnologias separadas em Backend e Cliente Python - ✅ Instruções de uso do bump-version.sh - ✅ Links úteis organizados por categoria Melhorias na apresentação: - Cliente Python promovido para seção principal - Versionamento destacado com exemplos - Documentação mais acessível - Links organizados (Documentação, BRCobranca, Changelog) - Estrutura visual mais profissional
Governança do projeto: - ✅ CONTRIBUTING.md - Guia completo de contribuição * Código de conduta * Como reportar bugs * Processo de desenvolvimento * Padrões de código (Ruby, Python, Markdown) * Convenção de commits * Guia de testes * Checklist de Pull Request - ✅ SECURITY.md - Política de segurança * Como reportar vulnerabilidades * Tempo de resposta * Práticas de segurança * Auditoria de dependências - ✅ LICENSE - Atualizar copyright * Adicionar Maxwell da Silva Oliveira / M&S do Brasil Ltda * Manter Raphaël Valyi / Akretion (original) * Licença MIT Melhorias no .gitignore: - ✅ Adicionar padrões Ruby (.gem, coverage/, vendor/bundle) - ✅ Adicionar padrões Python (__pycache__, dist/, *.egg-info) - ✅ Adicionar padrões de IDEs (.vscode/, .idea/) - ✅ Adicionar padrões de OS (.DS_Store, Thumbs.db) - ✅ Ignorar PDFs gerados e arquivos CNAB (.rem, .ret) - ✅ Ignorar arquivos sensíveis (.env, .env.local) Tag de versão: - ✅ Criar tag v1.0.0 com release notes
Templates de Issues: - ✅ bug_report.md - Template estruturado para reportar bugs * Seções para descrição, passos para reproduzir, ambiente * Campos para versão, banco, logs, exemplos * Checklist de verificação pré-issue - ✅ feature_request.md - Template para sugestões de funcionalidades * Descrição do problema que resolve * Solução proposta e alternativas * Exemplo de uso esperado * Tipo e impacto da funcionalidade * Checklist de verificação - ✅ config.yml - Configuração de issues * Links para documentação * Link para reportar vulnerabilidades * Link para discussões da comunidade - ✅ .github/README.md - Guia dos templates * Quando usar cada template * Diferença entre Issues e Discussions * Links para recursos Benefícios: - Padronização de issues - Informações completas para debug - Melhor organização do projeto - Facilita contribuições da comunidade
Correção da documentação
Documento define estratégia para simplificar e organizar as responsabilidades entre os dois projetos, incluindo: - Visão geral da arquitetura e separação de responsabilidades - Estrutura proposta para refatoração modular da API - Tarefas de simplificação organizadas em 4 fases - Matriz de responsabilidades entre projetos - Fluxos de dados para boleto, remessa e retorno - Lista completa de bancos suportados - Métricas de sucesso e prioridades
Inclui dados de atribuição de commits: - Maxwell Oliveira (@Maxwbh) - M&S do Brasil LTDA
Refatoração completa da boleto_cnab_api de monolítica para modular: ## Estrutura criada: - lib/boleto_api/config/constants.rb - Constantes centralizadas - lib/boleto_api/services/field_mapper.rb - Mapeamento de campos - lib/boleto_api/services/boleto_service.rb - Lógica de boletos - lib/boleto_api/services/remessa_service.rb - Lógica de remessas - lib/boleto_api/services/retorno_service.rb - Lógica de retornos - lib/boleto_api/endpoints/*.rb - Endpoints Grape separados - lib/boleto_api/middleware/*.rb - Error handler e Request logger ## Melhorias: - Arquivo principal reduzido de 444 para 53 linhas - Tratamento centralizado de erros via middleware - Logs estruturados em JSON (removidos emojis) - Testes unitários para novos módulos - Documentação de arquitetura (docs/ARCHITECTURE.md) ## Testes adicionados: - spec/unit/config/constants_spec.rb - spec/unit/services/field_mapper_spec.rb - spec/unit/services/boleto_service_spec.rb - spec/unit/services/remessa_service_spec.rb - spec/unit/services/retorno_service_spec.rb
## Dockerfile - Multi-stage build para imagem menor - Runtime separado do build - Labels do mantenedor (@Maxwbh) - Health check integrado - Otimizações de memória (MALLOC_ARENA_MAX, GC) ## Render.com - render.yaml atualizado para Free Tier - Variáveis de ambiente otimizadas para 512MB RAM - Puma configurado com 1 worker, 5 threads ## Documentação - docs/DEPLOY.md: Guia completo de deploy no Render - README.md: Estrutura atualizada para v1.1.0 - VERSION: Bump para 1.1.0 ## Puma - config/puma.rb: Configuração otimizada para produção Mantenedor: Maxwell Oliveira (@Maxwbh) Empresa: M&S do Brasil LTDA
- Adicionado pyproject.toml (PEP 517/518 moderno) - Criado types.py com TypedDict para tipagem estática - Adicionados testes pytest: - test_client.py: Testes do BoletoClient - test_models.py: Testes de BoletoData e BoletoResponse - test_exceptions.py: Testes das exceções customizadas - test_types.py: Testes dos tipos TypedDict - conftest.py: Fixtures compartilhadas - Atualizado __init__.py para exportar novos tipos - Atualizado TODO_INTEGRACAO.md marcando Fase 3 como concluída Contribuidor: Maxwell Oliveira (@Maxwbh) - M&S do Brasil LTDA
- Adicionados testes de integração: - spec/integration/remessa_spec.rb (CNAB 240/400) - spec/integration/retorno_spec.rb (parsing de retorno) - spec/integration/multi_boleto_spec.rb (múltiplos boletos) - Adicionada documentação OpenAPI/Swagger: - docs/openapi.yaml (especificação OpenAPI 3.0) - docs/swagger.html (interface Swagger UI) - Atualizado TODO_INTEGRACAO.md: - Fase 2 (brcobranca) marcada como concluída (v12.5.0) - Fase 4 (Infraestrutura) marcada como concluída - Adicionada Fase 5 para integração com brcobranca v12.5+ Usando forks @Maxwbh para ambos os projetos. Contribuidor: Maxwell Oliveira (@Maxwbh) - M&S do Brasil LTDA
Services refatorados para usar novos métodos da gem: - BoletoService: - Usa boleto.to_hash quando disponível - Usa boleto.dados_calculados para nosso_numero - Fallback mantido para versões anteriores - RemessaService: - Usa Brcobranca::Remessa.criar (v12.4+) - Factory method com detecção automática - Fallback mantido para versões anteriores - RetornoService: - Usa Brcobranca::Retorno.parse (v12.5+) - Detecção automática de formato CNAB - Usa pagamento.to_hash para serialização - Fallback mantido para versões anteriores TODO_INTEGRACAO.md atualizado - Fase 5 concluída. Contribuidor: Maxwell Oliveira (@Maxwbh) - M&S do Brasil LTDA
[FEAT] Fase 5 - Integração com brcobranca v12.5+
- Atualizado seção Prioridades: todos os 9 itens marcados como concluídos - Atualizado seção Conclusão: resumo da integração completa - Validado alinhamento com brcobranca v12.5.0 Projetos integrados: - brcobranca v12.5.0 (to_hash, Remessa.criar, Retorno.parse) - boleto_cnab_api v1.1.0 (arquitetura modular, Python client, Swagger) Repositórios @Maxwbh: - https://github.com/Maxwbh/brcobranca - https://github.com/Maxwbh/boleto_cnab_api Contribuidor: Maxwell Oliveira (@Maxwbh) - M&S do Brasil LTDA
- CHANGELOG.md: Adicionada versão 1.1.0 com todas as fases - docs/ARCHITECTURE.md: Atualizado com integração brcobranca v12.5+ - docs/DEPLOY.md: Adicionados requisitos da v1.1.0 - python-client/README.md: Atualizado para v1.1.0 com TypedDict Versão: 1.1.0 Data: 2026-01-06 Contribuidor: Maxwell Oliveira (@Maxwbh) - M&S do Brasil LTDA
Merge
- Generated Gemfile.lock required by bundler deployment mode - Locks brcobranca v12.6.0 from maxwbh fork - Fixes Docker build failure at bundle install step
[FIX] Add Gemfile.lock for Docker deployment mode
- Remove deployment mode that caused vendor/bundle path - Explicitly set bundle path to /usr/local/bundle - Add error suppression for cleanup find commands
[FIX] Correct Docker bundle path configuration
- Fix branch reference to match actual repository default branch
[FIX] Correct Render.yaml branch from main to master
- Install bundler 2.5.11 in runtime stage - Add BUNDLE_PATH, GEM_HOME, PATH environment variables - Fixes container startup failure (exit code 128)
[FIX] Add bundler to runtime stage and configure bundle path
- Remove hardcoded '/usr/src/app' directory path - Use current working directory (works with /app or /usr/src/app) - Remove stdout_redirect for better container logging - Update deprecated on_worker_boot to before_worker_boot - Remove deprecated on_restart hook
[FIX] Remove hardcoded directory from puma.rb
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.
Criado /health
Para Retornar que o serviço esta ativo e no ar;