You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: text/3493-precise-pre-release-cargo-update.md
+11Lines changed: 11 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,6 +11,10 @@ This effectively splits the notion of compatibility in `cargo`.
11
11
A pre-release version may be considered compatible when the version is explicitly requested with `--precise`.
12
12
Cargo will not automatically select that version via a basic `cargo update`.
13
13
14
+
One way to think of this is that we are changing from the the version
15
+
requirements syntax requiring opt-in to match pre-release of higher versions to
16
+
the resolver ignoring pre-releases like yanked packages, with an override flag.
17
+
14
18
# Motivation
15
19
[motivation]: #motivation
16
20
@@ -147,6 +151,13 @@ This RFC may be a stepping stone in that direction since it lays the groundwork
147
151
[RFC: Precise Pre-release Deps](https://github.com/rust-lang/rfcs/pull/3263) aims to solve a similar but different issue where `cargo update` opts to upgrade
148
152
pre-release versions to new pre-releases when one is released.
149
153
154
+
Implementation-wise, this is very similar to how yanked packages work.
155
+
- Not selected under normal conditions
156
+
- Once its in the lockfile, that gets respected and stays in the lockfile
157
+
158
+
The only difference being that `--precise` does not allow overriding the "ignore yank" behavior
159
+
(though [it is desired by some](https://github.com/rust-lang/cargo/issues/4225)).
0 commit comments