Pular para o conteúdo

Exemplos de changelog

Última atualização em 20 de agosto de 2026.

Cinco entradas, cada uma em uma situação diferente, com uma nota sobre o que faz funcionar. Foram escritas no formato do keepachangelog.com, que é o mais próximo de um padrão que essa área tem, mas o que vale a pena copiar é a redação, não os títulos.

1. Um lançamento SaaS rotineiro

O caso comum: um punhado de mudanças visíveis ao usuário, sem migração, sem drama. É curto porque o lançamento foi pequeno, e resistir ao impulso de encher é a maior parte da habilidade.

O que o leitor vê

20 de agosto de 2026

Novo

  • Visualizações salvas na caixa de entrada. Fixe um filtro uma vez e reutilize-o pela barra lateral.

Melhorado

  • O job de exportação agora informa o progresso em vez de parecer travado em contas grandes.

Corrigido

  • Membros convidados não veem mais um painel vazio antes do primeiro login.
Markdown
## 20 de agosto de 2026

### Novo
- Visualizações salvas na caixa de entrada. Fixe um filtro uma vez e
  reutilize-o pela barra lateral.

### Melhorado
- O job de exportação agora informa o progresso em vez de parecer
  travado em contas grandes.

### Corrigido
- Membros convidados não veem mais um painel vazio antes do
  primeiro login.

O que funciona: cada linha é um resultado que um usuário poderia notar. Não há número de versão porque o produto é implantado continuamente, então a data é a única coisa que um leitor pode comparar com a própria experiência.

2. Um lançamento de API com uma descontinuação

O leitor de um changelog de API procura uma coisa: se sua integração está prestes a quebrar, e quanto tempo ainda tem. Coloque isso no topo e dê uma data.

O que o leitor vê

Acme API 4.2 - 20 de agosto de 2026

Mudanças que quebram compatibilidade

  • ?page= foi removido em todos os endpoints de listagem. Use o valor nextCursor da resposta anterior. ?page= retorna 400 após 1 de outubro de 2026. Passos de migração: acme.example/docs/pagination

Novo

  • Webhooks podem ser limitados a um único projeto.

Melhorado

  • Endpoints de listagem respondem cerca de quatro vezes mais rápido em contas com mais de 10.000 registros.
Markdown
## Acme API 4.2 - 20 de agosto de 2026

### Mudanças que quebram compatibilidade
- `?page=` foi removido em todos os endpoints de listagem. Use o
  valor `nextCursor` da resposta anterior.
  `?page=` retorna 400 após 1 de outubro de 2026.
  Passos de migração: acme.example/docs/pagination

### Novo
- Webhooks podem ser limitados a um único projeto.

### Melhorado
- Endpoints de listagem respondem cerca de quatro vezes mais rápido
  em contas com mais de 10.000 registros.

O que funciona: a descontinuação nomeia o parâmetro exato, o substituto, o modo de falha após o prazo, e a data. Um leitor pode decidir em uma linha se isso o afeta.

3. Um lançamento mobile

As lojas de apps mostram um campo de novidades truncado, e a revisão pode segurar um build por dias. Os dois fatos moldam a entrada.

O que o leitor vê

iOS 3.4.0 - 20 de agosto de 2026

Modo offline. Abra, leia e redija sem conexão; tudo sincroniza quando você voltar a ficar online.

Também neste lançamento

  • Abertura mais rápida em dispositivos mais antigos.
  • Corrigido um travamento ao abrir um link compartilhado do Mail.
Markdown
## iOS 3.4.0 - 20 de agosto de 2026

Modo offline. Abra, leia e redija sem conexão;
tudo sincroniza quando você voltar a ficar online.

### Também neste lançamento
- Abertura mais rápida em dispositivos mais antigos.
- Corrigido um travamento ao abrir um link compartilhado do Mail.

O que funciona: uma frase carrega o lançamento, porque é tudo que a listagem da loja vai mostrar. A data é a data de lançamento em vez da data de merge, então corresponde a quando os usuários realmente puderam obtê-lo.

4. Uma correção de segurança

A única entrada em que dizer menos é o correto. Os usuários precisam saber que devem atualizar; mais ninguém precisa de uma descrição precisa o bastante para atacar a versão que ainda não atualizaram.

O que o leitor vê

20 de agosto de 2026

