Commit Graph

7061 Commits

Author SHA1 Message Date
onur-ozkan ac7d1be031 add coverage on config include logic
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-18 12:29:18 +00:00
onur-ozkan 827047895a resolve config include FIXME
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-16 21:20:14 +03:00
onur-ozkan 6d52b51d3e add comment in TomlConfig::merge about the merge order
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-15 19:10:31 +03:00
onur-ozkan 7dfb457745 add FIXME note in TomlConfig::merge
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-15 11:53:21 +03:00
onur-ozkan 8e6f50bb4d fix path and the ordering logic
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-15 11:33:15 +03:00
onur-ozkan 3f70f197f2 apply nit notes
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-15 11:33:11 +03:00
onur-ozkan 4e80659b32 implement cyclic inclusion handling
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-15 11:33:01 +03:00
onur-ozkan 1c1febc59d add new config option: include
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-15 11:32:46 +03:00
Matthias Krüger b70e119e37 Rollup merge of #139804 - WaffleLapkin:real, r=jieyouxu
use `realpath` in `bootstrap.py` when creating build-dir

Fixes #139800
r? `@jieyouxu`

My use case for `./build` being a symlink is this: my "default" ~~partition~~ btrfs subvolume is snapshotted/backed up. I don't want to backup target-likes, so I move them to a special subvolume which isn't backed up. `./build` is a symlink into that subvolume. (`build.build-dir` configuration is not fully sufficient, it is still nice to be able to check build files with `ls ./build` or call tools from there)
2025-04-14 18:15:34 +02:00
Waffle Lapkin d5de2fa8bb use realpath in bootstrap.py when creating build-dir
this avoids crashes when `./build` is a symlink to a non-existent
directory.
2025-04-14 15:37:12 +02:00
bors 65fa0ab924 Auto merge of #139734 - ChrisDenton:rollup-28qn740, r=ChrisDenton
Rollup of 6 pull requests

Successful merges:

 - #139107 (std: make `cmath` functions safe)
 - #139607 (Add regression test for #127424)
 - #139691 (Document that `opt-dist` requires metrics to be enabled)
 - #139707 (Fix comment in bootstrap)
 - #139708 (Fix name of field in doc comment)
 - #139709 (bootstrap: fix typo in doc string)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-04-13 07:10:43 +00:00
Chris Denton 6b26d3c37c Rollup merge of #139709 - tshepang:patch-5, r=Kobzol
bootstrap: fix typo in doc string
2025-04-13 03:07:09 +00:00
Chris Denton 0149a43f8a Rollup merge of #139315 - clubby789:deranged-bump, r=Mark-Simulacrum
Switch `time` to `jiff` for time formatting in ICE dumps

Due to https://github.com/jhpratt/deranged/issues/21, Clippy, R-A and Miri currently fail to build if we bump to 0.4.1, pulled in via `time`. ~~Add some specific type annotations so we don't have to just pin it.~~

~~I can open 3 PRs to the tool repos if preferred, but I thought it might be easier to do this than to pin the transitive dep and go back and remove it once the changes are synced back.~~
2025-04-12 21:05:28 +00:00
Tshepang Mbambo 32dd3831f5 bootstrap: fix typo in doc string 2025-04-12 11:38:55 +02:00
Jakub Beránek ddf8237bcb Fix comment in bootstrap 2025-04-12 10:05:50 +02:00
bors ed3a4aac81 Auto merge of #139588 - Kobzol:rust-analyzer-opt, r=jieyouxu
Use LTO to optimize Rust tools (cargo, miri, rustfmt, clippy, Rust Analyzer)

Trying if LTO/PGO can help RA's performance, and by how much. As `@Noratrieb` suggested, we could actually LTO optimize all the important tools.

CC `@Veykril` I realized that we don't even do LTO for Rust Analyzer, that could be a very low hanging fruit to improve its performance 😅

try-job: dist-x86_64-linux
2025-04-11 17:00:31 +00:00
Stuart Cook fb7f0e4029 Rollup merge of #139574 - onur-ozkan:better-channel-handling, r=onur-ozkan
bootstrap: improve `channel` handling

Fixes https://github.com/rust-lang/rust/issues/139569

