Page MenuHomePhabricator

Remove all the multi-pass autoclose-branch separate-cache / seenOnBranches junk
ClosedPublic

Authored by epriestley on Jan 16 2014, 11:01 PM.
Tags
None
Referenced Files
F15574331: D7985.id18066.diff
Tue, May 6, 12:50 AM
F15530173: D7985.id18066.diff
Wed, Apr 23, 2:29 AM
F15529530: D7985.id18087.diff
Tue, Apr 22, 8:33 PM
F15527482: D7985.id.diff
Tue, Apr 22, 4:00 AM
F15525007: D7985.diff
Mon, Apr 21, 11:46 AM
F15456625: D7985.diff
Mar 30 2025, 10:51 AM
F15430189: D7985.id18087.diff
Mar 24 2025, 6:24 AM
F15421409: D7985.id.diff
Mar 21 2025, 11:27 PM
Subscribers

Details

Summary

Ref T4327. Simplify the git discovery process so I can move it to the DiscoveryEngine, so I can make change parsing testable.

In particular:

  • As an optimization, we process closeable branches ("master") first, then process uncloseable branches ("epriestley-devel"). This means that in the common case we can insert a commit as closeable immediately when it is discovered, the first pass through the pipeline will get it right, and the "ref update" step will never need to do any meaningful work.
  • Commits which do not initially appear on a closeable branch, but later move to one (via merges or ref moves) will now be caught in the ref update step, have the closeable flag set, and have a message step re-queued.
  • We no longer need to do a separate discovery step on closable branches.
  • We no longer need to keep track of seenOnBranches.
Test Plan

Ran discovery on repositories after pushing commits, got reasonable results.

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped