$ the-wire · showcase
crates.io unifies API error handling, rustdoc fixes doctest temp cleanup
By RepoJournal · Filed · About Rust · Composed from the cited sources · methodology
A quiet day across the Rust stack: crates.io refactored how its frontend surfaces API failures, rustdoc stopped leaking doctest temp folders, and rustc took a first step toward removing the `At` struct.
svelte: Extract `loadApi()` helper for load functions rust-lang/crates.io
Every load function in `svelte/src/routes` used to wrap `client.GET()` in its own copy of the same error handling, each mapping 504 to network failures, setting `tryAgain` for retryable statuses, and optionally showing a not-found message for 404s. A new `loadApi()` helper centralizes that logic, so error behavior now changes in one place instead of roughly a dozen.
Rollup merge of #164202 - GuillaumeGomez:fix-doctest-temp-removal, r=RalfJung,Urgau rust-lang/rust
Moving the creation of `IndividualTestOptions` into the `DynTestFn` closure ensures the temporary directory is removed as soon as a doctest finishes, fixing one case missed in an earlier attempt at the same problem. Rustdoc's doctest runs get their disk usage back promptly rather than holding temp folders open.
Rollup merge of #163978 - fallible-algebra:at-removal/at-methods-on-infctxt, r=lcnr rust-lang/rust
The first step toward deleting the `At` struct copies some of its methods onto `InferCtxt` without removing any existing callers, so nothing changes at the call sites yet. `At::at` still exists and still works; this only prepares the ground.
svelte: Show API error details on load error pages rust-lang/crates.io
Only the crates page used to pass the `detail` of a failed API response to its error page, so other pages rendered a generic heading with no reason for the failure, and the signup page used the detail as its heading. Now all load functions pass the first error's `detail` as `details` and the error page shows it under a generic heading, with 404s on pages that have a specific not-found heading l...
Ensure a deprecation warning is emitted for `lint-inconsistent-struct-field-initializers` (#17841) rust-lang/rust-clippy
A configuration type in `conf.rs` violated the `define_Conf!` policy that fields shouldn't carry types, which suppressed the deprecation warning for `lint-inconsistent-struct-field-initializers`. The policy is now enforced, so the warning fires as intended.
Merge pull request #2849 from marcoienibot/fix-blog-pages-main rust-lang/team
The rest of the day was housekeeping: crates.io index entries for `anp`, `yolped`, `slop-gate`, `agave-xdp-ebpf` and the new `rust-motion-shapes`, a `lower_gh_login` index dropped from crates.io, obsolete crate tracking and GitHub rate-limit logging in the team repo, and a handful of unused-import and duplicate-test cleanups in rustc.