generated from amazon-archives/__template_MIT-0
-
Notifications
You must be signed in to change notification settings - Fork 41
Consolidate Dependencies and make UV default #99
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
Open
kazmer97
wants to merge
4
commits into
aws-solutions-library-samples:develop
Choose a base branch
from
kazmer97:feat/consolidate-dependencies
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Consolidate Dependencies and make UV default #99
kazmer97
wants to merge
4
commits into
aws-solutions-library-samples:develop
from
kazmer97:feat/consolidate-dependencies
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
d9d8d54 to
9650ba2
Compare
|
This branch also does not build due to lint errors reported by publish script |
09b00b0 to
0322ee3
Compare
|
just fixed it |
|
please verify (1) that scope of changes is not greater than intended, and (2) that you can sucessfully make lint, make test, publish, and deploy new stack (pattern-1,2,3) from this branch.. Many tx! |
314b9f7 to
42d5b34
Compare
|
@rstrahan yes the scope of the PR is right, we had a lot of requirements.txt across the codebase |
d3d0a33 to
bed265b
Compare
bed265b to
ecc0d87
Compare
b028d29 to
3dc53bf
Compare
8ceaa1b to
dc3ddb8
Compare
9ddc0d3 to
19a002b
Compare
19a002b to
371ad51
Compare
371ad51 to
c6af670
Compare
c6af670 to
f2cec3b
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.


Issue #, if available:
Complete UV Migration & Dependency Consolidation
Summary
This PR completes the migration from pip/requirements.txt to UV with PEP 735 dependency groups
across the entire project. All Lambda functions, CI/CD pipelines, and development workflows now
use UV for faster, more reliable dependency management.
Key Changes
🎯 Dependency Management Migration
requirements.txtto UV dependency groupspyproject.tomlfor Lambda functions:lambda-kb-*)lambda-bda-project)udop-finetuning-dev)BuildMethod: makefilemetadata🚀 CI/CD Pipeline Updates
uv sync --no-devfor reproducible builds📦 Package Consolidation
pyproject.tomluv.lock) for entire project ensures consistency📝 Documentation & Cleanup
idp_cli/README.mdwith UV-first approachBenefits
⚡ Performance Improvements
🔒 Reliability & Reproducibility
pyproject.toml🛠️ Developer Experience
make initsets up entire workspace📊 Maintainability
Migration Details
Lambda Functions Migrated
Files Changed
• 16 files modified
• 404 lines added (dependency groups, Makefiles, docs)
• 40 lines removed (obsolete requirements.txt)
• Net improvement: Better structure with similar line count
Remaining requirements.txt (Intentional)
Two requirements.txt files correctly remain:
• Required by SageMaker - cannot be migrated
• Properly documented with comments
• References dependency group in comments
• Provides pip fallback for users
Backwards Compatibility
• ✅ No breaking changes to Lambda runtime behavior
• ✅ SAM build process unchanged (still uses Makefiles)
• ✅ Deployment process identical for end users
• ✅ Published packages (idp_common, idp_cli) work as before
Migration Path for Developers
Before (pip/requirements.txt)
pip install -r requirements.txt
pip install -e lib/idp_common_pkg
pip install -e idp_cli
After (UV/dependency groups)
make init # or: uv sync --all-extras --group dev
Future Improvements Enabled
This migration enables several future enhancements:
• ✅ Faster dependency updates: uv lock --upgrade updates everything
• ✅ Better conflict resolution: UV's resolver handles complex scenarios
• ✅ Workspace features: Could add more packages to workspace
• ✅ Pre-built wheels: UV can leverage Python 3.12+ speed improvements
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.