Skip to content

Release 0.4.0#285

Merged
adrian-prior merged 2 commits into
mainfrom
adrian/release-0.4.0
May 11, 2026
Merged

Release 0.4.0#285
adrian-prior merged 2 commits into
mainfrom
adrian/release-0.4.0

Conversation

@adrian-prior
Copy link
Copy Markdown
Collaborator

Bumps tabpfn-extensions to 0.4.0 and fills in the changelog.

What's in this release

Everything that's landed on main since v0.3.0 (2026-04-24):

See CHANGELOG.md for the full structured list.

Why now

The KV-cache and many-class checkpoint inference work want a release so users can pip install tabpfn-extensions and get them; meanwhile the deprecations should get into PyPI ahead of the eventual hard removal.

What this release does not do

  • Tighten the tabpfn pin. Stays at tabpfn>=7.0.0. KV-cache features need TabPFN-3 to actually engage; on earlier tabpfn they emit a UserWarning and degrade cleanly (pval_crt falls back, PDP example falls back, shapiq path warns but still runs).
  • Touch TabEBM. It's been broken against tabpfn >= 7.x since tabpfn.config was removed upstream — pre-existing latent bug, tracked separately as RES-1541.

After merge

  1. git tag v0.4.0 <merge-commit> && git push origin v0.4.0
  2. GitHub Release for the tag (body = the new CHANGELOG section).
  3. PyPI publish (uv run --group dev python -m build && uv run --group dev twine upload dist/* — no automated release workflow in this repo).

Cross-repo follow-ups (separate, not blocking)

  • docs.priorlabs.ai: drop the RF-PFN page; banner post-hoc-ensembles + HPO as deprecated; update many-class wording (default max-class moved from 10 → 160 on v3).
  • Public TabPFN repo: links pointing at deleted examples.

🤖 Generated with Claude Code

- Bump pyproject version 0.3.0 -> 0.4.0.
- Fill in CHANGELOG.md [0.4.0] - 2026-05-11 covering everything that
  landed since 0.3.0: KV-cache wiring (#283, #284), many-class
  alphabet auto-inference (#282), AutoTabPFN / TunedTabPFN deprecations,
  rf_pfn / sklearn_ensembles / shap removals, and the graceful
  fallbacks for older tabpfn / tabpfn-client.

tabpfn pin stays at >=7.0.0 — KV-cache features require TabPFN-3 to
engage, but the new fallbacks emit a UserWarning and degrade cleanly
on earlier releases.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the project to version 0.4.0, introducing KV-cache support, new utility helpers, and significant cleanup through the removal of legacy packages and deprecated classifiers. Review feedback identifies several critical issues where the implementation does not match the changelog descriptions: the detection logic for the tabpfn-client backend is likely incorrect, the promised probe fit fallback for ManyClassClassifier is missing from the code, and the fallback behavior for tabpfn_crt is inaccurately documented regarding its support for the client backend.

Comment thread CHANGELOG.md
Comment thread CHANGELOG.md Outdated
Comment thread CHANGELOG.md Outdated
- src/tabpfn_extensions/utils.py: fix warn_if_no_kv_cache client detection.
  ClientTabPFNClassifier/Regressor are defined inside tabpfn_extensions.utils
  (subclassing the client base), so the immediate class' __module__ is
  "tabpfn_extensions.utils" and the previous "tabpfn_client" string check
  always missed. Walk type(model).__mro__ instead so the base class
  modules get checked too.
- CHANGELOG.md: correct the many_class entry to reflect what the merged
  code actually does (uses get_inference_config() with a hardcoded 10
  fallback for older tabpfn; no probe fit was kept in #282).
- CHANGELOG.md: correct the pval_crt fallback entry. pval_crt is
  local-only by design (ImportError at import time without the local
  tabpfn) and its fallback catches ValueError / NotImplementedError but
  not TypeError, because the client can't reach that code path.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@adrian-prior adrian-prior marked this pull request as ready for review May 11, 2026 10:52
@adrian-prior adrian-prior requested a review from a team as a code owner May 11, 2026 10:52
@adrian-prior adrian-prior requested review from priorjulien and removed request for a team May 11, 2026 10:52
@chatgpt-codex-connector
Copy link
Copy Markdown

Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits.
Credits must be used to enable repository wide code reviews.

@adrian-prior adrian-prior requested review from LeoGrin May 11, 2026 10:52
Copy link
Copy Markdown
Collaborator

@LeoGrin LeoGrin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lfg

@adrian-prior adrian-prior merged commit f79433f into main May 11, 2026
8 checks passed
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