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

Release v0.2.12 #389

Merged
merged 6 commits into from
Jan 9, 2024
Merged

Release v0.2.12 #389

merged 6 commits into from
Jan 9, 2024

Conversation

newpavlov
Copy link
Member

@newpavlov newpavlov commented Jan 7, 2024

Fixed

  • Custom backend for targets without atomics #385

Changed

  • Improve robustness of the Hermit backend and sys_fill_exact #386
  • Raise minimum supported Apple OS versions to macOS 10.12 and iOS 10 #388

Added

  • Document platform support policy #387

@@ -1,4 +1,4 @@
// Copyright 2023 Developers of the Rand project.
// Copyright 2023-2024 Developers of the Rand project.
Copy link
Member Author

@newpavlov newpavlov Jan 7, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we should remove these copyright lines from source code files? Personally, I think they are somewhat pointless, especially considering that we do not include full copyright notices as stated by MIT and Apache licenses.

cc @dhardy

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can't offer legal advice @newpavlov.

That said, I guess the purpose may be to have a documented source/copyright owner in case a file is copied in absense of the rest of the code. That said, searching "the Rand project" on Google doesn't appear to help (we should have chosen a better name?).

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that including license information in each file is important for project which mix different licenses (like the horrible mess in the pre-3.0 OpenSSL). In our case we require that all contributions are licensed under MIT OR Apache 2.0 terms (could be worth to add an explicit contribution section to README) and we use the umbrella copyright "owner" instead of recording personal contributions in licensing notices.

We do not distribute separate source files, in our case unit of distribution is the whole crate and we already include the appropriate license files in published crates and keep them as part of the repository.

In the Apache license appendix it's implied that the notice should be included in each source file to apply the license. But in my understanding it's nothing more than a recommendation and, either way, we do not follow the notice format in the first place.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we lose anything by removing the notice? I don't think so since copyright is supposed to be automatic.

Maybe the best option is to mention the licence with a link to the COPYRIGHT file (if we even have that here) in the README and in the top-level library docs (so that it shows up in generated docs; strange that nobody seems to do that), but not bother in other source files (aside from the Cargo.toml line).

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the current notice in README should be sufficient and adding a similar notice to the library docs sounds reasonable. In future, after an appropriate MSRV bump we should use #![doc = include_str!("../README.md")] to reduce duplication.

strange that nobody seems to do that

I think most people simply consider this information redundant in docs. Documentation is for people who want to learn how to use the crate, while licensing information is available in Cargo.toml, on crates.io, and even on docs.rs. Plus, it can be retrieved automatically using tools like cargo license and overwhelming amount of crates on crates.io is published under liberal licenses, so having similar MIT/Apache terms in most of crates' docs would feel like a waste of space.

LICENSE-MIT Outdated Show resolved Hide resolved
src/lib.rs Outdated
Comment on lines 153 to 166
//! # License
//!
//! The `getrandom` library is distributed under either of
//!
//! * [Apache License, Version 2.0][LICENSE-APACHE]
//! * [MIT license][LICENSE-MIT]
//!
//! at your option.
//!
//! ## Contribution
//!
//! Unless you explicitly state otherwise, any contribution intentionally submitted
//! for inclusion in the work by you, as defined in the Apache-2.0 license, shall be
//! dual licensed as above, without any additional terms or conditions.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good. (Though probably the contribution part only needs to appear in the README.)

@dhardy
Copy link
Member

dhardy commented Jan 7, 2024

(Ignore that; I shouldn't be reviewing this repo.)

Copy link
Member

@josephlr josephlr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Thanks for removing all the per-file copyright headers. We were never consistent about this stuff regardless. Having the LICENSE files, README, and Cargo.toml metadata be the authoritative place for this works for me.

@josephlr
Copy link
Member

josephlr commented Jan 8, 2024

@newpavlov I'll let you merge and publish this (as I've published on the wrong date before). Also, at your option, we could remove the Licensing documentation from the RustDocs (lib.rs), as it doesn't really cover how to use the crate, but rather how to contribute to the crate.

I like the documentation updates though, much clearer now.

@newpavlov newpavlov merged commit f68a940 into master Jan 9, 2024
49 checks passed
@newpavlov newpavlov deleted the release/v0.2.12 branch January 9, 2024 05:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants