Commit graph

682 commits

Author SHA1 Message Date
Nicholas Nethercote
e9288e7e90 Remove last remnants of rustc_query_system.
At this point module `ich` is the only thing left.
2026-02-16 22:56:47 +11:00
Nicholas Nethercote
ed091aaf5d Move rustc_query_system::query::dep_graph to rustc_middle.
Most of the files within the `dep_graph` module can be moved wholesale
into `rustc_middle`. But two of them (`mod.rs` and `dep_node.rs`) have
the same name as existing files in `rustc_middle`, so for those I just
copied the contents into the existing files.

The commit also moves `QueryContext` and `incremental_verify_ich*`
because they are tightly intertwined with the dep graph code. And a
couple of error structs moved as well.
2026-02-14 18:46:05 +11:00
Asuna
4c10efb939 Replace "bug" with "issue" in triagebot ping messages 2026-02-13 07:55:58 +01:00
Jonathan Brouwer
415780bb11
Rollup merge of #152326 - Kobzol:remove-compiler-adhoc-group, r=wesleywiser
Remove the compiler adhoc group

Since triagebot now allows configuring rotation mode through a specific team.

Original review rotation:

```toml
compiler = [
    "@BoxyUwU",
    "@chenyukang",
    "@davidtwco",
    "@eholk",
    "@fee1-dead",
    "@fmease",
    "@jackh726",
    "@jieyouxu",
    "@jdonszelmann",
    "@JonathanBrouwer",
    "@madsmtm",
    "@mati865",
    "@Nadrieril",
    "@nnethercote",
    "@oli-obk",
    "@petrochenkov",
    "@SparrowLii",
    "@TaKO8Ki",
    "@tiif",
    "@WaffleLapkin",
    "@wesleywiser",
]
```

I went through all the remaining members of t-compiler now and set their `compiler` team rotation to be off, to match the original state. You can check it with `team-stats compiler`.

r? @davidtwco
2026-02-09 23:37:49 +01:00
Jakub Beránek
5862618fab
Remove the compiler adhoc group 2026-02-08 09:52:34 +01:00
Jakub Beránek
f46032089a
Remove project-exploit-mitigations adhoc group 2026-02-08 09:24:38 +01:00
Jakub Beránek
5e33ea7b92
Remove project-stable-mir adhoc group 2026-02-08 09:23:04 +01:00
Jakub Beránek
c19c780d45
Remove project-const-traits adhoc group 2026-02-08 09:22:24 +01:00
Jakub Beránek
6b1ed212b7
Remove types adhoc group 2026-02-08 09:16:31 +01:00
Jakub Beránek
d53133eec2
Remove rustdoc adhoc group 2026-02-07 22:03:40 +01:00
Jonathan Brouwer
4ae29f946a
Rollup merge of #152222 - TaKO8Ki:add-tako8ki-to-triagebot, r=davidtwco
Re-add TaKO8Ki to triagebot review queue

I’m rejoining the compiler review rotation to help with ongoing review load.
2026-02-06 15:33:41 +01:00
Takayuki Maeda
ee2c39a2b4 re-add TaKO8Ki to triagebot review queue 2026-02-06 22:24:36 +09:00
apiraino
623c9cd143
update compiler stable backport zulip msg 2026-02-05 18:24:30 +01:00
Jonathan Brouwer
6eb9c02a96
Subscribe myself to translation diagnostics 2026-01-28 22:40:28 +01:00
Jieyou Xu
1973d65ade
misc: roll bootstrap reviewers for src/tools/build-manifest 2026-01-21 09:59:34 +08:00
Jieyou Xu
5e960ef418
triagebot: label src/tools/build-manifest with T-bootstrap 2026-01-21 09:58:33 +08:00
tiif
40691d0ca6 Add myself to the review rotation 2026-01-19 01:46:08 +00:00
lcnr
db36c093ca remove lcnr from compiler review rotation 2026-01-16 10:21:06 +01:00
Guillaume Gomez
bf31616b85
Rollup merge of #150587 - add-rustdoc-js-autolabel, r=fmease
triagebot: add A-rustdoc-js autolabel

Adds an autolabel rule for rustdoc JavaScript/TypeScript files so PRs touching
rustdoc frontend assets and related tests are automatically labeled `A-rustdoc-js`.

Fixes rust-lang/rust#137983
2026-01-13 23:39:07 +01:00
Jayan Sunil
2d49cfe6aa
fix: added missing type in triagebot.toml 2026-01-13 03:17:32 +05:30
Matthias Krüger
7fd7eecf1f
Rollup merge of #150922 - subscribe-attr-parsing, r=Urgau
Subscribe myself to attr parsing
2026-01-11 09:56:51 +01:00
rust-bors[bot]
f57eac1bf9
Auto merge of #146923 - oli-obk:comptime-reflect, r=BoxyUwU
Reflection MVP

I am opening this PR for discussion about the general design we should start out with, as there are various options (that are not too hard to transition between each other, so we should totally just pick one and go with it and reiterate later)

r? @scottmcm and @joshtriplett

project goal issue: https://github.com/rust-lang/rust-project-goals/issues/406
tracking issue: https://github.com/rust-lang/rust/issues/146922

The design currently implemented by this PR is

* `TypeId::info` (method, usually used as `id.info()` returns a `Type` struct
* the `Type` struct has fields that contain information about the type
* the most notable field is `kind`, which is a non-exhaustive enum over all possible type kinds and their specific information. So it has a `Tuple(Tuple)` variant, where the only field is a `Tuple` struct type that contains more information (The list of type ids that make up the tuple).
* To get nested type information (like the type of fields) you need to call `TypeId::info` again.
* There is only one language intrinsic to go from `TypeId` to `Type`, and it does all the work

An alternative design could be

* Lots of small methods (each backed by an intrinsic) on `TypeId` that return all the individual information pieces (size, align, number of fields, number of variants, ...)
* This is how C++ does it (see https://lemire.me/blog/2025/06/22/c26-will-include-compile-time-reflection-why-should-you-care/ and https://isocpp.org/files/papers/P2996R13.html#member-queries)
* Advantage: you only get the information you ask for, so it's probably cheaper if you get just one piece of information for lots of types (e.g. reimplementing size_of in terms of `TypeId::info` is likely expensive and wasteful)
* Disadvantage: lots of method calling (and `Option` return types, or "general" methods like `num_fields` returning 0 for primitives) instead of matching and field accesses
* a crates.io crate could implement `TypeId::info` in terms of this design

The backing implementation is modular enough that switching from one to the other is probably not an issue, and the alternative design could be easier for the CTFE engine's implementation, just not as nice to use for end users (without crates wrapping the logic)

One wart of this design that I'm fixing in separate branches is that `TypeId::info` will panic if used at runtime, while it should be uncallable
2026-01-10 15:00:14 +00:00
Jonathan Brouwer
00ad671406
Subscribe myself to attr parsing 2026-01-10 13:00:07 +01:00
Oli Scherer
a3359bdd4f Compile-Time Reflection MVP: tuples 2026-01-08 11:41:00 +00:00
Jakub Beránek
4cb5ccb53f
Rollup merge of #150738 - triagebot-first-glob-use, r=tgross35
Factorize `triagebot.toml` float parsing mentions with a glob matching

Related to https://github.com/rust-lang/triagebot/pull/2244.

r? @tgross35
2026-01-07 23:15:51 +01:00
Guillaume Gomez
a928f3352d Rename tests/rustdoc into tests/rustdoc-html 2026-01-07 14:23:30 +01:00
Urgau
bd0d0f707e Factorize triagebot float parsing mentions with a glob matching 2026-01-06 23:02:48 +01:00
Trevor Gross
a8c23c86f0 triagebot: Add a mention for dec2flt, flt2dec, and fmt/num 2026-01-03 01:42:53 -05:00
Aaryan Agrawal
7668154418 triagebot: add autolabel for rustdoc JS files 2026-01-02 14:09:39 +05:30
Jieyou Xu
f716d6ca97
triagebot: add jieyouxu to fallback adhoc_group
So that there's `n > 1` selection pool in case one of the eligible
reviewers go off rotation.
2026-01-02 00:51:22 +08:00
Jieyou Xu
d7f3c3995c
triagebot: expand eligible reviewer pool for tests/{run-make,run-make-cargo} to compiler
So that I don't become the only automatically-assigned reviewer due to
weighting reasons.
2026-01-02 00:41:07 +08:00
Jieyou Xu
c71381f55f
triagebot: remove compiler-errors triagebot entries
Since they became alumni and don't want to receive pings anymore.
2026-01-02 00:40:58 +08:00
Stuart Cook
3687a78be9
Rollup merge of #150034 - cyrgani:triagebotconf, r=BoxyUwU
do not add `I-prioritize` when `F-*` labels are present
2025-12-16 14:40:47 +11:00
cyrgani
c194e9ef56 do not add I-prioritize when F-* labels are present 2025-12-15 20:55:33 +00:00
WANG Rui
98e10289ce Enable to ping LoongArch group via triagebot 2025-12-14 10:54:27 +08:00
Makai
24302fd95f triagebot: add myself(makai410) to the review rotation 2025-12-12 10:42:39 +08:00
Makai
de0d961eb3 triagebot: ping makai410 for rustc_public 2025-12-12 10:42:39 +08:00
bors
d5525a7300 Auto merge of #149798 - matthiaskrgr:rollup-wjgs9x6, r=matthiaskrgr
Rollup of 11 pull requests

Successful merges:

 - rust-lang/rust#147585 (Suppress the error for private fields with non_exhaustive attribute)
 - rust-lang/rust#149215 (Emit `check-cfg` lints during attribute parsing rather than evaluation)
 - rust-lang/rust#149652 (Add release notes for 1.92.0)
 - rust-lang/rust#149720 (rustdoc book: mention inner doc attribute)
 - rust-lang/rust#149730 (lint: emit proper diagnostic for unsafe binders in improper_ctypes instead of ICE)
 - rust-lang/rust#149754 (Retire `opt_str2` from compiletest cli parsing)
 - rust-lang/rust#149755 (bootstrap: Use a `CompiletestMode` enum instead of bare strings)
 - rust-lang/rust#149763 (Add inline attribute to generated delegation function if needed)
 - rust-lang/rust#149772 (test: Add a test for 146133)
 - rust-lang/rust#149779 (Fix typo "an" → "and")
 - rust-lang/rust#149782 (Remove `[no-mentions]` handler in the triagebot config)

Failed merges:

 - rust-lang/rust#148491 ( Correctly provide suggestions when encountering `async fn` with a `dyn Trait` return type)

r? `@ghost`
`@rustbot` modify labels: rollup
2025-12-09 08:20:51 +00:00
Urgau
b8581ddecc
Remove [no-mentions] handler in the triagebot config
https://github.blog/changelog/2025-11-07-removing-notifications-for-mentions-in-commit-messages/
2025-12-08 19:34:19 +01:00
Alex Crichton
ba462864f1 std: Use more unix.rs code on WASI targets
This commit is a large change to the implementation of filesystem and
other system-related operations on WASI targets. Previously the standard
library explicitly used the `wasi` crate at the 0.11.x version track
which means that it used WASIp1 APIs directly. This meant that `std` was
hard-coded to use WASIp1 syscalls and there was no separate
implementation for the WASIp{2,3} targets, for example. The high-level
goal of this commit is to decouple this interaction and avoid the use of
the `wasi` crate on the WASIp2 target.

Historically when WASIp1 was originally added to Rust the wasi-libc
library was in a much different position than it is today. Nowadays Rust
already depends on wasi-libc on WASI targets for things like memory
allocation and environment variable management. As a libc library it
also has all the functions necessary to implement all filesystem
operations Rust wants. Recently wasi-libc additionally was updated to
use WASIp2 APIs directly on the `wasm32-wasip2` target instead of using
`wasm32-wasip1` APIs. This commit is leveraging this work by enabling
Rust to completely sever the dependence on WASIp1 APIs when compiling
for `wasm32-wasip2`. This is also intended to make it easier to migrate
to `wasm32-wasip3` internally in the future where now only libc need be
updated and Rust doesn't need to explicitly change as well.

The overall premise of this commit is that there's no need for
WASI-specific implementation modules throughout the standard library.
Instead the libc-style bindings already implemented for Unix-like
targets are sufficient. This means that Rust will now be using
libc-style interfaces to interact with the filesystem, for example, and
wasi-libc is the one responsible for translating these POSIX-ish
functions into WASIp{1,2} calls.

Concrete changes here are:

* `std` for `wasm32-wasip2` no longer depends on `wasi 0.11.x`
* The implementation of `std::os::wasi::fs`, which was previously
  unstable and still is, now has portions gated to only work on the
  WASIp1 target which use the `wasi` crate directly. Traits have been
  trimmed down in some cases, updated in others, or now present a
  different API on WASIp1 and WASIp2. It's expected this'll get further
  cleanup in the future.
* The `std::sys::fd::wasi` module is deleted and `unix` is used instead.
* The `std::sys::fs::wasi` module is deleted and `unix` is used instead.
* The `std::sys::io::io_slice::wasi` module is deleted and `unix` is used
  instead.
* The `std::sys::pal::{wasip1,wasip2}` modules are now merged together
  as their difference is much smaller than before.
* The `std::sys::pal::wasi::time` is deleted and the `unix` variant is
  used directly instead.
* The `std::sys::stdio::wasip{1,2}` modules are deleted and the `unix`
  variant is used instead.
* The `std::sys:🧵:wasip{1,2}` modules are deleted and the `unix`
  variant is used instead.

Overall Rust's libstd is effectively more tightly bound to libc when
compiled to WASI targets. This is intended to mirror how it's expected
all other languages will also bind to WASI. This additionally has the
nice goal of drastically reducing the WASI-specific maintenance burden
in libstd (in theory) and the only real changes required here are extra
definitions being added to `libc` (done in separate PRs). This might be
required for more symbols in the future but for now everything should be
mostly complete.
2025-12-08 06:46:28 -08:00
Stuart Cook
e168509186
Rollup merge of #149526 - mati865:mati865-review-rotation, r=Kivooeo
Add myself (mati865) to the review rotation

I've been procrastinating long enough.
2025-12-02 13:56:33 +11:00
Mateusz Mikuła
5c282908be
Add myself (mati865) to the review rotation
I've been procrastinating long enough.
2025-12-01 22:46:13 +01:00
Jacob Hoffman-Andrews
70a0af3f4e Remove jsha from notifications for rustdoc HTML 2025-11-16 16:11:15 -08:00
Waffle Lapkin
abaccaed21
waffle: stop watching codegen ssa 2025-11-13 14:36:17 +01:00
Jakub Beránek
bc0126d451
Change default branch to main 2025-11-10 10:21:34 +01:00
yukang
479df91c0c Add myself(chenyukang) to the review rotation 2025-11-09 20:46:03 +08:00
Trevor Gross
f7f0ca4b76 triagebot: Create Zulip topics for libs backports
Take the configuration used by other teams to create Zulip topics for
T-libs backports.
2025-11-04 15:41:08 -06:00
apiraino
d5839f968c
Enable regression labeling aliases 2025-10-30 16:52:31 +01:00
apiraino
c49278f77a
Update T-compiler/ops Zulip messages
Slightly reword the issue prioritization and beta backport Zulip messages
2025-10-28 17:24:26 +01:00
Jonathan Brouwer
9ceb997e04
Add myself to the review rotation 2025-10-23 17:52:54 +02:00