Anton Shestakov <av6@dwimlabs.net> [Sat, 26 Jan 2019 12:21:20 +0800] rev 41410
revset: move dagop.maxlogdepth usage to generationsrel()
Not all subscript operations would want (maxlogdepth - 1) in place of None.
Anton Shestakov <av6@dwimlabs.net> [Sat, 26 Jan 2019 12:20:05 +0800] rev 41409
test-revset: check that #generations[1:-1] doesn't result in any errors
Matt Harbison <matt_harbison@yahoo.com> [Fri, 25 Jan 2019 22:32:45 -0500] rev 41408
py3: fix a bytes/str mingling in test-install.t
Matt Harbison <matt_harbison@yahoo.com> [Fri, 25 Jan 2019 21:19:51 -0500] rev 41407
tests: conditionalize Windows difference in test-dispatch.t
The output matches the comment added 6 years ago in ef60083b5536, so I'm
assuming that difference was the reason for the over-globbing removed in
93a7539a546e.
There's still a bit of py3 instability here, but I assume those are just more
Windows issues:
@@ -95,7 +95,7 @@
[255]
$ hg log -b --cwd=inexistent default
- abort: $ENOENT$: 'inexistent'
+ abort: $ENOENT$: inexistent
[255]
$ hg log -b '--config=ui.traceback=yes' 2>&1 | grep '^Traceback'
@@ -189,7 +189,7 @@
$ hg -R a archive ''
abort: $ENOENT$: '' (no-windows !)
- abort: $ENOTDIR$: '' (windows !)
+ abort: $ENOTDIR$
[255]
#if no-outer-repo
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 25 Jan 2019 16:00:34 -0800] rev 41406
util: cast memoryview to bytes
Python 3 uses readinto() instead of read() in places. And
taking a slice of the buffer passed to readinto() will produce
a memoryview. _writedata() then gets confused when testing for
`b'\n' in data` because memoryview is an iterable over ints
instead of 1 character bytes.
We work around by casting a memoryview to bytes.
Differential Revision: https://phab.mercurial-scm.org/D5704
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 25 Jan 2019 15:36:55 -0800] rev 41405
tests: add b'' prefixes to ui.configbool() call
Otherwise the call fails due to using str on Python 3.
# skip-blame: just b'' prefixes
Differential Revision: https://phab.mercurial-scm.org/D5703
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 25 Jan 2019 15:31:07 -0800] rev 41404
commands: check for modheads being None
Python 2 allows the > operator to be used with a None and an
int. Python 3 does not. So we need to ensure the value isn't None
before comparing with >.
Differential Revision: https://phab.mercurial-scm.org/D5702
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 25 Jan 2019 15:21:56 -0800] rev 41403
tests: add b'' when testing for tls1.2
The dict keys are bytes. The test was always failing due to
looking for a str key.
skip-blame: just b'' prefix
Differential Revision: https://phab.mercurial-scm.org/D5701
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 25 Jan 2019 15:15:59 -0800] rev 41402
wireprotov2peer: make "received frame(...)" messages debug level
We don't need to show these during --verbose, it's more of a
debugging thing.
Differential Revision: https://phab.mercurial-scm.org/D5700
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 25 Jan 2019 15:09:08 -0800] rev 41401
tests: add optional setsockopt() output on Python 3
Tests still don't pass. But this gets us a little closer.
Differential Revision: https://phab.mercurial-scm.org/D5699
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 25 Jan 2019 15:03:20 -0800] rev 41400
wireprotov2peer: rewrite character traversal to use slices
Otherwise on Python 3 we iterate over integers instead of a
bytes instance and the comparison fails.
Differential Revision: https://phab.mercurial-scm.org/D5698
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 25 Jan 2019 14:57:37 -0800] rev 41399
wireprotov2server: don't attempt to cast command name
I'm not sure why this was added. The command name should already
be bytes.
Differential Revision: https://phab.mercurial-scm.org/D5697
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 25 Jan 2019 14:38:49 -0800] rev 41398
wireprotov2server: use pycompat.strkwargs when calling cachekeyfn
Differential Revision: https://phab.mercurial-scm.org/D5696
Navaneeth Suresh <navaneeths1998@gmail.com> [Thu, 17 Jan 2019 18:05:54 +0530] rev 41397
diffstat: make --git work properly on renames (issue6025)
`$ hg diff --stat --git` shows only the new filename on renames.
I added the old filename also to the output to make it identical
with the output of `$ git diff --stat`.
Differential Revision: https://phab.mercurial-scm.org/D5628
Martin von Zweigbergk <martinvonz@google.com> [Fri, 25 Jan 2019 09:50:23 -0800] rev 41396
cmdutil: drop obsolete comment about updating to '.'
Obsolete since cf68e2649e0a (status: advertise --abort instead of
'update -C .' to abort a merge, 2018-08-09) and 5b04b6204931 (status:
advertise --abort instead of 'update -C .' to abort graft, 2018-08-09).
Differential Revision: https://phab.mercurial-scm.org/D5694
Martin von Zweigbergk <martinvonz@google.com> [Thu, 24 Jan 2019 16:30:30 -0800] rev 41395
mq: slightly simplify check for patched working copy
Differential Revision: https://phab.mercurial-scm.org/D5693
Martin von Zweigbergk <martinvonz@google.com> [Thu, 24 Jan 2019 16:25:19 -0800] rev 41394
localrepo: slightly simplify check for removed parents in _rollback()
Differential Revision: https://phab.mercurial-scm.org/D5692
Martin von Zweigbergk <martinvonz@google.com> [Thu, 24 Jan 2019 16:16:10 -0800] rev 41393
transplant: use bailifchanged() instead of reimplementing it
Differential Revision: https://phab.mercurial-scm.org/D5691
Martin von Zweigbergk <martinvonz@google.com> [Thu, 24 Jan 2019 12:47:54 -0800] rev 41392
revpair: clarify check for empty revset
Differential Revision: https://phab.mercurial-scm.org/D5688
Martin von Zweigbergk <martinvonz@google.com> [Thu, 24 Jan 2019 12:38:19 -0800] rev 41391
revpair: simplify revpair by always relying on smartset.first/last
I thinkt the code was written the way it was because it comes from
97b2f26dfc43 (revpair: smartset compatibility, 2014-03-20) and the
first/last methods came only later, in 228b0aafb1ce (smartset: add
first and last methods, 2014-10-06).
Differential Revision: https://phab.mercurial-scm.org/D5687
Martin von Zweigbergk <martinvonz@google.com> [Fri, 18 Jan 2019 11:10:30 -0800] rev 41390
grep: use set instead of dict with dummy value
Differential Revision: https://phab.mercurial-scm.org/D5633
Martin von Zweigbergk <martinvonz@google.com> [Thu, 06 Sep 2018 15:56:53 -0700] rev 41389
grep: don't look up copy info unless --follow is given
If no --follow was given, then the "copy" variable will become
None. In that case we would still look up the copy information from
the filelog and then ignore it. Let's avoid even looking it up.
Differential Revision: https://phab.mercurial-scm.org/D5620
Martin von Zweigbergk <martinvonz@google.com> [Thu, 17 Jan 2019 09:24:30 -0800] rev 41388
hghave: let OSError with ENOENT through like any other
Before this patch, if we get an OSError with ENOENT, we would not
re-raise it and would instead run into an undefined variable ("p")
soon thereafter.
Differential Revision: https://phab.mercurial-scm.org/D5631
Martin von Zweigbergk <martinvonz@google.com> [Thu, 17 Jan 2019 09:17:12 -0800] rev 41387
cleanup: delete lots of unused local variables
These were found by IntelliJ. There are many more, but these seemed
pretty safe.
Differential Revision: https://phab.mercurial-scm.org/D5629
Martin von Zweigbergk <martinvonz@google.com> [Mon, 24 Sep 2018 14:46:37 -0700] rev 41386
localrepo: use context manager for lock and transaction in commitctx()
Differential Revision: https://phab.mercurial-scm.org/D5624
Martin von Zweigbergk <martinvonz@google.com> [Wed, 16 Jan 2019 17:34:59 -0800] rev 41385
localrepo: use context manager for locks in commit()
Differential Revision: https://phab.mercurial-scm.org/D5623
Martin von Zweigbergk <martinvonz@google.com> [Wed, 16 Jan 2019 17:33:47 -0800] rev 41384
localrepo: use context manager for transaction in commit()
A side-effect is that the transaction is released a little earlier, so
the "commit message saved in ..." messages now comes after the
"rollback completed" message. That seems slightly better to me.
Differential Revision: https://phab.mercurial-scm.org/D5622
Martin von Zweigbergk <martinvonz@google.com> [Wed, 16 Jan 2019 17:46:39 -0800] rev 41383
commit: print "commit message saved in" message also if bookmark update fails
The bookmark update is done within the same transaction, so if fails,
the commit will also be rolled back.
I just happened to notice this while messing with this code; we have
not had reports of crashing bookmark updates from our users.
The same applies to the clearing of the merge state, although I don't
think that's currently tied into the transaction.
Differential Revision: https://phab.mercurial-scm.org/D5621