Commit Graph

3456 Commits

Author SHA1 Message Date
Mark Thomas
2908eadaa8 conflictinfo: handle path conflicts
Upstream recently added path conflicts as a concept.  Update the
conflictinfo extension to understand and show path conflicts.

Path conflicts are different to other kinds of conflicts, so appear
in a separate list in the form:

    "pathconflicts:" [{
        "path": "path/to/directory",
        "fileorigin": "local",   # or "remote"
        "renamedto": "path/to/renamedfile"
    }]

Differential Revision: https://phab.mercurial-scm.org/D1051
2017-10-13 06:59:27 -07:00
Mark Thomas
fc656972e0 sparse: fix for upstreamed path conflicts changes
Differential Revision: https://phab.mercurial-scm.org/D1050
2017-10-13 06:59:27 -07:00
Mark Thomas
b5903c56c2 fbhistedit: add graft histedit action
Add a new `histedit` verb: `graft`.  This allows grafting (copying) of
changesets from outside of the history that is being edited, using the
node hash of the other changeset.

The other changeset is left intact - its contents are duplicated in a new
changeset.

The other changeset must not be one of the changesets that are being
edited as part of the histedit.

Differential Revision: https://phab.mercurial-scm.org/D1025
2017-10-13 04:05:55 -07:00
Jun Wu
78fd12a098 remotefilelog: ignore EEXIST error of mkdir
This fixes a race-condition reported by Steaphan Greene.

Differential Revision: https://phab.mercurial-scm.org/D984
2017-10-12 23:50:48 -07:00
Pulkit Goyal
7e0360a6af uncommit: drop the extension from fb-hgext as it was moved to core
This patch drops the uncommit extensions which has been moved to core. The
in-core extension does not allow bare `hg uncommit` on dirty working directory.
One need to set `experimental.uncommitondirtywdir = True` to do `hg uncommit` on
dirty working directory.

So this patch also set the required config to True in tweakdeafults.py to
maintain the behaviour.

Differential Revision: https://phab.mercurial-scm.org/D751
2017-10-13 12:15:20 +05:30
Adam Simpkins
db0d906e58 sparse: don't crash in non-sparse repositories
Summary:
Update the workingfilectxdata() to check that this is actually a sparse
repository before trying to call repo.sparsematch()

Test Plan: Update the test to confirm that "hg diff" works instead of crashes now.

Reviewers: #fbhgext, mbthomas

Reviewed By: #fbhgext, mbthomas

Differential Revision: https://phab.mercurial-scm.org/D1023
2017-10-12 14:08:50 -07:00
Adam Simpkins
04525b995f sparse: add a test where sparse gets loaded in an non-sparse repository
Summary:
Add a test to make sure the sparse extension works with non-sparse
repositories.  The share extension can cause the sparse extension to be loaded
even if the current working directory is not sparse.

Currently "hg diff" crashes in this scenario.  After the changes in D788, it
now tries to run `repo.sparsematch()` without first checking to see if the
repository is actually a sparse repository.

Test Plan: Ran it.

Reviewers: #fbhgext, mbthomas

Reviewed By: #fbhgext, mbthomas

Differential Revision: https://phab.mercurial-scm.org/D1022
2017-10-12 14:08:50 -07:00
Phil Cohen
460b83af69 tests: fix last patch 2017-10-12 11:53:12 -07:00
Phil Cohen
ed9142ddaa smartlog: default to 2.
5414d0cfdcb8 registers this config, so we need to provide a default.
2017-10-12 09:33:25 -07:00
Zhihui Huang
ba9a6009ff p4fastimporter: optimize sync import - do not write dup filelogs
Differential Revision: https://phabricator.intern.facebook.com/D5966218
2017-10-11 17:49:48 -07:00
Zhihui Huang
b49a8c00b7 p4fastimporter: add helper function in importer
Differential Revision: https://phabricator.intern.facebook.com/D5966216
2017-10-11 17:49:21 -07:00
Mostafa Eweda
20c49e70b4 Fix the revision status part of hg ssl
Differential Revision: https://phab.mercurial-scm.org/D1015
2017-10-11 14:04:42 -07:00
Phil Cohen
99c432abfc tests: add #no-check-commit support to test-check-commit-hg.t
The upstream test has this exclusion, and without it, commits that pass because of it will fail in our own CI. So let's add it.

Differential Revision: https://phab.mercurial-scm.org/D1010
2017-10-11 11:21:28 -07:00
Phil Cohen
8950244fd8 test-check-confog-hg: remove hiteditng override
D942 removed histeditng, so this should go as well.
2017-10-10 19:56:51 -07:00
Phil Cohen
40807555e3 obbshelve: remove defaults to shelve.maxbackups
Conflicts with 83435cb229c0 which obviates it.

Differential Revision: https://phab.mercurial-scm.org/D995
2017-10-10 13:42:44 -07:00
Zhihui Huang
a6d5ff8f57 p4fastimport: fix sync commit - complete workflow
Differential Revision: https://phabricator.intern.facebook.com/D5966213
2017-10-10 10:14:00 -07:00
Zhihui Huang
e4f962c4d2 p4fastimport: refactor getfilelist
Differential Revision: https://phabricator.intern.facebook.com/D5966150
2017-10-10 10:13:41 -07:00
Zhihui Huang
a8c21c177d p4fastimporter: refactor relpath
Differential Revision: https://phabricator.intern.facebook.com/D5966024
2017-10-10 10:13:19 -07:00
Zhihui Huang
d0858c8680 p4fastimporter: add p4 helper functions
Differential Revision: https://phabricator.intern.facebook.com/D5966018
2017-10-10 10:09:20 -07:00
Durham Goode
cb67413bf8 sqldirstate: remove test
sqldirstate is now gone, so let's remove this test dependency.
2017-10-05 13:06:56 -07:00
Jun Wu
7d03a0edc7 fastannotate: be compatible with upstream change 2017-10-05 10:44:08 -07:00
Durham Goode
1a4d39cf37 checkcode: remove unnecessary 'pass' statements
Upstream hg added a check code rule to remove unnecessary 'pass' statements.
2017-10-04 18:55:07 -07:00
Durham Goode
9e2f53f243 drop: don't pass rev number to cleanupnodes
Drop was passing a rev number to cleanupnodes, which isn't supported.  New
versions of hg throw an exception when this happens, so this was caught by the
tests.
2017-10-04 18:47:11 -07:00
Durham Goode
19168fe362 tests: update remotefilelog test with phase head capability
Upstream added a new capability, so the tests need updating to show it.
2017-10-04 18:47:11 -07:00
Jun Wu
7b4cb726fc tweakdefaults: be compatible with upstream change 2017-10-04 18:38:45 -07:00
Phil Cohen
29af53de91 test-check-config-hg.t: remove spurious entries 2017-10-04 18:21:28 -07:00
Durham Goode
20612dfe95 tests: update to match upstream changes
Upstream added a new capability about phase heads, so we need to update wire
protocol output.
2017-10-04 18:16:44 -07:00
Durham Goode
eb70db8aaa treemanifest: update the test due to upstream change
10e162bb9bf in upstream hg changed how phases are sent, which changed this
output. It's a benign update.
2017-10-04 18:11:24 -07:00
Phil Cohen
c7a834f395 perftweaks: fix a bad merge 2017-10-04 18:06:45 -07:00
Phil Cohen
edd23c893d test-check-config-hg.t: revert some changes that shouldn't have been included 2017-10-04 18:02:38 -07:00
Phil Cohen
fe9bb9c641 test-check-config-hg.t: new values post-sqldirstate 2017-10-04 17:58:03 -07:00
Phil Cohen
ad9a59cbe3 progressfile: update test to account for D820
D820 makes the estimation more accurate, so new values are expected.
2017-10-04 17:56:36 -07:00
Phil Cohen
82f05b3c75 sqldirstate: remove
We no longer use this experiment and the upstream refactor breaks it. Let's remove it.

Test Plan:
all sqldirstate tests pass now

