- Oct 31, 2018
-
-
Yuya Nishihara authored
This prepares for adding an IPC socket.
-
Yuya Nishihara authored
This is necessary to wrap a repo instance so the master process will be notified on repo.close().
-
- Dec 10, 2018
-
-
Matt Harbison authored
In 3.3 and later, this is now an alias for OSError. I hacked up the server code enough that I was able to trigger the exception handler in server.py from test-http-bundle1.t. Other instances of this either subscript through the `args` member, or reference the errno or strerror attributes. Note that on Windows, the errno value seems to reflect the Winsock error, so the various tests for EPIPE seem like they would always fail. But that seems to be the case in py2 as well.
-
- Dec 09, 2018
-
-
Boris Feld authored
The test previously assumed that a working pager was present in the test environment. Update it to use the fakepager instead. Differential Revision: https://phab.mercurial-scm.org/D5399
-
- Dec 10, 2018
-
-
Matt Harbison authored
Python3 lives in Program Files by default. The last remaining unquoted instance is in test-hghave.t. I can't figure out how to quote that, as it either complains: 'c:\\Program' is not recognized as an internal or external command, operable program or batch file. or $TESTTMP.sh: line 22: "C:/Program Files/Python37/python.exe": $ENOENT$
-
- Dec 09, 2018
-
-
Matt Harbison authored
-
Matt Harbison authored
-
Matt Harbison authored
Windows was complaining about passing str to CreateFileA() in win32.py.
-
Martin von Zweigbergk authored
The narrow extension also has support for shallowness and for inserting older commits on pull. It works by temporarily stripping newer commits, adding the older commits, then re-applying the stripped bundle. The regular Mercurial server uses that when you widen, although it shouldn't be necessary there. Our Google-internal server does it when the user requests an older commit. Our Google-internal tests fail since 7caf632e30c3 (filecache: unimplement __set__() and __delete__() (API), 2018-10-20). I haven't quite understood the problem, but it's related to the way we temporarily hide bookmarks while the commits they point to are stripped. When a transaction is started, Mercurial tries to read various things from the repo for the transaction summary. That leads to computation of hidden commits, which leads to an attempt to find commits pinned by bookmarks. This is the reason we temporarily hide the bookmarks. I think the aforementioned commit makes the restored bookmarks visible earlier than before (which seems like an improvement), so we can no longer incorrectly rely on the repo._bookmarks field being cached too long (IIUC). This patch makes it so we restore the temporarily hidden bookmarks only after the temporary bundle has been re-applied. It also adapts the code to update the repo.__bookmarks field using the pattern described in the aforementioned commit instead of writing directly to the fiels. I have spent many hours trying to understand what was going on here, but I still don't know if this can also happen without our custom server. So this patch unfortunately does not add any tests; I have only been able to test the fix using our Google-internal tests. Differential Revision: https://phab.mercurial-scm.org/D5398
-
Martin von Zweigbergk authored
Not needed since narrow is shipped with core. Differential Revision: https://phab.mercurial-scm.org/D5397
-
- Dec 06, 2018
-
-
Martin von Zweigbergk authored
When widening inserts older commits in the changelog, we have to preserve bookmarks so they are not removed by the call to repair.strip() we temporarily do. We didn't have any tests for that before. Differential Revision: https://phab.mercurial-scm.org/D5396
-
- Dec 07, 2018
-
-
Martin von Zweigbergk authored
Our message just said that it created no changes, but we didn't explicitly say that that meant that the the commit was not rebased. It also wasn't clear why it created no changes, so this patch also clarifies that that was because the changes were already in the destination. Differential Revision: https://phab.mercurial-scm.org/D5395
-
Martin von Zweigbergk authored
We use the _ctxdesc() for other similar messages, so it seems we should use it here too. Differential Revision: https://phab.mercurial-scm.org/D5394
-
- Oct 29, 2018
-
-
Yuya Nishihara authored
Before, rustla_contains() would return 0 on error, and the exception would be cleared or noticed somewhere else. We need to propagate the error from AncestorsIterator up to the FFI surface.
-
- Dec 02, 2018
-
-
Yuya Nishihara authored
And removes the unused index_get_parents_checked() function. I expect the Index struct will be turned into a pyobject type, though I haven't written any PoC-level patches yet.
-
Yuya Nishihara authored
Since this is a public function, it validates the input revision, and supports nullrev. index_get_parents_checked() will be replaced by this function.
-
Yuya Nishihara authored
It follows the CPython naming convention, but uses Hg instead of Py.
-
Yuya Nishihara authored
The idea is to wrap the index object with rust-cpython. I haven't tried it, but it should be doable. We'll probably need a better interface than raw function pointers to do more in Rust.
-
Yuya Nishihara authored
Appears that they were screwed up while moving the source files around. Since rust-direct-ffi sources are automatically added to the depends list, we only need to list hg-core sources.
-
- Mar 04, 2018
-
-
Martin von Zweigbergk authored
Since _abort() is now an instance method, we don't need to pass state that's available on "self". Differential Revision: https://phab.mercurial-scm.org/D5393
-
Martin von Zweigbergk authored
The function depends on a lot of the state of rebaseruntime, so it makes sense for it to be an instance method. This will let us remove many of the arguments to the method. That will be done in a later patch. Differential Revision: https://phab.mercurial-scm.org/D5392
-
- Mar 21, 2018
-
-
Martin von Zweigbergk authored
If "moves" (indicating how to move bookmarks) is None, we fill it out based on "replacements" (indicating which obsmarkers to add). If "moves" is not None, we would still add items based on "replacements". This makes it impossible to pass "moves={}" and not move bookmarks, which surprised me. The only caller that currently passes a value for "moves" was the rebase extension and there we were already adding bookmark moves corresponding to obsmarker additions, so it should not be impacted. Differential Revision: https://phab.mercurial-scm.org/D5391
-
- Dec 05, 2018
-
-
Martin von Zweigbergk authored
"commit" was probably a copy&paste mistake. Differential Revision: https://phab.mercurial-scm.org/D5390
-
Martin von Zweigbergk authored
Regular shelve has a hack using an uncommitted transaction that's then aborted at the end of the operation. It preserves the dirstate across the abort, however, by saving a backup copy of it. Phase-based shelve instead commits the transaction, so the hack shouldn't be necessary there. Differential Revision: https://phab.mercurial-scm.org/D5389
-
Martin von Zweigbergk authored
test-shelve.t dominated run time for all shelve tests. Before: # Ran 9 tests, 1 skipped, 0 failed. real 0m43.568s user 2m15.822s sys 0m40.857s After: # Ran 11 tests, 1 skipped, 0 failed. real 0m24.574s user 2m21.354s sys 0m40.435s Differential Revision: https://phab.mercurial-scm.org/D5388
-
Martin von Zweigbergk authored
The progress helper class keeps track of its current position, so we don't need a "count" variable for that. Differential Revision: https://phab.mercurial-scm.org/D5386
-
Martin von Zweigbergk authored
We had already given the initial value of "count[0]" a name, so just use that when applicable. Differential Revision: https://phab.mercurial-scm.org/D5385
-
Martin von Zweigbergk authored
Simpler is better. Differential Revision: https://phab.mercurial-scm.org/D5384
-
Martin von Zweigbergk authored
The "count" container is never used after this point, so there is no need to update it. Differential Revision: https://phab.mercurial-scm.org/D5383
-
Martin von Zweigbergk authored
The "count" variable is generally used for updating progress, but early in fileserverclient.request(), its used to mean the total count. We already have another "total" variable for that, so it seems much clearer to use that. Differential Revision: https://phab.mercurial-scm.org/D5382
-
Martin von Zweigbergk authored
Differential Revision: https://phab.mercurial-scm.org/D5381
-
Martin von Zweigbergk authored
Differential Revision: https://phab.mercurial-scm.org/D5380
-
Martin von Zweigbergk authored
Differential Revision: https://phab.mercurial-scm.org/D5379
-
Martin von Zweigbergk authored
Differential Revision: https://phab.mercurial-scm.org/D5378
-
Martin von Zweigbergk authored
Differential Revision: https://phab.mercurial-scm.org/D5377
-
Martin von Zweigbergk authored
Differential Revision: https://phab.mercurial-scm.org/D5376
-
Martin von Zweigbergk authored
Differential Revision: https://phab.mercurial-scm.org/D5375
-
- Dec 04, 2018
-
-
Martin von Zweigbergk authored
Differential Revision: https://phab.mercurial-scm.org/D5374
-
Martin von Zweigbergk authored
Differential Revision: https://phab.mercurial-scm.org/D5373
-
- Jul 13, 2018
-
-
Boris Feld authored
We rename "aggressivemergedelta" argument to "forceaggressivemergedelta". The previous argument naming could infer an absolute control on the behavior. However, the code show we respect the config option if set.
-