HomePhabricator

Provide an alternate, more general "closeable" flag for commits

Description

Provide an alternate, more general "closeable" flag for commits

Summary:
Ref T4327. This provides a more general RefCursor-based way to identify closeable commits, and moves away from the messy seenOnBranches stuff. Basically:

  • When a closeable ref (like the branch "master") is updated, query the VCS for all commits which are ancestors of the new ref, but not ancestors of the existing closeable heads we previously knew about. This is basically all the commits which have been merged or moved onto the closeable ref.
  • Take these commits and set the "closeable" flag on the ones which don't have it yet, then queue new tasks to reprocess them.

I haven't removed the old stuff yet, but will do that shortly.

Test Plan:

  • Ran bin/repository discover and bin/repository refs on a bunch of different VCSes and VCS states. The effects seemed correct (e.g., new commits were marked as closeable).

Reviewers: btrahan

Reviewed By: btrahan

CC: aran

Maniphest Tasks: T4327

Differential Revision: https://secure.phabricator.com/D7984

Details

Provenance
epriestleyAuthored on Jan 16 2014, 10:28 PM
epriestleyPushed on Jan 17 2014, 7:48 PM
Reviewer
btrahan
Differential Revision
D7984: Provide an alternate, more general "closeable" flag for commits
Parents
rPf4b9efe2562b: Introduce ref cursors for repository parsing
Branches
Unknown
Tags
Unknown
Tasks
T4327: Problems trying to import project

Event Timeline