- Mar 02, 2019
-
-
Ian Moody authored
Previously the byte conversion was happening piecemeal in callers, and in the case of createdifferentialrevision not at all, leading to UnicodeEncodeErrors when trying to phabsend a commit with a description containing characters not representable in ascii. (issue6040) Remove all the scattered encoding.unitolocal calls and perform it once, inside callconduit, on the entire response dict recursively before returning it, in keeping with the strategy of converting at the earliest opportunity. Convert all keys used on returned object to bytes. Modify the phabsend tests to test this by adding a € to the commit message of alpha. Differential Revision: https://phab.mercurial-scm.org/D6044
-
- Feb 09, 2019
-
-
Pierre-Yves David authored
There is no reason to not include the txnname alongside the txnid in all case. The python hooks already have them, so aligning the the shell hooks seems it could be useful in the future. (I don't have a strong opinion about this, we can also decide to never align the python and shell hooks and this and I'll drop this patch).
-
- Mar 07, 2019
-
-
Pierre-Yves David authored
It is common to create multiple pairs of repositories using different argument values. Recording the argument value in the results names has two main advantages: * It is easy to remember the value used to create a pair, * It get simpler to create multiple pair at the same time from the same source. Previously, running: `./discovery-helper.sh pypy 50 10` would create a `pypy-left` and `pypy-right` repository. Now it will create `pypy-50h-10d-left` and `pypy-50h-10d-right`.
-
Pierre-Yves David authored
Having them printed early make it easy for a user to just grab the generated revset and directly uses them
-
Pierre-Yves David authored
The script appeared before the directory. However the directory exists for this kind of script. We move it there.
-
- Mar 09, 2019
-
-
Matt Harbison authored
It looks like there will be additional problems beyond this trivial fix, but this should make the bot green again.
-
- Mar 08, 2019
-
-
Matt Harbison authored
PYTHON was not getting mangled for MSYS style paths, and remote was spitting out remote: 'C' is not recognized as an internal or external command, remote: operable program or batch file. (once -q was removed). Additionally, this should fix a failure with py3 because of spaces in the path.
-
- Mar 03, 2019
-
-
Sushil Khanchi authored
Differential Revision: https://phab.mercurial-scm.org/D6057
-
- Mar 07, 2019
-
-
Pierre-Yves David authored
Yuya Nishihara pointed out that the code looks wrong without this clarification. (And, unsurprisingly, Yuya is right)
-
- Mar 06, 2019
-
-
Martin von Zweigbergk authored
I assume the "hg uncommit b" is there to prove that the working copy is dirty before we try "hg uncommit --allow-dirty-working-copy b". It seems clearer to put that check just before we run the actual test. Differential Revision: https://phab.mercurial-scm.org/D6078
-
Martin von Zweigbergk authored
These tests no longer test the config option, they test the command line flag. Differential Revision: https://phab.mercurial-scm.org/D6077
-
- Feb 28, 2019
-
-
Pierre-Yves David authored
Recent performance achievements makes the assumption that the `undecided` set is used for sampling. That assumption is always true in practice. We stop pretending that taking anything else would make sense and we directly use the `undecided` set from the object. This provides a more honest API.
-
Pierre-Yves David authored
During discovery, the `undecided` set keep shrinking. Therefore, the map computed for an iteration N will be valid for iteration N+1. Instead of computing the same data over and over we cache it the first time. Our private pathological case speed up from about 7.5 seconds to about 6.3 seconds. (starting from over 70s at the start of the full series)
-
Pierre-Yves David authored
This clarifies the main logic and starts to pave the way to some caching.
-
- Mar 05, 2019
-
-
Pierre-Yves David authored
Since we only care about the revisions inside the set we are sampling, we can use simpler code (and probably sightly faster).
-
Pierre-Yves David authored
The sampling only care about revisions in the undecided set, so building children relationship within this set is sufficient. The set of undecided changesets can be much smaller than the full span from its smallest item to the tip of the repository. This restriction can significantly speed up operations in some cases. For example, on our private pathological case, this speeds things up from about 53 seconds to about 7.5 seconds.
-
- Feb 27, 2019
-
-
Pierre-Yves David authored
We already know that no revision in the undecided set are filtered, so we can skip multiple checks and directly access lower level data. In a private pathological case, this improves the timing from about 70 seconds to about 50 seconds. There are other actions to be taken to improve that case, however this gives an idea of the general overhead.
-
Pierre-Yves David authored
The very same set of heads is computed in the previous statement, it seems more efficient to just copy that result.
-
Georges Racinet authored
In this patch, we transform the sampling functions into methods of the `partialdiscovery` class in the Python case. This will provide multiple benefit. For example we can keep some cache from one sampling to another. In addition this will help the Oxidation work as all graph traversal related logic will be contained in a single object.
-
Georges Racinet authored
The `srvheads` variable only contains the known set of remove heads. Renaming the variable make it clearer.
-
- Mar 06, 2019
-
-
Pierre-Yves David authored
Small changes to make this area of code clearer.
-
Pierre-Yves David authored
-
Pierre-Yves David authored
We document the method input, output and checks.
-
Pierre-Yves David authored
The method is for internal use only. In addition we make the method name explicitly contains `revlog` to make it clearer it is checking higher level revlog properties.
-
Pierre-Yves David authored
Let us add details about what the function is expected to do.
-
Pierre-Yves David authored
I had to look at it, so I figured I would leave some documentation for the next person seeking information.
-
Pierre-Yves David authored
This method is for internal use only.
-
Pierre-Yves David authored
This method checks various core propertes of a revision. We document inputs, outputs and the checks performed.
-
Pierre-Yves David authored
The goal is to clarify each section goal.
-
Pierre-Yves David authored
Relying on the fact None is treated as 0 by other logics seems smarter than we should be.
-
Pierre-Yves David authored
I expect the docstring to grow over time, so lets start small.
-
Pierre-Yves David authored
The method is for internal use only.
-
Pierre-Yves David authored
Simple method, get simple documentation.
-
Pierre-Yves David authored
The method is for internal use only.
-
Pierre-Yves David authored
Simple method get simple documentation.
-
Pierre-Yves David authored
The method is for internal use only. Let us make that fact clearer.
-
Pierre-Yves David authored
This is the first bit of an effort to document and augment the verify code.
-
- Mar 04, 2019
-
-
Navaneeth Suresh authored
This adds a flag `--allow-dirty-working-copy` as an alias for the experimental config option `experimental.uncommitondirtydir`. Differential Revision: https://phab.mercurial-scm.org/D6069
-
- Feb 11, 2019
-
-
Navaneeth Suresh authored
On a dirty PATH, uncommit was working without even setting the config `experimental.uncommitondirtydir` to `True`. Ideally, it should abort as it does for a dirty dir. This patch makes uncommit to require the config option `experimental.uncommitondirtydir` on a dirty PATH. Original patch to evolve extension authored by Dan Villiom Podlaski Christiansen: https://bitbucket.org/octobus/evolve-devel/pull-requests/8/bug-5977-uncommit-dirtiness/diff Differential Revision: https://phab.mercurial-scm.org/D5940
-
- Mar 05, 2019
-
-
Augie Fackler authored
I suspect one of these was a typo from the start, the other appears to have become a .t test at some point. Differential Revision: https://phab.mercurial-scm.org/D6076
-