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

Rustup #3602

Merged
merged 17 commits into from
May 12, 2024
Merged

Rustup #3602

merged 17 commits into from
May 12, 2024

Conversation

RalfJung
Copy link
Member

No description provided.

bors and others added 17 commits May 11, 2024 08:32
…ckHoleFox

Refactor Apple `target_abi`

This was bundled together with `Arch`, which complicated a few code paths and meant we had to do more string matching than necessary.

CC `@BlackHoleFox` as you've worked on the Apple target spec before

Related: Is there a reason why `Target`/`TargetOptions` use `StaticCow` for so many things, instead of an enum with defined values (and perhaps a catch-all case for custom target json files)? Tagging `@Nilstrieb,` as you might know?
Match ergonomics 2024: let `&` patterns eat `&mut`

r? `@Nadrieril`

cc rust-lang/rust#123076

`@rustbot` label A-edition-2024 A-patterns
Stabilize `byte_slice_trim_ascii` for `&[u8]`/`&str`

Remove feature from documentation examples
Update intra-doc link for `u8::is_ascii_whitespace` on `&[u8]` functions

Closes #94035

FCP has successfully completed rust-lang/rust#94035 (comment)
Document proper usage of `fmt::Error` and `fmt()`'s `Result`.

I've seen several newcomers wonder why `fmt::Error` doesn't have any error detail information, or propose to return it in response to an error condition found inside a `impl fmt::Display for MyType`.

