FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 01 Mar 2019 02:53:09 +0900] rev 41828
contrib: factor out actual error check for file data of check-code.py
This is a part of preparation to apply checking with check-code.py on
code fragments embedded in *.t test scripts.
Newly added _checkfiledata() will be useful to apply checks on code
fragments embedded in *.t test scripts.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 01 Mar 2019 02:53:09 +0900] rev 41827
contrib: refactor preparation logic for patterns of check-code.py
This is a part of preparation to apply checking with check-code.py on
code fragments embedded in *.t test scripts.
Before this patch, preparation logic in _preparepats() of
check-code.py is not reusable. It can handle only module global list
"checks".
This patch splits preparation logic into small internal functions, and
add the loop to invoke them, in order to increase reusability of the
logic.
"c[-2]" is equivalent to "c[3]" for "checks". This patch uses the
former, because it will be more reusable for subsequent patch than the
latter.
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 01 Mar 2019 02:53:05 +0900] rev 41826
contrib: split pypats list in check-code.py
This is a part of preparation to apply checking with check-code.py on
code fragments embedded in *.t test scripts.
Ideally, all patterns in "pypats" before this patch should be applied
on not only normal *.py files but also code fragments embedded in *.t
test scripts. But fixing test scripts for some patterns requires
many changes, and has less profit than effort.
Therefore, this patch splits pypats list into two below:
- commonpypats, which are applied on all (= including code fragments
embedded in *.t test scripts) *.py files
- pypats, which are applied only on normal *.py
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 01 Mar 2019 02:51:52 +0900] rev 41825
tests: remove useless line wrapping in a code fragment embedded in test script
This is a part of preparation to apply checking with check-code.py on
code fragments embedded in *.t test scripts.
This revision avoids error of check-code.py below.
Use () to wrap long lines in Python, not \
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 27 Feb 2019 12:40:18 +0100] rev 41824
storage: introduce a `revlog.reuse-external-delta` config
This option goes a bit further and provides a way to get the same behavior as the
`re-delta-all` optimisation from `hg debugupgraderepo`.
The effect of the option is a bit hard to test as we do not have multiple diff
algorithm at hand. However, we at least make sure the code path run.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 27 Feb 2019 10:49:25 +0100] rev 41823
storage: introduce a `revlog.reuse-external-delta-parent` config
As pointed in c59987ab96b4, we had no simple way to get a client to not blindly
reuse the delta parent from a bundle. Instead one had to rely on a side effect
of the deprecated `format.generaldelta` configuration.
We introduce an explicit `revlog.reuse-external-delta-parent` configuration
option (default to True) to control this behavior. If the option is not set,
`format.generaldelta` still control this behavior.
To test the new option, we convert a couple of place where `generaldelta` have
been used for its side effects.
Yuya Nishihara <yuya@tcha.org> [Sat, 02 Mar 2019 09:41:17 +0900] rev 41822
merge with stable
Pulkit Goyal <pulkit@yandex-team.ru> [Thu, 28 Feb 2019 04:08:47 +0530] rev 41821
py3: convert return values of inspect.getabsfile() to bytes
It's weird that python docs for inspect does not mention getabsfile().
Differential Revision: https://phab.mercurial-scm.org/D6033
Pulkit Goyal <pulkit@yandex-team.ru> [Thu, 28 Feb 2019 03:51:06 +0530] rev 41820
py3: add two new passing tests found by buildbot
Differential Revision: https://phab.mercurial-scm.org/D6032
Pulkit Goyal <pulkit@yandex-team.ru> [Thu, 28 Feb 2019 03:48:07 +0530] rev 41819
py3: make contrib/debugshell.py work with Python 3
I changed default mercurial installation of my personal laptop to one installed
with python 3.7. debugshell is one of the extension which I have enabled and it
was failing. This patch makes debugshell works with Python 3.
I found that chg does not work with python 3.
Differential Revision: https://phab.mercurial-scm.org/D6031
Martin von Zweigbergk <martinvonz@google.com> [Wed, 27 Feb 2019 16:34:58 -0800] rev 41818
absorb: let scmutil.cleanupnodes() take care of setting phase
Differential Revision: https://phab.mercurial-scm.org/D6036
Martin von Zweigbergk <martinvonz@google.com> [Wed, 27 Feb 2019 16:33:15 -0800] rev 41817
absorb: use scmutil.cleanupnodes() also when obsmarkers are disabled
A side-effect of this is the new warning in the test case, but the
warning is valid, so I don't think that's a problem.
Differential Revision: https://phab.mercurial-scm.org/D6035
Martin von Zweigbergk <martinvonz@google.com> [Wed, 27 Feb 2019 16:15:10 -0800] rev 41816
absorb: use scmutil.cleanupnodes() so operation gets set
The operation is useful for e.g. `hg obslog` output.
Differential Revision: https://phab.mercurial-scm.org/D6034
Boris Feld <boris.feld@octobus.net> [Mon, 25 Feb 2019 09:02:29 +0100] rev 41815
test: follow-up on 1c4d6ab2ecb8, stabilize test-remotefilelog-bgprefetch.t
In 1c4d6ab2ecb8, I've added some sleeps after about half of the calls to `hg
debugwaitonrepack` but it seems the other calls are also flaky as catched by
our CI: https://ci.octobus.net/job/MercurialPy2/299/console. Add sleeps after
all calls in order to be safe.