Skip to content

chore(deps): relax packaging constraint to allow v26#1569

Closed
noirbee wants to merge 2 commits intolangfuse:mainfrom
noirbee:chore/packaging-relax-v26
Closed

chore(deps): relax packaging constraint to allow v26#1569
noirbee wants to merge 2 commits intolangfuse:mainfrom
noirbee:chore/packaging-relax-v26

Conversation

@noirbee
Copy link

@noirbee noirbee commented Mar 19, 2026

It is only used for packaging.version.Version, which saw no breaking changes in version 26.

I'm not sure about the content-hash change in poetry.lock since there are no changes to the lockfile itself; I guess it also takes into account the input pyproject.toml itself ?

Disclaimer: Experimental PR review

Greptile Summary

This PR relaxes the packaging dependency constraint in pyproject.toml from >=23.2,<26.0 to >=23.2,<27, unblocking users and downstream consumers who need packaging v26. The content-hash update in poetry.lock is expected — Poetry regenerates this hash from pyproject.toml's contents on every change.

Key observations:

  • The only usages of packaging in this codebase are from packaging.version import Version in langfuse/openai.py and langfuse/_client/client.py — both at module top level, not inside functions.
  • The packaging v26.0 changelog (released 2026-01-20) confirms no breaking changes to packaging.version.Version — the API is additive only (e.g. new __replace__ support, positional pattern matching), so existing call sites remain fully compatible.
  • The upper bound of <27 is a reasonable conservative bound that prevents untested future major versions from being auto-accepted.

Confidence Score: 5/5

  • This PR is safe to merge — it is a minimal, well-scoped dependency constraint relaxation with no code changes.
  • The change is a single-line version specifier update. The packaging v26.0 release has no breaking changes to packaging.version.Version, the sole API consumed by this library. The poetry.lock change is mechanically expected. No logic, tests, or behavior is altered.
  • No files require special attention.

Important Files Changed

Filename Overview
pyproject.toml Relaxes the packaging dependency upper bound from <26.0 to <27, allowing v26.x. The packaging library's v26.0 changelog confirms no breaking changes to packaging.version.Version, which is the only API used in this codebase.
poetry.lock Only the content-hash was updated, which is expected — Poetry recomputes this hash from the contents of pyproject.toml whenever it changes, even if the resolved lockfile itself is unmodified.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A["packaging constraint: >=23.2,<26.0"] -->|"PR change"| B["packaging constraint: >=23.2,<27"]
    B --> C{Allowed versions}
    C --> D["23.2 – 25.x ✅ (unchanged)"]
    C --> E["26.x ✅ (newly allowed)"]
    C --> F["27+ ❌ (still excluded)"]
    E --> G["packaging.version.Version API\nNo breaking changes in v26"]
    G --> H["langfuse/openai.py\n(from packaging.version import Version)"]
    G --> I["langfuse/_client/client.py\n(from packaging.version import Version)"]
Loading

Last reviewed commit: "chore(deps): relax p..."

(2/5) Greptile learns from your feedback when you react with thumbs up/down!

It is only used for packaging.version.Version, which saw no breaking changes in version 26.
@CLAassistant
Copy link

CLAassistant commented Mar 19, 2026

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
1 out of 2 committers have signed the CLA.

✅ hassiebp
❌ noirbee
You have signed the CLA already but the status is still pending? Let us recheck it.

@hassiebp
Copy link
Contributor

Thanks for raising this, will be handled in #1570 👍🏾

@hassiebp hassiebp closed this Mar 19, 2026
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.

3 participants