Skip to content

Conversation

matthiaskrgr
Copy link
Member

Successful merges:

Failed merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

duckymirror and others added 21 commits April 16, 2023 12:09
This header can be used for tests which check the output of `--version --verbose` commands.
This avoids `rustc_data_structures` depending on `serde_json` which
allows it to be compiled much earlier, unlocking most of rustc.
Fluent, with all the icu4x it brings in, takes quite some time to
compile. `fluent_messages!` is only needed in further downstream rustc
crates, but is blocking more upstream crates like `rustc_index`. By
splitting it out, we allow `rustc_macros` to be compiled earlier, which
speeds up `x check compiler` by about 5 seconds (and even more after the
needless dependency on `serde_json` is removed from
`rustc_data_structures`).
Including steps executed during the dry run will result in a duplication
of all the steps in the build metrics, which just adds noise.
I think those don't make sense here, ig they were left from me copying the defs.
…larsan68

Set commit information environment variables when building tools

This fixes rust-lang#107094.
~I'm trying to add a regression test for this issue.~
**Update**: I've added a test and a new test header `needs-git-hash` which makes sure it doesn't run when commit hashes are ignored (`bootstrap`'s `ignore-git` option).
…ixes-rustdoc-book, r=Manishearth

Add list of supported disambiguators and suffixes for intra-doc links in the rustdoc book

This information is otherwise only provided in case an error occurs, which isn't great.

r? ``@notriddle``
Add `rustc_fluent_macro` to decouple fluent from `rustc_macros`

Fluent, with all the icu4x it brings in, takes quite some time to compile. `fluent_messages!` is only needed in further downstream rustc crates, but is blocking more upstream crates like `rustc_index`. By splitting it out, we allow `rustc_macros` to be compiled earlier, which speeds up `x check compiler` by about 5 seconds (and even more after the needless dependency on `serde_json` is removed from `rustc_data_structures`).
…bject-notationing, r=fee1-dead

Don't use `serde_json` to serialize a simple JSON object

This avoids `rustc_data_structures` depending on `serde_json` which allows it to be compiled much earlier, unlocking most of rustc.

This used to not matter, but after rust-lang#110407 we're not blocked on fluent anymore, which means that it's now a blocking edge.
![image](https://user-images.githubusercontent.com/48135649/232313178-e0150420-3020-4eb6-98d3-fe5294a8f947.png)

This saves a few more seconds.

cc ```@Zoxc``` who added it recently
…, r=ozkanonur

Avoid including dry run steps in the build metrics

Including steps executed during the dry run will result in a duplication of all the steps in the build metrics, which just adds noise.
Use `Item::expect_*` and `ImplItem::expect_*` more

r? `@Nilstrieb`
…has_type_flags_is_fast, r=oli-obk

Assure everyone that `has_type_flags` is fast

`number_of_people_who_tripped_on_this += 1`

r? `@oli-obk`
@rustbot rustbot added A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) A-testsuite Area: The testsuite used to check the correctness of rustc A-translation Area: Translation infrastructure, and migrating existing diagnostics to SessionDiagnostic S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler 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 Apr 17, 2023
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=7

@bors
Copy link
Collaborator

bors commented Apr 17, 2023

📌 Commit ed84388 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 Apr 17, 2023
@bors
Copy link
Collaborator

bors commented Apr 17, 2023

⌛ Testing commit ed84388 with merge 76589aa3676476d9c0055d62fafd0e2cfe61e034...

@bors
Copy link
Collaborator

bors commented Apr 18, 2023

💔 Test failed - checks-actions

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

The job dist-arm-linux failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
   Compiling rustc_abi v0.0.0 (/checkout/compiler/rustc_abi)
[RUSTC-TIMING] derive_more test:false 6.395
   Compiling rustc_baked_icu_data v0.0.0 (/checkout/compiler/rustc_baked_icu_data)
[RUSTC-TIMING] fluent_bundle test:false 1.801
error: prefer `FxHashSet` over `HashSet`, it has better performance
  --> compiler/rustc_fluent_macro/src/fluent.rs:86:30
86 |     let mut previous_attrs = HashSet::new();
   |                              ^^^^^^^
   |
   |
   = note: a `use rustc_data_structures::fx::FxHashSet` may be necessary
   = note: `-D rustc::default-hash-types` implied by `-D warnings`

error: prefer `FxHashMap` over `HashMap`, it has better performance
   --> compiler/rustc_fluent_macro/src/fluent.rs:179:30
179 |     let mut previous_defns = HashMap::new();
    |                              ^^^^^^^
    |
    |
    = note: a `use rustc_data_structures::fx::FxHashMap` may be necessary
[RUSTC-TIMING] rustc_fluent_macro test:false 0.205
error: could not compile `rustc_fluent_macro` due to 2 previous errors
warning: build failed, waiting for other jobs to finish...
[RUSTC-TIMING] rustc_baked_icu_data test:false 0.671

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) A-testsuite Area: The testsuite used to check the correctness of rustc A-translation Area: Translation infrastructure, and migrating existing diagnostics to SessionDiagnostic rollup A PR which is a rollup S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler 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.

10 participants