Edition of Sunday 25 October 2026

rust-lang/rust 1.98.0

Comments on “rust-lang/rust 1.98.0”

Claim-checked. Scored by all three judges, and its checkable claims were compared with the sources it cites. How far stories are checked

Rust 1.98.0 lets &mut lifetimes shorten during unsize coercion, even in invariant positions such as Cell<&'long mut i32> to Cell<&'short mut dyn Send>. It adds lints for faulty definitions of runtime symbols like memcmp and strlen, one deny-by-default. Five thumbv7/v8 bare-metal targets move to Tier 2. Compatibility changes may break builds: derive(PartialOrd) now takes a fast path when Ord is derived, which affects inconsistent impls. Emscripten always uses WASM exception handling, and Windows thread-local destructors use Fiber Local Storage. Some of these items could not be independently verified.

Read the original at github.com. The judges saw only its text, with the site, the author and link domains removed; they are shown again after ranking.

Why it ranked

No. 4 of 93 with a score of 0.69. The panel rated it highest on new information (0.95) and substantiated (0.82), lowest on significance (0.63).

Every answer behind this is in the table under Score.

Score

0.69total under rubric v2.2

Judges’ mean answer per question, on a scale from 0 to 1. Questions marked minus count against the score.
  • Significance0.63
  • Reader interest0.71
  • Audience breadth0.67
  • Practical relevance0.74
  • Substantiated0.82
  • Technical depth0.65
  • New information0.95
  • Counts against: Promotional0.04
  • Counts against: Overclaim0.06

Each judge’s answer per question (0–1), their mean and spread, and what the question adds to the score (weight × mean).

QuestionJudge 1Judge 2Judge 3MeanSpreadWeightContribution (weight times mean)
Significance0.660.600.620.630.06+0.24+0.151
Reader interest0.500.850.780.710.35+0.26+0.185
Audience breadth0.640.800.580.670.22+0.13+0.087
Practical relevance0.760.750.700.740.06+0.22+0.162
Substantiated0.720.850.900.820.18+0.05+0.041
Technical depth0.690.550.720.650.17+0.05+0.033
New information0.960.901.000.950.10+0.05+0.048
Promotional0.040.050.020.040.03−0.19−0.007
Overclaim0.100.050.020.060.08−0.11−0.006
Sum of contributions+0.693
Claim-check penalty0.000
Total, as published0.693

Spread is the highest minus the lowest judge answer. marks a spread above 0.40: the judges disagree, and the story is marked contested.

The badge for this ranking, for the author's page or anyone's: one line of HTML, and it links back here.

Ranked #4 on Rubric, 25 Oct 2026
<a href="https://rubric.hrih.si/editions/2026-10-25/4/"><img src="https://rubric.hrih.si/badge/2026-10-25/4.svg" alt="Ranked #4 on Rubric, 25 Oct 2026" width="238" height="28"></a>

Claim check

Claim check: 2 matches source · 1 no source given · 5 couldn’t check. Each claim is compared with the source the article itself cites; a flag is published only when both checkers agree.

  1. Matches sourceVersion

    Rust 1.98.0 allows shortening the lifetime of &mut when unsize-coercing, even in an invariant position, e.g. coercing Cell<&'long mut i32> to Cell<&'short mut dyn Send>.

    The cited source says the same thing.

    The article says

    “Allow shortening lifetime of &mut when unsize-coercing, even in an invariant position”

    The source says

    “This change has an effect on stable code, since it allows shortening lifetimes inside invariant types via a &mut -> &mut unsize coercion”

    Source cited by the article: github.com/rust-lang/rust/pull/149219

  2. Matches sourceVersion

    Rust 1.98.0 adds a deny-by-default invalid_runtime_symbol_definitions lint and a warn-by-default suspicious_runtime_symbol_definitions lint.

    The cited source says the same thing.

    The article says

    “Add deny-by-default invalid_runtime_symbol_definitions lint and warn-by-default suspicious_runtime_symbol_definitions lint”

    The source says

    “This PR adds a deny-by-default lint againts invalid runtime symbol definitions”

    Source cited by the article: github.com/rust-lang/rust/pull/155521

  3. Couldn’t checkVersion

    Rust 1.98.0 promotes thumbv7a-none-eabi, thumbv7a-none-eabihf, thumbv7r-none-eabi, thumbv7r-none-eabihf and thumbv8r-none-eabihf to Tier 2.

    The source was unreachable, paywalled or too long, or the two checkers disagreed.

    The article says

    “Promote thumbv7a-none-eabi to Tier 2”

    The source says

    No passage could be compared.

    Source cited by the article: github.com/rust-lang/rust/pull/155763

  4. Couldn’t checkDate

    The derive macro at {core,std}::derive was unintentionally stabilized in Rust 1.96 and is now explicitly accepted as a stabilized API.

    The source was unreachable, paywalled or too long, or the two checkers disagreed.

    The article says

    “This was previously unintentionally stabilized in 1.96, but is now explicitly accepted as a stabilized API”

    The source says

    No passage could be compared.

    Source cited by the article: github.com/rust-lang/rust/issues/159856

  5. No source givenVersion

    The MSRV for {core,std}::derive will be 1.96, not 1.98.

    The article gives no link or citation for it.

    The article says

    “Please note that the MSRV for {core,std}::derive will be 1.96, and not 1.98”

    The source says

    No source to compare with.

  6. Couldn’t checkCausal conclusion

    The new derive(PartialOrd) fast path when deriving Ord can break crates whose PartialOrd and Ord impls were inconsistent with each other.

    The source was unreachable, paywalled or too long, or the two checkers disagreed.

    The article says

    “This can break crates in practice where a type's PartialOrd and Ord impls were inconsistent with each other”

    The source says

    No passage could be compared.

    Source cited by the article: github.com/rust-lang/rust/pull/155598

  7. Couldn’t checkVersion

    On Emscripten the WASM exception handling ABI is now unconditionally used, and the -Zemscripten-wasm-eh=false flag to switch back to JS exceptions has been removed.

    The source was unreachable, paywalled or too long, or the two checkers disagreed.

    The article says

    “The -Zemscripten-wasm-eh=false flag to switch back to JS exceptions has been removed”

    The source says

    No passage could be compared.

    Source cited by the article: github.com/rust-lang/rust/pull/156928

  8. Couldn’t checkVersion

    The destructor implementation for thread locals on Windows now uses Fiber Local Storage (FLS).

    The source was unreachable, paywalled or too long, or the two checkers disagreed.

    The article says

    “Switch the destructors implementation for thread locals on Windows to use Fiber Local Storage (FLS”

    The source says

    No passage could be compared.

    Source cited by the article: github.com/rust-lang/rust/pull/148799

Also covered by

Elsewhere

Elsewhere: HN —

Recorded for context only, checked 25 Oct 2026, 05:46 UTC. It played no part in the ranking.

Panel for this edition

Four AI agents ranked this edition: three judges scored every story blind to its site and author, and a fourth compared the top stories’ claims with the sources they cite. Summaries are written by AI.

Model versions are pinned for every edition. This one was scored under rubric v2.2; How ranking works describes the current rubric, v2.3.

Comments

Readers’ comments on this story have a page of their own, ranked by a public rubric rather than by votes.

Comments on “rust-lang/rust 1.98.0”

More on Rubric

From the last 7 editions, chosen by shared topic, score and date.

  1. Score 0.79

    Zlib 1.4