Skip to content

Rollup of 9 pull requests #120660

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 115 commits into from
Feb 5, 2024
Merged

Rollup of 9 pull requests #120660

merged 115 commits into from
Feb 5, 2024

Conversation

matthiaskrgr
Copy link
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

romanows and others added 30 commits December 31, 2023 15:09
The `CString` handling code is erroneously identical to the `ByteString`
handling code.
- Rename it as `MixedUnit`, because it will soon be used in more than
  just C string literals.
- Change the `Byte` variant to `HighByte` and use it only for
  `\x80`..`\xff` cases. This fixes the old inexactness where ASCII chars
  could be encoded with either `Byte` or `Char`.
- Add useful comments.
- Remove `is_ascii`, in favour of `u8::is_ascii`.
`unescape_literal` becomes `unescape_unicode`, and `unescape_c_string`
becomes `unescape_mixed`. Because rfc3349 will mean that C string
literals will no longer be the only mixed utf8 literals.
Add postfix completion for let else

Adds a postfix completion for let else syntax, similar to the if let postfix.
feat: Support for GOTO def from *inside* files included with include! macro

close rust-lang#14937
Try to implement goto def from *inside* files included with include! macro.
This implementation has two limitations:
1. Only **one** file which calls include! will be tracked. (I think multiple file be included is a rare case and we may let it go for now)
2. Mapping token from included file to macro call file (semantics.rs:646~658) works fine but I am not sure is this the correct way to implement.
intenral: Cleanup error variants in MIR code a bit
…RalfJung

miri: normalize struct tail in ABI compat check

fixes rust-lang/miri#3282
extracted from rust-lang#120354, see rust-lang#120354 (comment) for context

r? ```@RalfJung```
fix rust-lang#120603 by adding a check in default_read_buf

Fixes rust-lang#120603 by checking the returned read n is in-bounds of the cursor.

Interestingly, I noticed that `BorrowedBuf` side-steps this issue by using checked accesses. Maybe this can be switched to unchecked to mirror what BufReader does https://github.com/rust-lang/rust/blob/bf3c6c5bed498f41ad815641319a1ad9bcecb8e8/library/core/src/io/borrowed_buf.rs#L95
Subtree update of `rust-analyzer`

r? ghost
rustdoc: trait.impl, type.impl: sort impls to make it not depend on serialization order

Can be tested by running `cargo doc` with different rust versions on some crate and comparing `doc` folders: files in `trait.impl` and `type.impl` will sometimes have different order of impls.
@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. rollup A PR which is a rollup labels Feb 5, 2024
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=9

@bors
Copy link
Collaborator

bors commented Feb 5, 2024

📌 Commit a2d3eed has been approved by matthiaskrgr

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Feb 5, 2024
@bors
Copy link
Collaborator

bors commented Feb 5, 2024

⌛ Testing commit a2d3eed with merge 8c0b4f6...

@bors
Copy link
Collaborator

bors commented Feb 5, 2024

☀️ Test successful - checks-actions
Approved by: matthiaskrgr
Pushing 8c0b4f6 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Feb 5, 2024
@bors bors merged commit 8c0b4f6 into rust-lang:master Feb 5, 2024
@rustbot rustbot added this to the 1.78.0 milestone Feb 5, 2024
@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#119481 Clarify ambiguity in select_nth_unstable docs afa08396c38a3d0b925134cf0fe8734189e2f521 (link)
#119600 Remove outdated references to librustc_middle 934d3948934a337fa54b621c664c96a811ef0559 (link)
#120458 Document &CStr to CString conversion 93b85b0a20593b62f1c9d18458e9f2b2496dbfb0 (link)
#120569 coverage: Improve handling of function/closure spans b36cac0d04243ed8eab9a170c6bc6cd0a75d099a (link)
#120572 Update libc to 0.2.153 52bd56610d742cb4975258191cbe7ff09560fe5b (link)
#120587 miri: normalize struct tail in ABI compat check 0fc15238d111154bce9dea97bedf21ee5f677d0a (link)
#120607 fix #120603 by adding a check in default_read_buf 5c906ab8c21f8c9674ce7ac47f19640191718666 (link)
#120636 Subtree update of rust-analyzer b7e03a6406c007eed806d7c93787b69f55ca9f34 (link)
#120641 rustdoc: trait.impl, type.impl: sort impls to make it not d… 6336caaf2513018565104cd4cff8a7d48318496e (link)

previous master: 0984becf01

In the case of a perf regression, run the following command for each PR you suspect might be the cause: @rust-timer build $SHA

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (8c0b4f6): comparison URL.

Overall result: ❌✅ regressions and improvements - ACTION NEEDED

Next Steps: If you can justify the regressions found in this perf run, please indicate this with @rustbot label: +perf-regression-triaged along with sufficient written justification. If you cannot justify the regressions please open an issue or create a new PR that fixes the regressions, add a comment linking to the newly created issue or PR, and then add the perf-regression-triaged label to this PR.

@rustbot label: +perf-regression
cc @rust-lang/wg-compiler-performance

Instruction count

This is a highly reliable metric that was used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
0.8% [0.2%, 1.4%] 2
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-0.2% [-0.3%, -0.2%] 2
All ❌✅ (primary) 0.8% [0.2%, 1.4%] 2

Max RSS (memory usage)

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-7.2% [-7.2%, -7.2%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -7.2% [-7.2%, -7.2%] 1

Cycles

This benchmark run did not return any relevant results for this metric.

Binary size

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
0.1% [0.0%, 0.1%] 4
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.2% [-0.2%, -0.2%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 0.0% [-0.2%, 0.1%] 5

Bootstrap: 664.243s -> 659.551s (-0.71%)
Artifact size: 308.11 MiB -> 308.15 MiB (0.01%)

@rustbot rustbot added the perf-regression Performance regression. label Feb 5, 2024
@Mark-Simulacrum
Copy link
Member

Mark-Simulacrum commented Feb 5, 2024

@rust-timer build 0fc1523

@rust-timer

This comment has been minimized.

@Mark-Simulacrum
Copy link
Member

@rust-timer build 5c906ab

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (0fc1523): comparison URL.

Overall result: no relevant changes - no action needed

Instruction count

This benchmark run did not return any relevant results for this metric.

Max RSS (memory usage)

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-3.4% [-3.4%, -3.4%] 1
All ❌✅ (primary) - - 0

Cycles

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
8.2% [8.2%, 8.2%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 664.243s -> 661.477s (-0.42%)
Artifact size: 308.11 MiB -> 308.11 MiB (-0.00%)

@Kobzol
Copy link
Contributor

Kobzol commented Feb 13, 2024

The ripgrep regression looks like noise, it blipped back soon after, and then blipped back and forth further.

@rustbot label: +perf-regression-triaged

@rustbot rustbot added the perf-regression-triaged The performance regression has been triaged. label Feb 13, 2024
@matthiaskrgr matthiaskrgr deleted the rollup-zuqljul branch March 16, 2024 18:20
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
merged-by-bors This PR was explicitly merged by bors. perf-regression Performance regression. perf-regression-triaged The performance regression has been triaged. rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Unsoundness in BufReader with a broken inner Read impl