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
F19156308: D7985.diff
Fri, Dec 12, 12:23 PM
F19043860: D7985.id.diff
Thu, Nov 27, 1:07 AM
F19025432: D7985.diff
Nov 24 2025, 7:22 AM
F18995133: D7985.diff
Nov 19 2025, 3:54 PM
F18849760: D7985.diff
Oct 30 2025, 12:03 PM
F18803839: D7985.diff
Oct 18 2025, 4:15 AM
F18768517: D7985.id.diff
Oct 8 2025, 4:01 AM
F18768341: D7985.id18087.diff
Oct 8 2025, 3:05 AM
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

Branch
xparser4
Lint
Lint Passed
Unit
Tests Passed