-
Notifications
You must be signed in to change notification settings - Fork 4.4k
Python: Fix Python project metadata #13336
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Remove duplicate dependencies Fix uv lock file, many packages had mismatching wheel versions Add a miminum required uv version. 0.8.4 is the last one that changed the lockfile format. Requiring a miminum uv version avoids having the lockfile completely rewritten whenever a contributor makes changes with an old uv version.
| "nest-asyncio ~= 1.6", | ||
| "scipy>=1.15.1", | ||
| "websockets >= 13, < 16", | ||
| "aiortc>=1.9.0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why was this removed?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As per my PR description:
Remove duplicate dependencies
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
they're not actually duplicate, they were first put into the realtime extra, but then we did need them installed as standard, and removing the realtime extra would be a breaking change, so we didn't want to do that. Did now remove the specifiers so we don't get mismatches in them
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What I mean is that they are actually duplicates in the dependencies table:
semantic-kernel/python/pyproject.toml
Lines 25 to 55 in 2534964
| dependencies = [ | |
| # azure agents | |
| "azure-ai-projects >= 1.0.0b12", | |
| "azure-ai-agents >= 1.2.0b3", | |
| "aiohttp ~= 3.8", | |
| "cloudevents ~=1.0", | |
| "pydantic >=2.0,!=2.10.0,!=2.10.1,!=2.10.2,!=2.10.3,<2.12", | |
| "pydantic-settings ~= 2.0", | |
| "defusedxml ~= 0.7", | |
| # azure identity | |
| "azure-identity >= 1.13", | |
| # embeddings | |
| "numpy >= 1.25.0; python_version < '3.12'", | |
| "numpy >= 1.26.0; python_version >= '3.12'", | |
| # openai connector | |
| "openai >= 1.98.0,<2", | |
| # openapi and swagger | |
| "openapi_core >= 0.18,<0.20", | |
| "websockets >= 13, < 16", | |
| "aiortc>=1.9.0", | |
| # OpenTelemetry | |
| "opentelemetry-api ~= 1.24", | |
| "opentelemetry-sdk ~= 1.24", | |
| "prance >= 23.6.21,< 25.4.9", | |
| # templating | |
| "pybars4 ~= 0.9", | |
| "jinja2 ~= 3.1", | |
| "nest-asyncio ~= 1.6", | |
| "scipy>=1.15.1", | |
| "websockets >= 13, < 16", | |
| "aiortc>=1.9.0", |
|
@Viicos thanks for having a look, I created a new PR with the same changes and also updates to the github actions to get everything running again, so I'm going to close this one. |
Remove duplicate dependencies
Make use of
dependency-groups,dev-dependenciesis deprecatedFix uv lock file, many packages had mismatching wheel versions Add a miminum required uv version. 0.8.4 is the last one that changed the lockfile format. Requiring a miminum uv version avoids having the lockfile completely rewritten whenever a contributor makes changes with an old uv version.
cc @eavanvalkenburg @moonbox3, the broken lockfile is breaking third party tests in Pydantic. This is a weird issue, so I'm not sure what was done to get the lockfile in this broken state.
Motivation and Context
Description
Contribution Checklist