Segurança

  • Reforçamos a validação dos tokens de sessão. Contas em instalações autogerenciadas devem atualizar para 4.2.1 ou posterior. Reportado com responsabilidade; sem evidência de exploração. Detalhes: acme.example/security/2026-08
Markdown
## 20 de agosto de 2026

### Segurança
- Reforçamos a validação dos tokens de sessão. Contas em
  instalações autogerenciadas devem atualizar para 4.2.1 ou
  posterior. Reportado com responsabilidade; sem evidência de
  exploração. Detalhes: acme.example/security/2026-08

O que funciona: diz ao leitor se deve agir sem nomear o endpoint, o parâmetro ou a técnica. O detalhe pertence a um comunicado de segurança em seu próprio calendário, depois que as pessoas tiveram tempo de atualizar.

5. Como fica uma entrada ruim

Toda linha aqui é real na forma, e toda linha é um erro:

O que o leitor vê

v2.3.7

  • PR #482 mesclado de feature/inbox-refactor
  • lodash atualizado de 4.17.20 para 4.17.21
  • Corrigida condição de corrida em MembershipCache.resolve()
  • Várias correções de bugs e melhorias
  • Modelo SavedView refatorado (obrigado, Dave!)
Markdown
## v2.3.7

- PR #482 mesclado de feature/inbox-refactor
- lodash atualizado de 4.17.20 para 4.17.21
- Corrigida condição de corrida em MembershipCache.resolve()
- Várias correções de bugs e melhorias
- Modelo SavedView refatorado (obrigado, Dave!)

O que dá errado: o número do pull request e o branch não significam nada fora do repositório. A atualização de dependência e o refactor não têm efeito visível para o usuário e não deveriam aparecer de forma alguma. A condição de corrida nomeia uma classe em vez do sintoma que o usuário viu. "Várias correções de bugs e melhorias" é a frase que as pessoas citam quando dizem que changelogs são inúteis. O agradecimento pertence ao commit.

O que os bons têm em comum

  • Descrevem um resultado, não uma implementação. Um leitor que nunca viu o código ainda consegue saber se a entrada o afeta.
  • Deixam coisas de fora. Atualizações de dependências, refactors, mudanças de CI e renomeações internas estão ausentes, e essa ausência é o que mantém o resto legível.
  • Colocam a coisa custosa primeiro. Se algo quebra, é o primeiro título, com uma data.
  • São datadas de um jeito que o leitor pode usar: um número de versão onde os usuários conseguem ver versões, uma data onde não conseguem.
  • São entediantes de propósito. Sem pontos de exclamação, sem adjetivos de marketing, sem "estamos animados para anunciar". As pessoas que leem um changelog estão procurando informação e vão se incomodar com qualquer coisa no caminho.

Perguntas frequentes

Que formato um changelog deve usar?

keepachangelog.com é o mais próximo de um padrão e os nomes de suas seções (Added, Changed, Deprecated, Removed, Fixed, Security) são amplamente reconhecidos. Importa muito menos que a redação dentro das seções. Um formato consistente com entradas vagas é pior que um formato solto com entradas específicas.

Com que frequência devemos publicar?

No ritmo que combinar com seus lançamentos, e de forma consistente. Publicar por lançamento é a regra mais simples. Agrupar um mês de lançamentos em um único post torna cada mudança individual mais difícil de encontrar depois, que é quando a maioria das pessoas realmente lê um changelog.

O changelog deve ficar no nosso site ou em uma página de terceiros?

No seu site, se possível, porque é ali que o tráfego e o valor de busca se acumulam, e porque um changelog no domínio de outra pessoa está a um link de distância do seu produto em vez de fazer parte dele. É esse o caso para servi-lo como um feed que você mesmo renderiza em vez de uma página hospedada para a qual você aponta um link.

Os usuários realmente leem changelogs?

Uma pequena fração lê regularmente e uma fração muito maior os pesquisa no momento em que algo muda debaixo deles. Esse segundo grupo é o motivo para escrever o sintoma em vez da causa: estão pesquisando o que aconteceu com eles, com as próprias palavras.

Leitura adicional: changelog vs. notas de versão, e Keep a Changelog, de fato implementado.

Entradas nesse formato, redigidas para você

O Changeloop lê o título e a descrição de cada pull request mesclado e escreve uma entrada como as acima, filtra atualizações de dependências e refactors, e segura para você editar antes de qualquer coisa ir ao ar. Grátis para um repositório, sem cartão.

Começar grátis

ou leia a documentação para desenvolvedores