Open
Description
Is your feature request related to a problem? Please describe.
we have an implementation/detection for PEP-639 in the python environment analyzer.
it is disabled per default, can be enabled via CLI switch --PEP-639
- since the PEP was in draft mode, when it was first implemented here.
PEP-639 is going to be final, soon. see python/peps#4227
this means, it can be enabled, per default. 🥳
Describe the solution you'd like
- finalize the implementation of PEP-639 - for
pyproject.toml
and for installed packages/environment - enable the license-id/-expression behavior per default
- have the license text gathering (metadata
License-File
, pyprojectlicense-file
) disabled per default, but can be enabled as part of existing CLI switch--gather-license-texts
- remove the CLI switch
--PEP-639
With Core Metadata 2.4 a new field, License-Expression, has been added. If it's present, favor it over the deprecated (with PEP 639) legacy unstructured License field.
This means: if --gather-license-texts
is enabled
- if PEP 639 is in effect, no other license sources should be taken into account.
- license files from the
pyproject.toml
are analyzed as defined per PEP 639 (for all subcommands, not onlyenv
sources.)
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
PEP-369: https://peps.python.org/pep-0639/
see also: #575
Contribution
- I am willing to provide an implementation
- I will wait until somebody else implements it