Skip to content

build(env): adopt the PyMC 6.2 shared baseline - #454

Merged
frankbuckley merged 1 commit into
mainfrom
chore/env-baseline-pymc-6.2
Jul 31, 2026
Merged

build(env): adopt the PyMC 6.2 shared baseline#454
frankbuckley merged 1 commit into
mainfrom
chore/env-baseline-pymc-6.2

Conversation

@frankbuckley

Copy link
Copy Markdown
Member

Note

Drafted by a LLM-based AI tool (Claude Code/Opus 5).

Adopts the refreshed shared baseline from dseinternational/research#79, which moves the canonical conda-forge core to PyMC 6.2.

pymc 6.2.0 requires pytensor>=3.2.2,<3.3, so the floor moves 6.1.06.2.0.

What changed here

Core floors: pandas 3.0.5, matplotlib 3.11.1, preliz 0.27.1, h5py 3.16.0, h5netcdf 1.8.1, python-graphviz 0.21. LRP add-ons: lightgbm 4.7.0, xarray 2026.7.0. Pip layer: ruff 0.16.1, setuptools 83.0.0, hatchling 1.31.0.

pyproject.toml floors are brought up to the same baseline and now carry the numpy<2.5 cap the conda core has always had, so a uv resolve and a conda solve agree. dse-research-utils moves to v0.9.0 in both the pip layer and [tool.uv.sources].

Why the caps did not move

Each was re-verified against live conda-forge metadata:

Cap Still needed? Evidence
numba<=0.65.1 Yes pytensor-base 3.2.3 still declares numba >=0.58,<=0.65.1, even though numba 0.66.0 is released
numpy<2.5 Yes numba pins it — and numba 0.66.0 pins numpy <2.5 too, so lifting the numba cap alone would not unlock numpy 2.5
pyarrow>=24.0.0 Yes libarrow 25.0.0 needs libabseil >=20260526; every jaxlib 0.10.2 build still pins libabseil <20260108

Verification

  • conda create --dry-run on both linux-64 and osx-arm64: solves to pymc 6.2.0 / pytensor 3.2.3 / numba 0.65.1 / numpy 2.4.6 / pyarrow 24.0.0.
  • dse-check-env environment.yml — no drift against the updated canonical core.

Blocked on the upstream tag

Opened as a draft. The pip layer installs dse-research-utils from git@v0.9.0, so CI here cannot pass until dseinternational/research#79 merges and v0.9.0 is tagged.

Sync the conda-forge core with dse-research-utils' canonical
data/environment-core.yml, which moved the PyMC floor to 6.2.0 (PyMC 6.2
requires pytensor >=3.2.2,<3.3). The numba <=0.65.1, numpy <2.5 and
pyarrow >=24.0.0 caps are unchanged and still required — pytensor 3.2.3 caps
numba, numba 0.66.0 still pins numpy <2.5, and jaxlib's libabseil pin still
holds libarrow at 24.

Core floors: pandas 3.0.5, matplotlib 3.11.1, preliz 0.27.1, h5py 3.16.0,
h5netcdf 1.8.1, python-graphviz 0.21. LRP add-ons: lightgbm 4.7.0,
xarray 2026.7.0. Pip layer: ruff 0.16.1, setuptools 83.0.0, hatchling 1.31.0.

pyproject floors are brought up to the same baseline, including the numpy <2.5
cap that the conda core carries, and dse-research-utils moves to v0.9.0.

Verified with `conda create --dry-run` on linux-64 and osx-arm64 (solves to
pymc 6.2.0 / pytensor 3.2.3) and with `dse-check-env environment.yml`.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@frankbuckley
frankbuckley marked this pull request as ready for review July 31, 2026 10:20
@frankbuckley
frankbuckley merged commit 6c00b7a into main Jul 31, 2026
6 of 8 checks passed
@frankbuckley
frankbuckley deleted the chore/env-baseline-pymc-6.2 branch July 31, 2026 10:37
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.

1 participant