bazel-contrib / bazel-contrib/rules_python
Create a program to handle release chores
- Langage dominant
- Starlark
- Étoiles
- 688
- Forks
- 721
- Merge moyen
- 15 h 7 min
- PR mergées (30 j)
- 76
Description
There's a few tedious and mechanical steps for our release process around replacing
strings and updating docs. See RELEASING.md for all the steps.
It should be relatively easy to create a program that does the various string processing. The basic logic it needs to do is:
* Update CHANGELOG.md
* Replace the "Unreleased" title with `[X.Y.Z] - YYYY-MM-DD`
* Replace `0.0.0` with X.Y.Z
* Replace `v0-0-0` with `vX-Y-Z`
* Caveat: don't modify the "unreleased template" that is commented out.
* Replace `VERSION_NEXT_*` markers
* caveat: don't replace them in CONTRIBUTING.md, RELEASING.md, and `.*` dirs (.githhub etc)
Something more advanced could look at which `VERSION_NEXT_{FEATURE,PATCH}` markers exist to figure out the next semantic version, but that's just a nice to have.
Just being able to do `tools/private/release.py 1.4.0` would be a big improvement over all the ad-hoc stuff we have to do today.
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Lisez RELEASING.md pour connaître la séquence complète de publication, puis utilisez tools/private/release.py comme point d’entrée demandé. Le programme doit accepter une version telle que 1.4.0, mettre à jour CHANGELOG.md et les marqueurs VERSION_NEXT_* éligibles, tout en préservant les exclusions indiquées et en laissant inchangé le modèle commenté des éléments non publiés.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python
- Domaine
- release, tooling
- Type d'issue
- Fonctionnalité
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 50/100