Differential Revision: https://phab.mercurial-scm.org/D944
2017-10-04 17:53:40 -07:00
Durham Goode
99b280abb8 perftweaks: update to match upstream dirstate._map refactor
Upstream has refactored the dirstate, so we need to update perftweaks.
2017-10-04 17:49:01 -07:00
David Soria Parra
a52fe379df p4fastimport: fix resetting file flags
When a file changed to include a flag and then the flag is removed we did not
correctly remove the flag. We now correctly set flags for all revisions.

Differential Revision: https://phab.mercurial-scm.org/D920
2017-10-04 12:57:27 -07:00
Stanislau Hlebik
2502bb5d2c infinitepush: revert D721
Summary:
This diff caused a regression - clients may not have a tree manifests entries
for old commits. That causes infinitepush fail with

```
 KeyError: ('', 'f6db63080ed0d9a81adf2cb266646cf5cf73bb79')
```

Test Plan: Run infinitepush with this diff reverted, make sure it doesn't fail

Reviewers: #fbhgext, ryanmce, durham

Reviewed By: #fbhgext, ryanmce

Differential Revision: https://phab.mercurial-scm.org/D921
2017-10-03 05:49:06 -07:00
Ryan McElroy
56bc2afcf0 tweakdefaults: add abort flag for colon revset
Reviewers: #fbhgext, quark

Reviewed By: #fbhgext, quark

Subscribers: quark

Differential Revision: https://phab.mercurial-scm.org/D904
2017-10-03 02:09:23 -07:00
Ryan McElroy
49a8dc8d10 tweakdefaults: minimize revsets test
Reviewers: #fbhgext, quark

Reviewed By: #fbhgext, quark

Differential Revision: https://phab.mercurial-scm.org/D903
2017-10-03 02:09:23 -07:00
Ryan McElroy
fd9b2e03b1 tweakdefaults: split out revset tests
Reviewers: #fbhgext, quark

Reviewed By: #fbhgext, quark

Differential Revision: https://phab.mercurial-scm.org/D902
2017-10-03 02:09:23 -07:00
Ryan McElroy
859446ff10 remotefilelog: update to new deltachunk return value
Summary:
In D746, we changed the return value of deltachunk. This diff makes me
a bit sad but it fixes remotefilelog to work with those changes.

Test Plan: tests

Reviewers: #fbhgext, mbthomas

Reviewed By: #fbhgext, mbthomas

Subscribers: mbthomas

Differential Revision: https://phab.mercurial-scm.org/D876
2017-10-01 07:13:09 -07:00
Ryan McElroy
49bac3147b tweakdefaults: quote update string in test to pass check-code
Test Plan: tests

Reviewers: #fbhgext, mbthomas

Reviewed By: #fbhgext, mbthomas

Differential Revision: https://phab.mercurial-scm.org/D881
2017-10-01 07:13:09 -07:00
Stanislau Hlebik
233ae9f9b1 remotefilelog: add more logging for prefetching heuristics
Summary: The goal of the whole series is to have logging around linknode fixup. It's a slow operation, and we have two heuristics to make it faster. Unfortunately we have no idea about how well these heuristics actually help. This series of diffs aims to fix this problem. After this series is landed and logging is enabled, I hope that we can find out if we really these heuristics at all.

Test Plan: Run test-remotefilelog-linknodes.t

Reviewers: #fbhgext, quark

Reviewed By: #fbhgext, quark

Differential Revision: https://phab.mercurial-scm.org/D841
2017-10-01 05:45:27 -07:00
Stanislau Hlebik
6847499ec4 remotefilelog: move remofilelog prefetching to the separate function
Summary:
The goal of the whole series is to have logging around linknode fixup. It's a slow operation, and we have two heuristics to make it faster. Unfortunately we have no idea about how well these heuristics actually help. This series of diffs aims to fix this problem. After this series is landed and logging is enabled, I hope that we can find out if we really these heuristics at all.

In the next diffs I'll add more logging around remotefilelog prefetching.
In this diff let's move it to the separate function.

Test Plan: Run test-remotefilelog-linknodes.t

Reviewers: #fbhgext, quark

Reviewed By: #fbhgext, quark

