-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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 #126878
Rollup of 9 pull requests #126878
Conversation
This reverts commit faac70b.
Signed-off-by: onur-ozkan <work@onurozkan.dev>
I believe this was changed a while ago in rust-lang/promote-release#14.
When using `symlink_dir`, it first removes the existing link with `remove_dir`. However, if the path isn't a link and contains files, `remove_dir` fails with "DirectoryNotEmpty", which causes the symbolic linking to fail as well. We have this problem on linking 'rustlib/rust' because it contains files as an actual directory. Signed-off-by: onur-ozkan <work@onurozkan.dev>
If `codegen-backends` is missing "cranelift" and "gcc" (which is common), bootstrap will now only show this warning during `dist` and `install` steps, or if codegen-backends was explicitly called for build. Signed-off-by: onur-ozkan <work@onurozkan.dev>
This is already handled from bootstrap at https://github.com/rust-lang/rust/blob/a1ca449981e3b8442e358026437b7bedb9a1458e/src/bootstrap/src/utils/helpers.rs#L504-L506. Signed-off-by: onur-ozkan <work@onurozkan.dev>
So we can omit the `token::` qualifier, which gives more space to some cramped code.
Merge `PatParam`/`PatWithOr`, and `Expr`/`Expr2021`, for a few reasons. - It's conceptually nice, because the two pattern kinds and the two expression kinds are very similar. - With expressions in particular, there are several places where both expression kinds get the same treatment. - It removes one unreachable match arm. - Most importantly, for rust-lang#124141 I will need to introduce a new type `MetaVarKind` that is very similar to `NonterminalKind`, but records a couple of extra fields for expression metavars. It's nicer to have a single `MetaVarKind::Expr` expression variant to hold those extra fields instead of duplicating them across two variants `MetaVarKind::{Expr,Expr2021}`. And then it makes sense for patterns to be treated the same way, and for `NonterminalKind` to also be treated the same way. I also clarified the comments, because I have long found them a little hard to understand.
…-Simulacrum tidy: skip submodules if not present for non-CI environments Right now tidy requires rustc-perf to be fetched as it checks its license, but this doesn't make sense for most contributors since rustc-perf is a dist-specific tool and its license will not change frequently, especially during compiler development. This PR makes tidy to skip rustc-perf if it's not fetched and if it's not running in CI. Applies rust-lang#126225 (comment) and reverts rust-lang#126225.
…k-Simulacrum Update outdated README in build-manifest. I believe this was changed a while ago in rust-lang/promote-release#14.
…imulacrum less bootstrap warnings This is how the build logs looks like currently: ```sh $ x build Building bootstrap Compiling bootstrap v0.0.0 (/home/nimda/devspace/onur-ozkan/rust/src/bootstrap) Finished `dev` profile [unoptimized] target(s) in 3.43s WARNING: no codegen-backends config matched the requested path to build a codegen backend. HELP: add backend to codegen-backends in config.toml. WARNING: creating symbolic link `/home/nimda/devspace/.other/rustc-builds/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/rustc-src/rust` to `/home/nimda/devspace/onur-ozkan/rust` failed with File exists (os error 17) Creating a sysroot for stage2 compiler (use `rustup toolchain link 'name' build/host/stage2`) WARNING: creating symbolic link `/home/nimda/devspace/.other/rustc-builds/build/x86_64-unknown-linux-gnu/ci-rustc-sysroot/lib/rustlib/rustc-src/rust` to `/home/nimda/devspace/onur-ozkan/rust` failed with File e xists (os error 17) Building tool rustdoc (stage1 -> stage2, x86_64-unknown-linux-gnu) Compiling rustdoc v0.0.0 (/home/nimda/devspace/onur-ozkan/rust/src/librustdoc) Compiling rustdoc-tool v0.0.0 (/home/nimda/devspace/onur-ozkan/rust/src/tools/rustdoc) Finished `release` profile [optimized + debuginfo] target(s) in 13.57s Build completed successfully in 0:00:17 ``` This PR removes artifact linking warnings and only shows the codegen-backend warning if explicitly called or during Dist or Install steps.
…mulacrum remove `GIT_DIR` handling in pre-push hook This is already handled from bootstrap: https://github.com/rust-lang/rust/blob/a1ca449981e3b8442e358026437b7bedb9a1458e/src/bootstrap/src/utils/helpers.rs#L504-L506
…iler-errors make unsized_fn_params an internal feature As suggested [here](rust-lang#123894 (comment)). r? `@compiler-errors` Fixes rust-lang#123887 (kind of -- ICEs on internal features are considered acceptable so this issue is not-a-bug once this PR lands)
…compiler-errors don't ICE when encountering an extern type field during validation "extern type" is a pain that keeps on giving... Fixes rust-lang#126814 r? ```@oli-obk```
…errors delegation: Do not crash on qpaths without a trait Fixes rust-lang#126742
…r=compiler-errors Rework pattern and expression nonterminal kinds. Some tweaks to `NonterminalKind` that will assist with rust-lang#124141. Details in the individual commits. r? compiler-errors cc ```@eholk```
Add needs-symlink directive to compiletest This is an alternative to rust-lang#126846 that allows running symlink tests on Windows in CI but will ignore them locally if symlinks aren't available. A future improvement would be to check that the `needs-symlink` directive is used in rmake files that call `create_symlink` but this is just a quick PR to unblock Windows users who want to run tests locally without enabling symlinks.
@bors r+ rollup=never p=9 |
☀️ Test successful - checks-actions |
📌 Perf builds for each rolled up PR:
previous master: 33422e72c8 In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
Finished benchmarking commit (bcf94de): comparison URL. Overall result: ❌✅ regressions and improvements - ACTION NEEDEDNext Steps: If you can justify the regressions found in this perf run, please indicate this with @rustbot label: +perf-regression Instruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)This benchmark run did not return any relevant results for this metric. CyclesThis benchmark run did not return any relevant results for this metric. Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 691.736s -> 692.369s (0.09%) |
@rustbot label: +perf-regression-triaged |
Successful merges:
GIT_DIR
handling in pre-push hook #126663 (removeGIT_DIR
handling in pre-push hook)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup