Matt Harbison <matt_harbison@yahoo.com> [Thu, 18 Oct 2018 17:54:07 -0400] rev 40371
tests: glob over a difference between Windows 7 and Window 10
The error value is 11001 on Windows 10. I have no idea why it changed, but it
seems unimportant.
Matt Harbison <matt_harbison@yahoo.com> [Thu, 18 Oct 2018 18:11:16 -0400] rev 40370
py3: fix module imports in test-highlight.t
The hash changes are because the *.py file is committed to the repo.
Matt Harbison <matt_harbison@yahoo.com> [Wed, 17 Oct 2018 23:33:43 -0400] rev 40369
py3: fix module imports in tests, as flagged by test-check-module-imports.t
I have no idea why these aren't flagged with python2. I excluded
test-highlight.t for now to make this easier to review- the changed code is
committed to a repo, which has cascading changes on the rest of the test.
There's a mix of bytes and str in the imports dict of contrib/import-checker.py
that crashed it half way through listing out these errors. I couldn't figure
out how to fix that properly, so I was lazy and applied this on py3, to find the
rest of the errors:
diff --git a/contrib/import-checker.py b/contrib/import-checker.py
--- a/contrib/import-checker.py
+++ b/contrib/import-checker.py
@@ -626,7 +626,12 @@ def find_cycles(imports):
top.foo -> top.qux -> top.foo
"""
cycles = set()
- for mod in sorted(imports.keys()):
+ def sort(v):
+ if isinstance(v, bytes):
+ return v.decode('ascii')
+ return v
+
+ for mod in sorted(imports.keys(), key=sort):
try:
checkmod(mod, imports)
except CircularImport as e:
Matt Harbison <matt_harbison@yahoo.com> [Thu, 18 Oct 2018 21:55:47 -0400] rev 40368
lfs: don't add extension to hgrc after conversion (BC)
This is in the spirit of bcf72d7b1524.
Yuya Nishihara <yuya@tcha.org> [Thu, 18 Oct 2018 21:00:07 +0900] rev 40367
addremove: add "ui." prefix to message color keys
I don't like fully-colorized status/warning messages, and I want to disable
them at all. If we'd supported a syntax like 'color.ui.*=none', I could
easily turn addremove.added/removed off as well as ui.error. This patch is
just for that.
Since addremove colors aren't released yet, which were added at ddc1da134772,
there are no compatibility concerns.
Martin von Zweigbergk <martinvonz@google.com> [Thu, 09 Feb 2017 09:17:40 -0800] rev 40366
update: clarify update() call sites by specifying argument names
merge.update() takes a lot of parameters and I get confused all the
time which is which.
Differential Revision: https://phab.mercurial-scm.org/D5153
Martin von Zweigbergk <martinvonz@google.com> [Thu, 18 Oct 2018 10:11:08 -0700] rev 40365
debugcommands: avoid stack trace from debugindexstats in pure mode
This has been broken since I added it in d71e0ba34d9b (debugcommands:
add a debugindexstats command, 2018-08-08). This patch also fixes the
test.
Differential Revision: https://phab.mercurial-scm.org/D5152
Augie Fackler <augie@google.com> [Thu, 18 Oct 2018 11:24:20 -0400] rev 40364
tests: fix up pure case of test-sqlitestore.t
This is clearly what the line should read based on the "force to zlib"
section below, so I'm guessing it just got overlooked during development.
Differential Revision: https://phab.mercurial-scm.org/D5151
Augie Fackler <augie@google.com> [Thu, 18 Oct 2018 11:14:04 -0400] rev 40363
tests: don't emit false failures when sqlite3 is missing
I'm honestly surprised we have buildbot coverage for this, but we do!
Differential Revision: https://phab.mercurial-scm.org/D5150
Yuya Nishihara <yuya@tcha.org> [Tue, 16 Oct 2018 08:48:23 +0200] rev 40362
py3: get around IOError variants in test-commandserver.t
Yuya Nishihara <yuya@tcha.org> [Tue, 16 Oct 2018 08:41:58 +0200] rev 40361
py3: don't use traceback.print_exc() in commandserver.py
It doesn't support a bytes stream on Python 3. This makes a traceback being
sent by one frame, but that shouldn't matter.
Yuya Nishihara <yuya@tcha.org> [Tue, 16 Oct 2018 08:29:24 +0200] rev 40360
py3: invalidate repository cache with system-string keys
# skip-blame just a few r'' prefixes
Yuya Nishihara <yuya@tcha.org> [Tue, 16 Oct 2018 08:20:03 +0200] rev 40359
py3: system-stringify file mode in commandserver.py
# skip-blame just r'' prefixes
Yuya Nishihara <yuya@tcha.org> [Tue, 16 Oct 2018 07:57:40 +0200] rev 40358
py3: alias next to __next__ in commandserver.py
Yuya Nishihara <yuya@tcha.org> [Tue, 16 Oct 2018 07:57:05 +0200] rev 40357
py3: system-stringify list of attributes to be forwarded from commandserver.py
# skip-blame just some r'' prefixes
Yuya Nishihara <yuya@tcha.org> [Tue, 16 Oct 2018 07:52:56 +0200] rev 40356
py3: import StringIO from test utility to test-commandserver.t
Yuya Nishihara <yuya@tcha.org> [Tue, 16 Oct 2018 07:38:31 +0200] rev 40355
py3: use bprint() helper in test-commandserver.t
Yuya Nishihara <yuya@tcha.org> [Tue, 16 Oct 2018 07:35:29 +0200] rev 40354
py3: byte-stringify most literals in test-commandserver.t
print() calls will be replaced by bprint().
# skip-blame just tons of b'' prefixes.
Augie Fackler <augie@google.com> [Sun, 14 Oct 2018 09:50:21 -0400] rev 40353
localrepo: ensure we properly %-format int in exception throw
I'm not thrilled with this, but it'll do.
Differential Revision: https://phab.mercurial-scm.org/D5107
Pulkit Goyal <pulkit@yandex-team.ru> [Thu, 18 Oct 2018 14:41:14 +0300] rev 40352
py3: add a r'' prefix in mercurial/exchange.py
# skip-blame because just r'' prefix
This fixes test-narrow-acl.t on py3 which was broken by one of the
earlier patches.
Differential Revision: https://phab.mercurial-scm.org/D5149
Pulkit Goyal <pulkit@yandex-team.ru> [Thu, 18 Oct 2018 14:37:38 +0300] rev 40351
py3: add 5 new passing tests to whitelist caught by buildbot
Thanks to everyone who is putting efforts in making hg py3 compatible.
Differential Revision: https://phab.mercurial-scm.org/D5148
Matt Harbison <matt_harbison@yahoo.com> [Wed, 17 Oct 2018 21:54:49 -0400] rev 40350
py3: fix test-import-context.t
Matt Harbison <matt_harbison@yahoo.com> [Mon, 15 Oct 2018 22:02:10 -0400] rev 40349
py3: restore perfstartup() prior to b456b2e0ad9f on Windows
Otherwise the test errors out with:
--- c:/Users/Matt/projects/hg_py3/tests/test-contrib-perf.t
+++ c:/Users/Matt/projects/hg_py3/tests/test-contrib-perf.t.err
@@ -184,6 +184,8 @@
$ hg perfrevrange
$ hg perfrevset 'all()'
$ hg perfstartup
+ 'b'c:' is not recognized as an internal or external command,
+ operable program or batch file.
$ hg perfstatus
$ hg perftags
$ hg perftemplating
Matt Harbison <matt_harbison@yahoo.com> [Wed, 17 Oct 2018 21:05:43 -0400] rev 40348
help: document the server capabilities added by the LFS extension
I didn't bother marking these experimental because it references the extension
that is already marked experimental.
Matt Harbison <matt_harbison@yahoo.com> [Thu, 27 Sep 2018 21:54:13 -0400] rev 40347
py3: fix test-propertycache.py on Windows
Anton Shestakov <av6@dwimlabs.net> [Wed, 17 Oct 2018 21:00:36 +0800] rev 40346
commands: adjust metavariables as appropriate
Apart from looking better in hg help command, these strings are also helpful
when generating shell completions programmatically.
Augie Fackler <augie@google.com> [Sun, 14 Oct 2018 11:16:22 -0400] rev 40345
match: fix up a repr to not crash on Python 3
Differential Revision: https://phab.mercurial-scm.org/D5120
Martin von Zweigbergk <martinvonz@google.com> [Fri, 05 Oct 2018 11:07:34 -0700] rev 40344
narrow: when widening, don't include manifests the client already has
When widening, we already don't include the changelog (since
f1844a10ee19) and files that the client already has (since
c73c7653dfb9). However, we still include all manifests needed for the
new narrowspec. When using flat manifests, that means we resend all
the manifests even though the client necessarily has all of them. For
tree manifests, we unnecessarily resend the root manifests and any
subdirectory manifests that the client already has.
This patch makes it so we no longer resend manifests that the client
already has. It does so by passing an extra matcher to the changegroup
packer and it uses that for filtering out directories matching the old
matcher's visitdir(). For consistency between directories and files,
it also makes the filtering of files look at both old and new matcher
rather than passing in a diff matcher as we did before.
Differential Revision: https://phab.mercurial-scm.org/D4895
Martin von Zweigbergk <martinvonz@google.com> [Wed, 17 Oct 2018 09:30:07 -0700] rev 40343
tests: add test for widening from an empty clone
Narrow clones that track no paths currently don't even include the
root manifest (which is the only manifest when using flat
manifests). That means that when we widen from such a clone, we need
to make sure that we send the root manifest (and other manifests if
using tree manifests). That currently works because we always resend
all manifest that match the new narrowspec. However, we're about to
stop resending manifests that the client already has and there's a
risk of this breaking then, so let's add a test.
Differential Revision: https://phab.mercurial-scm.org/D5143
Martin von Zweigbergk <martinvonz@google.com> [Wed, 17 Oct 2018 11:43:39 -0700] rev 40342
subrepo: access status members by name instead of by position
Taking my first Mercurial project closer to completion.
Differential Revision: https://phab.mercurial-scm.org/D5144
Kyle Lippincott <spectral@google.com> [Tue, 16 Oct 2018 07:21:00 -0700] rev 40341
revisions: when using prefixhexnode, ensure we prefix "0"
Previously, if using `experimental.revisions.disambiguatewithin` (and it didn't
include rev0), and '0' was the shortest identifier in that disambiguation set,
we printed it as the shortest *without* a prefix. This was because we had logic
to determine "if the prefix is a pure integer, but starts with 0, we don't need
to prefix with 'x': 01 is not a synonym for revision #1", but didn't handle the
case where prefix == 0 (which is a pure integer, and starts with 0... but it
*is* "rev0").
Differential Revision: https://phab.mercurial-scm.org/D5113
Pulkit Goyal <pulkit@yandex-team.ru> [Wed, 03 Oct 2018 16:45:24 +0300] rev 40340
store: pass matcher to store.datafiles()
To get narrow stream clones working, we need a way to filter the storage files
using a matcher. This patch adds matcher as an argument to store.walk() and
store.datafiles() so that we can filter the files returned according to the
matcher.
Differential Revision: https://phab.mercurial-scm.org/D4850