Skip to content

Conversation

@Carbonhell
Copy link
Contributor

Closes #2826 .
This PR adds a cratesfyi CLI command to queue rebuilds for crate versions for which the most recent build failed with a specific nightly version of rustdoc.

The new command allows either passing a single date or a range of dates relative to the nightly version of rustdoc to consider when filtering crates.

The command is scoped under the queue group and it can be executed with:

cratesfyi queue rebuild-broken-nightly --start 2025-11-14

or:

cratesfyi queue rebuild-broken-nightly --start 2025-11-10 --end 2025-11-14

Start date is inclusive, end date is exclusive and optional. Rebuilds are queued with a lower priority than normal rebuilds (30 vs the default of 20 for normal rebuilds).

I'm not 100% sure whether this is correct: I'm assuming that the nightly version of rustc always matches the version of rustdoc used, as they're shipped together as part of the nightly toolchain. This allows me to use the already existing rustc_nightly_date field on the builds table to filter by date.

@Carbonhell Carbonhell requested a review from a team as a code owner November 15, 2025 15:18
@github-actions github-actions bot added the S-waiting-on-review Status: This pull request has been implemented and needs to be reviewed label Nov 15, 2025
Copy link
Member

@syphar syphar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for working on this! Looks already pretty good, only small things IMO.

I'm not 100% sure whether this is correct: I'm assuming that the nightly version of rustc always matches the version of rustdoc used, as they're shipped together as part of the nightly toolchain. This allows me to use the already existing rustc_nightly_date field on the builds table to filter by date.

Yep, this is absolutely the correct field. Nightly version = rustdoc version for us.
Also this is exactly why I added the field.

There is an edge case for the time before #2639, where the field is empty, but for most current issues that's fine I think.

@Carbonhell
Copy link
Contributor Author

Thanks for the review! I'll do the changes suggested this weekend :)

fix(queue): update query for faulty rustdoc builds to not assume build status implies anything on the rustdoc result, match on all releases of each crate rather than the latest only, and use the release_build_status table to simplify the query
fix(logs): use fields for info! instead of string formatting
docs(cratesfyi): clarify usage of command arguments for the new RebuildBrokenNightly command
chore(tests): remove unneeded test environment config
@Carbonhell Carbonhell force-pushed the feat-cratesfyi-broken-nightlies-rebuilds branch from b7a5f0f to 1be6f5b Compare November 23, 2025 23:27
…uild is still in progress with a broken nightly, we'd want it to be included in the list of rebuilds

chore(sqlx): run prepare
@Carbonhell
Copy link
Contributor Author

Carbonhell commented Nov 24, 2025

Will check what's going on with the failing test this evening It was a small mistake in the asserts, fixed

@Carbonhell Carbonhell requested a review from syphar November 24, 2025 21:18
@syphar syphar merged commit 04748ea into rust-lang:main Nov 28, 2025
16 checks passed
@github-actions github-actions bot added S-waiting-on-deploy This PR is ready to be merged, but is waiting for an admin to have time to deploy it and removed S-waiting-on-review Status: This pull request has been implemented and needs to be reviewed labels Nov 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-deploy This PR is ready to be merged, but is waiting for an admin to have time to deploy it

Projects

None yet

Development

Successfully merging this pull request may close these issues.

add commands to rebuild failures of certain nightly versions

2 participants