-
Notifications
You must be signed in to change notification settings - Fork 9
Description
Hey,
I was testing mzcore and noticed that my CI/CD pipeline (using cargo deny) flagged an issue with one dependency (context_error) being licensed under the European Union Public Licence, Version 1.2 (EUPL-1.2).
According to the EUPL-1.2 licence text and its compatibility clause (Appendix, see https://eupl.eu/1.2/en/), Apache-2.0 and MIT are not listed as compatible outgoing licences.
Since context_error (the dependency with the EUPL-1.2 license) is statically linked into the Rust binaries and mzcore distribute those binaries, this creates a derivative work. As a result, mzcore cannot be distributed under Apache-2.0 or MIT while including this dependency.
The combined work would need to be licensed under EUPL-1.2 or one of its listed compatible licenses.
This makes this project very dangerous for a lot of people because the license field within the Cargo.toml now clearly states a wrong fact.
I would also advocate to not move the whole project to any of the compatible licenses because they are too restrictive.
Questions/Ideas
- Are there any easy ways to change the historical Cargo.toml content to warn people? I only see ways to yank it which doesn't change/warn.
- Ask @douweschulte to move
context_errorto Apache-2.0 or MIT if the license is not too important to him. - A lot of rework: make context_error an optional dependency