Remove unjustified upper bounds on runtime dependency pins#275
Conversation
The `tabpfn<7` upper bound was silently pulling an old `tabpfn` (6.4.1) into fresh installs of `tabpfn-extensions[all]`, which in turn made the Colab quickstart default to v2.5 instead of v2.6 (see PRI-280). More broadly these caps also prevent downstream projects from combining newer `torch` / `pandas` / `scikit-learn` / `scipy` with this package. The main `tabpfn` package does not impose upper bounds on these deps either, so matching that convention here. Kept the upper bounds that have an accompanying comment explaining why: `setuptools>=67,<82` (pkg_resources removal transition in the hpo extra) and `ruff==0.8.6` (must match .pre-commit-config.yaml). The `autogluon.tabular==1.4.0` exact pin is being handled by PR #274 separately. Per Leo's approval in thread: https://prior-labs.slack.com/archives/C08LK13JRUN/p1777061263049719 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits. |
There was a problem hiding this comment.
Code Review
This pull request removes the upper version constraints for several core dependencies in pyproject.toml, including torch, pandas, scikit-learn, scipy, and tabpfn. The review feedback suggests that simply removing the upper bound for tabpfn may still allow problematic versions to be installed; therefore, it is recommended to increase the minimum version requirement to 7.0.0 to ensure compatibility.
|
I think the solution is to only change "tabpfn>=6.0.5". Were the other upper limits causing any issues? New majors DO TEND TO BREAK things. cc @LeoGrin |
|
@adrian-prior WDYT? |
LeoGrin
left a comment
There was a problem hiding this comment.
Thanks!! Checked and the CI is testing the latest version
Summary
Removes the
<Yupper bounds ontorch,pandas,scikit-learn,scipy, andtabpfnin the runtimedependencieslist. These caps were causing real-world breakage — most recently,tabpfn<7silently pulled tabpfn 6.4.1 into fresh installs oftabpfn-extensions[all], which in turn made the Colab quickstart default to the v2.5 model instead of v2.6. See PRI-280 and the Slack discussion below.The main
tabpfnpackage doesn't cap these dependencies either, so this also just aligns our conventions.What changed
What was kept
Upper bounds that have an accompanying comment explaining the constraint are preserved:
setuptools>=67.0.0,<82(inhpoandallextras) — comment links to the pkg_resources removal transition.ruff==0.8.6(in thedevgroup) — must match.pre-commit-config.yaml.autogluon.tabular==1.4.0— exact pin, not a cap; being replaced with>=1.5.0,<1.6in Bump AutoGluon to 1.5 and route per-version to RealTabPFNv2/v25 classes #274.Why now
Per Leo's approval in Slack in the thread about PRI-280:
Test plan
🤖 Generated with Claude Code