Release runs create no Git tags since 3.34.3
Maintainer antworten meist innerhalb von 2 Tagen
Ein zugehöriger Pull Request wurde bereits gemerged.
- #4168 von @anth-volk — gemerged
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- Ein halber Tag
- Anfängerfreundlichkeit
- 45/100
Rechercherichtung
Start with .github/publish-git-tag.sh and the "Publish Git Tag" job in push.yml, then read pyproject.toml for the [project] version. The .github/scripts ci-scripts guard shows how the new script and its tests in tests/unit must be set up. Done when the script reads the version from pyproject.toml, creates and pushes only the tag for this commit, and a rerun on the same commit passes.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Problem
The "Publish Git Tag" job in push.yml runs .github/publish-git-tag.sh on each release commit:
git tag `python setup.py --version`
git push --tags || true # update the repository version
It hasn't created a tag since 3.34.3 (release e81ed3db, 2026-02-24), but the job passes on every release. On release run 41723443801 it logged:
python: can't open file '/home/runner/work/policyengine-api/policyengine-api/setup.py': [Errno 2] No such file or directory
Everything up-to-date
setup.pywas removed on 2026-03-06 (#3319); the version is in[project]inpyproject.toml.- With no version, the script runs a bare
git tag, which lists tags and exits 0.git push --tagsthen has nothing to push, and|| truewould hide a failure anyway. The script has noset -e, so it exits 0. - Tagging stopped before
setup.pywas removed. Commit 1e182346 (2026-02-24) moved the step to Python 3.12, which setup-python ships without setuptools, andsetup.pybegan withfrom setuptools import setup. The job installs nothing before the step. (Inferred: the February job logs are no longer available.)
The script is outside .github/scripts, so the ci-scripts guard doesn't run shellcheck on it or require a test for it.
Proposal
- Move the script to
.github/scripts/publish_git_tag.sh, so the ci-scripts guard covers it, with tests intests/unit. - Read the version from
[project]inpyproject.toml, and fail if it's missing or isn't a release version. - Create a tag on the release commit named after the version, as the existing tags are (
3.34.3), and push only that tag. - If the tag already exists on the remote and names this commit, succeed without changes, so a rerun of a release passes. If it names a different commit, fail.
- Run with
set -euo pipefail, without|| true.
The releases from 3.35.0 to the current version have no tags. Whether to create those afterwards is a separate decision.
- Vorherrschende Sprache
- Python
- Sterne
- 18
- Forks
- 33
- Ø Merge
- 2 T. 21 Std.
- Gemergte PRs (30 T.)
- 93
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus PolicyEngine/policyengine-api
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
PolicyEngine/policyengine-api#4037 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 88/100
PolicyEngine/policyengine-api#3911 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 82/100
PolicyEngine/policyengine-api#3910 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
Assign every v2 route and service file to a layer and enforce the doc-only v2 layer rulesEvtl. vergeben @anth-volk hat das heute übernommen. Offenenhancement
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 20/100
PolicyEngine/policyengine-api#4190 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
Check that every test function asserts somethingEvtl. vergeben @anth-volk hat das heute übernommen. Offen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 25/100
PolicyEngine/policyengine-api#4187 ·
Maintainer antworten meist innerhalb von 2 Tagen
Alle Issues in PolicyEngine/policyengine-api
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
autowarefoundation/autoware_carla_scenario#1485 ·
Maintainer antworten meist innerhalb von 1 Tag
-
needs-area-label
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 66/100
Maintainer antworten meist innerhalb von 2 Tagen
-
enhancement good first issue
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
Official-Space-AI/OpenPhysGraspGen#114 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
changelog investigate
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
ramnes/notion-sdk-py#441 ·
-
copy_tree splits same-file errors into charactersEvtl. vergeben @Gambit-Checkmate hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Maintainer antworten meist innerhalb von 14 Tagen