| Age | Commit message (Collapse) | Author | Lines |
|
Co-authored-by: Lewis McClelland <lewis@lewismcclelland.me>
|
|
Update getopts to remove unicode-width dependency
Pulls in https://github.com/rust-lang/getopts/pull/133. This saves 1.5MB on the vendored size of the standard library.
|
|
The recent work on the WASIp2 target being integrated into the standard
library ended up causing a bug in nightly on the target. This has now
been fixed in the `wasi` crate so this commit pulls in the updated
version to ensure bindings work correctly.
|
|
|
|
This commit is the start of an effort to support WASIp2 natively in the
standard library. Before this commit the `wasm32-wasip2` target behaved
exactly like `wasm32-wasip1` target by importing APIs from the core wasm
module `wasi_snapshot_preview1`. These APIs are satisfied by the
`wasm-component-ld` target by using an [adapter] which implements WASIp1
in terms of WASIp2. This adapter comes at a cost, however, in terms of
runtime indirection and instantiation cost, so ideally the adapter would
be removed entirely. The purpose of this adapter was to provide a
smoother on-ramp from WASIp1 to WASIp2 when it was originally created.
The `wasm32-wasip2` target has been around for long enough now that it's
much more established. Additionally the only thing historically blocking
using WASIp2 directly was implementation effort. Work is now underway to
migrate wasi-libc itself to using WASIp2 directly and now seems as good
a time as any to migrate the Rust standard library too.
Implementation-wise the milestones here are:
* The `wasm32-wasip2` target now also depends on the `wasi` crate at
version 0.14.* in addition to the preexisting dependency of 0.11.*.
The 0.14.* release series binds WASIp2 APIs instead of WASIp1 APIs.
* Some preexisting naming around `mod wasi` or `wasi.rs` was renamed to
`wasip1` where appropriate. For example `std::sys::pal::wasi` is now
called `std::sys::pal::wasip1`.
* More platform-specific WASI modules are now split between WASIp1 and
WASIp2. For example getting the current time, randomness, and
process arguments now use WASIp2 APIs directly instead of using WASIp1
APIs that require an adapter.
It's worth pointing out that this PR does not migrate the entire
standard library away from using WASIp1 APIs on the `wasm32-wasip2`
target. Everything related to file descriptors and filesystem APIs is
still using WASIp1. Migrating that is left for a future PR. In the
meantime the goal of this change is to lay the groundwork necessary for
migrating in the future. Eventually the goal is to drop the `wasi`
0.11.* dependency on the `wasm32-wasip2` target (the `wasm32-wasip1`
target will continue to retain this dependency).
[adapter]: https://github.com/bytecodealliance/wasmtime/blob/main/crates/wasi-preview1-component-adapter/README.md
|
|
Weekly `cargo update` (with libc pin)
Supersedes rust-lang/rust#145516
Manually pins libc for `compiler` and `rustbook` (both of which use rustix), with fixmes to remove this later.
```
compiler & tools dependencies:
Locking 28 packages to latest compatible versions
Updating anyhow v1.0.98 -> v1.0.99
Updating bitflags v2.9.1 -> v2.9.2
Updating clap v4.5.43 -> v4.5.45
Updating clap_builder v4.5.43 -> v4.5.44
Updating clap_derive v4.5.41 -> v4.5.45
Updating curl v0.4.48 -> v0.4.49
Updating curl-sys v0.4.82+curl-8.14.1 -> v0.4.83+curl-8.15.0
Updating cxx v1.0.166 -> v1.0.168
Updating cxx-build v1.0.166 -> v1.0.168
Updating cxxbridge-cmd v1.0.166 -> v1.0.168
Updating cxxbridge-flags v1.0.166 -> v1.0.168
Updating cxxbridge-macro v1.0.166 -> v1.0.168
Updating glob v0.3.2 -> v0.3.3
Updating object v0.37.2 -> v0.37.3
Updating proc-macro2 v1.0.95 -> v1.0.101
Updating rayon v1.10.0 -> v1.11.0
Updating rayon-core v1.12.1 -> v1.13.0
Updating serde-untagged v0.1.7 -> v0.1.8
Updating socket2 v0.5.10 -> v0.6.0
Updating syn v2.0.104 -> v2.0.106
Updating thiserror v2.0.12 -> v2.0.15
Updating thiserror-impl v2.0.12 -> v2.0.15
Updating uuid v1.17.0 -> v1.18.0
Updating wasm-encoder v0.236.0 -> v0.236.1
Updating wasmparser v0.236.0 -> v0.236.1
Updating wast v236.0.0 -> v236.0.1
Updating wat v1.236.0 -> v1.236.1
note: pass `--verbose` to see 35 unchanged dependencies behind latest
library dependencies:
Locking 2 packages to latest compatible versions
Updating libc v0.2.174 -> v0.2.175
Updating object v0.37.2 -> v0.37.3
note: pass `--verbose` to see 2 unchanged dependencies behind latest
rustbook dependencies:
Locking 13 packages to latest compatible versions
Updating anyhow v1.0.98 -> v1.0.99
Updating bitflags v2.9.1 -> v2.9.2
Updating cc v1.2.32 -> v1.2.33
Updating clap v4.5.43 -> v4.5.45
Updating clap_builder v4.5.43 -> v4.5.44
Updating clap_complete v4.5.56 -> v4.5.57
Updating clap_derive v4.5.41 -> v4.5.45
Updating proc-macro2 v1.0.95 -> v1.0.101
Updating syn v2.0.104 -> v2.0.106
Updating terminal_size v0.4.2 -> v0.4.3
Updating thiserror v2.0.12 -> v2.0.15
Updating thiserror-impl v2.0.12 -> v2.0.15
```
|
|
|
|
|
|
library: Migrate from `cfg_if` to `cfg_select`
Migrate the standard library from using the external `cfg_if` crate to using the now-built-in `cfg_select` macro.
This does not yet eliminate the dependency from `library/std/Cargo.toml`, because while the standard library itself no longer uses `cfg_if`, it also incorporates the `backtrace` crate, which does.
Migration assisted by the following vim command (after selecting the full `cfg_if!` invocation):
```
'<,'>s/\(cfg_if::\)\?cfg_if/cfg_select/ | '<,'>s/^\( *\)} else {/\1}\r\1_ => {/c | '<,'>s/^\( *\)} else if #\[cfg(\(.*\))\] /\1}\r\1\2 => /e | '<,'>s/if #\[cfg(\(.*\))\] {/\1 => {/e
```
This is imperfect, but substantially accelerated the process. This prompts for confirmation on the `} else {` since that can also appear inside one of the arms. This also requires manual intervention to handle any multi-line conditions.
|
|
compiler & tools dependencies:
Locking 28 packages to latest compatible versions
Updating anyhow v1.0.98 -> v1.0.99
Updating bitflags v2.9.1 -> v2.9.2
Updating clap v4.5.43 -> v4.5.45
Updating clap_builder v4.5.43 -> v4.5.44
Updating clap_derive v4.5.41 -> v4.5.45
Updating curl v0.4.48 -> v0.4.49
Updating curl-sys v0.4.82+curl-8.14.1 -> v0.4.83+curl-8.15.0
Updating cxx v1.0.166 -> v1.0.168
Updating cxx-build v1.0.166 -> v1.0.168
Updating cxxbridge-cmd v1.0.166 -> v1.0.168
Updating cxxbridge-flags v1.0.166 -> v1.0.168
Updating cxxbridge-macro v1.0.166 -> v1.0.168
Updating glob v0.3.2 -> v0.3.3
Updating object v0.37.2 -> v0.37.3
Updating proc-macro2 v1.0.95 -> v1.0.101
Updating rayon v1.10.0 -> v1.11.0
Updating rayon-core v1.12.1 -> v1.13.0
Updating serde-untagged v0.1.7 -> v0.1.8
Updating socket2 v0.5.10 -> v0.6.0
Updating syn v2.0.104 -> v2.0.106
Updating thiserror v2.0.12 -> v2.0.15
Updating thiserror-impl v2.0.12 -> v2.0.15
Updating uuid v1.17.0 -> v1.18.0
Updating wasm-encoder v0.236.0 -> v0.236.1
Updating wasmparser v0.236.0 -> v0.236.1
Updating wast v236.0.0 -> v236.0.1
Updating wat v1.236.0 -> v1.236.1
note: pass `--verbose` to see 35 unchanged dependencies behind latest
library dependencies:
Locking 2 packages to latest compatible versions
Updating libc v0.2.174 -> v0.2.175
Updating object v0.37.2 -> v0.37.3
note: pass `--verbose` to see 2 unchanged dependencies behind latest
rustbook dependencies:
Locking 13 packages to latest compatible versions
Updating anyhow v1.0.98 -> v1.0.99
Updating bitflags v2.9.1 -> v2.9.2
Updating cc v1.2.32 -> v1.2.33
Updating clap v4.5.43 -> v4.5.45
Updating clap_builder v4.5.43 -> v4.5.44
Updating clap_complete v4.5.56 -> v4.5.57
Updating clap_derive v4.5.41 -> v4.5.45
Updating proc-macro2 v1.0.95 -> v1.0.101
Updating syn v2.0.104 -> v2.0.106
Updating terminal_size v0.4.2 -> v0.4.3
Updating thiserror v2.0.12 -> v2.0.15
Updating thiserror-impl v2.0.12 -> v2.0.15
|
|
Migrate the standard library from using the external `cfg_if` crate to
using the now-built-in `cfg_select` macro.
This does not yet eliminate the dependency from
`library/std/Cargo.toml`, because while the standard library itself no
longer uses `cfg_if`, it also incorporates the `backtrace` crate, which
does.
Migration assisted by the following vim command (after selecting the
full `cfg_if!` invocation):
```
'<,'>s/\(cfg_if::\)\?cfg_if/cfg_select/ | '<,'>s/^\( *\)} else {/\1}\r\1_ => {/c | '<,'>s/^\( *\)} else if #\[cfg(\(.*\))\] /\1}\r\1\2 => /e | '<,'>s/if #\[cfg(\(.*\))\] {/\1 => {/e
```
This is imperfect, but substantially accelerated the process. This
prompts for confirmation on the `} else {` since that can also appear
inside one of the arms. This also requires manual intervention to handle
any multi-line conditions.
|
|
compiler & tools dependencies:
Locking 18 packages to latest compatible versions
Updating anstream v0.6.19 -> v0.6.20
Updating anstyle-query v1.1.3 -> v1.1.4
Updating anstyle-svg v0.1.9 -> v0.1.10
Updating anstyle-wincon v3.0.9 -> v3.0.10
Updating camino v1.1.10 -> v1.1.11
Updating clap v4.5.42 -> v4.5.43
Updating clap_builder v4.5.42 -> v4.5.43
Updating cxx v1.0.161 -> v1.0.166
Updating cxx-build v1.0.161 -> v1.0.166
Updating cxxbridge-cmd v1.0.161 -> v1.0.166
Updating cxxbridge-flags v1.0.161 -> v1.0.166
Updating cxxbridge-macro v1.0.161 -> v1.0.166
Updating derive-where v1.5.0 -> v1.6.0
Updating hashbrown v0.15.4 -> v0.15.5
Updating indenter v0.3.3 -> v0.3.4
Updating rustversion v1.0.21 -> v1.0.22
Updating scratch v1.0.8 -> v1.0.9
Updating zerovec v0.11.2 -> v0.11.4
note: pass `--verbose` to see 36 unchanged dependencies behind latest
library dependencies:
Locking 1 package to latest compatible version
Updating hashbrown v0.15.4 -> v0.15.5
note: pass `--verbose` to see 2 unchanged dependencies behind latest
rustbook dependencies:
Locking 10 packages to latest compatible versions
Updating anstream v0.6.19 -> v0.6.20
Updating anstyle-query v1.1.3 -> v1.1.4
Updating anstyle-wincon v3.0.9 -> v3.0.10
Updating cc v1.2.31 -> v1.2.32
Updating clap v4.5.42 -> v4.5.43
Updating clap_builder v4.5.42 -> v4.5.43
Updating clap_complete v4.5.55 -> v4.5.56
Updating hashbrown v0.15.4 -> v0.15.5
Updating rustversion v1.0.21 -> v1.0.22
Updating zerovec v0.11.2 -> v0.11.4
|
|
compiler & tools dependencies:
Locking 14 packages to latest compatible versions
Updating clap v4.5.41 -> v4.5.42
Updating clap_builder v4.5.41 -> v4.5.42
Updating jsonpath-rust v1.0.3 -> v1.0.4
Updating libredox v0.1.6 -> v0.1.9
Updating object v0.37.1 -> v0.37.2
Updating redox_syscall v0.5.16 -> v0.5.17
Updating redox_users v0.5.0 -> v0.5.2
Updating rustc-demangle v0.1.25 -> v0.1.26
Updating serde_json v1.0.141 -> v1.0.142
Updating wasm-encoder v0.235.0 -> v0.236.0
Updating wasmparser v0.235.0 -> v0.236.0
Updating wast v235.0.0 -> v236.0.0
Updating wat v1.235.0 -> v1.236.0
Updating windows-targets v0.53.2 -> v0.53.3
note: pass `--verbose` to see 36 unchanged dependencies behind latest
library dependencies:
Locking 3 packages to latest compatible versions
Updating object v0.37.1 -> v0.37.2
Updating rustc-demangle v0.1.25 -> v0.1.26
Updating unwinding v0.2.7 -> v0.2.8
note: pass `--verbose` to see 2 unchanged dependencies behind latest
rustbook dependencies:
Locking 6 packages to latest compatible versions
Updating cc v1.2.30 -> v1.2.31
Updating clap v4.5.41 -> v4.5.42
Updating clap_builder v4.5.41 -> v4.5.42
Updating redox_syscall v0.5.16 -> v0.5.17
Updating serde_json v1.0.141 -> v1.0.142
Updating windows-targets v0.53.2 -> v0.53.3
|
|
`compiler-builtins` is already in the crate graph via `alloc`, and all
features related to `compiler-builtins` goes through `alloc`. There
isn't any reason that `std` needs this direct dependency, so remove it.
|
|
The three panic-related library crates need to have access to `core`,
and `compiler-builtins` needs to be in the crate graph. Rather than
specifying both dependencies, switch these crates to use
`rustc-std-workspace-core` which already does this.
This means there is now a single place that the `compiler-builtins`
dependency needs to get configured, for everything other than `alloc`
and `std`.
|
|
compiler & tools dependencies:
Locking 3 packages to latest compatible versions
Updating ipc-channel v0.20.0 -> v0.20.1
Updating rand v0.9.1 -> v0.9.2
Updating redox_syscall v0.5.13 -> v0.5.16
note: pass `--verbose` to see 37 unchanged dependencies behind latest
library dependencies:
Locking 1 package to latest compatible version
Updating rand v0.9.1 -> v0.9.2
note: pass `--verbose` to see 2 unchanged dependencies behind latest
rustbook dependencies:
Locking 1 package to latest compatible version
Updating redox_syscall v0.5.13 -> v0.5.16
|
|
Rollup of 9 pull requests
Successful merges:
- rust-lang/rust#140871 (Don't lint against named labels in `naked_asm!`)
- rust-lang/rust#141663 (rustdoc: add ways of collapsing all impl blocks)
- rust-lang/rust#143272 (Upgrade the `fortanix-sgx-abi` dependency)
- rust-lang/rust#143585 (`loop_match`: suggest extracting to a `const` item)
- rust-lang/rust#143698 (Fix unused_parens false positive)
- rust-lang/rust#143859 (Guarantee 8 bytes of alignment in Thread::into_raw)
- rust-lang/rust#144160 (tests: debuginfo: Work around or disable broken tests on powerpc)
- rust-lang/rust#144412 (Small cleanup: Use LocalKey<Cell> methods more)
- rust-lang/rust#144431 (Disable has_reliable_f128_math on musl targets)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
Upgrade the `fortanix-sgx-abi` dependency
0.6.1 removes the `compiler-builtins` dependency, part of RUST-142265. The breaking change from 0.5 to 0.6 is for an update to the `insecure_time` API [1].
I validated that `./x c library --target x86_64-fortanix-unknown-sgx` completes successfully with this change.
Link: https://github.com/fortanix/rust-sgx/commit/a34e9767f37d6585c18bdbd31cddcadc56670d57 [1]
|
|
This primarily pulls in alexcrichton/dlmalloc-rs/55 and
alexcrichton/dlmalloc-rs/54 to address 144199. Notably the highest byte
in the wasm address space is no longer allocatable and additionally the
allocator internally uses `wrapping_add` instead of `add` on pointers
since on 32-bit platforms offsets might be larger than half the address
space.
|
|
|
|
|
|
0.6.1 removes the `compiler-builtins` dependency, part of RUST-142265.
The breaking change from 0.5 to 0.6 is for an update to the
`insecure_time` API [1].
I validated that `./x c library --target x86_64-fortanix-unknown-sgx`
completes successfully with this change.
Link: https://github.com/fortanix/rust-sgx/commit/a34e9767f37d6585c18bdbd31cddcadc56670d57 [1]
|
|
update to literal-escaper 0.0.4 for better API without `unreachable` and faster string parsing
This is the replacement for just the part of https://github.com/rust-lang/rust/pull/138163 dealing with the changed API of unescape functionality, since that got moved into its own crate.
<del>This uses an unpublished version of literal-escaper (https://github.com/rust-lang/literal-escaper/pull/8).</del>
r? `@nnethercote`
|
|
faster string parsing
|
|
This bumps to the latest versions of `r-efi` and `r-efi-alloc`, which
drop the dependency on `compiler_builtins` via crates.io.
Part of [#142265].
[#142265]: https://www.github.com/rust-lang/rust/issues/142265
|
|
This includes a fix for building on gnux32.
[1]: https://github.com/rust-lang/libc/releases/tag/0.2.174
|
|
compiler & tools dependencies:
Locking 31 packages to latest compatible versions
Updating adler2 v2.0.0 -> v2.0.1
Updating cfg-if v1.0.0 -> v1.0.1
Updating clap v4.5.39 -> v4.5.40
Updating clap_builder v4.5.39 -> v4.5.40
Updating clap_derive v4.5.32 -> v4.5.40
Updating clap_lex v0.7.4 -> v0.7.5
Updating getopts v0.2.21 -> v0.2.23
Updating hermit-abi v0.5.1 -> v0.5.2
Updating jiff v0.2.14 -> v0.2.15
Updating jiff-static v0.2.14 -> v0.2.15
Updating libc v0.2.172 -> v0.2.173
Updating memchr v2.7.4 -> v2.7.5
Updating minifier v0.3.5 -> v0.3.6
Updating miniz_oxide v0.8.8 -> v0.8.9
Updating object v0.37.0 -> v0.37.1
Updating redox_syscall v0.5.12 -> v0.5.13
Updating rustc-demangle v0.1.24 -> v0.1.25
Updating syn v2.0.101 -> v2.0.103
Updating thread_local v1.1.8 -> v1.1.9
Updating unicode-width v0.2.0 -> v0.2.1
Updating wasi v0.11.0+wasi-snapshot-preview1 -> v0.11.1+wasi-snapshot-preview1
Updating wasm-encoder v0.233.0 -> v0.235.0
Removing wasmparser v0.232.0
Removing wasmparser v0.233.0
Adding wasmparser v0.234.0
Adding wasmparser v0.235.0
Updating wast v233.0.0 -> v235.0.0
Updating wat v1.233.0 -> v1.235.0
Updating windows v0.61.1 -> v0.61.3
Updating windows-link v0.1.1 -> v0.1.3
Adding windows-sys v0.60.2
Updating windows-targets v0.53.0 -> v0.53.2
Updating winnow v0.7.10 -> v0.7.11
note: pass `--verbose` to see 39 unchanged dependencies behind latest
library dependencies:
Locking 1 package to latest compatible version
Updating libc v0.2.172 -> v0.2.173
note: pass `--verbose` to see 4 unchanged dependencies behind latest
rustbook dependencies:
Locking 19 packages to latest compatible versions
Updating adler2 v2.0.0 -> v2.0.1
Updating cc v1.2.26 -> v1.2.27
Updating cfg-if v1.0.0 -> v1.0.1
Updating clap v4.5.39 -> v4.5.40
Updating clap_builder v4.5.39 -> v4.5.40
Updating clap_complete v4.5.52 -> v4.5.54
Updating clap_derive v4.5.32 -> v4.5.40
Updating clap_lex v0.7.4 -> v0.7.5
Updating getopts v0.2.21 -> v0.2.23
Updating jiff v0.2.14 -> v0.2.15
Updating jiff-static v0.2.14 -> v0.2.15
Updating libc v0.2.172 -> v0.2.173
Updating memchr v2.7.4 -> v2.7.5
Updating miniz_oxide v0.8.8 -> v0.8.9
Updating redox_syscall v0.5.12 -> v0.5.13
Updating syn v2.0.101 -> v2.0.103
Removing unicode-width v0.1.14
Removing unicode-width v0.2.0
Adding unicode-width v0.2.1
Updating windows-link v0.1.1 -> v0.1.3
Updating winnow v0.7.10 -> v0.7.11
|
|
Upgrade `object`, `addr2line`, and `unwinding` in the standard library
Object:
0.37.0 is a semver-breaking release but the only breakage is in `elf::R_RISCV_GNU_*` and `pe::IMAGE_WEAK_EXTERN_*` constants, as well as Mach-O dyld. This API is not used by `std`, so we should be fine to upgrade.
This new version also includes functionality for parsing Wasm object files that we may eventually like to make use of.
Changelog: https://github.com/gimli-rs/object/blob/master/CHANGELOG.md#0370
Addr2line:
0.25.0 is a breaking change only because it upgrades the `gimli` version. It also includes a change to the `compiler-builtins` dependency that helps with [1].
Changelog: https://github.com/gimli-rs/addr2line/blob/master/CHANGELOG.md#0250-20250611
[1]: https://github.com/rust-lang/rust/issues/142265
|
|
Update dependencies in `library/Cargo.lock`
This removes the `compiler_builtins` dependency from a handful of library dependencies, which is progress toward [1].
[1]: https://github.com/rust-lang/rust/issues/142265
|
|
Update the stdarch submodule
Includes the following changes:
* Add s390x z17 target features [1]
* Remove `compiler-builtins` from `rustc-dep-of-std` dependencies [2]
* Darwin AArch64 detection update [3]
* Fixes for the latest nightly [4]
* Add a lockfile [5]
[1]: https://github.com/rust-lang/stdarch/pull/1826
[2]: https://github.com/rust-lang/stdarch/pull/1825
[3]: https://github.com/rust-lang/stdarch/pull/1827
[4]: https://github.com/rust-lang/stdarch/pull/1830
[5]: https://github.com/rust-lang/stdarch/pull/1829
|
|
Includes the following changes:
* Add s390x z17 target features [1]
* Remove `compiler-builtins` from `rustc-dep-of-std` dependencies [2]
* Darwin AArch64 detection update [3]
* Fixes for the latest nightly [4]
* Add a lockfile [5]
[1]: https://github.com/rust-lang/stdarch/pull/1826
[2]: https://github.com/rust-lang/stdarch/pull/1825
[3]: https://github.com/rust-lang/stdarch/pull/1827
[4]: https://github.com/rust-lang/stdarch/pull/1830
[5]: https://github.com/rust-lang/stdarch/pull/1829
|
|
compiler & tools dependencies:
Locking 57 packages to latest compatible versions
Updating anstream v0.6.18 -> v0.6.19
Updating anstyle v1.0.10 -> v1.0.11
Updating anstyle-lossy v1.1.3 -> v1.1.4
Updating anstyle-parse v0.2.6 -> v0.2.7
Updating anstyle-query v1.1.2 -> v1.1.3
Updating anstyle-svg v0.1.7 -> v0.1.8
Updating anstyle-wincon v3.0.7 -> v3.0.9
Updating bitflags v2.9.0 -> v2.9.1
Updating bumpalo v3.17.0 -> v3.18.1
Updating bytecount v0.6.8 -> v0.6.9
Updating camino v1.1.9 -> v1.1.10
Updating clap v4.5.38 -> v4.5.39
Updating clap_builder v4.5.38 -> v4.5.39
Updating color-eyre v0.6.4 -> v0.6.5
Updating color-spantrace v0.2.2 -> v0.3.0
Updating colorchoice v1.0.3 -> v1.0.4
Updating curl v0.4.47 -> v0.4.48
Updating curl-sys v0.4.80+curl-8.12.1 -> v0.4.82+curl-8.14.1
Updating errno v0.3.11 -> v0.3.12
Updating flate2 v1.1.1 -> v1.1.2
Updating hashbrown v0.15.3 -> v0.15.4
Updating hermit-abi v0.3.9 -> v0.5.1
Updating icu_properties v2.0.0 -> v2.0.1
Updating icu_properties_data v2.0.0 -> v2.0.1
Updating jiff v0.2.13 -> v0.2.14
Updating jiff-static v0.2.13 -> v0.2.14
Updating jsonpath-rust v1.0.1 -> v1.0.2
Updating libloading v0.8.7 -> v0.8.8
Updating lock_api v0.4.12 -> v0.4.13
Updating num_cpus v1.16.0 -> v1.17.0
Adding once_cell_polyfill v1.70.1
Updating openssl-sys v0.9.108 -> v0.9.109
Updating owo-colors v4.2.0 -> v4.2.1
Updating parking_lot v0.12.3 -> v0.12.4
Updating parking_lot_core v0.9.10 -> v0.9.11
Updating portable-atomic v1.11.0 -> v1.11.1
Updating rustc-build-sysroot v0.5.7 -> v0.5.8
Updating rustversion v1.0.20 -> v1.0.21
Updating serde_spanned v0.6.8 -> v0.6.9
Updating smallvec v1.15.0 -> v1.15.1
Updating socket2 v0.5.9 -> v0.5.10
Updating sysinfo v0.35.0 -> v0.35.2
Updating tokio v1.45.0 -> v1.45.1
Updating toml_datetime v0.6.9 -> v0.6.11
Updating tracing-attributes v0.1.28 -> v0.1.29
Updating type-map v0.5.0 -> v0.5.1
Updating uuid v1.16.0 -> v1.17.0
Updating wasm-encoder v0.230.0 -> v0.233.0
Updating wasmparser v0.230.0 -> v0.233.0
Updating wast v230.0.0 -> v233.0.0
Updating wat v1.230.0 -> v1.233.0
Updating windows-bindgen v0.61.0 -> v0.61.1
Updating windows-core v0.61.0 -> v0.61.2
Updating windows-future v0.2.0 -> v0.2.1
Updating windows-result v0.3.2 -> v0.3.4
Updating windows-strings v0.4.0 -> v0.4.2
Adding windows-threading v0.1.0
note: pass `--verbose` to see 38 unchanged dependencies behind latest
library dependencies:
Locking 1 package to latest compatible version
Updating hashbrown v0.15.3 -> v0.15.4
note: pass `--verbose` to see 5 unchanged dependencies behind latest
rustbook dependencies:
Locking 39 packages to latest compatible versions
Updating anstream v0.6.18 -> v0.6.19
Updating anstyle v1.0.10 -> v1.0.11
Updating anstyle-parse v0.2.6 -> v0.2.7
Updating anstyle-query v1.1.2 -> v1.1.3
Updating anstyle-wincon v3.0.7 -> v3.0.9
Updating bitflags v2.9.0 -> v2.9.1
Updating bumpalo v3.17.0 -> v3.18.1
Updating cc v1.2.22 -> v1.2.26
Updating clap v4.5.38 -> v4.5.39
Updating clap_builder v4.5.38 -> v4.5.39
Updating clap_complete v4.5.50 -> v4.5.52
Updating colorchoice v1.0.3 -> v1.0.4
Updating errno v0.3.11 -> v0.3.12
Updating flate2 v1.1.1 -> v1.1.2
Updating hashbrown v0.15.3 -> v0.15.4
Updating icu_properties v2.0.0 -> v2.0.1
Updating icu_properties_data v2.0.0 -> v2.0.1
Updating jiff v0.2.13 -> v0.2.14
Updating jiff-static v0.2.13 -> v0.2.14
Updating lock_api v0.4.12 -> v0.4.13
Adding once_cell_polyfill v1.70.1
Updating opener v0.8.1 -> v0.8.2
Updating parking_lot v0.12.3 -> v0.12.4
Updating parking_lot_core v0.9.10 -> v0.9.11
Updating portable-atomic v1.11.0 -> v1.11.1
Updating railroad v0.3.2 -> v0.3.3
Updating rustversion v1.0.20 -> v1.0.21
Updating serde_spanned v0.6.8 -> v0.6.9
Updating smallvec v1.15.0 -> v1.15.1
Updating tempfile v3.19.1 -> v3.20.0
Updating toml v0.8.22 -> v0.8.23
Updating toml_datetime v0.6.9 -> v0.6.11
Updating toml_edit v0.22.26 -> v0.22.27
Updating toml_write v0.1.1 -> v0.1.2
Adding unicode-width v0.2.0
Updating web_atoms v0.1.2 -> v0.1.3
Updating windows-core v0.61.0 -> v0.61.2
Updating windows-result v0.3.2 -> v0.3.4
Updating windows-strings v0.4.0 -> v0.4.2
|
|
This comes with a `gimli` upgrade, so we no longer have two different
versions.
|
|
0.25.0 is a breaking change only because it upgrades the `gimli`
version. It also includes a change to the `compiler-builtins` dependency
that helps with [1].
Changelog: https://github.com/gimli-rs/addr2line/blob/master/CHANGELOG.md#0250-20250611
[1]: https://github.com/rust-lang/rust/issues/142265
|
|
0.37.0 is a semver-breaking release but the only breakage is in
`elf::R_RISCV_GNU_*` and `pe::IMAGE_WEAK_EXTERN_*` constants, as well as
Mach-O dyld. This API is not used by `std`, so we should be fine to
upgrade.
This new version also includes functionality for parsing Wasm object
files that we may eventually like to make use of.
Also includes the minor bump from 0.37.0 to 0.37.1 to help [1].
Changelog: https://github.com/gimli-rs/object/blob/master/CHANGELOG.md#0370
[1]: https://github.com/rust-lang/rust/issues/142265
|
|
This removes the `compiler_builtins` dependency from a handful of
library dependencies, which is progress toward [1].
[1]: https://github.com/rust-lang/rust/issues/142265
|
|
Many of `std`'s dependency have a dependency on the crates.io
`compiler-builtins` when used with the feature
`rustc-std-workspace-core`. Use a Cargo patch to select the in-tree
version instead.
`compiler-builtins` is also added as a dependency of
`rustc-std-workspace-core` so these crates can remove their crates.io
dependency in the future.
|
|
Includes the following changes:
* Enable `__powitf2` on MSVC [1]
* Update `CmpResult` to use a pointer-sized return type [2]
* Better code reuse between `libm` and `compiler-builtins` [3], [4]
* Stop building C versions of `__netf2` [5] since we have our own
implementation
[1]: https://github.com/rust-lang/compiler-builtins/pull/918
[2]: https://github.com/rust-lang/compiler-builtins/pull/920
[3]: https://github.com/rust-lang/compiler-builtins/pull/879
[4]: https://github.com/rust-lang/compiler-builtins/pull/925
[5]: https://github.com/rust-lang/compiler-builtins/pull/828
|
|
Currently, the code for process aborts is duplicated across `panic_abort` and `std`. This PR uses `#[rustc_std_internal_symbol]` to make the `std` implementation available to `panic_abort` via the linker, thereby deduplicating the code.
|
|
|
|
|
|
Includes the following changes:
* Require `target_has_atomic = "ptr"` for runtime feature detection
[1]: https://github.com/rust-lang/compiler-builtins/pull/909
|
|
Rollup of 4 pull requests
Successful merges:
- #135734 (Correct `extract_if` sample equivalent.)
- #140307 (Refactor rustc_on_unimplemented's filter parser)
- #140644 (Revert "Avoid unused clones in Cloned<I> and Copied<I>")
- #140648 (Update `compiler-builtins` to 0.1.157)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
Includes the following changes:
* Use runtime feature detection for fma routines on x86 [1]
Fixes: https://github.com/rust-lang/rust/issues/140452
[1]: https://github.com/rust-lang/compiler-builtins/pull/896
|
|
compiler & tools dependencies:
Locking 36 packages to latest compatible versions
Updating addr2line v0.21.0 -> v0.24.2
Updating anyhow v1.0.97 -> v1.0.98
Updating askama v0.13.0 -> v0.13.1 (available: v0.14.0)
Updating askama_derive v0.13.0 -> v0.13.1
Updating backtrace v0.3.71 -> v0.3.74
Updating blake3 v1.8.1 -> v1.8.2
Updating chrono v0.4.40 -> v0.4.41
Updating clap v4.5.36 -> v4.5.37
Updating clap_builder v4.5.36 -> v4.5.37
Updating color-eyre v0.6.3 -> v0.6.4
Updating color-spantrace v0.2.1 -> v0.2.2
Updating derive-where v1.2.7 -> v1.4.0
Updating getrandom v0.2.15 -> v0.2.16
Removing gimli v0.28.1
Updating hashbrown v0.15.2 -> v0.15.3
Updating jiff v0.2.6 -> v0.2.12
Updating jiff-static v0.2.6 -> v0.2.12
Updating libm v0.2.11 -> v0.2.13
Removing object v0.32.2
Updating openssl-sys v0.9.107 -> v0.9.108
Adding owo-colors v4.2.0
Updating proc-macro2 v1.0.94 -> v1.0.95
Updating psm v0.1.25 -> v0.1.26
Updating rand v0.9.0 -> v0.9.1
Updating redox_syscall v0.5.11 -> v0.5.12
Updating rustix v1.0.5 -> v1.0.7
Updating sha2 v0.10.8 -> v0.10.9
Updating stacker v0.1.20 -> v0.1.21
Updating syn v2.0.100 -> v2.0.101
Updating synstructure v0.13.1 -> v0.13.2
Updating toml_datetime v0.6.8 -> v0.6.9
Adding windows v0.61.1
Adding windows-collections v0.2.0
Adding windows-future v0.2.0
Adding windows-numerics v0.2.0
Updating winnow v0.7.6 -> v0.7.9
Updating zerocopy v0.8.24 -> v0.8.25
Updating zerocopy-derive v0.8.24 -> v0.8.25
note: pass `--verbose` to see 33 unchanged dependencies behind latest
library dependencies:
Locking 2 packages to latest compatible versions
Removing allocator-api2 v0.2.21
Updating hashbrown v0.15.2 -> v0.15.3
Removing proc-macro2 v1.0.94
Removing quote v1.0.40
Updating rand v0.9.0 -> v0.9.1
Removing syn v2.0.100
Removing unicode-ident v1.0.18
Removing zerocopy v0.8.24
Removing zerocopy-derive v0.8.24
note: pass `--verbose` to see 3 unchanged dependencies behind latest
rustbook dependencies:
Locking 31 packages to latest compatible versions
Updating ammonia v4.0.0 -> v4.1.0
Updating anyhow v1.0.97 -> v1.0.98
Updating cc v1.2.19 -> v1.2.21
Updating chrono v0.4.40 -> v0.4.41
Updating clap v4.5.36 -> v4.5.37
Updating clap_builder v4.5.36 -> v4.5.37
Updating clap_complete v4.5.47 -> v4.5.48
Adding cssparser v0.35.0
Adding cssparser-macros v0.6.1
Adding dtoa v1.0.10
Adding dtoa-short v0.3.5
Updating hashbrown v0.15.2 -> v0.15.3
Updating html5ever v0.27.0 -> v0.31.0
Updating jiff v0.2.6 -> v0.2.12
Updating jiff-static v0.2.6 -> v0.2.12
Updating libc v0.2.171 -> v0.2.172
Updating markup5ever v0.12.1 -> v0.16.1
Adding match_token v0.1.0
Adding phf_macros v0.11.3
Updating proc-macro2 v1.0.94 -> v1.0.95
Updating redox_syscall v0.5.11 -> v0.5.12
Updating rustix v1.0.5 -> v1.0.7
Updating sha2 v0.10.8 -> v0.10.9
Updating syn v2.0.100 -> v2.0.101
Updating synstructure v0.13.1 -> v0.13.2
Updating toml v0.8.20 -> v0.8.22
Updating toml_datetime v0.6.8 -> v0.6.9
Updating toml_edit v0.22.24 -> v0.22.26
Adding toml_write v0.1.1
Adding web_atoms v0.1.1
Updating winnow v0.7.6 -> v0.7.9
|
|
unwind: bump `unwinding` dependency to 0.2.6
Xous now fails to compile under nightly, due to the recent change where `#[naked]` must now be wrapped in `unsafe(...)`. The `unwinding` crate was updated to account for this.
With the following `bootstrap.toml`:
```
profile = "library"
change-id = 138934
[build]
build-stage = 2
target = ["riscv32imac-unknown-xous-elf"]
[rust]
std-features = ["panic-unwind"]
download-rustc = false
```
The build fails when trying unwinding v0.2.5:
```
$ ./x.py build
[...]
Compiling unwinding v0.2.5
error: unsafe attribute used without unsafe
--> /home/user/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unwinding-0.2.5/src/unwinder/arch/riscv32.rs:176:3
|
176 | #[naked]
| ^^^^^ usage of unsafe attribute
|
help: wrap the attribute in `unsafe(...)`
|
176 | #[unsafe(naked)]
| +++++++ +
error: could not compile `unwinding` (lib) due to 1 previous error
warning: build failed, waiting for other jobs to finish...
Build completed unsuccessfully in 0:06:26
$
```
This patch updates `unwinding` to v0.2.6, which now wraps all issues of `naked` in `unsafe()`.
|
|
With a recent change to the compiler, all instances of `#[naked]` must
now be wrapped in `#[unsafe(naked)]`. The `unwinding` crate, which is
used on Xous for doing unwinding in constrained environments, needed to
be updated to handle this change.
Bump the `unwinding` dependency to 0.2.6, which performs this wrapping.
Signed-off-by: Sean Cross <sean@xobs.io>
|
|
- Bump up the version to 5.2.0
Signed-off-by: Ayush Singh <ayush@beagleboard.org>
|
|
Update `compiler_builtins` to 0.1.156
Includes the following changes:
* Provide `abort` on AVR [1]
[1]: https://github.com/rust-lang/compiler-builtins/pull/830
|
|
Includes the following changes:
* Provide `abort` on AVR [1]
[1]: https://github.com/rust-lang/compiler-builtins/pull/830
|