about summary refs log tree commit diff
path: root/src/bootstrap
AgeCommit message (Collapse)AuthorLines
2024-12-06handle `json_output` in `test::run_cargo_test`onur-ozkan-0/+5
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-12-06skip formatting when `--json-output` is usedonur-ozkan-11/+21
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-12-06Promote powerpc64le-unknown-linux-musl to tier 2 with host toolsJens Reidel-0/+6
MCP: https://github.com/rust-lang/compiler-team/issues/803 Signed-off-by: Jens Reidel <adrian@travitia.xyz>
2024-12-05Rollup merge of #133821 - Kobzol:replace-black-with-ruff, r=onur-ozkanGuillaume Gomez-452/+772
Replace black with ruff in `tidy` `ruff` can both lint and format Python code (in fact, it should be a mostly drop-in replacement for `black` in terms of formatting), so it's not needed to use `black` anymore. This PR removes `black` and replaces it with `ruff`, to get rid of one Python dependency, and also to make Python formatting faster (although that's a small thing). If we decide to merge this, we'll need to "reformat the world" - `ruff` is not perfectly compatible with `black`, and it also looks like `black` was actually ignoring some files before. I tried it locally (`./x test tidy --extra-checks=py:fmt --bless`) and it also reformatted some code in subtrees (e.g. `clippy` or `rustc_codegen_gcc`) - I'm not sure how to handle that.
2024-12-05Rollup merge of #133898 - onur-ozkan:ignore-git-hook-on-dist-sources, r=jieyouxuJacob Pratt-4/+6
skip `setup::Hook` on non-git sources Running `setup::Hook` (with `x setup`) leads tarball sources to panic and this PR resolves that problem by skipping `Hook` step on non-git sources.
2024-12-05Rollup merge of #133888 - ChrisDenton:job, r=jieyouxuJacob Pratt-26/+17
Improve bootstrap job objects This attempts to fix a few comments on bootstrap job objects. I also fixed an issue where if duplicating the job object handle into the python process failed, it would close the job object. This would then result in the job object closing all attached processes, which at that point includes the current process. The fix is to simply never close the job object handle at any point after the current process is assigned to it.
2024-12-05skip `setup::Hook` on non-git sourcesonur-ozkan-4/+6
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-12-05Revert "Rollup merge of #133817 - clubby789:bootstrap-eprintln, r=jieyouxu"Jieyou Xu-144/+140
This reverts commit 0585134e709de4a14e509158662fa569c155c195, reversing changes made to 5530869e0ff21d69e0eef1a4c4fd1f25bcbe7fbf. The PR unfortunately only converted the `ln!` instances, meaning that test output was messed up because stdout/stderr output interleaved when some `println!` instances were converted to `eprintln!` instances, while some `println!` instances remain unchanged.
2024-12-05Update comments on Windows job objectsChris Denton-4/+7
2024-12-05Nested job objects are now supported in CIChris Denton-9/+1
Nested job objects aren't supported on Windows 7 but we've long since moved on from that.
2024-12-05Never close a job after the process is assignedChris Denton-13/+9
2024-12-04Reformat Python code with `ruff`Jakub Beránek-452/+772
2024-12-04Rollup merge of #133856 - GuillaumeGomez:update-sysinfo, r=clubby789Matthias Krüger-8/+9
Update sysinfo version to 0.33.0
2024-12-04Rollup merge of #133737 - Walnut356:msvc_visualizers, r=onur-ozkanMatthias Krüger-14/+14
Include LLDB and GDB visualizers in MSVC distribution MSVC distributions currently don't include the lldb or GDB python files. MSVC and LLDB/GDB are not mutually exclusive (and end up being a common case with vscode + codelldb/lldb-dap), so they should probably be included. the existing visualizers currently only partially work on MSVC due to the differences in how the debug info is generated, but they also only partially work on GNU anyway - both of which are actively being fixed.
2024-12-04Update sysinfo version to 0.33.0Guillaume Gomez-8/+9
2024-12-04add a change entry for new default on `build.vendor`onur-ozkan-0/+5
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-12-04use vendor sources by default on dist tarballsonur-ozkan-1/+6
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-12-04Rollup merge of #133817 - clubby789:bootstrap-eprintln, r=jieyouxuMatthias Krüger-140/+144
Use `eprintln` instead of `println` in bootstrap/compiletest/tidy A big unconditional CTRL-F replace to start with to check if there's anything that CI expects to be on stdout r? `@jieyouxu`
2024-12-03bootstrap: `println!` -> `eprintln!`clubby789-140/+144
2024-12-03Rollup merge of #133696 - RalfJung:const-hashmap, r=cuviperMatthias Krüger-0/+4
stabilize const_collections_with_hasher and build_hasher_default_const_new After a lot of preparatory work, finally we can stabilize creating `HashMap` in const context. :) FCP for const_collections_with_hasher passed in https://github.com/rust-lang/rust/issues/102575. Fixes https://github.com/rust-lang/rust/issues/102575. FCP for build_hasher_default_const_new passed in https://github.com/rust-lang/rust/issues/123197. Fixes https://github.com/rust-lang/rust/issues/123197. Cc `@Amanieu` Release notes: https://github.com/rust-lang/rust/issues/133347
2024-12-03Rollup merge of #133545 - clubby789:symbol-intern-lit, r=jieyouxuMatthias Krüger-0/+9
Lint against Symbol::intern on a string literal Disabled in tests where this doesn't make much sense
2024-12-03./x miri: fix sysroot buildRalf Jung-0/+4
2024-12-03Rollup merge of #132723 - jieyouxu:sysroot-dance-dance-revolution, r=onur-ozkanMatthias Krüger-45/+96
Unify `sysroot_target_{bin,lib}dir` handling Follow-up to https://github.com/rust-lang/rust/pull/131405#discussion_r1826558962 where `sysroot_target_bindir` had to do some dancing because the sysroot ensure logic embedded in `sysroot_target_libdir` returned `$sysroot/$relative_lib/rustlib/$target/lib` and not the `rustlib` parent `$sysroot/$relative_lib/rustlib/`. This PR pulls out the sysroot ensure logic into a helper, and return `$sysroot/$relative_lib/rustlib/` instead so `sysroot_target_bindir` doesn't have to do parent traversal from the path returned from `sysroot_target_libdir`, and also make them easier to follow in that they are now clearly closely related based on the common target sysroot ensure logic.
2024-12-02Rollup merge of #133705 - onur-ozkan:profiler-check, r=jieyouxuGuillaume Gomez-24/+51
add "profiler" and "optimized-compiler-builtins" option coverage for ci-rustc Adds "profiler" and "optimized-compiler-builtins" option coverage in CI-rustc config compatibility check. Resolves #133675
2024-12-02include LLDB and GDB visualizers in MSVC distributionWalnut-14/+14
2024-12-02add "optimized-compiler-builtins" option coverage for ci-rustconur-ozkan-6/+11
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-12-02Unify `sysroot_target_{bin,lib}dir` handlingJieyou Xu-45/+96
2024-12-01Rollup merge of #133712 - RalfJung:rust_analyzer_settings, r=jieyouxuJacob Pratt-0/+1
rust_analyzer_settings: force use of 'nightly' toolchain The cranelift folder contains a rust-toolchain file. That means when RA opens `compiler/rustc_codegen_cranelift/Cargo.toml`, it will try to use that toolchain or fail. (Maybe that toolchain gets auto-installed for others? On my system, it just fails, but I also run vscodium in a sandbox.) However, it shouldn't be necessary to use more than one toolchain for the rustc workspace. So we can set the `RUSTUP_TOOLCHAIN` variable on the server side to force the same toolchain to be used everywhere. Suggested by `@ChayimFriedman2` in https://github.com/rust-lang/rust-analyzer/issues/18585.
2024-12-01rust_analyzer_settings: force use of 'nightly' toolchainRalf Jung-0/+1
2024-12-01add "profiler" option coverage for ci-rustconur-ozkan-24/+46
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-12-01Auto merge of #132390 - RalfJung:diagnostics-root-dir, ↵bors-4/+9
r=albertlarsan68,weihanglo bootstrap: show diagnostics relative to rustc src dir Fixes https://github.com/rust-lang/rust/issues/128726 Depends on https://github.com/rust-lang/cargo/pull/14752 propagating to bootstrap cargo
2024-12-01fix cargo path logicRalf Jung-3/+4
2024-11-30Auto merge of #133684 - RalfJung:rollup-j2tmrg7, r=RalfJungbors-3/+1
Rollup of 6 pull requests Successful merges: - #131698 (use stores of the correct size to set discriminants) - #133571 (Mark visionOS as supporting `std`) - #133655 (Eliminate print_expr_maybe_paren function from pretty printers) - #133667 (Remove unused code) - #133670 (bump hashbrown version) - #133673 (replace hard coded error id with `ErrorKind::DirectoryNotEmpty`) r? `@ghost` `@rustbot` modify labels: rollup
2024-11-30Rollup merge of #133673 - onur-ozkan:windows-fixme, r=KobzolRalf Jung-3/+1
replace hard coded error id with `ErrorKind::DirectoryNotEmpty` Resolves an internal bootstrap FIXME.
2024-11-30Auto merge of #133659 - jieyouxu:rollup-576gh4p, r=jieyouxubors-3/+5
Rollup of 6 pull requests Successful merges: - #131551 (Support input/output in vector registers of PowerPC inline assembly) - #132515 (Fix and undeprecate home_dir()) - #132721 (CI: split x86_64-mingw job) - #133106 (changes old intrinsic declaration to new declaration) - #133496 (thread::available_parallelism for wasm32-wasip1-threads) - #133548 (Add `BTreeSet` entry APIs to match `HashSet`) r? `@ghost` `@rustbot` modify labels: rollup
2024-11-30replace hard coded error id with `ErrorKind::DirectoryNotEmpty`onur-ozkan-3/+1
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-11-30bootstrap: show diagnostics relative to rustc src dirRalf Jung-1/+5
2024-11-30Rollup merge of #132721 - MarcoIeni:mingw-split, r=Kobzol许杰友 Jieyou Xu (Joe)-3/+5
CI: split x86_64-mingw job try-job: x86_64-mingw-1 try-job: x86_64-mingw-2
2024-11-30Rollup merge of #132750 - daltenty:daltenty/libs, r=jieyouxu许杰友 Jieyou Xu (Joe)-1/+1
[AIX] handle libunwind native_libs AIX should follow a similar path here to other libunwind platforms, with regards to system vs in-tree libunwind and the native lib search directories. Having the right native lib search directories here is also required to get the correct default library search paths, due to some quirks of the AIX linker.
2024-11-29Auto merge of #133533 - BoxyUwU:bump-boostrap, r=jieyouxu,Mark-Simulacrumbors-25/+25
Bump boostrap compiler to new beta Currently failing due to something about the const stability checks and `panic!`. I'm not sure why though since I wasn't able to see any PRs merged in the past few days that would result in a `cfg(bootstrap)` that shouldn't be removed. cc `@RalfJung` #131349
2024-11-29Cargo patchBoxy-2/+9
2024-11-29CI: split x86_64-mingw jobMarcoIeni-3/+5
2024-11-29Rollup merge of #133492 - MarcoIeni:bootstrap-path-check, r=onur-ozkanMatthias Krüger-5/+5
bootstrap: allow skipping steps with start of path
2024-11-29Rollup merge of #132782 - onur-ozkan:cleanup, r=jieyouxuMatthias Krüger-54/+24
improvements on initial sysroot and libdir finding logics Stabilized initial sysroot and libdir path resolution logic to work without dry-run conditions and utilized initial sysroot more broadly.
2024-11-28Implement lint against `Symbol::intern` on a string literalclubby789-0/+9
2024-11-28bootstrap: allow skipping steps with start of pathMarcoIeni-5/+5
2024-11-27print generated doc pathsonur-ozkan-1/+5
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-11-27clippy lintsBoxy-23/+16
2024-11-27Rollup merge of #133453 - ferrocene:check-license-metadata, r=KobzolMatthias Krüger-4/+35
Commit license-metadata.json to git and check it's correct in CI This PR adds `license-metadata.json` to the root of the git repo, and changes `mingw-check` to check that the file is still up-to-date. By committing this file, we remove the need for developers to a) have reuse installed or b) run an expensive ~90 second analysis of the files on disk when they want generate the COPYRIGHT.html files which depend on this license metadata. The file will need updating whenever `REUSE.toml` changes, or when git submodules are added, or when git submodules change their license information (as detected by REUSE). You can now run: * `./x run collect-license-metadata` to update the `./license-metadata.json` file * `./x test collect-license-metadata` to test the `./license-metadata.json` file for correctness The comparison is done with two `serde_json::Value` objects, so the map objects they contain should ignore differences in ordering.
2024-11-27Rollup merge of #132979 - onur-ozkan:skip-exact, r=jieyouxu,tgross35Matthias Krüger-7/+2
use `--exact` on `--skip` to avoid unintended substring matches Without the `--exact` flag, using `--skip tests/rustdoc` can unintentionally skip other tests that match as substrings such as `rustdoc-gui`, `rustdoc-js`, etc. For debugging, run: `./x.py --stage 2 test rustdoc-ui --skip tests/rustdoc` and `./x.py --stage 2 test rustdoc-ui --skip tests/rustdoc -- --exact` Resolves https://github.com/rust-lang/rust/issues/117721 try-job: x86_64-apple-1