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

Rollup of 9 pull requests #120660

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
Contributor

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
Contributor

bors commented Feb 5, 2024

⌛ Testing commit a2d3eed with merge 8c0b4f6...

@bors
Copy link
Contributor

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
12 checks passed
@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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in 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