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

Ensure crate abides by the Unicode Data Files and Software License #129

Closed
lopopolo opened this issue Sep 3, 2022 · 4 comments
Closed
Labels
help wanted Extra attention is needed question Further information is requested

Comments

@lopopolo
Copy link
Contributor

lopopolo commented Sep 3, 2022

In practice I believe this means adding AND Unicode-DFS-2016 to the SPDX license expression.

See:

@lopopolo
Copy link
Contributor Author

lopopolo commented Sep 3, 2022

cc @dtolnay who first uncovered this with some Google folks.

@BurntSushi
Copy link
Owner

BurntSushi commented Sep 3, 2022

I'm fine to add license notices and files, but I will not be re-licensing bstr itself. I've already done this dance with Google people for the regex crate years ago: rust-lang/regex#530

In essence, I brought the Unicode license notice in and added a note about it to the regex-syntax README. I do not think anything else is legally required.

The only way I'd be willing to consider changing the crate license itself is if the Rust Project itself did so. The standard library, for example, makes use of data from the Unicode Character Database. Yet, the standard library is licensed as MIT/Apache-2.0. And I can't even find any Unicode license notices at all: https://github.com/rust-lang/rust/tree/master/library/core/src/unicode

Basically, I don't see any material difference in how bstr uses the UCD versus how std uses the UCD. So I won't even consider changing the license of this crate until std does. (Or unless someone makes a compelling argument for why std is somehow different than bstr.)

Otherwise, if someone cares enough about this, I'm happy to accept a PR like the one for regex-syntax that adds the Unicode license and a short notice in the README.

@BurntSushi BurntSushi added help wanted Extra attention is needed question Further information is requested labels Sep 3, 2022
@BurntSushi
Copy link
Owner

For anyone following this, see: rust-lang/rust#98116 (comment)

@BurntSushi
Copy link
Owner

BurntSushi commented May 21, 2023

Given rust-lang/rust#98116 (comment) and my own general inclination against relicensing the entire crate just because we use some Unicode data, I'm going to close this. I don't mean that in a "I just don't want to do it" sense, but in a "it's not at all clear that it is required in order to be in compliance with the Unicode consortium's license." And of course, std uses Unicode data too but doesn't include the Unicode license in its overall license.

There's also some minor risk analysis here: the Unicode license is permissive. Even if we did get this wrong in some way, the actual practical fallout for it is unlikely to ever materialize.

@BurntSushi BurntSushi closed this as not planned Won't fix, can't repro, duplicate, stale May 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants