| Age | Commit message (Collapse) | Author | Lines |
|
These tests have expanded beyond the RFC, so rename the directory
`rfc-3086-metavar-expr` to `metavar-expressions`. `concat` (which wasn't
part of the RFC) now fits in this group, so merge its tests into the
`metavar-expressions` directory.
Additionally rename some related `issue-*` tests.
|
|
|
|
|
|
|
|
bootstrap.example.toml: use less contextual format
prefixing each key with its section means you don't need to scroll up 4 pages to see which section
a particular key is from.
target specific options were kept in old format since the exact section name depends on the target, so those options must now be moved to the bottom of the file.
[inspired by zulip discussion](https://rust-lang.zulipchat.com/#narrow/channel/326414-t-infra.2Fbootstrap/topic/consider.20rewriting.20bootstrap.2Eexample.2Etoml.20to.20use.20section.2Ekey/with/521734873)
r? ``@workingjubilee``
|
|
|
|
Bump the version number to 1.90.0
Part of the release process. This PR must not be rolled up.
r? cuviper
|
|
|
|
|
|
|
|
|
|
|
|
`compiler` path
It was confusing that the `Rustc` step was invoked twice, once with all crates and once with no crates (even though both of these mean the same thing).
|
|
|
|
Rollup of 5 pull requests
Successful merges:
- rust-lang/rust#141597 (Document subdirectories of UI tests with README files)
- rust-lang/rust#142823 (Port `#[no_mangle]` to new attribute parsing infrastructure)
- rust-lang/rust#142828 (1.88.0 release notes)
- rust-lang/rust#142854 (centralize `-Zmin-function-alignment` logic)
- rust-lang/rust#142875 (Check rustdoc-json-types FORMAT_VERSION is correctly updated)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
faster string parsing
|
|
r=Kobzol
Check rustdoc-json-types FORMAT_VERSION is correctly updated
Follow-up of https://github.com/rust-lang/rust/pull/142677.
``@nnethercote`` suggested that we should also ensure that the `FORMAT_VERSION` was only increased by 1 and we should check for it, this PR does it.
cc ``@aDotInTheVoid``
r? ghost
|
|
Port `#[no_mangle]` to new attribute parsing infrastructure
Ports `no_mangle` to the new attribute parsing infrastructure for https://github.com/rust-lang/rust/issues/131229#issuecomment-2971353197
r? ``@jdonszelmann``
|
|
Document subdirectories of UI tests with README files
Part of rust-lang/rust#133895 and the [2025 Google Summer of Code](https://blog.rust-lang.org/2025/05/08/gsoc-2025-selected-projects/) associated project.
When adding a new UI test, one is faced with hundreds of subdirectories in `tests/ui` reflecting various categories. Knowing where to put the new test is not trivial, as many of the categories have slightly misleading names. For example, `moves` does not only refer to the `move` keyword but to functions taking ownership in general, whereas `allocator` does not refer to allocation in general but rather to the very specific `allocator_api` and `global_allocator` features.
Many contributors will therefore place their test at the top level of ̀`tests/ui` where it will be mixed with hundreds of unrelated tests.
This PR is a tentative move towards more clearly defined tag/categories, with a SUMMARY.md file documenting the true purpose of each subdirectory, placed inside `tests/ui`.
r? ``@jieyouxu``
|
|
|
|
|
|
the right type
|
|
Signed-off-by: Jonathan Brouwer <jonathantbrouwer@gmail.com>
|
|
The skipped test passes since nightly-2024-11-29. Let's stop skipping
it to increase the chance of detecing a regression.
|
|
Co-authored-by: Jieyou Xu <jieyouxu@outlook.com>
|
|
yotamofek:pr/rustdoc/comment-eslint-installation-req, r=GuillaumeGomez
Document why tidy checks if `eslint` is installed via `npm`
Discussion here: rust-lang/rust#142851
|
|
remove few allow(dead_code)
Few from serial/parallel compiler leftovers and few from bootstrap.
|
|
|
|
|
|
Signed-off-by: Jonathan Brouwer <jonathantbrouwer@gmail.com>
|
|
For consistency. Also, it's faster because `join_with_double_colon` does
a better job estimating the allocation size than `join` from
`itertools`.
|
|
|
|
All HIR attributes are outer
Fixes https://github.com/rust-lang/rust/issues/142649. Closes https://github.com/rust-lang/rust/pull/142759.
All HIR attributes, including parsed and not yet parsed, will now be rendered as outer attributes by `rustc_hir_pretty`. The original style of the corresponding AST attribute(s) is not relevant for pretty printing, only for diagnostics.
r? ````@jdonszelmann````
|
|
rustdoc_json: conversion cleanups
A bunch of clean-to-types conversion cleanups I found while working on perf-related stuff in rustdoc_json.
r? ```@aDotInTheVoid```
|
|
Pass -Cpanic=abort for the panic_abort crate
The panic_abort crate must be compiled with panic=abort, but cargo doesn't allow setting the panic strategy for a single crate the usual way using `panic="abort"`, but luckily per-package rustflags do allow this. Bootstrap previously handled this in its rustc wrapper, but for example the build systems of cg_clif and cg_gcc don't use the rustc wrapper, so they would either need to add one, patch the standard library or be unable to build a sysroot suitable for both panic=abort and panic=unwind (as is currently the case).
Required for https://github.com/rust-lang/rustc_codegen_cranelift/issues/1567
|
|
Minic rustc's new `format_args!` expansion
|
|
|
|
|
|
r=jieyouxu
forward the bootstrap `runner` to `run-make`
The runner was already forwarded to `compiletest`, this just passes it on to `run-make` and uses it in the `run` functions.
The configuration can look like this
```toml
# in bootstrap.toml
[target.s390x-unknown-linux-gnu]
runner = "qemu-s390x -L /usr/s390x-linux-gnu"
```
Any C compilation automatically sets the correct target. Calls to rustc must use `.target(target())`. Then, a command like below will work by cross-compiling to the given target, and using the given runner for that target to execute the binary:
```
./x test tests/run-make/c-link-to-rust-va-list-fn --target s390x-unknown-linux-gnu
```
The runner can also be used for e.g. running with `valgrind`.
This PR also enables its use in the test case that I care about, hopefully that actually does work on the platforms that CI uses. We should probably run some try jobs to be sure?
r? `@jieyouxu`
try-job: test-various
try-job: armhf-gnu
|
|
The runner was already forwarded to `compiletest`, this just passes it on to `run-make` and uses it in the `run` functions.
|
|
r=nnethercote
Avoid a few more allocations in `write_shared.rs`
Inspired by rust-lang/rust#141421 , avoids a few `Vec`, `PathBuf` and `String` allocations in `write_shared.rs`. I don't think these will show up on benchmarks, but are still worthwhile IMHO.
Also includes a few small cleanups.
r? nnethercote - if you'd like :)
|
|
- `convert_static` -> `from_clean_static`
- `from_function` -> `from_clean_function`
To match the pre-existing `from_clean_item` and `FromClean::from_clean`.
I left `JsonRenderer::convert_item` unchanged because it's a bit
different.
|
|
The `FromClean` trait is used a lot for converting to rustdoc-json
format. But it's not used universally; there are still some ad hoc
functions and methods for converting. This commit fixes this
inconsistency by using `FromClean` more.
The commit also introduces `FromClean` for `Box` and `Option`. This lets
a lot of `as_ref` and `map` calls be removed in favour of simple
`into_json` calls.
|
|
It's just replicating exactly what is done by `<Vec<GenericParamDef> as
FromClean>::into_json`
|
|
We currently have both `FromClean<clean::Constant> for Constant` and
`FromClean<clean::ConstantKind> for Constant` which are basically
identical, but the former is unused.
|
|
|
|
LHolten/better-docs-for-exclude-imports-in-symbol-search
Add better documentation for excluding imports from symbol search
|
|
|
|
Extend `or_fun_call` lint with new checks for Option::get_or_insert,
Result::map_or.
changelog: [`or_fun_call`]: lint more methods
|
|
internal: Utilize `cargo check --compile-time-deps`
|