You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This adds a background job that squashes the index into a single commit.
The current plan is to manually enqueue this job on a 6 week schedule,
roughly aligning with new `rustc` releases. Before deploying this, will
need to make sure that the SSH key is allowed to do a force push to the
protected master branch.
This job is derived from a [script] that was periodically run by the
cargo team. There are a few minor differences relative to the original
script:
* The push of the snapshot branch is no longer forced. The job will fail
if run more than once on the same day. (If the first attempt fails
before pushing a new root commit upstream, then retries should succeed
as long as the snapshot can be fast-forwarded.)
* The push of the new root commit to the origin no longer uses
`--force-with-lease` to reject the force push if new commits have been
pushed there in parallel. Other than the occasional manual changes to
the index (such as deleting crates), background jobs have exclusive
write access to the index while running. Given that such manual
changes are rare, this job completes quickly, and such manual tasks
should be automated too, this is low risk. The alternative is to shell
out to git because `libgit2` (and thus the `git2` crate) do not yet
support this portion of the protocol.
[script]: rust-lang/crates-io-cargo-teams#47 (comment)
0 commit comments