Matt Harbison <matt_harbison@yahoo.com> [Wed, 19 Sep 2018 23:54:16 -0400] rev 39719
py3: resolve Unicode issues around `hg serve` on Windows
Presumably we're going to want to use CreateProcessW(), and possibly get rid of
pycompat.getcwd() here (which maps to the DeprecationWarning causing
os.getcwdb()) to use os.getcwd() directly. But this was a minimal change to
get rid of some stacktraces in test-run-tests.t.
Matt Harbison <matt_harbison@yahoo.com> [Wed, 19 Sep 2018 21:41:58 -0400] rev 39718
run-tests: avoid os.getcwdb() on Windows
Any call to this issues a DeprecationWarning about the Windows bytes API being
deprecated. There are a handful of these calls in core, but test-run-tests.t
was littered with these, as it's printed everytime run-tests.py is launched.
I'm not sure what the long term strategy for Unicode on Windows in the test
runner is, but this seems no worse than the current conversion strategy.
Matt Harbison <matt_harbison@yahoo.com> [Wed, 19 Sep 2018 20:45:57 -0400] rev 39717
run-tests: quote PYTHON when spawning a subprocess
Same reason as
5abc47d4ca6b. This covers running *.py tests, as well as inline
python blocks. I didn't hit the path around line 3079, but it seems correct to
quote.
Augie Fackler <augie@google.com> [Mon, 17 Sep 2018 20:43:40 -0400] rev 39716
narrow: add test showing that local-to-local narrow clones don't work
It turns out they've never actually worked: prior to some recent
refactoring they just unintentionally followed the full-clone path,
which we unintentionally relied on in a test at Google.
Differential Revision: https://phab.mercurial-scm.org/D4640
Martin von Zweigbergk <martinvonz@google.com> [Wed, 19 Sep 2018 17:34:36 -0700] rev 39715
fastannotate: process files as they arrive
peer.commandexecutor()'s context manager waits for all responses to
arrive in its __exit__() method. We want to process the results as
they arrive, so we should do that inside the context manager
scope. Note that the futures' result() methods have been replaced to
make sure that the command executor's sendcommands() method is called
when the first future's result is requested, so we don't need to do
that.
A minor side-effect is that we can no longer easily tell when the
server has started sending us responses, so that long statement was
lost.
Differential Revision: https://phab.mercurial-scm.org/D4666
Matt Harbison <matt_harbison@yahoo.com> [Tue, 18 Sep 2018 22:14:03 -0400] rev 39714
py3: make osenvironb a proxy for, instead of a copy of os.environ where needed
Without this, TESTDIR and a few other variables weren't defined in the *.t test.
I didn't bother implementing all of the view functions for simplicity. All that
is actually used is __{get,set}item__(), get() and pop(), but the rest seems
easy enough to add for futureproofing.
Sean Farley <sean@farley.io> [Tue, 22 May 2018 16:16:11 +0200] rev 39713
memctx: simplify _manifest with new revlog nodeids
This was originally written before we had modifiednodeid and
addednodeid, so we had to get the parents of the context, the data from
the function, and then hash that.
This is much more simple now and helps refactor more code later.
Sean Farley <sean@farley.io> [Tue, 22 May 2018 12:35:38 +0200] rev 39712
context: remove unused overlayfilectx (API)
It seems that this was maybe used in an extension but at this point
nothing in lfs, hg-experimental, or any other cursory repo looked at has
a reference to this class; so, for now, let's just remove it.
Sean Farley <sean@farley.io> [Mon, 11 Jun 2018 20:48:47 -0700] rev 39711
context: fix typo in workingcommitctx
This was probably a copy pasta error in
745e3b485632. Refactoring memctx
code exposed this bug.
Sean Farley <sean@farley.io> [Tue, 17 Jul 2018 17:16:22 -0700] rev 39710
filectx: fix return of renamed
How is this not blowing up everywhere?
It seems that filelog.renamed has always returned False (incorrectly a
boolean) instead of the assumed None. Tracing through history, you need
to skip over my move of code in 2013 by annotating from
896193a9cab4^
and you can see the original code is from 2007 (
180a3eee4b75) and that
ab9fa7a85dd9 broke this by assuming renamed was a bool (instead of
None).
Refactoring memctx code later exposed this bug.
Matt Harbison <matt_harbison@yahoo.com> [Wed, 19 Sep 2018 00:23:02 -0400] rev 39709
tests: glob over some quoting differences in test-narrow-widen-no-ellipsis.t
Matt Harbison <matt_harbison@yahoo.com> [Tue, 18 Sep 2018 23:56:38 -0400] rev 39708
py3: byteify contrib/check-config.py
The corresponding *.t still fails because of bytes (with a 'b' prefix) vs str
printing, but no longer crashes.
# skip-blame for b'' prefixing
Matt Harbison <matt_harbison@yahoo.com> [Tue, 18 Sep 2018 23:47:21 -0400] rev 39707
tests: quote PYTHON usage
Python3 defaults to installing under "Program Files".
Matt Harbison <matt_harbison@yahoo.com> [Tue, 18 Sep 2018 22:40:03 -0400] rev 39706
py3: add a missing b'' for Windows
I tried ./contrib/byteify-strings.py, but there were way too many changes (and
most looked wrong). This was hit with test-check-interfaces.py.
# skip-blame for b'' prefixes
Yuya Nishihara <yuya@tcha.org> [Mon, 03 Sep 2018 21:01:47 +0900] rev 39705
log: make changesetformatter pass in changectx to formatter
It wasn't necessary before, but user templates may have keywords that aren't
filled in by the changesetformatter.