Bug 2127946

Summary: PEP 639: %pyproject_save_files do not take *Root License Directory* into consideration for %license
Product: [Fedora] Fedora Reporter: Miro Hrončok <mhroncok>
Component: pyproject-rpm-macrosAssignee: Miro Hrončok <mhroncok>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: code, mhroncok, pnemade, pviktori, python-packagers-sig
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: pyproject-rpm-macros-1.4.0-1.fc38 pyproject-rpm-macros-1.4.0-1.fc37 pyproject-rpm-macros-1.4.0-1.fc35 pyproject-rpm-macros-1.4.0-1.fc36 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-10-04 15:12:27 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Miro Hrončok 2022-09-19 12:38:30 UTC
The License-File core metadata tag definition in https://peps.python.org/pep-0639/ was updated. Specifically:

> Root License Directory (Short: License Directory)
> The directory under which license files are stored in a project/distribution
> and the root directory that their paths, as recorded under the License-File
> core metadata fields, are relative to. Defined here to be the project root
> directory for source trees and source distributions, and a subdirectory
> named licenses of the directory containing the core metadata
> (i.e., the .dist-info/licenses directory) for built distributions and
> installed projects.

And:

> As specified by this PEP, [License-File] value is also that file’s path relative to the root license directory in [...] installed projects [...]


Not supporting this means that despite hatch(ling) correctly marking files as License-Files, the macros don't mark them as such.
We consider the files to be relative to the dist-info directory which is how it was before and AFAIk how setuptools does it.

We need to update to the new behavior and ensure setuptools does that as well. As a transition period, we might add code that considers both approaches (relative to dist-info OR relative to dist-info/licenses).

Comment 1 Miro Hrončok 2022-09-19 12:45:36 UTC
setuptools RFE: https://github.com/pypa/setuptools/issues/3596

Comment 2 Ben Beasley 2022-09-19 13:02:42 UTC
(In reply to Miro Hrončok from comment #0)
> Not supporting this means that despite hatch(ling) correctly marking files
> as License-Files, the macros don't mark them as such.

Thanks for following up on this.

Comment 4 Fedora Update System 2022-10-03 11:49:10 UTC
FEDORA-2022-8e5db6b83a has been submitted as an update to Fedora 38. https://bodhi.fedoraproject.org/updates/FEDORA-2022-8e5db6b83a

Comment 5 Fedora Update System 2022-10-03 11:51:07 UTC
FEDORA-2022-8e5db6b83a has been pushed to the Fedora 38 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 6 Fedora Update System 2022-10-03 12:02:37 UTC
FEDORA-2022-190d3df912 has been submitted as an update to Fedora 37. https://bodhi.fedoraproject.org/updates/FEDORA-2022-190d3df912

Comment 7 Fedora Update System 2022-10-03 12:03:40 UTC
FEDORA-2022-c4d503f53c has been submitted as an update to Fedora 36. https://bodhi.fedoraproject.org/updates/FEDORA-2022-c4d503f53c

Comment 8 Fedora Update System 2022-10-03 12:04:22 UTC
FEDORA-2022-c8124fba28 has been submitted as an update to Fedora 35. https://bodhi.fedoraproject.org/updates/FEDORA-2022-c8124fba28

Comment 9 Fedora Update System 2022-10-04 01:22:53 UTC
FEDORA-2022-190d3df912 has been pushed to the Fedora 37 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2022-190d3df912`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-190d3df912

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 10 Fedora Update System 2022-10-04 01:44:53 UTC
FEDORA-2022-c4d503f53c has been pushed to the Fedora 36 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2022-c4d503f53c`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-c4d503f53c

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 11 Fedora Update System 2022-10-04 02:01:38 UTC
FEDORA-2022-c8124fba28 has been pushed to the Fedora 35 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2022-c8124fba28`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-c8124fba28

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 12 Fedora Update System 2022-10-04 15:12:27 UTC
FEDORA-2022-190d3df912 has been pushed to the Fedora 37 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 13 Fedora Update System 2022-10-11 11:12:52 UTC
FEDORA-2022-c8124fba28 has been pushed to the Fedora 35 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 14 Fedora Update System 2022-10-11 11:32:36 UTC
FEDORA-2022-c4d503f53c has been pushed to the Fedora 36 stable repository.
If problem still persists, please make note of it in this bug report.