rust/compiler/rustc_session/src
Jonathan Brouwer a89683dd95
Rollup merge of #150151 - destabilise-target-spec-json, r=Kivooeo
Destabilise `target-spec-json`

Per rust-lang/compiler-team#944:

> Per https://github.com/rust-lang/rust/issues/71009, the ability to load target spec JSONs was stabilised accidentally. Within the team, we've always considered the format to be unstable and have changed it freely. This has been feasible as custom targets can only be used with core, like any other target, and so custom targets de-facto require nightly to be used (i.e. to build core manually or use Cargo's -Zbuild-std).
>
> Current build-std RFCs (https://github.com/rust-lang/rfcs/pull/3873, https://github.com/rust-lang/rfcs/pull/3874) propose a mechanism for building core on stable (at the request of Rust for Linux), which combined with a stable target-spec-json format, permit the current format to be used much more widely on stable toolchains. This would prevent us from improving the format - making it less tied to LLVM, switching to TOML, enabling keys in the spec to be stabilised individually, etc.
>
> De-stabilising the format gives us the opportunity to improve the format before it is too challenging to do so. Internal company toolchains and projects like Rust for Linux already use target-spec-json, but must use nightly at some point while doing so, so while it could be inconvenient for those users to destabilise this, it is hoped that an minimal alternative that we could choose to stabilise can be proposed relatively quickly.
2026-01-13 09:01:29 +01:00
..
config Add perma-unstable --print=backend-has-zstd for use by compiletest 2025-12-05 14:27:52 +11:00
code_stats.rs Document why CodeStats::type_sizes is public 2025-04-21 17:36:36 +02:00
config.rs Rollup merge of #150151 - destabilise-target-spec-json, r=Kivooeo 2026-01-13 09:01:29 +01:00
cstore.rs Rename variants of CrateDepKind to be more descriptive 2025-12-15 09:52:57 +00:00
errors.rs Port #[rustc_must_implement_one_of] to attribute parser 2025-12-26 19:08:21 +01:00
filesearch.rs Fix new function_casts_as_integer lint errors in core, std, panic_unwind and compiler crates 2025-11-10 16:38:28 +01:00
lib.rs Exhaustively specify names and stability of --print values 2025-11-21 11:35:07 +11:00
macros.rs Exhaustively specify names and stability of --print values 2025-11-21 11:35:07 +11:00
options.rs Port #[collapse_debuginfo] to the new attribute parsing system 2026-01-11 10:54:45 +01:00
output.rs Avoid unhelpful suggestion when crate name is invalid 2025-12-16 20:43:26 -08:00
parse.rs adapt formatting to use new fcw info structure 2025-12-10 15:15:56 +01:00
search_paths.rs Remove PathKind from CrateSource 2025-11-27 18:09:05 +00:00
session.rs destabilise target-spec-json 2025-12-19 11:57:34 +00:00
utils.rs Move NativeLibKind from rustc_session to rustc_hir 2025-08-27 20:24:59 +02:00