Yuya Nishihara <yuya@tcha.org> [Sat, 16 Jun 2018 17:56:37 +0900] rev 38340
py3: remove b'' from error message of disallowed filename
Yuya Nishihara <yuya@tcha.org> [Sat, 16 Jun 2018 17:54:29 +0900] rev 38339
py3: remove b'' from output of test-eol.t
Yuya Nishihara <yuya@tcha.org> [Sat, 16 Jun 2018 17:53:51 +0900] rev 38338
py3: replace s[-1] with s.endswith() in eol handling
Yuya Nishihara <yuya@tcha.org> [Sat, 16 Jun 2018 17:36:44 +0900] rev 38337
py3: fix loop over byte string in wireprotov1peer
Before, it would always return [True]s on Python 3 because list(b"0") == [48].
Yuya Nishihara <yuya@tcha.org> [Sat, 16 Jun 2018 17:04:03 +0900] rev 38336
py3: glob out some error messages in test-fileset.t
Python3 provides more detailed messages, which is fine.
Yuya Nishihara <yuya@tcha.org> [Sat, 16 Jun 2018 17:00:05 +0900] rev 38335
fileset: raise ProgrammingError for bad existing() calls
And glob out Py2/3 difference.
Yuya Nishihara <yuya@tcha.org> [Sat, 16 Jun 2018 16:56:38 +0900] rev 38334
py3: cast bytes encoding name to str in fileset.py
Martin von Zweigbergk <martinvonz@google.com> [Thu, 14 Jun 2018 15:12:28 -0700] rev 38333
import: use context manager for wlock
Differential Revision: https://phab.mercurial-scm.org/D3747
Martin von Zweigbergk <martinvonz@google.com> [Thu, 14 Jun 2018 15:08:32 -0700] rev 38332
tag: use context manager for locks
Differential Revision: https://phab.mercurial-scm.org/D3746
Martin von Zweigbergk <martinvonz@google.com> [Thu, 14 Jun 2018 15:05:14 -0700] rev 38331
commit: use context manager for locks
Differential Revision: https://phab.mercurial-scm.org/D3745
Martin von Zweigbergk <martinvonz@google.com> [Thu, 14 Jun 2018 15:08:19 -0700] rev 38330
backout: use context manager for locks
Differential Revision: https://phab.mercurial-scm.org/D3744
Martin von Zweigbergk <martinvonz@google.com> [Thu, 14 Jun 2018 15:28:32 -0700] rev 38329
backout: use context manager for dirstateguard
Differential Revision: https://phab.mercurial-scm.org/D3743
Martin von Zweigbergk <martinvonz@google.com> [Thu, 14 Jun 2018 15:26:18 -0700] rev 38328
backout: use context manager for config override
Differential Revision: https://phab.mercurial-scm.org/D3742
Martin von Zweigbergk <martinvonz@google.com> [Thu, 14 Jun 2018 15:46:31 -0700] rev 38327
update: use context manager for config override (API)
Note that update wasn't resetting the value before, so any extensions
that called commands.update() and relied on ui.forcemerge being set
after it returned would now have to set it themselves.
(There technically a small API change in all of the patches in this
series, I believe: If extensions relied on the methods to *clear*
ui.forcemerge, then they would have to do that themselves now, because
ui.configoverride() actually restores the previous config, it doesn't
just clear it like these functions did before.)
Differential Revision: https://phab.mercurial-scm.org/D3741
Martin von Zweigbergk <martinvonz@google.com> [Thu, 14 Jun 2018 15:46:17 -0700] rev 38326
resolve: use context manager for config override
Differential Revision: https://phab.mercurial-scm.org/D3740
Martin von Zweigbergk <martinvonz@google.com> [Thu, 14 Jun 2018 15:45:45 -0700] rev 38325
merge: use context manager for config override
Differential Revision: https://phab.mercurial-scm.org/D3739
Martin von Zweigbergk <martinvonz@google.com> [Thu, 14 Jun 2018 15:45:16 -0700] rev 38324
graft: use context manager for config override
Differential Revision: https://phab.mercurial-scm.org/D3738
Augie Fackler <augie@google.com> [Thu, 14 Jun 2018 11:49:10 -0400] rev 38323
tests: suppress read(-1) -> '' calls in fileobjectobserver
This stabilizes the test output of the low-level wireproto tests
between Python 2 and 3. I don't feel great about this change, but
otherwise we get a ton of extra read(-1) output on Python 3, and this
feels like a more sustainable solution.
Bonus: test-ssh-proto-unbundle.t now passes on Python 3.
Differential Revision: https://phab.mercurial-scm.org/D3733
Augie Fackler <augie@google.com> [Thu, 14 Jun 2018 11:47:51 -0400] rev 38322
debugcommands: work around logiofd being a pipe and unseekable
This was breaking in our Python 3 build, but not Python 2. I don't
know how it ever worked in Python 2, but this passes on both.
Differential Revision: https://phab.mercurial-scm.org/D3732
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 13 Jun 2018 22:51:08 +0530] rev 38321
py3: replace `unicode` with pycompat.unicode
unicode() is not available on Python 3 and throws a NameError because unicodes
are now default str() on py3.
Differential Revision: https://phab.mercurial-scm.org/D3708
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 15 Jun 2018 02:07:39 +0530] rev 38320
cmdutil: say that `graft --stop` stops the graft instead of aborting
I am going to add a --abort flag to graft soon, so we make sure we differentiate
between the what --stop flag does and what --abort does and don't use the words
interchangeably.
Differential Revision: https://phab.mercurial-scm.org/D3735
Augie Fackler <augie@google.com> [Thu, 14 Jun 2018 16:51:39 -0400] rev 38319
py3: two more passing tests from the ratchet in buildbot
Differential Revision: https://phab.mercurial-scm.org/D3736
Yuya Nishihara <yuya@tcha.org> [Thu, 14 Jun 2018 20:25:51 +0900] rev 38318
bdiff: one more safe call of bdiff_freehunks(NULL)
Yuya Nishihara <yuya@tcha.org> [Thu, 14 Jun 2018 20:25:16 +0900] rev 38317
bdiff: document that bdiff_freehunks() accepts NULL
blocks() of cext/bdiff.c may pass NULL on OOM.
Sune Foldager <cryo@cyanite.org> [Thu, 14 Jun 2018 13:44:42 +0200] rev 38316
hgweb: propagate http headers from ErrorResponse for web interface commands
This makes it possible for e.g. authorization hooks to provide appropriate
headers to make the web browser ask for credentials.
It's done in the same way as the existing code in wireprotoserver.py.
Yuya Nishihara <yuya@tcha.org> [Thu, 14 Jun 2018 20:29:27 +0900] rev 38315
py3: fix map() use in templatekw.showpredecessors()
Now it matters since hybrid.tobool() no longer consumes the generator.
Yuya Nishihara <yuya@tcha.org> [Thu, 14 Jun 2018 20:09:54 +0900] rev 38314
merge with stable
Martin von Zweigbergk <martinvonz@google.com> [Wed, 13 Jun 2018 14:28:39 -0700] rev 38313
templatefilters: rename commonprefix to commondir
Two reasons:
* It makes it clearer that it's not a generic common string
prefix (e.g. commonprefix(["bar", "baz"]) is not "ba", but "")
* If we ever want a filter for generic common string prefix,
then the name is now available for that.
"commondir" does not describe the prefix-ness, however. I'm happy to
rename it "commondirprefix" or "commonprefixdir" if others prefer.
Differential Revision: https://phab.mercurial-scm.org/D3731
Augie Fackler <augie@google.com> [Wed, 13 Jun 2018 10:24:44 -0400] rev 38312
bitmanipulation: fix undefined behavior in bit shift in getbe32
OSS-Fuzz caught this in its ubsan mode[0]. I'm not worried about a
security issue here because in practice this should work out the way
we naively expected, we're just making things explicit to the
compiler with the casts.
0: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=8876
Differential Revision: https://phab.mercurial-scm.org/D3729
Yuya Nishihara <yuya@tcha.org> [Wed, 13 Jun 2018 21:58:42 +0900] rev 38311
templatefilters: undeprecate hgdate
See the previous patch for why.
Backed out changeset 0fe65bb7e160