Replies: 4 comments 7 replies
-
I would be interested in this as well. I think you can use an extra for this (and/or the ability to lock single groups into different lock files), but you'd have to specify and pin all transitive dependencies not just direct ones, which is a bit cumbersome. |
Beta Was this translation helpful? Give feedback.
-
The same idea has been expressed in #906 I don't think it is that useful in Python's packaging system. For example, you will probably get |
Beta Was this translation helpful? Give feedback.
-
This topic has been discussed in the pip context in detail for two and a half years, e.g., how to deal with direct and transitive dependencies. I agree that going minimal with both direct and transitive dependencies will most likely leave you with a broken installation, a mixed approach might work: minimum version for direct dependencies (as the author of the package you have control over this) and maximum version for transitive dependencies. There will be corner cases for sure (e.g. dependencies which are both direct and transitive), but I think they can be handled as well. For me, the use case of such a functionality would be to find out if the minimum versions I have chosen actually work. |
Beta Was this translation helpful? Give feedback.
-
Formal issue opened at #2310. |
Beta Was this translation helpful? Give feedback.
-
How about
pdm
offers an optional mode where it installs the minimum version of all dependencies?I know that this might sound weird, but it does have some advantages: more reproducible builds, works better with CalVer, you actually tested the code with the dependency versions others will use
This could be an option in the project file and/or a command line switch during installation.
This idea is neither new nor mine. I actually saw it as the default mode in Atlas, a package cloner for nim.
Beta Was this translation helpful? Give feedback.
All reactions