Pular para o conteúdo
Forgejo 16.0: mudanças críticas e novidades em self-hosted Git

Forgejo 16.0: mudanças críticas e novidades em self-hosted Git

Conheça o Forgejo v16.0: hardening de mirrors, ajustes de proxy e recursos de notificação, PR e Actions. Veja breaking changes.

O Forgejo 16.0 foi disponibilizado no dia 16 de julho de 2026. Trata-se de uma plataforma leve, desenvolvida pela comunidade e voltada à colaboração em código com hospedagem própria (self-hosted).

A nova versão traz melhorias de segurança, ajustes em funcionalidades existentes e recursos inéditos. A lista completa de alterações consta nas notas de lançamento oficiais.

Antes de atualizar, recomenda-se fortemente a criação de backup integral conforme o guia de upgrade e a leitura atenta de todas as breaking changes. Em caso de dúvidas, o canal de chat oficial oferece suporte.

Mudanças que quebram compatibilidade

Proteção reforçada de mirrors contra SSRF

Administradores conseguem restringir quais hosts o Forgejo acessa para espelhamento Git por meio das configurações [migrations].ALLOWED_DOMAINS, LOCKED_DOMAINS e ALLOW_LOCALNETWORKS. Contudo, situações limítrofes tornavam essas regras ineficazes. Foram corrigidos diversos casos nesta versão.

Um desses cenários envolvia o Git seguindo redirecionamentos HTTP(S) em repositórios, violando as restrições. Agora, a opção http.followRedirects=false é aplicada para bloquear esse comportamento.

Espelhamentos de instâncias Forgejo remotas renomeadas ou transferidas gerarão redirecionamentos tratados como erro. Tais mirrors precisam ser atualizados para o novo endereço.

Remoção da remoção de EXIF

A partir do Forgejo v13.0, havia a possibilidade de apagar metadados EXIF de avatares. Houve, porém, um erro de licenciamento ao usar biblioteca AGPL. Visando conformidade, o recurso foi removido temporariamente.

Configuração de proxies confiáveis em containers

Imagens de container vinham com REVERSE_PROXY_TRUSTED_PROXIES = * por padrão. Se o sysadmin ativasse FORGEJO__service__ENABLE_REVERSE_PROXY_AUTHENTICATION=true e um usuário não autorizado acessasse o Forgejo fora do proxy, era possível falsificar identidade via cabeçalho X-WebAuth-User.

Para mitigar o risco, o Forgejo 16 exige definição explícita de REVERSE_PROXY_TRUSTED_PROXIES. Quem usa Docker ou Podman com autenticação de proxy habilitada e porta web exposta deve configurar endereços confiáveis, como:

[security]
REVERSE_PROXY_TRUSTED_PROXIES=127.0.0.0/8,::1/128,172.16.X.X/X

Ou via variável de ambiente:

FORGEJO__security__REVERSE_PROXY_TRUSTED_PROXIES=127.0.0.0/8,::1/128,172.16.X.X/X

Novos recursos

Configuração granular de watch de repositório

O sistema de notificações avançou. Agora é possível escolher categorias como Issues, Pull Requests e Releases para receber alertas. O backend foi reescrito para permitir mais granularidade futura.

Progresso de migração de repositório

A tela de migração exibe andamento de issues e PRs em lotes. O tamanho padrão de lote é 45 itens, o mínimo para mostrar progresso e evitar sensação de travamento.

Avatares reduzidos

Duas variantes menores de avatar são geradas e servidas onde o tamanho original não é necessário, reduzindo banda e acelerando carregamento.

Adição simplificada de membros a times

Um diálogo na lista de membros da organização permite incluir pessoas e já vinculá-las a múltiplos times de uma vez.

Verificação de objetos Git recebidos

O Git agora checa inconsistências em objetos recebidos, rejeitando-os para evitar corrupção de repositório.

Fim dos hooks de exemplo

O Forgejo não cria mais arquivos de hook de exemplo por repositório. Hooks institucionais ficam centralizados, economizando cerca de 20 KiB por repositório.

Dica de unidades de repositório

Um bug impedia a exibição da dica "Enable more" a novos usuários desde o v7.0.0. Foi corrigido, e desativar essas dicas ficou mais fácil. A dica aparece apenas quando unidades estão desabilitadas.

Melhorias em Pull Requests

Nova visualização de commits

A lista de commits ganhou layout limpo e responsivo, inicialmente em páginas de PR, com plano de expansão.

Revisões multilinha

Comentários de revisão podem abranger várias linhas: segure Shift, clique no "+" da primeira linha e arraste até a última.

Posicionamento correto de comentários

Problemas de comentários associados a diff errado ou deslocado foram resolvidos com git blame --reverse e rastreamento do código visualizado. Detalhes em: forgejo!12015 forgejo!12054 forgejo!12107 forgejo!12055 forgejo!12092

Forgejo Actions

Priorização manual de workflows

Runs podem ser marcados como prioritários e executados antes dos demais na fila do Forgejo Actions.

Integrações autorizadas (JWT)

Além de emitir JWT, o v16 valida JWT externos para API e Git. Substitui permissões fixas e funciona entre repositórios, com suporte a AWS, GitHub Actions e GitLab CI/CD.

Outros aprimoramentos

forgejo!13030: avaliação local de condições if. forgejo!12478: remoção de runs antigos por UI ou API. Sintaxe cron com timezone GitHub (cron: CRON_TZ=Europe/Berlin 0 10 * * *). forgejo!12606: checks pulados marcados como skipped.

API

Actions

Foram adicionados endpoints de logs de workflow e jobs, gerenciamento de artifacts, cancelamento de runs e /actions/run para token automático.

Outros

forgejo!12633: org inclui data de criação. forgejo!12104: filtro de PR por branches. forgejo!12323: admins gerenciam tokens de usuários. forgejo!12091: filtro de usuários por 2FA.

Suporte e cronograma

Lançamentos maiores ocorrem a cada três meses. O Forgejo 16.0 é non-LTS, com suporte até 29 outubro 2026. Versões LTS anteriores (11.0, 15.0) estendem-se até 2026/2027.

Imagens diárias de teste ficam em v16.next.forgejo.org, com OCI e binários atualizados.

Obtenção e upgrade

Instruções em página de download. O upgrade é troca de binário/imagem, usando tag 16.0 em containers. Backup prévio é essencial via documentação.

Contribuição e doação

Feedback é bem-vindo via issue tracker, Fediverse ou Matrix. Doações via Liberapay ou Codeberg e.V. sustentam o desenvolvimento.

Via forgejo.org. Você pode conferir o post original em inglês:

Forgejo 16.0 release

Por · Última atualização: