Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Move the changelog to Towncrier fragments and build CHANGELOG.md at each deploy

Abierto
#978 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

@anth-volk ya está trabajando en esto.

Desde el 28/10/2026.

  • #979 de @anth-volk — abierto

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
25/100
Tipo de issue
Nueva funcionalidad
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
github-actions, python
Área
ci-cd, release

Línea de trabajo

Start by reading the existing deploy workflow, especially pr.yml and the workflow that deploys on merges to main, plus changelog_entry.yaml and policyengine-api's Towncrier configuration and release setup. Trace how version bumps, deployment triggers, and the GitHub App token are handled. Done means PRs require a valid fragment, each merge to main produces one release commit and one deploy, and all existing changelog entries appear in CHANGELOG.md.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Every pull request edits one shared changelog_entry.yaml that nothing reads: no workflow, Make target or script uses it, there is no CHANGELOG.md, nothing parses it in CI (two of its entries are YAML mappings because of an unquoted : ), and it conflicts on every stack rebase. No check requires a changelog entry either.

Move the changelog to Towncrier fragments, as policyengine-api does, and fix what policyengine-api's version gets wrong:

  • Fragments: one or more files per pull request, changelog.d/<name>.<type>.md, with policyengine-api's five types (breaking, added, changed, fixed, removed), configured in a root towncrier.toml.
  • A check on every pull request: a check-changelog job in pr.yml, in CI complete's needs, that fails unless the pull request itself adds a non-empty fragment directly in changelog.d/ with a configured type. policyengine-api's check counts any file anywhere under changelog.d/, so it passed #4084's changelog.d/added/4083.md, which its release then could not read; it also passes a pull request with no fragment while main has pending ones. The check and the release's version bump must share one definition of a fragment.
  • A release at each deploy: on a merge to main, a versioning job raises a repository version from the fragment types, builds CHANGELOG.md with Towncrier, removes the fragments, and pushes one release commit with the GitHub App token. Only that commit deploys; it must not start another release, and each merge must deploy once. Manual dispatch keeps working.
  • History: changelog_entry.yaml's entries move into CHANGELOG.md, with none lost, and the file is removed.
Lenguaje dominante
Python
Estrellas
1
Forks
1
Merge medio
1 d 19 h
PR fusionados (30 d)
77

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de PolicyEngine/policyengine-sim-api

Todos los issues de PolicyEngine/policyengine-sim-api

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.