Experimental: Add support for building pinned artifacts #71
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.
This change allows poetry projects to be configured via pyproject.toml
to optionally enable version pinning and also to include nested
dependencies for application wheels.
NOTE: This is only a proposal, intended to serve as a basis for internal discussion.
Requires: #74 #75
There are some obvious deficiencies to this appraoch.
pyproject.toml
file. So this means noinstall from lockfile
option. Although, we are a step closer to that now.An additional beneifit here is that we can improve the
requirements.txt
export using this mechanism.Relates-to: python-poetry/poetry#2778 python-poetry/poetry#2331
To test this from
poetry
, you can install this branch into your poetry environment, patch theLocker
implementation by inherting frompoetry.core.lock.locker.Locker
ony keeping the_locked_repository
method; and then add the following to yourpyproject.toml
.Once that is done, you can simply use
poetry build
.Example Generated Metadata
The content below was generated from the poetry's lock file.
dependencies = { lock = false, nested = false}
dependencies = { lock = true, nested = false}
dependencies = { lock = true, nested = true}
dependencies = { lock = false, nested = true}