Skip to content
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

Tracking issue for tracking licensing metadata with REUSE #99414

Open
6 of 11 tasks
pietroalbini opened this issue Jul 18, 2022 · 8 comments
Open
6 of 11 tasks

Tracking issue for tracking licensing metadata with REUSE #99414

pietroalbini opened this issue Jul 18, 2022 · 8 comments
Labels
A-licensing Area: Compiler licensing C-tracking-issue Category: An issue tracking the progress of sth. like the implementation of an RFC

Comments

@pietroalbini
Copy link
Member

pietroalbini commented Jul 18, 2022

This is a tracking issue for MCP 519: track licensing metadata with REUSE

Steps

Implementation history

@pietroalbini pietroalbini added C-tracking-issue Category: An issue tracking the progress of sth. like the implementation of an RFC A-licensing Area: Compiler licensing labels Jul 18, 2022
@pietroalbini
Copy link
Member Author

There is a problem right now when running REUSE with the --include-submodules flag in our repository (which we'll eventually want to do), as REUSE doesn't handle the formatting of some LLVM comments. Opened fsfe/reuse-tool#560 to fix that issue.

@cuviper
Copy link
Member

cuviper commented Aug 8, 2022

One caution I want to raise about REUSE is that they currently recommend uncopyrightable files to be listed as CC0, but Fedora Legal is planning to reclassify CC0 as "not allowed" for code, only "allowed-content".

https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/YUQJHPX6EC2RGXUM7VCKXKWNW6W7DKS6/

matthiaskrgr added a commit to matthiaskrgr/rust that referenced this issue Aug 20, 2022
…Simulacrum

Initial implementation of REUSE

This PR implements the first two steps of rust-lang#99414 by:

* Adding some scaffolding for REUSE. The `.reuse/dep5` file now marks every file as the custom "TODO" license, which I'll remove in a future PR once Debian imports their metadata. The TODO license is needed so that `reuse lint` works.
* Runs `reuse lint` in CI, in the `mingw-check` builder. REUSE currently has a bug when parsing some files in the LLVM source code. This means REUSE will fail when running it in source tarballs of rustc, and that bug prevents us from passing the `--include-submodules` flag in CI. I opened fsfe/reuse-tool#560 upstream with a fix, and as soon as it's merged/released I planned to bump the pinned version to include the fix we need.

r? `@Mark-Simulacrum`
@infinity0
Copy link
Contributor

infinity0 commented Sep 23, 2022

The metadata maintained in the Debian package (in the past few years, mostly by me) is valid only for a particular version of the Debian package, currently 1.60/1.61 from 4-5 months ago. It does not apply to current rust git master. Hopefully whoever owns this issue has the next two steps (Enhance.. & Automatically include..) lined up for soon, otherwise the imported metadata will become more and more wrong as time goes by.

We also specifically exclude a LOT of stuff from the Debian rust package, one of the reasons being convenience, so that we don't have to maintain the licensing metadata for it. These are listed in the imported file under the very large Files-Excluded section near the top, and includes things like mdbook, llvm, cargo, and various binary blobs. In other words, the licensing metadata imported from Debian is incomplete for the purposes of rust itself, assuming this issue is to fully-document the licensing of the rustc source tarball which pulls in stuff external to this main rust.git repo.

@pietroalbini
Copy link
Member Author

@infinity0 thanks for the comment! Indeed I know the metadata imported from Debian is incomplete, and I plan to work in the coming weeks to improve it, after which I plan to ask the foundation for help with a legal review of the metadata. I've just been surprisingly busy in the past couple of months :(

@pietroalbini
Copy link
Member Author

Added a list of REUSE issues I'm tracking in the issue body.

@pietroalbini
Copy link
Member Author

Draft PR with more licensing annotations is open at: #104527

@pietroalbini
Copy link
Member Author

REUSE 4.0.0 is now out, which adds REUSE.toml. That file fixes all of the concerns we had with REUSE, and I thus opened #127361 to migrate to it. rust-lang/rustc-perf#1939 is also something we should do to make our annotations more accurate.

@jonathanpallant
Copy link
Contributor

#133461 will:

  • Remove LICENSE-MIT and LICENSE-APACHE.
  • Replace COPYRIGHT to explain we're using REUSE and instructions on how to lookup actual metadata.
  • Auto-generate COPYRIGHT in source distributions and tarballs (it's COPYRIGHT.html and COPYRIGHT-library.html)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-licensing Area: Compiler licensing C-tracking-issue Category: An issue tracking the progress of sth. like the implementation of an RFC
Projects
None yet
Development

No branches or pull requests

4 participants