Skip to content

Commit e05f602

Browse files
committed
Add changelog for 1.28.0
1 parent ae5dec6 commit e05f602

File tree

1 file changed

+188
-1
lines changed

1 file changed

+188
-1
lines changed

CHANGELOG.md

Lines changed: 188 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,192 @@
11
# Changelog
22

3+
## [1.28.0] - ?
4+
5+
The new release of rustup has been a long time in the making and comes with substantial changes.
6+
7+
The following improvements might require changes to how you use rustup:
8+
9+
- rustup will no longer automatically install the active toolchain if it is not installed. [pr#3985]
10+
11+
* To ensure its installation, run `rustup toolchain install` with no arguments.
12+
* The following command installs the active toolchain both before and after this change:
13+
```sh
14+
rustup show active-toolchain || rustup toolchain install
15+
# Or, on older versions of PowerShell:
16+
rustup show active-toolchain; if ($LASTEXITCODE -ne 0) { rustup toolchain install }
17+
```
18+
19+
- Installing a host-incompatible toolchain via `rustup toolchain install` or `rustup default` will
20+
now be rejected unless you explicitly add the `--force-non-host` flag. [pr#4028]
21+
22+
rustup now officially supports the following host platforms:
23+
24+
- `aarch64-pc-windows-msvc` [pr#3840]
25+
- `loongarch64-unknown-linux-musl` [pr#3921]
26+
27+
We have additionally made the following internal changes:
28+
29+
- The default download backend has been changed from reqwest with native-tls to reqwest with rustls. [pr#3798]
30+
- `RUSTUP_USE_CURL` and `RUSTUP_USE_RUSTLS` can still be used to change the download backend
31+
if the new backend causes issues. If issues do happen, please [let us know](https://github.com/rust-lang/rustup/issues/3806).
32+
- The default backend now uses rustls-platform-verifier to verify server certificates, taking
33+
advantage of the platform's certificate store on platforms that support it. [pr#3903]
34+
- When creating proxy links, rustup will now try symlinks first and fall back to hardlinks,
35+
as opposed to trying hardlinks first. [pr#4023]
36+
- A new `RUSTUP_LOG` environment variable can be used to control tracing-based logging in
37+
rustup binaries. See the [dev guide](https://rust-lang.github.io/rustup/dev-guide/tracing.html) for more details. [pr#3875]
38+
39+
Additionally, [Chris Denton](https://github.com/chrisdenton) joined the team. Chris has a lot of experience contributing to
40+
Windows-related parts of the Rust Project, expertise which was sorely lacking in existing team
41+
members, so we're happy to have him on board to help address Windows-specific issues.
42+
43+
### Detailed changes
44+
45+
* Replace remaining `winapi` usage with `windows-sys` by @kennykerr in https://github.com/rust-lang/rustup/pull/3802
46+
* docs(dev-guide): remove “pushing to master” in the release process by @rami3l in https://github.com/rust-lang/rustup/pull/3789
47+
* refactor(download): use `DownloadCallBack` in `download_with_backend()` by @rami3l in https://github.com/rust-lang/rustup/pull/3795
48+
* Update MSVC requirements to VS 2017 to match Rust repo by @dpaoliello in https://github.com/rust-lang/rustup/pull/3799
49+
* feat(download-backend)!: make `reqwest/rustls` the new default by @rami3l in https://github.com/rust-lang/rustup/pull/3798
50+
* fix(ci/freebsd): fix `invalid peer certificate: UnknownIssuer` by @rami3l in https://github.com/rust-lang/rustup/pull/3810
51+
* fix(filesource): make some constructs only available via the `test` feature by @rami3l in https://github.com/rust-lang/rustup/pull/3811
52+
* Reduce code duplication for show commands by @djc in https://github.com/rust-lang/rustup/pull/3813
53+
* refactor(cli): rewrite `rustup-init` with `clap_derive` by @rami3l in https://github.com/rust-lang/rustup/pull/3814
54+
* Make `rustup show` output info in a more logical order by @majaha in https://github.com/rust-lang/rustup/pull/3225
55+
* feat(download): reflect the download/TLS backends in the user agent by @rami3l in https://github.com/rust-lang/rustup/pull/3815
56+
* fix(rustup-init): fix typo in `rustup-init[.sh]` args by @rami3l in https://github.com/rust-lang/rustup/pull/3818
57+
* refactor(cli): rewrite `rustup` with `clap_derive` by @rami3l in https://github.com/rust-lang/rustup/pull/3596
58+
* Stop showing ETA after download is complete by @djc in https://github.com/rust-lang/rustup/pull/3827
59+
* Fix ETA display after regression by @djc in https://github.com/rust-lang/rustup/pull/3829
60+
* refactor(filesource): replace repetitive `#[cfg()]` usages with a new `mod` by @rami3l in https://github.com/rust-lang/rustup/pull/3833
61+
* Tweaks from derived clap parser review by @djc in https://github.com/rust-lang/rustup/pull/3834
62+
* fix(deps): update rust crate pulldown-cmark to 0.11 by @rami3l in https://github.com/rust-lang/rustup/pull/3838
63+
* fix(deps): update rust crate itertools to 0.13 by @rami3l in https://github.com/rust-lang/rustup/pull/3839
64+
* ci(macos): use `macos-latest` instead of `macos-14` by @rami3l in https://github.com/rust-lang/rustup/pull/3842
65+
* Re-enable Ring support on Windows Arm64 by @Alovchin91 in https://github.com/rust-lang/rustup/pull/3845
66+
* Switch from sync to a tokio runtime by @rbtcollins in https://github.com/rust-lang/rustup/pull/3367
67+
* ci(windows): fix CI failure on `x86_64-pc-windows-gnu` by @rami3l in https://github.com/rust-lang/rustup/pull/3849
68+
* consistently add context with file path when parsing fails by @Skgland in https://github.com/rust-lang/rustup/pull/3853
69+
* refactor: restrict `run_future()` usages to tests by @rami3l in https://github.com/rust-lang/rustup/pull/3856
70+
* feat: support for parsing beta versions with tags in the toolchain by @roife in https://github.com/rust-lang/rustup/pull/3858
71+
* fix(download): work around `hyper` hang issue by adjusting `reqwest` config by @rami3l in https://github.com/rust-lang/rustup/pull/3855
72+
* Simplify process interface by @djc in https://github.com/rust-lang/rustup/pull/3764
73+
* Add Windows Arm64 to Other Installation Methods by @Alovchin91 in https://github.com/rust-lang/rustup/pull/3854
74+
* Store current_dir in Cfg by @djc in https://github.com/rust-lang/rustup/pull/3859
75+
* Finalise Rustup Windows Arm64 support by @Alovchin91 in https://github.com/rust-lang/rustup/pull/3840
76+
* Refactoring around use of `Process` by @djc in https://github.com/rust-lang/rustup/pull/3860
77+
* feat(cli): add `--quiet` to `rustup toolchain list` and friends by @rami3l in https://github.com/rust-lang/rustup/pull/3862
78+
* fix(dist/triple): ensure `dist::triple::known` is up to date with `platforms` by @rami3l in https://github.com/rust-lang/rustup/pull/3841
79+
* Simplify notification handling setup by @djc in https://github.com/rust-lang/rustup/pull/3863
80+
* Use serde to encode/decode various TOML formats by @djc in https://github.com/rust-lang/rustup/pull/3864
81+
* refactor(ci/run): use more `target_cargo()` in `run.bash` by @rami3l in https://github.com/rust-lang/rustup/pull/3867
82+
* Fix misleading "uninstalled toolchain" notification by @scimas in https://github.com/rust-lang/rustup/pull/3869
83+
* Small refactoring tweaks to improve further changes by @djc in https://github.com/rust-lang/rustup/pull/3872
84+
* refactor(test): execute all `#[rustup_macros::unit_test]`s within a `tokio` context by @rami3l in https://github.com/rust-lang/rustup/pull/3868
85+
* chore(dist/features): ship `tracing` and friends by default by @rami3l in https://github.com/rust-lang/rustup/pull/3803
86+
* Simplify installation code by @djc in https://github.com/rust-lang/rustup/pull/3865
87+
* Let argument parser handle enum conversions by @djc in https://github.com/rust-lang/rustup/pull/3874
88+
* Pass Process around explicitly by @djc in https://github.com/rust-lang/rustup/pull/3871
89+
* fix(log): use `RUSTUP_LOG` for internal `tracing` instead of `RUST_LOG` by @rami3l in https://github.com/rust-lang/rustup/pull/3876
90+
* Process cleanup by @djc in https://github.com/rust-lang/rustup/pull/3877
91+
* Use tracing macros directly by @djc in https://github.com/rust-lang/rustup/pull/3878
92+
* Fix the `TODO` in `src\toolchain\toolchain.rs` by @InfyniteHeap in https://github.com/rust-lang/rustup/pull/3881
93+
* refactor(dist): hoist `dist::dist` into `dist` by @rami3l in https://github.com/rust-lang/rustup/pull/3882
94+
* Simplify toolchain construction by @djc in https://github.com/rust-lang/rustup/pull/3880
95+
* Remove unused code by @djc in https://github.com/rust-lang/rustup/pull/3886
96+
* refactor(log): rename `NotificationLevel` variants to align with `tracing::Level` by @rami3l in https://github.com/rust-lang/rustup/pull/3890
97+
* Refactor platform-dependent code in self_update by @djc in https://github.com/rust-lang/rustup/pull/3887
98+
* download: inline errors, rename TLS backend by @djc in https://github.com/rust-lang/rustup/pull/3888
99+
* fix(dist/linux): handle the possible unavailability of `/proc` in `rustup-init.sh` by @rami3l in https://github.com/rust-lang/rustup/pull/3800
100+
* test(clitools): revive `run_inprocess()` by @rami3l in https://github.com/rust-lang/rustup/pull/3891
101+
* Extract types by @djc in https://github.com/rust-lang/rustup/pull/3766
102+
* refactor(toolchain/names): replace `toolchain_sort()` with `ToolchainName`'s `Ord` instance by @rami3l in https://github.com/rust-lang/rustup/pull/3892
103+
* ci(all-features): add `-D warnings` to `cargo check-all-features` by @rami3l in https://github.com/rust-lang/rustup/pull/3894
104+
* fix(dist): throw an error when a `PartialVersion` string doesn't start with an ASCII digit by @rami3l in https://github.com/rust-lang/rustup/pull/3895
105+
* docs(dev-guide/tracing): mention `RUSTUP_LOG` and console-based tracing by @rami3l in https://github.com/rust-lang/rustup/pull/3879
106+
* Port tests to CliTestContext by @djc in https://github.com/rust-lang/rustup/pull/3893
107+
* Add missing period in warning while checking existing Rust installations by @Uaitt in https://github.com/rust-lang/rustup/pull/3899
108+
* fix(rustup-mode): improve `clap` error format by @rami3l in https://github.com/rust-lang/rustup/pull/3906
109+
* ci(windows): run `cargo all-features` by @rami3l in https://github.com/rust-lang/rustup/pull/3904
110+
* feat(download/rustls): use `rustls-platform-verifier` by @rami3l in https://github.com/rust-lang/rustup/pull/3903
111+
* Disable automatic self updates in CI environments by @djc in https://github.com/rust-lang/rustup/pull/3907
112+
* feat: add hint to run `rustup self` when err desc is `self` by @Xerxes-2 in https://github.com/rust-lang/rustup/pull/3901
113+
* test(manifestation): replace `run_future()` with `TestContext` by @rami3l in https://github.com/rust-lang/rustup/pull/3915
114+
* implements quiet flag in `rustup-init.sh` by @vic1707 in https://github.com/rust-lang/rustup/pull/3910
115+
* feat(rustup-init): set log level to `WARN` on `-q` if `RUSTUP_LOG` is unset by @rami3l in https://github.com/rust-lang/rustup/pull/3911
116+
* fix(download): fix build error with `--no-default-features --features=curl-backend` by @rami3l in https://github.com/rust-lang/rustup/pull/3922
117+
* Add loongarch64-unknown-linux-musl support by @heiher in https://github.com/rust-lang/rustup/pull/3921
118+
* feat(cli): warn when removing the default/active toolchain by @rami3l in https://github.com/rust-lang/rustup/pull/3924
119+
* Clean up usage of if_not_empty() by @djc in https://github.com/rust-lang/rustup/pull/3925
120+
* feat(dist): refine suggestions regarding manifest checksum mismatches by @rami3l in https://github.com/rust-lang/rustup/pull/3923
121+
* Upload Rustup build artifacts to new S3 bucket by @jdno in https://github.com/rust-lang/rustup/pull/3909
122+
* Grant GitHub Actions workflows access to OIDC token by @jdno in https://github.com/rust-lang/rustup/pull/3930
123+
* Prepare deployment on master branch by @jdno in https://github.com/rust-lang/rustup/pull/3931
124+
* Fix uploading of Windows build artifacts by @jdno in https://github.com/rust-lang/rustup/pull/3933
125+
* Upload Windows artifacts into correct subdirectory by @jdno in https://github.com/rust-lang/rustup/pull/3934
126+
* feat(log): unhide `tracing::instrument` from behind `feature = "otel"` by @rami3l in https://github.com/rust-lang/rustup/pull/3873
127+
* Fix home_dir() and current_dir() regression by @djc in https://github.com/rust-lang/rustup/pull/3938
128+
* Add help message for missing toolchain by @jtr860830 in https://github.com/rust-lang/rustup/pull/3939
129+
* refactor: clean up platform-specific logic by @rami3l in https://github.com/rust-lang/rustup/pull/3941
130+
* style: reformat all TOML files with `taplo` by @rami3l in https://github.com/rust-lang/rustup/pull/3942
131+
* fix(rustup-mode)!: don't install toolchain on `rustup --version` by @rami3l in https://github.com/rust-lang/rustup/pull/3948
132+
* fix(rustup-mode): return `ExitCode(1)` when `update()` fails by @rami3l in https://github.com/rust-lang/rustup/pull/3952
133+
* fix(utils): make `ExitCode` `#[must_use]` by @rami3l in https://github.com/rust-lang/rustup/pull/3954
134+
* build(windows): fix typo in `build.rs` by @rami3l in https://github.com/rust-lang/rustup/pull/3955
135+
* Upgrade to opentelemetry 0.24 by @djc in https://github.com/rust-lang/rustup/pull/3959
136+
* Bump fs_at to 0.2.1 by @djc in https://github.com/rust-lang/rustup/pull/3965
137+
* docs(user-guide): use `brew install rustup` instead of `rustup-init` by @rami3l in https://github.com/rust-lang/rustup/pull/3963
138+
* docs(dev-guide): add guideline for atomic commits to the developer guide by @jtr860830 in https://github.com/rust-lang/rustup/pull/3969
139+
* Remove `once_cell` dependency and use `LazyLock` instead by @InfyniteHeap in https://github.com/rust-lang/rustup/pull/3971
140+
* docs(dev-guide): update `coding-standards` to reflect recent API changes. by @rami3l in https://github.com/rust-lang/rustup/pull/3974
141+
* fix: fix unreachable code lints on Android by @rami3l in https://github.com/rust-lang/rustup/pull/3975
142+
* Upgrade windows-sys to 0.59 by @djc in https://github.com/rust-lang/rustup/pull/3976
143+
* style(taplo): enable `reorder_keys` for `*dependencies` in `Cargo.toml` by @rami3l in https://github.com/rust-lang/rustup/pull/3977
144+
* feat(download/rustls): use `aws-lc` instead of `ring` by @rami3l in https://github.com/rust-lang/rustup/pull/3898
145+
* ci(run): accelerate workflows by @rami3l in https://github.com/rust-lang/rustup/pull/3978
146+
* ci(freebsd): fix build failure related to `aws-lc` by @rami3l in https://github.com/rust-lang/rustup/pull/3979
147+
* fix(config): warn if host is incompatible with the toolchain in `rustup default` by @rami3l in https://github.com/rust-lang/rustup/pull/3980
148+
* feat(rustup-mode): install the active toolchain by default on `rustup toolchain install` by @rami3l in https://github.com/rust-lang/rustup/pull/3983
149+
* feat(cli)!: remove implicit toolchain installation by @rami3l in https://github.com/rust-lang/rustup/pull/3985
150+
* ci(macos): install `awscli` from `brew` by @rami3l in https://github.com/rust-lang/rustup/pull/3989
151+
* fix(manifest): consider possible renames in `Component::try_new()` by @rami3l in https://github.com/rust-lang/rustup/pull/3991
152+
* Upgrade pulldown-cmark to 0.12 by @djc in https://github.com/rust-lang/rustup/pull/3999
153+
* feat(dist): add notes for `stable` and `beta` in `components_missing_msg()` by @rami3l in https://github.com/rust-lang/rustup/pull/3920
154+
* Allow `rustup doc` to search for unions by @taylordotfish in https://github.com/rust-lang/rustup/pull/4004
155+
* refactor(config)!: simplify logic by @rami3l in https://github.com/rust-lang/rustup/pull/3986
156+
* feat(cli)!: set log level to `INFO`/`DEBUG` on `--quiet`/`--verbose` if `RUSTUP_LOG` is unset by @rami3l in https://github.com/rust-lang/rustup/pull/3987
157+
* Apply clippy suggestions from 1.81 by @djc in https://github.com/rust-lang/rustup/pull/4015
158+
* Update semver-compatible dependencies, except openssl-src by @djc in https://github.com/rust-lang/rustup/pull/4021
159+
* Try symlinking proxies first, falling back to hardlinking if that fails by @ChrisDenton in https://github.com/rust-lang/rustup/pull/4023
160+
* Note that selecting VS lang packs is optional by @ChrisDenton in https://github.com/rust-lang/rustup/pull/4025
161+
* docs(README): Point out where to find nightly/master docs. by @LunarLambda in https://github.com/rust-lang/rustup/pull/4026
162+
* refactor(cli/common)!: deny installing a host-incompatible toolchain w/o `--force-non-host` by @rami3l in https://github.com/rust-lang/rustup/pull/4028
163+
* Update semver-compatible dependencies by @djc in https://github.com/rust-lang/rustup/pull/4031
164+
* Update remove_dir_all by @ChrisDenton in https://github.com/rust-lang/rustup/pull/4032
165+
* Replace `winreg` with `windows-registry` by @InfyniteHeap in https://github.com/rust-lang/rustup/pull/3896
166+
* Remove unnecessary methods by @InfyniteHeap in https://github.com/rust-lang/rustup/pull/4034
167+
* tests: rust-toolchain + profile in settings by @lucacasonato in https://github.com/rust-lang/rustup/pull/4040
168+
* Update semver-compatible dependencies by @djc in https://github.com/rust-lang/rustup/pull/4044
169+
* fix(rustup-init/sh): fix incorrect TLS warning with curl v8.10 by @rami3l in https://github.com/rust-lang/rustup/pull/4046
170+
* Update semver-compatible dependencies, except openssl-src by @djc in https://github.com/rust-lang/rustup/pull/4056
171+
* fix(config): don't show toolchain names from `rust-toolchain.toml` in error message by @rami3l in https://github.com/rust-lang/rustup/pull/4060
172+
* chore: use more workspace-wide configurations by @rami3l in https://github.com/rust-lang/rustup/pull/4061
173+
* refactor(diskio): replace `eprintln!()` with `debug!()` by @rami3l in https://github.com/rust-lang/rustup/pull/4063
174+
* feat(rustup-init): detect and warn about existing `settings.toml` by @rami3l in https://github.com/rust-lang/rustup/pull/4064
175+
* refactor(utils): hoist `utils::utils` into `utils` by @rami3l in https://github.com/rust-lang/rustup/pull/4065
176+
* fix: add powerpc64 and s390x to known target_arch values for tests by @decathorpe in https://github.com/rust-lang/rustup/pull/4067
177+
* feat(cli/rustup-mode): support more books in `rustup doc` by @rami3l in https://github.com/rust-lang/rustup/pull/4071
178+
* docs: update channel toolchain syntax by @kyle-leonhard in https://github.com/rust-lang/rustup/pull/4074
179+
* fix(cli/rustup-mode): remove `.num_args()` when `.value_delimiter(',')` is present by @rami3l in https://github.com/rust-lang/rustup/pull/4076
180+
181+
[pr#3985]: https://github.com/rust-lang/rustup/pull/3985
182+
[pr#4028]: https://github.com/rust-lang/rustup/pull/4028
183+
[pr#3840]: https://github.com/rust-lang/rustup/pull/3840
184+
[pr#3921]: https://github.com/rust-lang/rustup/pull/3921
185+
[pr#3798]: https://github.com/rust-lang/rustup/pull/3798
186+
[pr#3903]: https://github.com/rust-lang/rustup/pull/3903
187+
[pr#4023]: https://github.com/rust-lang/rustup/pull/4023
188+
[pr#3875]: https://github.com/rust-lang/rustup/pull/3875
189+
3190
## [1.27.1] - 2024-04-14
4191
5192
This new Rustup release involves some minor bug fixes.
@@ -85,7 +272,7 @@ Finally, the project seems to have attracted a total of 23 new contributors with
85272
86273
### Added
87274
88-
- Add basic support for `fish` shell [pr#3108]
275+
- Add basic support for `fish` shell [pr#3108]
89276
- Add the `RUSTUP_TERM_COLOR` environment variable to force the use of colored output [pr#3435]
90277
- Improve `rustup-init.sh`'s compatibility with `ksh` and `zsh` [pr#3475]
91278
- Add a warning when running under Rosetta 2 [pr#3068]

0 commit comments

Comments
 (0)