From 039d36926cf19916ada19f36b7e8ee9b09c1eec5 Mon Sep 17 00:00:00 2001 From: Charles Cooper Date: Tue, 15 Oct 2024 13:03:50 -0400 Subject: [PATCH] fix[ci]: fix commithash calculation for pypi release (#4309) there is a mismatch between the commit hash in the binary of the github release vs the pypi release. for example, ```bash ~ $ vyper --version # pipx install vyper==0.4.0 0.4.0+commit.e9db8d9 ``` ```bash ~ $ .vvm/vyper-0.4.0 --version 0.4.0+commit.e9db8d9f ``` this is due to how git computes the shorthash. when checkout is run for release-pypi.yml, it doesn't fetch the full commit history, and so there are fewer commits, so `git rev-parse --short HEAD` returns a smaller fingerprint for the commit hash. this commit amends the pypi release checkout step so that it matches the github release workflow. it also adds a debug step to the relevant workflows so that we can debug the commit hash during the github action. --- .github/workflows/build.yml | 8 ++++++++ .github/workflows/release-pypi.yml | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7cb8de830c..515be87c25 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -31,6 +31,10 @@ jobs: # need to fetch unshallow so that setuptools_scm can infer the version fetch-depth: 0 + # debug + - name: Git shorthash + run: git rev-parse --short HEAD + - name: Python uses: actions/setup-python@v5 with: @@ -60,6 +64,10 @@ jobs: # need to fetch unshallow so that setuptools_scm can infer the version fetch-depth: 0 + # debug + - name: Git shorthash + run: git rev-parse --short HEAD + - name: Python uses: actions/setup-python@v5 with: diff --git a/.github/workflows/release-pypi.yml b/.github/workflows/release-pypi.yml index d09aeb9adc..1511c61e51 100644 --- a/.github/workflows/release-pypi.yml +++ b/.github/workflows/release-pypi.yml @@ -20,6 +20,14 @@ jobs: steps: - uses: actions/checkout@v4 + with: + # fetch unshallow so commit hash matches github release. + # see https://github.com/vyperlang/vyper/blob/8f9a8cac49aafb3fbc9dde78f0f6125c390c32f0/.github/workflows/build.yml#L27-L32 + fetch-depth: 0 + + # debug + - name: Git shorthash + run: git rev-parse --short HEAD - name: Python uses: actions/setup-python@v5