doc: nudge towards simple version requirements#10158
Merged
bors merged 4 commits intorust-lang:masterfrom Dec 5, 2021
Merged
Conversation
|
r? @Eh2406 (rust-highfive has picked a reviewer for you, use r? to override) |
matklad
commented
Dec 4, 2021
| string does not have any operators in it, it is interpreted the same way as | ||
| if we had specified `"^0.1.12"`, which is called a caret requirement. | ||
|
|
||
| [semver]: https://github.com/steveklabnik/semver#requirements |
Contributor
Author
There was a problem hiding this comment.
This link is now dead, and the new docs actually refer to this document to explain how requirements work 🤣
weihanglo
reviewed
Dec 4, 2021
Co-authored-by: Weihang Lo <weihanglo@users.noreply.github.com>
Contributor
|
Thanks, this looks good! Would you mind making a few other minor updates related to this?
There are a few places where these can link. I'll leave it up to you to decide, but some options are:
|
Contributor
Author
|
Updated and also filed #10169 for the possible follow up. It seems that the core problem here is that there's simply isn't an official spec for requirements. |
Contributor
|
Thanks! @bors r+ |
Contributor
|
📌 Commit ec3909e has been approved by |
Contributor
Contributor
|
☀️ Test successful - checks-actions |
matthiaskrgr
added a commit
to matthiaskrgr/rust
that referenced
this pull request
Dec 7, 2021
Update cargo 8 commits in 294967c53f0c70d598fc54ca189313c86c576ea7..40dc281755137ee804bc9b3b08e782773b726e44 2021-11-29 19:04:22 +0000 to 2021-12-06 21:54:44 +0000 - Unify the description of quiet flag (rust-lang/cargo#10168) - Stabilize future-incompat-report (rust-lang/cargo#10165) - Support abbreviating `--release` as `-r` (rust-lang/cargo#10133) - doc: nudge towards simple version requirements (rust-lang/cargo#10158) - Upgrade clap to 2.34.0 (rust-lang/cargo#10164) - Treat EOPNOTSUPP the same as ENOTSUP when ignoring failed flock calls. (rust-lang/cargo#10157) - Add note about RUSTFLAGS removal from build scripts. (rust-lang/cargo#10141) - Make clippy happy (rust-lang/cargo#10139)
matthiaskrgr
added a commit
to matthiaskrgr/rust
that referenced
this pull request
Dec 8, 2021
Update cargo 8 commits in 294967c53f0c70d598fc54ca189313c86c576ea7..40dc281755137ee804bc9b3b08e782773b726e44 2021-11-29 19:04:22 +0000 to 2021-12-06 21:54:44 +0000 - Unify the description of quiet flag (rust-lang/cargo#10168) - Stabilize future-incompat-report (rust-lang/cargo#10165) - Support abbreviating `--release` as `-r` (rust-lang/cargo#10133) - doc: nudge towards simple version requirements (rust-lang/cargo#10158) - Upgrade clap to 2.34.0 (rust-lang/cargo#10164) - Treat EOPNOTSUPP the same as ENOTSUP when ignoring failed flock calls. (rust-lang/cargo#10157) - Add note about RUSTFLAGS removal from build scripts. (rust-lang/cargo#10141) - Make clippy happy (rust-lang/cargo#10139)
matthiaskrgr
added a commit
to matthiaskrgr/rust
that referenced
this pull request
Dec 8, 2021
Update cargo 8 commits in 294967c53f0c70d598fc54ca189313c86c576ea7..40dc281755137ee804bc9b3b08e782773b726e44 2021-11-29 19:04:22 +0000 to 2021-12-06 21:54:44 +0000 - Unify the description of quiet flag (rust-lang/cargo#10168) - Stabilize future-incompat-report (rust-lang/cargo#10165) - Support abbreviating `--release` as `-r` (rust-lang/cargo#10133) - doc: nudge towards simple version requirements (rust-lang/cargo#10158) - Upgrade clap to 2.34.0 (rust-lang/cargo#10164) - Treat EOPNOTSUPP the same as ENOTSUP when ignoring failed flock calls. (rust-lang/cargo#10157) - Add note about RUSTFLAGS removal from build scripts. (rust-lang/cargo#10141) - Make clippy happy (rust-lang/cargo#10139)
matthiaskrgr
added a commit
to matthiaskrgr/rust
that referenced
this pull request
Dec 8, 2021
Update cargo 8 commits in 294967c53f0c70d598fc54ca189313c86c576ea7..40dc281755137ee804bc9b3b08e782773b726e44 2021-11-29 19:04:22 +0000 to 2021-12-06 21:54:44 +0000 - Unify the description of quiet flag (rust-lang/cargo#10168) - Stabilize future-incompat-report (rust-lang/cargo#10165) - Support abbreviating `--release` as `-r` (rust-lang/cargo#10133) - doc: nudge towards simple version requirements (rust-lang/cargo#10158) - Upgrade clap to 2.34.0 (rust-lang/cargo#10164) - Treat EOPNOTSUPP the same as ENOTSUP when ignoring failed flock calls. (rust-lang/cargo#10157) - Add note about RUSTFLAGS removal from build scripts. (rust-lang/cargo#10141) - Make clippy happy (rust-lang/cargo#10139)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Cargo is very ingeniously designed such that the simplest thing you can do when sepcifying a dependency,
time = "1.2.3", is also the best thing you can do. However, new Rust folks often overthink this, and use more verbose syntaxes, which at best is unnecessary, and and at worst creates pains downstream. For example, https://github.com/elastic/elasticsearch-rs/blob/master/elasticsearch/Cargo.toml contains a mistrue of default,~and^requirements, which lets the reader wondering what's going on.Let's try to help the situation by focusing on default requirements in the docs