That is incorrect, per [a lone paragraph of the `fmt` module's documentation](https://doc.rust-lang.org/1.78.0/std/fmt/index.html#formatting-traits). However, users looking to implement a formatting trait won't necessarily look there. Therefore, let's add the critical information (that formatting per se is infallible) to all the involved items: every `fmt()` method, and `fmt::Error`.

This PR is not intended to make any novel claims about `fmt`; only to repeat an existing one in places where it will be more visible.
check if `x test tests` missing any test directory

Add a unit test to ensure we don't skip any test directories for `x test tests` in the future.
Handle Deref expressions in invalid_reference_casting

Similar to rust-lang/rust#124908

See rust-lang/rust#124951 for context; this PR fixes the last of the known false postiive cases with this lint that we encounter in Crater.
Rollup of 5 pull requests

Successful merges:

 - #124928 (Stabilize `byte_slice_trim_ascii` for `&[u8]`/`&str`)
 - #124954 (Document proper usage of `fmt::Error` and `fmt()`'s `Result`.)
 - #124969 (check if `x test tests` missing any test directory)
 - #124978 (Handle Deref expressions in invalid_reference_casting)
 - #125005 (Miri subtree update)

r? `@ghost`
`@rustbot` modify labels: rollup
Weekly `cargo update`

Automation to keep dependencies in `Cargo.lock` current.

The following is the output from `cargo update`:

```txt
Locking 77 packages to latest compatible versions
    Updating allocator-api2 v0.2.16 -> v0.2.18
    Updating anstream v0.6.13 -> v0.6.14
    Updating anstyle v1.0.6 -> v1.0.7
    Updating anstyle-lossy v1.1.0 -> v1.1.1
    Updating anstyle-parse v0.2.3 -> v0.2.4
    Updating anstyle-query v1.0.2 -> v1.0.3
    Updating anstyle-svg v0.1.3 -> v0.1.4
    Updating anstyle-wincon v3.0.2 -> v3.0.3
    Updating anyhow v1.0.81 -> v1.0.83
    Updating autocfg v1.2.0 -> v1.3.0
    Updating bumpalo v3.15.4 -> v3.16.0
    Updating bytecount v0.6.7 -> v0.6.8
    Updating clap_complete v4.5.1 -> v4.5.2
    Updating color-print v0.3.5 -> v0.3.6
    Updating color-print-proc-macro v0.3.5 -> v0.3.6
    Updating colorchoice v1.0.0 -> v1.0.1
    Updating dissimilar v1.0.7 -> v1.0.9
    Updating either v1.10.0 -> v1.11.0
    Updating encoding_rs v0.8.33 -> v0.8.34
    Updating errno v0.3.8 -> v0.3.9
    Updating fastrand v2.0.2 -> v2.1.0
    Updating flate2 v1.0.28 -> v1.0.30
    Updating fluent-bundle v0.15.2 -> v0.15.3
    Updating fluent-syntax v0.11.0 -> v0.11.1
    Updating getrandom v0.2.13 -> v0.2.14 (latest: v0.2.15)
    Updating hashbrown v0.14.3 -> v0.14.5
    Updating intl-memoizer v0.5.1 -> v0.5.2
      Adding is_terminal_polyfill v1.70.0
    Updating jobserver v0.1.28 -> v0.1.31
    Updating lock_api v0.4.11 -> v0.4.12
    Updating num-traits v0.2.18 -> v0.2.19
    Removing packed_simd v0.3.9
    Updating parking_lot v0.12.1 -> v0.12.2
    Updating parking_lot_core v0.9.9 -> v0.9.10
    Updating pest v2.7.9 -> v2.7.10
    Updating pest_derive v2.7.9 -> v2.7.10
    Updating pest_generator v2.7.9 -> v2.7.10
    Updating pest_meta v2.7.9 -> v2.7.10
    Updating proc-macro2 v1.0.79 -> v1.0.82
    Updating pulldown-cmark v0.10.2 -> v0.10.3
    Updating pulldown-cmark-escape v0.10.0 -> v0.10.1
    Updating quote v1.0.35 -> v1.0.36
      Adding redox_syscall v0.5.1
    Updating rustc-demangle v0.1.23 -> v0.1.24
    Updating rustix v0.38.32 -> v0.38.34
    Updating rustversion v1.0.15 -> v1.0.16
    Updating ryu v1.0.17 -> v1.0.18
    Updating security-framework v2.10.0 -> v2.11.0
    Updating security-framework-sys v2.10.0 -> v2.11.0
    Updating self_cell v1.0.3 -> v1.0.4
    Updating semver v1.0.22 -> v1.0.23
    Updating serde v1.0.197 -> v1.0.201
    Updating serde_derive v1.0.197 -> v1.0.201
    Updating serde_json v1.0.115 -> v1.0.117
    Updating socket2 v0.5.6 -> v0.5.7
    Updating syn v2.0.58 -> v2.0.62
    Updating sysinfo v0.30.8 -> v0.30.12
    Updating thiserror v1.0.58 -> v1.0.60
    Updating thiserror-impl v1.0.58 -> v1.0.60
    Updating tokio-util v0.7.10 -> v0.7.11
    Updating type-map v0.4.0 -> v0.5.0
    Updating unic-langid v0.9.4 -> v0.9.5
    Updating unic-langid-impl v0.9.4 -> v0.9.5
    Updating unic-langid-macros v0.9.4 -> v0.9.5
    Updating unic-langid-macros-impl v0.9.4 -> v0.9.5
    Updating unicode-width v0.1.11 -> v0.1.12
    Updating winapi-util v0.1.6 -> v0.1.8
    Updating windows-targets v0.52.4 -> v0.52.5
    Updating windows_aarch64_gnullvm v0.52.4 -> v0.52.5
    Updating windows_aarch64_msvc v0.52.4 -> v0.52.5
    Updating windows_i686_gnu v0.52.4 -> v0.52.5
      Adding windows_i686_gnullvm v0.52.5
    Updating windows_i686_msvc v0.52.4 -> v0.52.5
    Updating windows_x86_64_gnu v0.52.4 -> v0.52.5
    Updating windows_x86_64_gnullvm v0.52.4 -> v0.52.5
    Updating windows_x86_64_msvc v0.52.4 -> v0.52.5
    Updating zerocopy v0.7.32 -> v0.7.34
    Updating zerocopy-derive v0.7.32 -> v0.7.34
note: pass `--verbose` to see 94 unchanged dependencies behind latest
```
fix few typos in filecheck annotations

Inspired by rust-lang/rust#123886 (comment)

`rg -g '*.rs' '//\s+?[\w-]+(-[\w]+):' -r '$1' -oNI | sort -u`

Should https://llvm.org/docs/CommandGuide/FileCheck.html#cmdoption-FileCheck-ignore-case be used for case-insensetive match for filecheck?
Consolidate obligation cause codes for where clauses

Removes some unncessary redundancy between `SpannedWhereClause`/`WhereClause`

r? lcnr
Refactoring after the `PlaceValue` addition

I added [`PlaceValue`](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_codegen_ssa/mir/place/struct.PlaceValue.html) in #123775, but kept that one line-by-line simple because it touched so many places.

This goes through to add more helpers & docs, and change some `PlaceRef` to `PlaceValue` where the type didn't need to be included.

No behaviour changes -- the codegen is exactly the same.
use key-value format in stage0 file

Currently, we are working on the python removal task on bootstrap. Which means we have to extract some data from the stage0 file using shell scripts. However, parsing values from the stage0.json file is painful because shell scripts don't have a built-in way to parse json files.

This change simplifies the stage0 file format to key-value pairs, which makes it easily readable from any environment.

See the zulip thread for more details: https://rust-lang.zulipchat.com/#narrow/stream/326414-t-infra.2Fbootstrap/topic/Using.20different.20format.20in.20the.20stage0.20file
…ingjubilee

io::Write::write_fmt: panic if the formatter fails when the stream does not fail

Follow-up to rust-lang/rust#124954
std::alloc: use posix_memalign instead of memalign on solarish

`memalign` on Solarish requires the alignment to be at least the size of a pointer, which we did not honor. `posix_memalign` also requires that, but that code path already takes care of this requirement.

close GH-124787
@RalfJung
Copy link
Member Author

@bors r+

@bors
Copy link
Contributor

bors commented May 12, 2024

📌 Commit 956aecf has been approved by RalfJung

It is now in the queue for this repository.

@bors
Copy link
Contributor

bors commented May 12, 2024

⌛ Testing commit 956aecf with merge 55859d4...

@bors
Copy link
Contributor

bors commented May 12, 2024

☀️ Test successful - checks-actions
Approved by: RalfJung
Pushing 55859d4 to master...

@bors bors merged commit 55859d4 into rust-lang:master May 12, 2024
8 checks passed
@RalfJung RalfJung deleted the rustup branch May 12, 2024 15:05
@RalfJung RalfJung mentioned this pull request May 12, 2024
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