|
74 | 74 | - name: Install build dependencies |
75 | 75 | run: uv pip install build setuptools_scm |
76 | 76 |
|
| 77 | + - name: Clean workspace (force ignore dirty) |
| 78 | + shell: bash |
| 79 | + run: | |
| 80 | + git reset --hard HEAD |
| 81 | + git clean -fd |
| 82 | + rm -rf openviking/_version.py openviking.egg-info |
| 83 | + # Ignore uv.lock changes to avoid dirty state in setuptools_scm |
| 84 | + git update-index --assume-unchanged uv.lock || true |
| 85 | +
|
| 86 | + - name: Debug Git and SCM |
| 87 | + shell: bash |
| 88 | + run: | |
| 89 | + echo "=== Git Describe ===" |
| 90 | + git describe --tags --long --dirty --always |
| 91 | + echo "=== Setuptools SCM Version ===" |
| 92 | + uv run --frozen python -m setuptools_scm |
| 93 | + echo "=== Git Status (Ignored included) ===" |
| 94 | + git status --ignored |
| 95 | + echo "=== Check openviking/_version.py ===" |
| 96 | + if [ -f openviking/_version.py ]; then cat openviking/_version.py; else echo "Not found"; fi |
| 97 | +
|
77 | 98 | - name: Build sdist |
78 | | - run: uv run python -m build --sdist |
| 99 | + run: uv run --frozen python -m build --sdist |
79 | 100 |
|
80 | 101 | - name: Store the distribution packages |
81 | 102 | uses: actions/upload-artifact@v6 |
@@ -184,8 +205,29 @@ jobs: |
184 | 205 | - name: Install build dependencies |
185 | 206 | run: uv pip install setuptools setuptools_scm pybind11 cmake wheel build |
186 | 207 |
|
| 208 | + - name: Clean workspace (force ignore dirty) |
| 209 | + shell: bash |
| 210 | + run: | |
| 211 | + git reset --hard HEAD |
| 212 | + git clean -fd |
| 213 | + rm -rf openviking/_version.py openviking.egg-info |
| 214 | + # Ignore uv.lock changes to avoid dirty state in setuptools_scm |
| 215 | + git update-index --assume-unchanged uv.lock || true |
| 216 | +
|
| 217 | + - name: Debug Git and SCM |
| 218 | + shell: bash |
| 219 | + run: | |
| 220 | + echo "=== Git Describe ===" |
| 221 | + git describe --tags --long --dirty --always |
| 222 | + echo "=== Setuptools SCM Version ===" |
| 223 | + uv run --frozen python -m setuptools_scm |
| 224 | + echo "=== Git Status (Ignored included) ===" |
| 225 | + git status --ignored |
| 226 | + echo "=== Check openviking/_version.py ===" |
| 227 | + if [ -f openviking/_version.py ]; then cat openviking/_version.py; else echo "Not found"; fi |
| 228 | +
|
187 | 229 | - name: Build package (Wheel Only) |
188 | | - run: uv run python -m build --wheel |
| 230 | + run: uv run --frozen python -m build --wheel |
189 | 231 |
|
190 | 232 | - name: Install patchelf (Linux) |
191 | 233 | run: | |
@@ -277,8 +319,29 @@ jobs: |
277 | 319 | - name: Install build dependencies |
278 | 320 | run: uv pip install setuptools setuptools_scm pybind11 cmake wheel build |
279 | 321 |
|
| 322 | + - name: Clean workspace (force ignore dirty) |
| 323 | + shell: bash |
| 324 | + run: | |
| 325 | + git reset --hard HEAD |
| 326 | + git clean -fd |
| 327 | + rm -rf openviking/_version.py openviking.egg-info |
| 328 | + # Ignore uv.lock changes to avoid dirty state in setuptools_scm |
| 329 | + git update-index --assume-unchanged uv.lock || true |
| 330 | +
|
| 331 | + - name: Debug Git and SCM |
| 332 | + shell: bash |
| 333 | + run: | |
| 334 | + echo "=== Git Describe ===" |
| 335 | + git describe --tags --long --dirty --always |
| 336 | + echo "=== Setuptools SCM Version ===" |
| 337 | + uv run --frozen python -m setuptools_scm |
| 338 | + echo "=== Git Status (Ignored included) ===" |
| 339 | + git status --ignored |
| 340 | + echo "=== Check openviking/_version.py ===" |
| 341 | + if [ -f openviking/_version.py ]; then cat openviking/_version.py; else echo "Not found"; fi |
| 342 | +
|
280 | 343 | - name: Build package (Wheel Only) |
281 | | - run: uv run python -m build --wheel |
| 344 | + run: uv run --frozen python -m build --wheel |
282 | 345 |
|
283 | 346 | - name: Store the distribution packages |
284 | 347 | uses: actions/upload-artifact@v6 |
|
0 commit comments