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

Ada's license #47894

Closed
RaisinTen opened this issue May 6, 2023 · 6 comments · Fixed by #47922
Closed

Ada's license #47894

RaisinTen opened this issue May 6, 2023 · 6 comments · Fixed by #47922
Labels
dependencies Pull requests that update a dependency file.

Comments

@RaisinTen
Copy link
Contributor

Ada had 2 license files - LICENSE-APACHE and LICENSE-MIT from the initial commit but when Ada was added to Node.js in #46410, only the MIT license of Ada was added to the Node.js' LICENSE file. Is this intentional or should we also add Ada's Apache license to the Node.js license?

Also, the license section on Ada's readme, which was added in ada-url/ada#328, says:

License

This code is made available under the Apache License 2.0 as well as the MIT license. For unicode processing, we rely on a few functions from UniLib which are licensed under the Mozilla Public License v.2.0.

Our tests include third-party code and data. The benchmarking code includes third-party code: it is provided for research purposes only and not part of the library.

So should we also include a copy of Mozilla Public License Version 2.0?

cc @anonrig @lemire

@bnoordhuis
Copy link
Member

If something is dual-licensed (or triple-licensed), you can pick the license you want - in our case MIT.

It couldn't be any other way because the MPL is a no-go for a MIT-licensed project like Node.js.

@anonrig
Copy link
Member

anonrig commented May 6, 2023

@bnoordhuis a small portion of ada/idna uses mozilla licensed code. should we focus on replacing it with a mit-based solution?

@tniessen tniessen added the dependencies Pull requests that update a dependency file. label May 6, 2023
@tniessen
Copy link
Member

tniessen commented May 6, 2023

a small portion of ada/idna uses mozilla licensed code

Does that code exist in this repository? Adding code to deps/ada that is not covered by deps/ada/LICENSE-MIT is problematic (or, as Ben said, a no-go).

@lemire
Copy link
Member

lemire commented May 6, 2023

The ada README can be useful...

https://github.com/ada-url/ada#license

https://github.com/ada-url/ada/blob/4215aed05d6b98fbab7ab310f62d16ff90380924/src/ada_idna.cpp#L2734

It is not hard for us to eliminate the UniLib code, it was integrated to save time but could be rewritten from scratch easily.

@RaisinTen
Copy link
Contributor Author

Does that code exist in this repository?

Yes, it's present in deps/ada:

node/deps/ada/ada.cpp

Lines 2853 to 2863 in 6fb10ca

// This file is part of UniLib <http://github.com/ufal/unilib/>.
//
// Copyright 2014 Institute of Formal and Applied Linguistics, Faculty of
// Mathematics and Physics, Charles University in Prague, Czech Republic.
//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
//
// UniLib version: 3.3.1-dev
// Unicode version: 15.0.0

@anonrig
Copy link
Member

anonrig commented May 7, 2023

@lemire removed UniLib code from Ada. we'll soon release v2.4.0. ada-url/idna#28

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants