Skip to content

pyproject: pin deps to versions buildable on python 3.10 through 3.14 - #107

Open
mentonin wants to merge 1 commit into
kernelci:mainfrom
mentonin:pin-deps
Open

pyproject: pin deps to versions buildable on python 3.10 through 3.14#107
mentonin wants to merge 1 commit into
kernelci:mainfrom
mentonin:pin-deps

Conversation

@mentonin

Copy link
Copy Markdown

Add minimum version pins to packages that do not build on supported python versions.

Tests

I tested that these are the minimum versions that build under python 3.10 through 3.14 using uv sync --resolution lowest-direct. I did not test any runtime behavior on these versions. I also did not test that transitive dependencies build on these python versions.

jsonschema>=4.26.0 was an exception. It is not the earliest buildable jsonschema version, but it fixes a similar issue for its rdps-py dependency for python 3.14, so using it avoids at least one transitive dependency issue for python 3.14 compatibility.

Signed-off-by: Luiz Georg <luiz.georg@profusion.mobi>
@mh21

mh21 commented Jul 20, 2026

Copy link
Copy Markdown

this will needlessly blow up downstream consumers like https://gitlab.com/cki-project/pipeline-definition/-/blob/main/requirements-python.in?ref_type=heads - eg kcidb-io works just fine with a jsonschema < 4.18; the upstream pyproject.toml is not the right place to enforce downstream constraints (like python314 compat); if a certain dependency does not work in your downstream env, enforce a working dep version there

@mentonin

Copy link
Copy Markdown
Author

That makes sense. What about the optional-dependencies.dev pinning? pylint<0.22 and pytest<2.1 don't build on python>=3.10, which is the minimum python version for this project

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