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.
Resolves #109.
PR Checklist
docs
is updatedDescription of changes
Add support for PEP 621 dependency specification. This will ensure that modern package managers that follow PEP 621 are supported.
The implementation makes the assumption that optional dependencies under
[project.optional-dependencies]
are all non-development ones. In a follow up PR, #162 (comment) could be an interesting option to have to define groups that should be considered development dependencies groups.Since PDM uses PEP 621 (with an additional logic for development dependencies), this PR also updates its dependency getter class so that it subclasses the PEP 621 one in order to avoid duplication.
The dependency specification detector is also slightly updated so that projects using PDM will only use PDM dependency getter class if they define development dependencies under
[tool.pdm.dev-dependencies]
. Otherwise, we fallback to PEP 621 dependency getter class, since there is no PDM specifics related to dependencies.