serverless-python-requirements
serverless-python-requirements copied to clipboard
feat: support uv-managed projects
Resolves #849
Adds support for uv managed projects, following the project's existing pattern of exporting a requirements file using the relevant project tool.
This does buck one-convention in this repo, in that it requires the user to have generated their own lock file, which is generally a best-practice when using one of these project management tools, and inspects for the existence of the uv.lock file as part of its check as to whether or not uv can be utilized with this plugin. This could be an issue for teams that are not otherwise committing their lock files to their repos and have automated deployments of their application in a CI/CD pipeline, although there exists trivial solutions to overcome that barrier.
Note: there is another issue, #830, which also asks for uv support in replacing pip, which this PR does not intend to include.
Would love to have this!
I'm looking forward to this feature. UV support would be a great addition to the plugin. I appreciate the work on this!
@czubocha as the last one to publish a release, any idea who's looking into PRs, this would be quite valuable!
+1 Would be great to see this merged. Our build system is currently split between multiple packaging tools because we can't use uv with serverless.
+1
I also would like for this PR to get traction, thank you for opening! +1
+1
Good news - the serverless-python-requirements plugin is now integrated into Serverless Framework v4.22.0! π
This release introduces built-in uv support and ensures that all dependencies have been upgraded to their latest secure versions.
Itβs fully backward compatible, covered under the same SLA and maintenance policy as the Framework itself.
Because of this integration, the standalone serverless-python-requirements plugin is now deprecated and will no longer be maintained separately.
The built-in integration activates automatically whenever a custom.pythonRequirements block is present in your config.
To switch to it, simply remove the plugin entry from your plugins list in serverless.yml and you can also remove it from your package.json dependencies.
π Check out the official docs for more details.
From now on, please report all issues and feature requests related to this integration in the Serverless Framework repository.
Thanks everyone for your patience, feedback, and contributions! πͺ