Skip to content

Conversation

@wietzesuijker
Copy link
Contributor

@wietzesuijker wietzesuijker commented Nov 7, 2025

Summary

  • lock the runtime to Python 3.12 across pyproject, tooling, and Docker so the default build.yml job keeps producing runnable main/latest images
  • depend on [email protected] and lean on its dependency stack instead of duplicating xarray/zarr version ranges
  • default the workflow template to the main image tag, making the staging overlay patch unnecessary
  • regenerate uv.lock under the new constraints

Testing

  • uv run -q pytest -q (suite currently reports "no tests ran"; coverage emits standard warning)

Follow-up

  • trigger Build Docker Image after merge to refresh ghcr.io/eopf-explorer/data-pipeline:{main,latest}
  • track data-model#65 (fix: sync v0.3.0 metadata data-model#65) to align eopf-geozarr packaging metadata with tag v0.3.0 (or adopt SCM-based versioning)

@wietzesuijker wietzesuijker changed the title fix: standardise pipeline runtime on python 3.12 Align pipeline runtime with data-model release and python 3.12 Nov 7, 2025
@wietzesuijker wietzesuijker changed the title Align pipeline runtime with data-model release and python 3.12 Align pipeline runtime with data-model release Nov 7, 2025
@wietzesuijker
Copy link
Contributor Author

Spotted a few more Python 3.13 references that should be 3.12 🙈 .

I no longer have push access to this branch, but here’s a ready-to-apply patch chore-align-python-version-references.patch
that aligns remaining references with Python 3.12.
You can apply it locally with git apply chore-align-python-version-references.patch.

diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index a1223ce..e3417db 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -13,10 +13,10 @@ jobs:
     steps:
     - uses: actions/checkout@v4
 
-    - name: Set up Python 3.13
+    - name: Set up Python 3.12
       uses: actions/setup-python@v5
       with:
-        python-version: "3.13"
+        python-version: "3.12"
 
     - name: Install uv
       uses: astral-sh/setup-uv@v3
@@ -30,7 +30,7 @@ jobs:
       uses: actions/cache@v4
       with:
         path: ~/.cache/pre-commit
-        key: pre-commit-3.13-${{ hashFiles('.pre-commit-config.yaml') }}
+        key: pre-commit-3.12-${{ hashFiles('.pre-commit-config.yaml') }}
 
     - name: Run pre-commit checks
       run: uv run pre-commit run --all-files
diff --git a/README.md b/README.md
index dcc313a..1ea34cb 100644
--- a/README.md
+++ b/README.md
@@ -60,7 +60,7 @@ Transforms Sentinel-1/2 satellite data into web-ready visualizations:
 
 **Prerequisites:**
 - Kubernetes cluster with [platform-deploy](https://github.com/EOPF-Explorer/platform-deploy) (Argo Workflows, RabbitMQ, STAC API, TiTiler)
-- Python 3.13+ with `uv`
+- Python 3.12+ with `uv`
 - `kubectl` configured
 
 **📖 Complete setup guide:** See [workflows/README.md](workflows/README.md) for:
@@ -148,7 +148,7 @@ Access via **EOxHub workspace** (single sign-on): [workspace.devseed.hub-eopf-ex
 
 **Stack:**
 - Orchestration: Argo Workflows, Kustomize
-- Processing: eopf-geozarr, Dask, Python 3.13
+- Processing: eopf-geozarr, Dask, Python 3.12
 - Storage: S3 (OVH)
 - Catalog: pgSTAC, TiTiler
 - Events: RabbitMQ
diff --git a/pyproject.toml b/pyproject.toml
index 03c5576..4207cd2 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -19,7 +19,6 @@ classifiers = [
     "Intended Audience :: Science/Research",
     "License :: OSI Approved :: MIT License",
     "Programming Language :: Python :: 3.12",
-    "Programming Language :: Python :: 3.13",
     "Topic :: Scientific/Engineering :: GIS",
 ]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants