mdbook-html: Account for licenses of bundled JavaScript libraries and artwork - #3144
mdbook-html: Account for licenses of bundled JavaScript libraries and artwork#3144decathorpe wants to merge 2 commits into
Conversation
favicon license (canonical copy of the CC-BY-4.0 text): https://creativecommons.org/licenses/by/4.0/legalcode.txt clipboard.js license text: https://github.com/zenorocha/clipboard.js/blob/v2.0.5/LICENSE highlight.js license text: https://github.com/highlightjs/highlight.js/blob/10.1.1/LICENSE elasticlunr.js license text: https://github.com/weixsong/elasticlunr.js/blob/v0.9.5/LICENSE mark.js license text: https://github.com/julkue/mark.js/blob/8.11.1/LICENSE
Licenses covering bundled JavaScript libraries: - ace.js: BSD-3-Clause - clipboard.js: MIT - elasticlunr.js: MIT - highlight.js: BSD-3-Clause - mark.js: MIT Licenses covering bundled content / fonts: - favicon: CC-BY-4.0 - open-sans: Apache-2.0 - source-code-pro: OFL-1.1
| description = "mdBook HTML renderer" | ||
| edition.workspace = true | ||
| license.workspace = true | ||
| license = "MPL-2.0 AND Apache-2.0 AND BSD-3-Clause AND CC-BY-4.0 AND MIT AND OFL-1.1" |
There was a problem hiding this comment.
I wonder if the license field is for the whole crate or for the rust code. And even worse: if we don't enable the "editable codeblock" feature, some of the licenses are not in use.
There was a problem hiding this comment.
I wonder if the license field is for the whole crate or for the rust code.
Right, I have not ever seen a conclusive decision about this - but since this is the license string that is prominently displayed in various places (like the crates.io page) ... 🤷🏼♂️
For what it's worth, the legal guidance we have received from Red Hat lawyers for Fedora packaging is that our license metadata should just enumerate the licenses of everything that's included in a package.
And even worse: if we don't enable the "editable codeblock" feature, some of the licenses are not in use.
Barring conditional crate metadata ("if feature foo is enabled then license this else that") this is not expressible. Additionally, this seems to be related to the kind of book content that mdbook generates at runtime - but that has no bearing on whether this content (JavaScript, etc.) gets compiled / statically embedded into the mdbook executable, which happens unconditionally.
There was a problem hiding this comment.
Including license texts for all bundled components should be the uncontroversial part here though, I can drop changing the package.license metadata for the mdbook-html crate from this PR for now, if that helps?
There was a problem hiding this comment.
I pinged someone who might know more about, so let's just wait for their input. Sorry for they delay here, it's the kind of things you don't want to mess up so rather than making you do more changes for nothing, better to wait for their input.
|
@Manishearth Should we bring this topic up to the project? |
This is an attempt to address issue #2956
The first commit adds the missing license texts:
favicon license (canonical copy of the CC-BY-4.0 text):
https://creativecommons.org/licenses/by/4.0/legalcode.txt
clipboard.js license text:
https://github.com/zenorocha/clipboard.js/blob/v2.0.5/LICENSE
highlight.js license text:
https://github.com/highlightjs/highlight.js/blob/10.1.1/LICENSE
elasticlunr.js license text:
https://github.com/weixsong/elasticlunr.js/blob/v0.9.5/LICENSE
mark.js license text:
https://github.com/julkue/mark.js/blob/8.11.1/LICENSE
The second commit updates the
package.licenseof the mdbook-html crate to account for all included code and content.