Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add explicit MPL-2.0 licence notice "Exhibit A"
Unlike most other Free Software licences, the MPL explicitly says it applies only to files with a specific notice: 1.4. "Covered Software" means Source Code Form to which the initial Contributor has attached the notice in Exhibit A, the Executable Form of such Source Code Form, and Modifications of such Source Code Form, in each case including portions thereof. Unfortunately, this means that copying the MPL text into tree, and setting the "license" Cargo option, leaves an ambiguous situation. One might presume that the intent was to actually *use* the MPL for the whole project, but the legal licence text explicitly rejects that. Thankfully, according to the licence text, it is not actually necessary to add the notice to *every* file: If it is not possible or desirable to put the notice in a particular file, then You may include the notice in a location (such as a LICENSE file in a relevant directory) where a recipient would be likely to look for such a notice. So clarify this situation by adding two centrals explicit copy of the MPL "Exhibit A" text, one in each affected crate subtree, and declare them to apply to everything. Putting these in Cargo.toml puts them next to the "license =" tag. Another possibility would be `README.md` but IMO this legal technicality doesn't really warrant such exposure. (Putting it in the LICENCE file, as the text itself suggests, would mean either (i) renaming the verbatim copy of the MPL 2.0 and writing a new file or (ii) adding it as a rubric to the top of the MPL 2.0 text in LICENCE - resulting in a LICENCE file which is not identical to the usual MPL-2.0 text file. Neither of those seem desirable. Putting just once it at the repository toplevel would mean it didn't appear in .crate files, and also require explicitly stating which subsections of the repository are covered.)
- Loading branch information