Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 10:28:01 -0700] rev 43014
automation: upgrade packages in Linux environment
Let's stay modern.
Differential Revision: https://phab.mercurial-scm.org/D6913
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 10:21:18 -0700] rev 43013
automation: remove Ubuntu 18.10
It reached end of life on July 18, 2019. I don't think we
should care about supporting it.
Differential Revision: https://phab.mercurial-scm.org/D6912
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 10:19:02 -0700] rev 43012
automation: always install docker-ce
Docker has published packages for Ubuntu Disco and we no longer
need this one-off.
Differential Revision: https://phab.mercurial-scm.org/D6911
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 10:17:20 -0700] rev 43011
automation: use LSB_RELEASE instead of DEBIAN_VERSION
This should be more robust since I believe the minor version can
change mid release.
Differential Revision: https://phab.mercurial-scm.org/D6910
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 12:34:52 -0700] rev 43010
tests: use silenttestrunner in test-simplemerge.py
The time monkeypatching doesn't appear to work reliably in
Python 3, possibly due to unittest using a different time
function. This makes the test intermittent due to the
execution time not always being `0.00s`.
We have our own wrapper around unittest for more deterministic
test output. So let's use it.
As a bonus, all test output disappeared, so we can remove the
.out file!
Differential Revision: https://phab.mercurial-scm.org/D6921
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 12:25:29 -0700] rev 43009
contrib: use pycompat.xrange in bdiff-torture.py
For Python 3 compatibility.
Differential Revision: https://phab.mercurial-scm.org/D6920
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 12:22:21 -0700] rev 43008
interfaces: use triple quotes for Attribute value
Otherwise the source transformer converts it to bytes and
test-check-interfaces.py complains on Python 3.
Differential Revision: https://phab.mercurial-scm.org/D6919
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 12:19:45 -0700] rev 43007
tests: suppress output from write()
Otherwise it is printed and the test fails with tons of output on
Python 3.
Differential Revision: https://phab.mercurial-scm.org/D6918
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 12:04:43 -0700] rev 43006
tests: look for additional pip warning variant
The wording has been tweaked in new versions of pip.
Differential Revision: https://phab.mercurial-scm.org/D6909
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 29 Sep 2019 12:00:18 -0700] rev 43005
tests: use test harness `hg` in test-hghave.t
This prevents the sub test harness from rebuilding Mercurial.
It shaves ~30s from the test wall time on my machine.
Differential Revision: https://phab.mercurial-scm.org/D6908
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 28 Sep 2019 21:13:27 -0700] rev 43004
synthrepo: use pycompat.xrange
This silences some test-check-pyflakes.t warnings on Python 3.
Differential Revision: https://phab.mercurial-scm.org/D6907
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 00:40:52 +0200] rev 43003
perf: fix perfhelper-pathcopies without --stats
Some conditional were missing.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 19:59:53 +0200] rev 43002
upgrade: also register copied `.d` files to fncache
Oops, we forgot to register data file when blanky copying revlog. Now that we
are actually copying these `.d` files, we should also register them.
Differential Revision: https://phab.mercurial-scm.org/D6905
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 21:32:56 +0200] rev 43001
upgrade: fix handling of `.d` data file
The test did not used any `.d` file. So of course, their handling was broken
(for vfs encoding reason again). We fix the issue and update the test.
Note that some fncache issue remains with `.d` file. It will be taken care of
in the next changesets.
Differential Revision: https://phab.mercurial-scm.org/D6904
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 21:14:23 +0200] rev 43000
upgrade: also copy data file
Differential Revision: https://phab.mercurial-scm.org/D6903
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 21:14:03 +0200] rev 42999
upgrade: create the correct destination directory for copies revlogs
The encoding in vfs mess up with the directory we are trying to create manually.
We could duplicate the advanced logic some more, but that seems ill fated.
Instead, we let the vfs deal with directory creation.
We update the test to contains a name affected by encoding.
Differential Revision: https://phab.mercurial-scm.org/D6902
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 13:16:37 +0200] rev 42998
upgrade: fix DELTAREUSEFULLADD implementation in revlog.clone
If we do a full addition, we need to start from the full text.
Differential Revision: https://phab.mercurial-scm.org/D6901
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 13:10:47 +0200] rev 42997
upgrade: document DELTAREUSEFULLADD in revlog.clone
The documentation of the `debugupgraderepo` command was updated when
`re-delta-fulladd` was introduced. However, the docstring of the `revlog.clone`
method was not.
Differential Revision: https://phab.mercurial-scm.org/D6900
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 27 Sep 2019 12:41:20 +0200] rev 42996
upgrade: move most of revlog.clone method into a _clone method
The content of the clone method now focus on parameters validation and
processing. The `_clone` method focus on the actual cloning logic.
Splitting the method out save some indentation and clarify each method code
since it a focussed on one goal.
Differential Revision: https://phab.mercurial-scm.org/D6899
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 07 Sep 2019 00:34:20 +0200] rev 42995
flagprocessors: remove flagprocessorsmixin
It became an empty shell.
Differential Revision: https://phab.mercurial-scm.org/D6823
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 07 Sep 2019 00:26:15 +0200] rev 42994
flagprocessors: move _flagserrorclass attribute on revlog & co
This is a small duplication, and the last bit we need to get rid of the mixin.
Honestly, I am not fan of that class attribute and it mostly exist to accomodate
The simple-storage whose usage of flag processors is dumbious and that is
currently dead code anyway. However I don't want to be pulled into futher
unrelated cleaning so it is a small price to pay.
Differential Revision: https://phab.mercurial-scm.org/D6822
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 07 Sep 2019 00:22:38 +0200] rev 42993
flagprocessors: directly duplicate the deprecated layer back into revlog
The code duplication benign and will get removed in a couple of month anyway.
Differential Revision: https://phab.mercurial-scm.org/D6821
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 07 Sep 2019 00:16:32 +0200] rev 42992
flagprocessors: make `processflagsraw` a module level function
One more steps toward removing the mixin.
Differential Revision: https://phab.mercurial-scm.org/D6820
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 07 Sep 2019 00:11:58 +0200] rev 42991
flagprocessors: make `processflagsread` a module level function
One more steps toward removing the mixin.
Differential Revision: https://phab.mercurial-scm.org/D6819
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 06 Sep 2019 23:50:32 +0200] rev 42990
flagprocessors: make `processflagswrite` a module level function
One more step towards removing the mixin.
Differential Revision: https://phab.mercurial-scm.org/D6818
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 06 Sep 2019 23:43:06 +0200] rev 42989
flagprocessors: make `_processflagsfunc` a module level function
This is the first step toward removing the flag processing mixin.
Differential Revision: https://phab.mercurial-scm.org/D6817
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 04 Sep 2019 00:53:27 +0200] rev 42988
flagprocessors: writetransform function take side data as parameter (API)
If we want some flag processors to be able to store sidedata it needs to be
actually fed that data.
Differential Revision: https://phab.mercurial-scm.org/D6816
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 03 Sep 2019 23:51:17 +0200] rev 42987
flagprocessors: add a `sidedata` parameters to _processflagswrite
To read sidedata using flagprocessors, we need flag processors to store them. So
we pass this information to the flag processing layer.
Differential Revision: https://phab.mercurial-scm.org/D6815
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 03 Sep 2019 23:51:34 +0200] rev 42986
revlog: add a `sidedata` parameters to addrevision
If we want to eventually store sidedata we need to be able to pass them along.
Differential Revision: https://phab.mercurial-scm.org/D6814
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 04 Sep 2019 00:34:03 +0200] rev 42985
flagprocessors: have the read transform function return side data (API)
This makes it possible for flag processors to -read- flag data.
Differential Revision: https://phab.mercurial-scm.org/D6813