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

Allow the ryu dependency be opt-out #474

Closed
kennytm opened this issue Aug 25, 2018 · 5 comments
Closed

Allow the ryu dependency be opt-out #474

kennytm opened this issue Aug 25, 2018 · 5 comments
Labels

Comments

@kennytm
Copy link

kennytm commented Aug 25, 2018

ryu is Apache-2.0 which may be unacceptable for a MIT-only reverse dependency.

We could make ryu optional (and required by the arbitrary_precision feature), and make write_f32/write_f64 use the standard library's formatter when ryu is not used.

@dtolnay
Copy link
Member

dtolnay commented Aug 25, 2018

Thanks for the suggestion. The original C implementation my ryu crate is based on is dual licensed Apache 2.0 + Boost 1.0. Would it help if I make the ryu Rust code available under Boost 1.0? Boost is strictly less restrictive than MIT i.e. Boost is identical to MIT except that when distributing only "machine-executable object code generated by a source language processor" then there are no obligations whatsoever. I am not a lawyer but that seems like any MIT-only reverse dependency would be able to satisfy the terms of the Boost license.

@dtolnay
Copy link
Member

dtolnay commented Aug 25, 2018

Alternatively we could reach out to the original authors asking to make their code available to us under the terms of the MIT license.

@kennytm
Copy link
Author

kennytm commented Aug 25, 2018

Law-wise I think following the original license choice (Apache-2.0/BSL-1.0) is a good idea (IANAL).

I raised this issue because it triggered rustc's license checker. So even with the license change, the tools would still need to know that BSL is compatible with MIT.

@dtolnay
Copy link
Member

dtolnay commented Aug 25, 2018

Done in ryu 0.2.6. Let's leave this issue open until the legal stuff is sorted on rustc's end.

@dtolnay
Copy link
Member

dtolnay commented Sep 9, 2018

I am not sure whether this is still moving or who is responsible for following up in the license checker tool, so I'll give this a close. Let me know if there is anything more needed on my end.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

No branches or pull requests

2 participants