Bug 326520
| Summary: | [commits.webkit.org] One up-to-date mirror stops updates to every mirror after it | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Ryan Haddad <ryanhaddad> |
| Component: | Tools / Tests | Assignee: | Ryan Haddad <ryanhaddad> |
| Status: | RESOLVED FIXED | ||
| Severity: | Normal | CC: | webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Ryan Haddad
Checkout.forward_update accumulates its result with a short-circuiting `and`, and push_update returns False when a target is already up to date, which isn't a failure.
Because Python skips the right operand once the accumulator is False, the first target that had nothing to do silently prevents a push to every target after it in the same rule. Any deployment fanning a ref out to several mirrors loses all of them after the first no-op, and a single flaky mirror takes the rest down with it.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Radar WebKit Bug Importer
<rdar://problem/189314354>
Ryan Haddad
Pull request: https://github.com/WebKit/WebKit/pull/76389
EWS
Committed 323480@main (4942e079ef41): <https://commits.webkit.org/323480@main>
Reviewed commits have been landed. Closing PR #76389 and removing active labels.