about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2025-06-12Avoid referring to the item tree except in the def mapChayim Refael Friedman-955/+981
Item tree IDs are very unstable (adding an item of a kind invalidates all following items of the same kind). Instead use ast ids, which, since the previous commit, are pretty stable.
2025-06-12Use stable AST IDsChayim Refael Friedman-556/+1230
Instead of simple numbering, we hash important bits, like the name of the item. This will allow for much better incrementality, e.g. when you add an item. Currently, this invalidates the IDs of all following items, which invalidates pretty much everything.
2025-06-12Merge pull request #19942 from ChayimFriedman2/fauxLukas Wirth-28/+26
fix: Fix completion with some attribute macros
2025-06-12Merge from rustcThe rustc-dev-guide Cronjob Bot-1788/+3774
2025-06-12Preparing for merge from rustcThe rustc-dev-guide Cronjob Bot-1/+1
2025-06-12Rollup merge of #142303 - Kobzol:bootstrap-cleanup-1, r=jieyouxuMatthias Krüger-353/+381
Assorted bootstrap cleanups (step 1) Now that the stage0 redesign has landed, we can finally start cleaning up many things in bootstrap, and lord knows it deserves it! I plan to send many PRs once I figure out an incremental way forward, this is the first one of them. It doesn't actually change anything, just renames stuff and adds more documentation, but the rename is bitrotty, so I wanted to push the PR eagerly. r? `@jieyouxu`
2025-06-11Add new permitted dependenciesMark Rousskov-0/+1
2025-06-11cargo updategithub-actions-84/+96
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
2025-06-11chore(deps-dev): bump brace-expansion in /editors/codedependabot[bot]-15/+15
Bumps [brace-expansion](https://github.com/juliangruber/brace-expansion) from 1.1.11 to 1.1.12. - [Release notes](https://github.com/juliangruber/brace-expansion/releases) - [Commits](https://github.com/juliangruber/brace-expansion/compare/1.1.11...v1.1.12) --- updated-dependencies: - dependency-name: brace-expansion dependency-version: 1.1.12 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
2025-06-11Rollup merge of #142374 - Kobzol:fix-newline, r=tmiaskoMatthias Krüger-1/+2
Fix missing newline trim in bootstrap Fixes [this comment](https://github.com/rust-lang/rust/pull/141909/files#r2140632918). Fixes: https://github.com/rust-lang/rust/issues/142350
2025-06-11Rollup merge of #142364 - Kobzol:download-ci-incremental-warning-remove, ↵Matthias Krüger-2/+1
r=RalfJung Do not warn on `rust.incremental` when using download CI rustc Discussed on Zulip. r? `@RalfJung`
2025-06-11Rollup merge of #142346 - ↵Matthias Krüger-1/+6
Shourya742:2025-06-11-add-tracing-import-to-execution-context, r=Kobzol Add tracing import to execution context In https://github.com/rust-lang/rust/pull/141909, we missed adding the trace_cmd import in the execution context module. This PR fixes that. Additionally, we are updating the mingw-check-2 check command to include BOOTSTRAP_TRACING=1 to help ensure we don't miss such cases in future PRs. r? `@Kobzol`
2025-06-11Add bootstrap option to compile a tool with featuresStypox-2/+34
2025-06-11Use `rustc_thread_pool` instead of `rustc-rayon-core`Celina G. Val-1/+1
2025-06-11Merge pull request #4383 from LorrensP-2158466/remove-leaky-syncobjRalf Jung-129/+153
use RwLockRef instead of RwLockId
2025-06-11Auto merge of #142358 - matthiaskrgr:rollup-fxe6m7k, r=matthiaskrgrbors-3/+33
Rollup of 9 pull requests Successful merges: - rust-lang/rust#141967 (Configure bootstrap backport nominations through triagebot) - rust-lang/rust#142042 (Make E0621 missing lifetime suggestion verbose) - rust-lang/rust#142272 (tests: Change ABIs in tests to more future-resilient ones) - rust-lang/rust#142282 (Only run `citool` tests on the `auto` branch) - rust-lang/rust#142297 (Implement `//@ needs-target-std` compiletest directive) - rust-lang/rust#142298 (Make loongarch-none target maintainers more easily pingable) - rust-lang/rust#142306 (Dont unwrap and re-wrap typing envs) - rust-lang/rust#142324 (Remove unneeded `FunctionCx` from some codegen methods) - rust-lang/rust#142328 (feat: Add `bit_width` for unsigned integer types) Failed merges: - rust-lang/rust#141639 (Expose discriminant values in stable_mir) r? `@ghost` `@rustbot` modify labels: rollup
2025-06-11mutex, rwlock: move some methods around so we borrow the RefCell less oftenRalf Jung-80/+75
2025-06-11use RwLockRef instead of RwLockIdLorrensP-2158466-72/+101
2025-06-11Fix missing newline trim in bootstrapJakub Beránek-1/+2
2025-06-11hir-ty: test (the absence of) incremental trait solvingDavid Barsky-1/+87
2025-06-11stabilize gaiBoxy-11/+10
2025-06-11Do not warn on `rust.incremental` when using download CI rustcJakub Beránek-2/+1
2025-06-11Rollup merge of #142298 - jieyouxu:loongarch-maintainer-list, r=fee1-deadMatthias Krüger-2/+2
Make loongarch-none target maintainers more easily pingable In the same style as rust-lang/rust#139028. r? compiler
2025-06-11Rollup merge of #142297 - jieyouxu:needs-target-std, r=KobzolMatthias Krüger-1/+31
Implement `//@ needs-target-std` compiletest directive Closes rust-lang/rust#141863. Needed to unblock rust-lang/rust#139244 and rust-lang/rust#141856. ### Summary This PR implements a `//@ needs-target-std` compiletest directive that gates test execution based on whether the target supports std or not. For some cases, this should be preferred over e.g. some combination of `//@ ignore-none`, `//@ ignore-nvptx` and more[^none-limit]. ### Implementation limitation Unfortunately, since there is currently [no reliable way to determine from metadata whether a given target supports std or not](https://github.com/rust-lang/rust/issues/142296), we have to resort to a hack. Bootstrap currently determines whether or not a target supports std by a naive target tuple substring comparison: a target supports std if its target tuple does *not* contain one of `["-none", "nvptx", "switch"]` substrings. This PR simply pulls that hack out into `build_helpers` to avoid reimplementing the same hack in compiletest, and uses that logic to inform `//@ needs-target-std`. ### Auxiliary changes This PR additionally changes a few run-make tests to use `//@ needs-target-std` over an inconsistent combination of target-based `ignore`s. This should help with rust-lang/rust#139244. --- r? bootstrap [^none-limit]: Notably, `target_os = "none"` is **not** a sufficient condition for "target does not support std"
2025-06-11Update extracted-doctest feature documentationGuillaume Gomez-5/+20
2025-06-11put flag check at the end of command chain in mingw-check-2bit-aloo-4/+5
2025-06-11Merge pull request #19973 from Veykril/push-ppltxvqvqmkkLukas Wirth-3/+9
fix: Hide dyn inlay hints for incomplete `impl`s
2025-06-11fix: Hide dyn inlay hints for incomplete `impl`sLukas Wirth-3/+9
2025-06-11add comment over ci changebit-aloo-1/+3
2025-06-11add tracing flag in bootstrap check cmd in mingw-check-2 ci workflowbit-aloo-1/+1
2025-06-11Revert "add `Cargo.lock` to CI-rustc allowed list for non-CI env"Jakub Beránek-34/+21
This reverts commit c3de813944873940b8e1a7734991f3c9f3f55156.
2025-06-11Merge pull request #4384 from RalfJung/diag-no-repeatOli Scherer-874/+727
diagnostics: do not repeat the entire message in the span label
2025-06-11add trace_cmd import in tracing feature in execution contextbit-aloo-0/+2
2025-06-11miri: we can use apfloat's mul_add nowRalf Jung-10/+6
2025-06-11miri: add flag to suppress float non-determinismRalf Jung-4/+31
2025-06-11that was phrased like a separate sentenceTshepang Mbambo-1/+1
2025-06-11Don't clone `new_item` in `after_krate`.Nicholas Nethercote-7/+16
We can avoid it by using the `entry` API, which lets us do the `assert_eq` comparison before `new_item` is consumed.
2025-06-11Avoid more clones in rustdoc JSON output.Nicholas Nethercote-125/+133
By making `JsonRenderer::item` take `&clean::Item` instead of a `clean::Item`. This required also changing `FromClean` and `IntoJson` methods to take references, which required a lot of follow-on sigil wrangling that is mostly tedious.
2025-06-11Fix proc macro server handling of strings with minusesChayim Refael Friedman-31/+26
It used to decompose them thinking they were numbers.
2025-06-10Auto merge of #142292 - RalfJung:miri-sync, r=RalfJungbors-228/+420
Miri subtree update r? `@ghost`
2025-06-10rustdoc search: prefer stable items in search resultsbinarycat-3/+39
fixes https://github.com/rust-lang/rust/issues/138067
2025-06-10Using git § I changed a submodule by accident: be explicitlolbinarycat-1/+2
Rewriting git history is something that is often difficult for new contributors, and we're already explaining the `<foo>` placeholder syntax, so I think it makes sense to be explicit about what exactly the paths mean.
2025-06-10Improve documentation of the `Rustc` step and rename `compiler` to ↵Jakub Beránek-41/+57
`build_compiler` in a few places
2025-06-10Rename `build` to `host_target`Jakub Beránek-314/+326
Host is the machine where bootstrap runs, and this field represents the target of the (host) stage0/beta compiler. This is much clearer than `build`, which also conflicts with the `Build` struct, which is stored under the name `build` inside `Builder` (lol).
2025-06-10Rollup merge of #142275 - aDotInTheVoid:gen-ty-of, r=fmeaseLeón Orell Valerian Liehr-74/+19
rustdoc: Refractor `clean_ty_generics` Refactoring towards rust-lang/rust#142226 [Zulip Discussion](https://rust-lang.zulipchat.com/#narrow/channel/266220-t-rustdoc/topic/Why.20sometimes.20.60predicates_of.60.20.28vs.20.60explicit_predicates_.2E.2E.2E/near/523182529) The old `clean_ty_generics` was almost always called with the same args, so rename it to `clean_ty_generics_inner`, and add a new wrapper that generates those args from a `DefId`. Having this be the main entrypoint to `clean_ty_generics` should make it easier to start calling `inferred_outlives_of` https://github.com/rust-lang/rust/pull/142264#discussion_r2136498360 (and is more readable even if we don't) Also, replaces all calls in rustdoc to `tcx.predicates_of` to `tcx.explicit_predicates_of`, which lets us remove `filter_non_trait_generics` r? ```@fmease```
2025-06-10Rollup merge of #142258 - ↵León Orell Valerian Liehr-19/+19
teohhanhui:docs/platform-support-linux-kernel-version-or-later, r=workingjubilee platform-support.md: Mention specific Linux kernel version or later To be consistent with notes for other targets... ~~(Only made the change for `aarch64-unknown-linux-gnu` for now, as that's fairly certain after looking at the `git blame` just to be sure.)~~
2025-06-10Rollup merge of #141909 - Shourya742:2025-06-01-add-execution-context, r=KobzolLeón Orell Valerian Liehr-272/+364
Add central execution context to bootstrap This PR continues the effort toward command centralization as outlined in https://github.com/rust-lang/rust/issues/126819. It introduces a centralized execution context through which all commands will be executed. Previously, centralization was limited to build methods; this PR extends it to the `config` module and updates the remaining methods accordingly. Best reviewed commit by commit. r? ``@Kobzol``
2025-06-10Rollup merge of #141818 - mati865:dont-create-msi-from-non-windows, r=KobzolLeón Orell Valerian Liehr-1/+2
Don't create .msi installer for gnullvm hosts WIX toolset works only on Windows hosts, but gnullvm doesn't have host toolchain yet. To get out of this loop, we will create a single release without MSI installer. Split out from: https://github.com/rust-lang/rust/pull/140772
2025-06-10Make loongarch-none target maintainers more easily pingableJieyou Xu-2/+2
2025-06-10Document `//@ needs-target-std` in rustc-dev-guideJieyou Xu-0/+1