-
Notifications
You must be signed in to change notification settings - Fork 47
Description
Currently, @bors squash can take e.g. up to a minute, which is quite slow. The squashing operation is actually very fast; the problem is with pushing the resulting commit to a fork repository, because GitHub sadly doesn't provide API for it at the moment. So we have to do a fresh checkout of rust-lang/rust, fetch the squashed commit and push it to a fork, and that takes a lot of time.
We could add logic for keeping a local git repository on disk for each tracked repo. It would be lazily initiated on the first use. The main motivation is that if we have an up-to-date (or almost up-to-date) clone of rust-lang/rust locally, the push operation will be much faster, so the whole squash operation will be come much faster.
Note: this is a pretty complicated feature, if someone wants to tackle it, please reach out to me on Zulip first.