Differential Revision: https://phab.mercurial-scm.org/D840
2017-10-01 05:45:27 -07:00
Stanislau Hlebik
0fb7860557 remotefilelog: time fastlog requests
Summary: The goal of the whole series is to have logging around linknode fixup. It's a slow operation, and we have two heuristics to make it faster. Unfortunately we have no idea about how well these heuristics actually help. This series of diffs aims to fix this problem. After this series is landed and logging is enabled, I hope that we can find out if we really these heuristics at all.

Test Plan: Run test-remotefilelog-linknodes.t

Reviewers: #fbhgext, quark

Reviewed By: #fbhgext, quark

Differential Revision: https://phab.mercurial-scm.org/D839
2017-10-01 05:45:27 -07:00
Stanislau Hlebik
f39bc3ba1e remotefilelog: add linknode fixup logging
Summary:
The goal of the whole series is to have logging around linknode fixup. It's a slow operation, and we have two heuristics to make it faster. Unfortunately we have no idea about how well these heuristics actually help. This series of diffs aims to fix this problem. After this series is landed and logging is enabled, I hope that we can find out if we really these heuristics at all.

Let's log more data to make it easier to analyze where and how often does
linknode adjusing happen.

Test Plan: Run test-remotefilelog-linknodes.t

Reviewers: #fbhgext, quark

Reviewed By: #fbhgext, quark

Subscribers: quark

Differential Revision: https://phab.mercurial-scm.org/D838
2017-10-01 05:45:27 -07:00
Stanislau Hlebik
e6d7a411ed remotefilelog: remove copy-paste in fastlog logging
Summary:
The goal of the whole series is to have logging around linknode fixup. It's a slow operation, and we have two heuristics to make it faster. Unfortunately we have no idea about how well these heuristics actually help. This series of diffs aims to fix this problem. After this series is landed and logging is enabled, I hope that we can find out if we really these heuristics at all.


Test Plan: Run test-remotefilelog-linknodes.t

Reviewers: #fbhgext, quark

Reviewed By: #fbhgext, quark

Differential Revision: https://phab.mercurial-scm.org/D837
2017-10-01 05:45:27 -07:00
Stanislau Hlebik
51e70d2c81 remotefilelog: move fastlog logging inside _linknodeviafastlog
Summary:
The goal of the whole series is to have logging around linknode fixup. It's a slow operation, and we have two heuristics to make it faster. Unfortunately we have no idea about how well these heuristics actually help. This series of diffs aims to fix this problem. After this series is landed and logging is enabled, I hope that we can find out if we really these heuristics at all.

Let's store all the fastlog logging inside fastlog function. This refactoring helps in the next diffs

Test Plan: Run test-remotefilelog-linknodes.t

Reviewers: #fbhgext, quark

Reviewed By: #fbhgext, quark

Differential Revision: https://phab.mercurial-scm.org/D836
2017-10-01 05:45:27 -07:00
Stanislau Hlebik
527d3c5618 remotefilelog: change the name of logging category
Summary:
The goal of the whole series is to have logging around linknode fixup. It's a slow operation, and we have two heuristics to make it faster. Unfortunately we have no idea about how well these heuristics actually help. This series of diffs aims to fix this problem. After this series is landed and logging is enabled, I hope that we can find out if we really these heuristics at all.

Let's change the name of the logging category. In the next diffs I'll add more
logging, not only related to fastlog, so current name may be misleading.

Test Plan: Run test-remotefilelog-linknodes.t

Reviewers: #fbhgext, quark

Reviewed By: #fbhgext, quark

Differential Revision: https://phab.mercurial-scm.org/D835
2017-10-01 05:45:27 -07:00
Stanislau Hlebik
07b4213604 sparse: fix check-commit test 2017-10-01 05:45:27 -07:00
Jun Wu
07643e2d99 undo: update test to reflect upstream changes
This is a simple `rt -i` fix for changes caused by upstream 83b647ce1cec and
976f5a9c1fd2. We probably want to change our template implementation to
de-dup hashes in the future.
2017-10-01 05:45:27 -07:00