-
-
Notifications
You must be signed in to change notification settings - Fork 413
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
Incompatibility with PEP 621 #748
Comments
I guess there's an issue with classifiers as well then. Too bad, it means we cannot specify some classifiers statically and let the build backend add some more dynamically... |
Yeap, the 2 things cannot exist at the same time unless using a The PEP goes even further and says:
So it is "not allowed" to implicitly add classifiers to the user-given list (i.e. add extra classifiers to PKG-INFO/METADATA without the field being listed in |
Thanks, I've also noticed that and planned to change someday. |
Should we start a discussion on discord about this, at least for the classifiers? It is a very handy feature... I don't know how the community would feel about creating another PEP to amend this one, though... It might be difficult to get people on board. |
Sure, join the PDM discord channel which can be found in the README |
Sorry, I mean a discussion with the packaging community about amending the PEP... |
Okay, then https://discuss.python.org/c/packaging/14 should be the correct place, would you like to create a topic there? |
But IMO according to the spirit of |
I understande @frostming, and I don't have a better approach. Maybe the best is to align with the PEP. |
So the ability to automatically specify Python version classifiers has been fully removed: I feel like that was a huge overreaction. Surely there are ways to keep this functionality under a different config key. And I wasn't specifying any extra static classifiers anyway. I'm once again in a situation where I'm lacking features compared to Poetry This, along with the fact that features are being removed like this just on a whim, is again a showstopper for me. |
You mean marking |
Well in the end, I like declaring my classifiers as static, because it forces me to actually add some meaningful ones 😁 |
Hi guys I am under the impression that
pdm
is not compatible with PEP 621 (I have been working in apyproject.toml
validator and this problem showed up when running it against some projects created usingpdm
).In particular the problems lie in the following parts of the spec:
PDM documentation indicate that users can do
version = {use_scm = true}
orversion = {from = "pdm/__init__.py"}
, which violates the spec in (1).Regarding item (2), I understand that passing
version = {use_scm = true}
orversion = {from = "pdm/__init__.py"}
doesn't really is specifying a field statically, but this is still a very controversial usage/interpretation of the standard.Make sure you run commands with
-v
flag before pasting the output.Steps to reproduce
pyproject.toml
pyproject.toml
file against PEP 621Actual behavior
PDM accepts a inline-table
version
.Expected behavior
PDM should error when
version
is not a string.Additional tool-specific information needed for dynamic version discovery, should be stored in
tool.pdm
The text was updated successfully, but these errors were encountered: