Package: release.debian.org Severity: wishlist X-Debbugs-Cc: debian-r...@lists.debian.org
Hi! I briefly asked about this a while back on IRC, and thought I had already filed this formal request/report, but it seems I failed to actually do that.. Some background information: The Rust toolchain (rustc, cargo, and some related helper tools) has a release cadence of 6 weeks. Each stable release is preceded by a Beta release (6 weeks before the corresponding stable release), after that is branched off only regression and security fixes make the cut to be included in the final stable release for that version. For example, for the current beta (1.82.0) the delta since it has been branched off on September 6th is (excluding testsuite changes to adapt to those code changes): compiler/rustc_hir_typeck/src/callee.rs | 21 ++----- compiler/rustc_hir_typeck/src/expr.rs | 25 +++++--- compiler/rustc_hir_typeck/src/fn_ctxt/_impl.rs | 39 +------------ compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs | 67 ++++++++++++++++------ compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp | 10 +--- compiler/rustc_mir_build/src/check_unsafety.rs | 14 +++++ compiler/rustc_pattern_analysis/src/usefulness.rs | 6 +- .../error_reporting/traits/fulfillment_errors.rs | 1 + library/core/src/iter/sources/repeat_n.rs | 60 ++++++++++++++----- library/core/tests/iter/sources.rs | 24 ++++++++ library/windows_targets/src/lib.rs | 1 + src/bootstrap/src/core/build_steps/doc.rs | 20 ++++--- src/llvm-project | 2 +- 13 files changed, 175 insertions(+), 115 deletions(-) or, in commit form: 1ddfc902b8595057888320176bb2d2561d9dd8fa bootstrap: Set the dylib path when building books with rustdoc 3cb89a05adcd26618a2705170279637dcf1db3a7 Don't call extern_crate when local crate name is the same as a dependency and we have a trait error 824971f5ba6f5fed99a107ea61cec479aaa541a9 Inline expected_inputs_for_expected_output into check_argument_types/check_expr_struct_fields 91b117bdc74e29c0f046c4eff623d8ed89414ac9 Use equality when relating formal and expected type in arg checking 4bf632f51e33071b397da8b858f87d9cfdb38606 Limit `run-make` tests using `-Zbuild-std` to nightly 49891df793fcb048df16dcf62072807312bf34d3 Check params for unsafety in THIR 85f29bda083958dd02bcb54b06ccd4b35523a6ff Revert "Rollup merge of #129749 - krasimirgg:llvm-20-lto, r=nikic" f004b77fdedbc977919c42fb3719b8a1298c7242 Update LLVM to 19 327ca6c e7246aefbefbcf16ae2828ecbaefcf5e8b725ae1 `RepeatN`: use MaybeUninit 03faf4f9867bb943edaf6926d1a575f046407f62 Win: Add dbghelp to the list of import libraries 7410cbf03f55788ff768a9b6f0b2f098c1ab7053 Revert warning empty patterns as unreachable 1.82.0 is slated to be released in 13 days on October 17th. 1.83.0 on November 28th 1.84.0 on January 9th 2025 In addition to nightly/beta/RC/stable releases, Rust has the orthogonal concept of "editions"[0]. These allow individual crates to opt-into using features of a newer compiler version that require breaking changes on the compiler side (like new keywords, imported by default parts of libstd, ..) without breaking the promise of "existing code continues to work with new compiler versions", and without breaking interoperability between crates using edition X and other crates using edition Y. So far, there have been three such editions - 2015, 2018 and 2021. New editions are usually adopted fairly quickly by developers (compared to other ecosystems, e.g. this is not like a new C++ standard or major python version). The upcoming 2024 edition is slated to be released as part of Rust 1.85 (planned release stable date: 2025-02-20, beta branching point 6 weeks before that, so early January). Upstream contacted the Debian Rust team to ask about Trixie, and whether it is feasible to include that version[1]. I agree with them that it would be very nice to do so, since the non-buildd use case for the toolchain packages for local Rust development would be greatly reduced without support for the 2024 edition. Depending on how the freeze timeline looks like, I see a few options: - freeze date for toolchain/key packages is after 2025-02-20, such that a regular upload of 1.85 just works out - freeze date is before 2025-02-20, no exception, we ship with 1.83 or 1.84 - freeze date is before 2025-02-20, exception to update to 1.85 after the freeze is in effect - freeze date is before 2025-02-20, but after 1.85 beta release, we upload 1.85 beta before the freeze, and then file an unblock for 1.85 beta to 1.85 stable with very small diff (see above) The first or last option would of course be the most preferred solutions from our PoV, hence this mail: - is there a tentative freeze timeline already discussed somewhere? - would it be possible to get such a beta-to-stable unblock pre-approved if it looks like the freeze will happen before 2025-02-20? we definitely don't want to be stuck on a beta release for Trixie.. Thanks for your consideration, Fabian 0: https://doc.rust-lang.org/edition-guide/editions/index.html 1: https://alioth-lists.debian.net/pipermail/pkg-rust-maintainers/2024-July/044870.html