Commit Graph

7 Commits

Author SHA1 Message Date
Jun Wu
60b58132d1 phases: point out manual edits are no-ops if narrow-heads is enabled
Summary: This makes it clear that the new behavior is different.

Reviewed By: sfilipco

Differential Revision: D17584605

fbshipit-source-id: 59573dfa14b4eb7a4a9c5bce6ae7340f408035da
2019-09-27 17:24:00 -07:00
Jun Wu
cf13706ccb revset: fix 'all' for the 'narrow-heads' case
Summary:
With 'narrow-heads', repoview filtering is bypassed. So we need another
way to make 'invisible' commits disapper from 'all'.

Reviewed By: sfilipco

Differential Revision: D17244549

fbshipit-source-id: 6fd4d4ff5ca96f300a5d79a796fb643060662e9b
2019-09-23 17:11:22 -07:00
Jun Wu
54b1030be7 revset: fix 'children' for the 'narrow-heads' case
Summary:
With 'narrow-heads', repoview filtering is bypassed. So we need another
way to make 'invisible' commits disapper from 'children'.

Reviewed By: sfilipco

Differential Revision: D17244556

fbshipit-source-id: 47d6f59523d910e5d9865d40251954d8de0ee055
2019-09-23 17:11:22 -07:00
Jun Wu
ac07cb1123 revset: translate x:: to x::head() for 'narrow-heads' case
Summary:
This resolves an issue where commits get selected incorrectly in the `x::`
case.

Reviewed By: sfilipco

Differential Revision: D17244561

fbshipit-source-id: e9e633509c0e335d24e13cef0ac06e242816e479
2019-09-23 17:11:22 -07:00
Jun Wu
edd71d5534 phases: implement head-based phases
Summary:
See the test change. Basically, phases are defined by visibility heads and
remotenames. This resolves the issue after disabling repoview, `draft()`
contains unwanted commits.

Reviewed By: sfilipco

Differential Revision: D17244558

fbshipit-source-id: 84fc4a8b7830d613babf101079cb3c5b7909f23f
2019-09-23 17:11:21 -07:00
Jun Wu
9703bfb0fe repoview: allow disabling repoview filtering
Summary:
The eventual goal is to disable repoview filtering once narrow-heads is set.

The repoview layer is using a blacklist approach - scan through all heads (or
all drafts), and figure out what to blacklist. The new dag structure has a
larger constant factor on time complexity when it comes to many heads.

This diff disables repoview filtering entirely if 'narrow-heads' gets turned
on, as the first step moving to the whitelist approach. There are other isues,
which will be fixed in upcoming diffs.

Reviewed By: sfilipco

Differential Revision: D17244557

fbshipit-source-id: 260214378abba4b0ecd0a0407d452352b6dc3c28
2019-09-20 13:36:19 -07:00
Jun Wu
35b7e438c4 test-narrow-heads: add a test about narrow-heads issues
Summary: The test contains issues in test-narrow-heads that need fixes.

Reviewed By: sfilipco

Differential Revision: D17244550

fbshipit-source-id: aca6ffa51ab95436a32b3bdf40dbf05a376dbdbe
2019-09-20 13:36:19 -07:00