From ae946035206f10f025bd6fdfce1c7cc52dc60f0b Mon Sep 17 00:00:00 2001 From: akadeepesh Date: Sun, 30 Aug 2026 01:40:45 +0530 Subject: [PATCH] ci: improve PyPI release validation --- .github/workflows/python-publish.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/python-publish.yml b/.github/workflows/python-publish.yml index 3726781..23f8b49 100644 --- a/.github/workflows/python-publish.yml +++ b/.github/workflows/python-publish.yml @@ -20,14 +20,14 @@ jobs: - name: Check tag matches package version run: | - # Extract version from __init__.py PKG_VERSION=$(python -c "import re; content=open('contextzip/__init__.py').read(); print(re.search(r'__version__\s*=\s*[\"\'](.*?)[\"\']', content).group(1))") - # GitHub release tag (strips leading 'v' if present, e.g. v0.1.1 → 0.1.1) + TOML_VERSION=$(python -c "import tomllib; print(tomllib.load(open('pyproject.toml','rb'))['project']['version'])") TAG_VERSION="${GITHUB_REF_NAME#v}" - echo "Package version : $PKG_VERSION" - echo "Release tag : $TAG_VERSION" - if [ "$PKG_VERSION" != "$TAG_VERSION" ]; then - echo "Version mismatch — update __init__.py and pyproject.toml before releasing" + echo "Package version (__init__.py): $PKG_VERSION" + echo "Package version (pyproject.toml): $TOML_VERSION" + echo "Release tag: $TAG_VERSION" + if [ "$PKG_VERSION" != "$TAG_VERSION" ] || [ "$TOML_VERSION" != "$TAG_VERSION" ]; then + echo "Version mismatch — update __init__.py and/or pyproject.toml before releasing" exit 1 fi echo "Versions match"