See [this comment](https://github.com/rust-lang/rust/pull/139574#discussion_r2034611993) for the explanation of this bug.
2025-04-11 13:31:48 +10:00
onur-ozkan b1053fdb76 handle config.channel default for tarballs
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-10 11:16:12 +03:00
Jakub Beránek 9a26863acc Apply LTO when building rustc tools 2025-04-10 08:56:57 +02:00
onur-ozkan 9847c73893 set rust.channel to "auto-detect" for dist profile
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-09 21:52:00 +03:00
Boxy 5a5bda52f0 Update boostrap 2025-04-09 12:33:09 +01:00
Boxy c274459b63 clippy lints 2025-04-09 12:29:59 +01:00
Boxy 2b684f39e4 update missing targets list 2025-04-09 12:29:59 +01:00
bors 97c966bb40 Auto merge of #139552 - matthiaskrgr:rollup-b194mk8, r=matthiaskrgr
Rollup of 10 pull requests

Successful merges:

 - #139494 (Restrict some queries by def-kind more)
 - #139496 (Revert r-a changes of rust-lang/rust#139455)
 - #139506 (add missing word in doc comment (part 2))
 - #139515 (Improve presentation of closure signature mismatch from `Fn` trait goal)
 - #139520 (compiletest maintenance: sort deps and drop dep on `anyhow`)
 - #139523 (Rustc dev guide subtree update)
 - #139526 (Fix deprecation note for std::intrinsics)
 - #139528 (compiletest: Remove the `--logfile` flag)
 - #139541 (Instantiate higher-ranked transmute goal w/ placeholders before emitting sub-obligations)
 - #139547 (Update library tracking issue template to set S-tracking-unimplemented)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-04-09 05:39:18 +00:00
Matthias Krüger df9796f20d Rollup merge of #139506 - tshepang:patch-6, r=jieyouxu
add missing word in doc comment (part 2)
2025-04-08 21:25:59 +02:00
Matthias Krüger 74c2a9be5b Rollup merge of #139504 - tshepang:patch-5, r=jieyouxu
add missing word in doc comment
2025-04-08 18:05:32 +02:00
Stuart Cook ab80f575c4 Rollup merge of #139386 - onur-ozkan:configurable-compiletest-libtest, r=jieyouxu,kobzol
make it possible to use stage0 libtest on compiletest

With https://github.com/rust-lang/rust/pull/119899, building the library tree will require a stage 1 compiler. This is because `compiletest` is defined as a `ToolStd` (since https://github.com/rust-lang/rust/pull/68019) in order to use the in-tree library. As a result, https://github.com/rust-lang/rust/pull/119899 makes certain development workflows more difficult as changes on the compiler tree will now require recompiling `compiletest` each time.

This PR allows switching `ToolStd` to `ToolBootstrap` with a simple boolean option in `bootstrap.toml` to allow `compiletest` to use the stage 0 `libtest` instead.

The changes under `src/ci` are clearly intended to make sure that `compiletest` doesn't break during future bootstrap beta bumps.
2025-04-08 20:55:08 +10:00
Stuart Cook dd682f7750 Rollup merge of #139321 - GuillaumeGomez:update-rinja, r=notriddle,lolbinarycat,yotamofek
Update to new rinja version (askama)

Askama maintenance was handed over to rinja maintainers so new `rinja` release is actually `askama`. More information [here](https://blog.guillaume-gomez.fr/articles/2025-03-19+Askama+and+Rinja+merge).

r? ``@notriddle``
2025-04-08 20:55:05 +10:00
Tshepang Mbambo eb4bc2ccfb add missing word in doc comment (part 2) 2025-04-08 03:48:14 +02:00
Tshepang Mbambo 8501dcbd4b remove unusual indentation
This also fixes markdown rendering
2025-04-08 02:59:48 +02:00
Tshepang Mbambo 01e44b140d add missing word in doc comment 2025-04-08 02:44:06 +02:00
onur-ozkan cae28b5119 implement check step for compiletest separately
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-07 16:23:44 +03:00
onur-ozkan c8306650ba enable in-tree std on some runners
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-07 10:08:08 +03:00
Guillaume Gomez ed81e347f1 Rollup merge of #139367 - GuillaumeGomez:proc-macro-values, r=Urgau
Add `*_value` methods to proc_macro lib

This is the (re-)implementation of https://github.com/rust-lang/libs-team/issues/459.

It allows to get the actual value (unescaped) of the different string literals.

It was originally done in https://github.com/rust-lang/rust/pull/136355 but it broke the artifacts build so we decided to move the crate to crates.io to go around this limitation.

Part of https://github.com/rust-lang/rust/issues/136652.

Considering this is a copy-paste of the originally approved PR, no need to go through the whole process again. \o/

r? `@Urgau`
2025-04-06 18:08:10 +02:00
Stuart Cook f55034b2eb Rollup merge of #139347 - jieyouxu:rust_test_helpers, r=onur-ozkan
Only build `rust_test_helpers` for `{incremental,ui}` test suites

Only build `rust_test_helpers` for `{incremental,ui}` test suites.

Context: Trying to see what test suites actually need `rust_test_helpers`, because this was causing unnecessary local failures when trying to run `./x test tests/run-make --target=wasm32-unknown-unknown` when `run-make` tests don't need `rust_test_helpers` at all.

r? `@ghost`

try-job: armhf-gnu
try-job: test-various
try-job: x86_64-apple-1
try-job: aarch64-apple
try-job: x86_64-msvc-1
try-job: i686-msvc-1
try-job: x86_64-mingw-1
try-job: i686-mingw-1
2025-04-06 16:21:02 +10:00
Guillaume Gomez d37bd4d7de Update proc-macro deps list 2025-04-06 03:08:16 +02:00
Josh Stone 12167d7064 Update the minimum external LLVM to 19 2025-04-05 11:44:38 -07:00
onur-ozkan afe3834bce add change-entry
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-05 14:22:13 +03:00
onur-ozkan 17fad21702 utilize compiletest_use_stage0_libtest option
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-05 14:22:11 +03:00
onur-ozkan 86a7ee603c create new option build.compiletest-use-stage0-libtest
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-04-05 14:22:08 +03:00
clubby789 41fcdab3b5 Switch time to jiff for time formatting in ICE dumps 2025-04-05 09:52:55 +00:00
Matthias Krüger a64ccf4a46 Rollup merge of #139092 - thaliaarchi:move-fd-pal, r=joboet
Move `fd` into `std::sys`

Move platform definitions of `fd` into `std::sys`, as part of https://github.com/rust-lang/rust/issues/117276.

Unlike other modules directly under `std::sys`, this is only available on some platforms and I have not provided a fallback abstraction for unsupported platforms. That is similar to how `std::os::fd` is gated to only supported platforms.

Also, fix the `unsafe_op_in_unsafe_fn` lint, which was allowed for the Unix fd impl. Since macro expansions from `std::sys::pal::unix::weak` trigger this lint, fix it there too.

cc `@joboet,` `@ChrisDenton`

try-job: x86_64-gnu-aux
2025-04-05 10:18:04 +02:00
Thalia Archibald 4085af0183 Move fd into sys 2025-04-04 20:11:08 -07:00
Guillaume Gomez 2b533e6b49 bootstrap: Only add rustc_randomized_layouts if the crate has it 2025-04-04 22:26:10 +02:00
Matthias Krüger bad6b7bad6 Rollup merge of #139378 - Kobzol:bootstrap-use-lld-fix, r=petrochenkov
Use target-agnostic LLD flags in bootstrap for `use-lld`

[Before](https://github.com/rust-lang/rust/pull/135001), I hardcoded LLD flags that pretty much only worked on GNU. The right way is to use `-Zlinker-features` instead though.

I *think* that this should also make this work on Windows mingw, and thus `@petrochenkov's` workaround is no longer necessary.

Fixes: https://github.com/rust-lang/rust/issues/139372
Closes: https://github.com/rust-lang/rust/pull/139375

r? `@lqd`
2025-04-04 21:55:00 +02:00
Jakub Beránek 76e1302076 Use target-agnostic LLD flags in bootstrap for use-lld 2025-04-04 18:29:20 +02:00
Jieyou Xu c25207d869 bootstrap: only build rust_test_helpers for {incremental,ui} suites 2025-04-04 11:31:01 +08:00
Noratrieb 6a1f57d095 Demote i686-pc-windows-gnu to Tier 2
In accordance with RFC 3771.

I also added a stub doc page for the target and renamed the
windows-gnullvm page for consistency.
2025-04-02 21:40:58 +02:00
Stuart Cook 82f04468e9 Rollup merge of #139214 - bjorn3:edition_2024_rustfmt, r=compiler-errors
Tell rustfmt to use the 2024 edition in ./x.py fmt

Most crates in this repo have been moved to the 2024 edition already. This also allows removing a rustfmt exclusion for a cg_clif test.
2025-04-02 13:10:42 +11:00
Stuart Cook 8420a55222 Rollup merge of #139060 - Shourya742:2025-03-28-replace-commit-with-actual-value, r=onur-ozkan
replace commit placeholder in vendor status with actual commit

closes: #120499

try-job: dist-x86_64-illumos
2025-04-02 13:10:39 +11:00