mirror of
https://github.com/facebook/sapling.git
synced 2024-10-10 16:57:49 +03:00
027709fa36
Summary: The `pull` commmand has a lot of tech debt (with issues like inefficiency, race conditions, named branches, etc). The new `repo.pull` API isn't designed to support all legacy usecases. This diff switches a subset of `pull` command that the new API can support to the new API. It should solve race condition or `visibility.add` inefficiency issues (ex. 20s on addgroup, 187s on visibility.add - P154836357). Logic related to remotenames was ported from the remotenames extension. The selectivepull tests seem strong enough to check their behaviors. The new pull API is used by commit cloud for many months. So I turned the new code path on by default. It can be turned off by changing `commands.new-pull`. There are a few test changes. The new behavior seems more correct overall: - test-commitcloud-switch-workspace.t - "M/F" swap is caused by rev number: both are correct - "S: public remote/stable" is more correct than "S: draft" - test-commitcloud-sync-rb-deletion.t - "draft1: draft remote/scratch/draft1" is more correct because "remote/scratch/draft1" is listed in the "book --list-subs" command above. - test-commitcloud-sync-rb-enabling.t - "public1: draft" not showing up is more correct. - test-fb-hgext-remotefilelog-lfs-prefetch.t - Difference seems to be caused by rev order. Reviewed By: markbt Differential Revision: D25562089 fbshipit-source-id: ac22b2f0492ab53517d580d706dfbc823fd0e0cc |
||
---|---|---|
.. | ||
fixtures | ||
integration | ||
utils | ||
write_stub_log_entry |