sapling/eden
Mark Thomas 23fe5a7780 reset: add visibility tracking support
Summary:
The `reset` extension does its own obsmarker creation, rather than going
through `scmutil.cleanupnodes`.  This means it doesn't support new-style
visibility tracking.

Fix this by making it use `scmutil.cleanupnodes`.  This isn't completely
straightforward:

* The revset it uses to work out what to prune might accidentally include
  public commits (e.g. when you reset to a different public branch).  Make sure
  these are filtered.
* The tests originally had strip and obsmarker based tests.  The strip tests,
  when converted to obsmarkers and using `scmutil.cleanupnodes` stop working
  because they strip and revive the same commit over and over, which is an edge
  case that obsmarkers can't handle well.  Fix this by restoring the strip tests
  as strip tests.  A separate test handles the new-style visibility.
* Reset's behaviour is still a bit wonky.  If an ancestor of the source commit
  has other (non-bookmarked) descendants, then reset will try to prune those
  commits.  New-style visibility will ignore this, and this is tested in the
  new test.

Reviewed By: farnz

Differential Revision: D18912817

fbshipit-source-id: cc115333407cf67d339c24fcd0807ddedce2660d
2019-12-11 03:49:38 -08:00
..
benchmarks Remove dead includes in eden 2019-10-11 16:45:01 -07:00
cli update eden top to make use of the last line 2019-12-05 19:27:11 -08:00
docs Document how globs work 2019-03-07 14:20:57 -08:00
fs decrease the log level of globFiles() thrift calls 2019-12-10 20:18:36 -08:00
integration log to scuba upon automatic gc 2019-12-10 16:16:35 -08:00
locale add a copyright header to glibc_en.po 2019-04-26 14:38:27 -07:00
py Call WSAStartup and fix the type information for the socket APIs 2019-10-18 12:39:09 -07:00
scm reset: add visibility tracking support 2019-12-11 03:49:38 -08:00
scripts Tidy up license headers 2019-10-11 05:28:23 -07:00
test_support Update pyre version for eden 2019-10-16 16:56:29 -07:00
test-data enable treemanifest in snapshots 2019-08-28 18:46:03 -07:00
third-party add osxfuse kernel header 2019-03-19 10:26:24 -07:00
win flip EDEN_WIN_NOMONONOKE to EDEN_HAVE_MONONOKE 2019-08-27 17:04:19 -07:00
.gitignore eden: wire up mac contbuild 2019-02-05 21:52:30 -08:00
Eden.project.toml Eden.project.toml file for Nuclide 2018-04-26 11:05:23 -07:00