Skip to content

feat : adicionar segundo dia do Carnaval#677

Open
MatheusPrudente wants to merge 6 commits intoBrasilAPI:mainfrom
MatheusPrudente:main
Open

feat : adicionar segundo dia do Carnaval#677
MatheusPrudente wants to merge 6 commits intoBrasilAPI:mainfrom
MatheusPrudente:main

Conversation

@MatheusPrudente
Copy link
Copy Markdown

Olá, 👋

Estou entrando em contato através da issue Lista de feriados desatualizada #664.

Realizei uma atualização, incluindo o segundo dia de Carnaval, conforme os feriados divulgados pela Febraban. Analisei os feriados dos últimos 10 anos (2015 a 2025), com foco em Carnaval e Corpus Christi, e a alteração parece estar funcionando corretamente.

Além disso, encontrei vários pull requests interessantes relacionados a feriados, e acredito que minha contribuição seja mais uma solução paliativa por agora.

Espero que essa alteração seja útil!

@vercel
Copy link
Copy Markdown

vercel bot commented Apr 24, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
brasilapi Ready Ready Preview, Comment Apr 15, 2026 1:51am

Request Review

@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud bot commented May 1, 2025

@lucianopf
Copy link
Copy Markdown
Member

Olá @MarcosFvb! Obrigado pela contribuição!

Antes de mergear este PR, precisamos esclarecer um ponto: a segunda-feira de Carnaval é considerada feriado nacional oficial?

Pela legislação federal brasileira (Lei nº 9.093/95 e alterações), o Carnaval (terça-feira, 47 dias antes da Páscoa) é um feriado nacional. A segunda-feira de Carnaval (46 dias antes da Páscoa) é geralmente tratada como ponto facultativo pelo governo federal — não como feriado nacional.

Seria possível adicionar a referência legal ou fonte que confirme que a segunda-feira de Carnaval é um feriado nacional? Se for ponto facultativo, o endpoint atual tem escopo apenas de feriados nacionais, então não seria incluído aqui.

Aguardo seu retorno!

@lucianopf
Copy link
Copy Markdown
Member

Olá @MatheusPrudente! A ideia de adicionar a segunda-feira de Carnaval faz sentido.

Porém, ao fazer o rebase/merge de main, o campo weekday que foi adicionado pelo PR #755 (já mergeado) foi removido da sua branch. Isso é uma quebra de compatibilidade retroativa.

Por favor, faça um rebase limpo no main atual — você verá que o arquivo services/holidays/index.js já tem o campo weekday em todos os feriados. Mantenha esse campo ao adicionar a segunda-feira de Carnaval também.

Após o rebase, certifique-se de que os novos objetos de feriado também incluem weekday.

@MatheusPrudente
Copy link
Copy Markdown
Author

Olá @lucianopf, obrigado pelo feedback!

Fiquei com uma dúvida para alinhar corretamente antes de seguir:

Sobre a segunda-feira de Carnaval — entendi o ponto de que, pela legislação federal, ela é considerada ponto facultativo e não feriado nacional. Nesse sentido, se considerarmos apenas datas em que a dispensa do trabalho é obrigatória, ela não se enquadra como feriado nacional, e portanto sua inclusão neste endpoint não seria adequada.

Já no outro comentário, você mencionou que “a ideia de adicionar a segunda-feira de Carnaval faz sentido”, o que me gerou uma dúvida sobre o direcionamento final, já que pode haver um conflito com o primeiro comentário.

Antes de avançar, você poderia confirmar qual direção devemos seguir e se faz sentido prosseguir com as alterações?

Aguardo seu retorno, obrigado!

@RodriAndreotti
Copy link
Copy Markdown
Collaborator

Deixando meus dois cents:
E se tivéssemos um segundo endpoint somente com pontos facultativos?

Assim isolaríamos os feriados, sem abrir mão de mostrar os pontos facultativos.

Qual seria a fonte dos pontos facultativos?
Não sei, mas é apenas uma sugestão... rs

@lucianopf
Copy link
Copy Markdown
Member

@MatheusPrudente, obrigado pela paciência! E boa sugestão, @RodriAndreotti.

Sobre a direção: a segunda-feira de Carnaval realmente não é feriado nacional por lei — é ponto facultativo, definido por decreto anual. Inclusive, o Corpus Christi que já está no endpoint também é ponto facultativo, não feriado legal. Essa é uma inconsistência histórica que precisamos resolver.

Uma proposta: que tal expandir o endpoint existente com query param de filtro por tipo?

  • GET /api/feriados/v1/{ano} → continua retornando tudo como hoje (default, retrocompatível)
  • GET /api/feriados/v1/{ano}?type=national → retorna apenas feriados nacionais
  • GET /api/feriados/v1/{ano}?type=optional → retorna apenas pontos facultativos
  • GET /api/feriados/v1/{ano}?type=all → retorna todos (equivalente ao default, mas explícito)

Cada feriado já tem o campo type: 'national'. Os pontos facultativos teriam type: 'optional'.

Daria pra seguir com esse PR mesmo, fazendo os ajustes necessários (rebase no main pra manter o campo weekday, adicionar o query param, e classificar Corpus Christi como optional).

O que acham? Se fizer sentido, posso ajudar na implementação.

@vercel
Copy link
Copy Markdown

vercel bot commented Apr 14, 2026

@MatheusPrudente is attempting to deploy a commit to the BrasilAPI Team on Vercel.

A member of the Team first needs to authorize it.

@sonarqubecloud
Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants