Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 17:16:13 -0400] rev 33992
contrib: add test-check-module-imports.t to the Python 3 whitelist
This has the benefit of also catching most (if not all!) old-style
print statements and except statements.
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 17:15:20 -0400] rev 33991
tests: update test-obsolete to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 17:15:14 -0400] rev 33990
tests: update test-largefiles-cache to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 17:15:09 -0400] rev 33989
tests: update test-inherit-mode to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 17:11:30 -0400] rev 33988
tests: update test-relink to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:59:26 -0400] rev 33987
tests: update test-strip to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:59:21 -0400] rev 33986
tests: update test-share to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:59:17 -0400] rev 33985
tests: update test-requires to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:59:12 -0400] rev 33984
tests: update test-progress to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:59:06 -0400] rev 33983
tests: update test-patchbomb to pass our import checker
Augie Fackler <augie@google.com> [Mon, 28 Aug 2017 17:40:03 -0400] rev 33982
merge with stable
Michael Bolin <mbolin@fb.com> [Wed, 23 Aug 2017 18:24:57 +0000] rev 33981
dirstate: perform transactions with _copymap using single call, where possible
This replaces patterns such as this:
```
if f in self._copymap:
del self._copymap[f]
```
with this:
```
self._copymap.pop(f, None)
```
Although eliminating the extra lookup/call may be a negligible performance win
in the standard dirstate, alternative implementations, such as
[sqldirstate](https://bitbucket.org/facebook/hg-experimental/src/default/sqldirstate/)
may see a bigger win where each of these calls results in an RPC,
so the savings is greater.
Test Plan:
`make tests`
Differential Revision: https://phab.mercurial-scm.org/D493
Jun Wu <quark@fb.com> [Thu, 24 Aug 2017 20:25:16 -0700] rev 33980
pull: do not prompt "hg update" if update.requiredest is set
Previously, after pull, we show:
(run 'hg update' to get a working copy)
unconditionally. People might run `hg update` and get an exception if
`update.requiredest` is set, and get a bit frustrated. This patch changes
the code to not prompt `hg update` in that case.
Differential Revision: https://phab.mercurial-scm.org/D516
Martin von Zweigbergk <martinvonz@google.com> [Fri, 25 Aug 2017 22:05:10 -0700] rev 33979
changelog: abort on attempt to write wdir revision
Similar to the previous patch which prevented writing the null
revision to any revlog, but this is for the wdir revision.
Thanks to Jun for pointing this out.
Differential Revision: https://phab.mercurial-scm.org/D524
Jun Wu <quark@fb.com> [Thu, 24 Aug 2017 17:44:08 -0700] rev 33978
phabsend: show associated Differential Revisions with --confirm
Often people running `phabsend --confirm` just want to check whether a
commit will trigger a creation of new Differential Revision, or update an
existing one. This patch implements that. The `--confirm` message was
changed to use node instead of revision number to be consistent with what
`phabsend` outputs.
An example output looks like:
D487 -
a80f447973a0 test-extension: enable demandimport explicitly
D494 -
cf440ea6e47e test-casecollision-merge: fix the test
NEW -
0a6b97147128 phabsend: polish the docstring a bit
Send the above changes to https://phab.mercurial-scm.org/ (yn)?
Differential Revision: https://phab.mercurial-scm.org/D514
Jun Wu <quark@fb.com> [Thu, 24 Aug 2017 17:31:33 -0700] rev 33977
phabsend: print the actual URL with --confirm
Sometimes people have multiple Phabricator endpoints set in multiple repos.
It seems better for `--confirm` to prompt about the Phabricator endpoint
patches being sent to.
Differential Revision: https://phab.mercurial-scm.org/D513
Jun Wu <quark@fb.com> [Thu, 24 Aug 2017 17:25:18 -0700] rev 33976
phabsend: detect patch change with larger context
Previously phabsend has an optimization that will skip uploading a diff if
the patch (with context line number = 1) remains unchanged. That could be
confusing:
Aug 24 15:52:28 <martinvonz> phillco: something is wrong with phabricator'your patches/
Aug 24 15:52:45 <martinvonz> ... with phabricator's view of your patches again
Aug 24 15:53:38 <martinvonz> if i phabread D388 and then D399, i get a version of filemerge.py with "a, b, c" somewhere on line 344, which is not what phabricator shows for D399
Aug 24 15:53:51 <martinvonz> junw: maybe that's more for you ^
Fix that by checking context with 32767 lines, which is the same as what
will be actually sent.
Differential Revision: https://phab.mercurial-scm.org/D512
Jun Wu <quark@fb.com> [Thu, 24 Aug 2017 16:52:28 -0700] rev 33975
phabsend: make --amend the default
The local tag feature was intended to make `phabsend` closer to `email`
workflow. But its experience is not great in multiple ways:
- after rebase, obsoleted changesets are still visible because of tags
- without obsstore, the association information will get lost
- even with obsstore, things could go wrong with graft, export+import
- no easy way to tell which Differential Revision a commit is associated
Therefore make `--amend` the default. People wanting the old behavior can
use `--no-amend`.
Differential Revision: https://phab.mercurial-scm.org/D511
Jun Wu <quark@fb.com> [Thu, 24 Aug 2017 17:26:10 -0700] rev 33974
phabsend: polish the docstring a bit
Differential Revision: https://phab.mercurial-scm.org/D510
Peter Vitt <peter.vitt2@uni-siegen.de> [Mon, 28 Aug 2017 13:43:31 +0200] rev 33973
record: make the m key open an editor for the commit message (
issue5667)
With the former crecord extension, the user could edit the commit
message while he was de-/selecting hunks. By pressing 'm', an editor
showed up to edit the commit message.
With record being part of mercurial, this feature is not available
anymore. However, the help text still mentions it.
As the infrastructure needed is still present, this feature is quite
easily ported from the crecord extension to mercurial.
It seems there is no test coverage for record ui, so I tested this patch
manually on my local machine.
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:59:02 -0400] rev 33972
tests: update test-patch to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:58:57 -0400] rev 33971
tests: update test-pager to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:58:52 -0400] rev 33970
tests: update test-obsolete to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:58:47 -0400] rev 33969
tests: update test-notify to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:58:43 -0400] rev 33968
tests: update test-merge1 to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:58:37 -0400] rev 33967
tests: update test-merge-symlinks to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:58:28 -0400] rev 33966
tests: update test-logtoprocess to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:58:22 -0400] rev 33965
tests: update test-log to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:58:13 -0400] rev 33964
tests: update test-log-exthook to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:58:07 -0400] rev 33963
tests: update test-largefiles-wireproto to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:57:37 -0400] rev 33962
tests: update test-largefiles-small-disk to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:51:47 -0400] rev 33961
tests: update test-keyword to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:51:37 -0400] rev 33960
tests: update test-impexp-branch to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:51:30 -0400] rev 33959
tests: update test-help to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:51:24 -0400] rev 33958
tests: update test-hardlinks to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:51:18 -0400] rev 33957
tests: update test-glog to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:51:12 -0400] rev 33956
tests: update test-fncache to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:51:06 -0400] rev 33955
tests: update test-eol to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:50:59 -0400] rev 33954
tests: update test-dirstate to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:50:35 -0400] rev 33953
tests: update test-debugcommands to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:50:27 -0400] rev 33952
tests: update test-convert-clonebranches to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:50:01 -0400] rev 33951
tests: update test-commit to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:49:54 -0400] rev 33950
tests: update test-command-template to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:49:20 -0400] rev 33949
tests: update test-chg to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:05:51 -0400] rev 33948
tests: update test-bundle2-format to pass import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:04:36 -0400] rev 33947
tests: update test-bundle2-pushback to pass the import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:04:14 -0400] rev 33946
tests: update test-bookmarks to pass the import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 14:58:39 -0400] rev 33945
tests: update test-bisect to pass our module import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 14:58:21 -0400] rev 33944
tests: update test-archive to pass our module import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 14:58:10 -0400] rev 33943
tests: update test-annotate to pass our module import checker
Boris Feld <boris.feld@octobus.net> [Mon, 03 Jul 2017 03:56:53 +0200] rev 33942
obsolete: fix old typo
Clean an old typo in successorssets.
Differential Revision: https://phab.mercurial-scm.org/D531
Boris Feld <boris.feld@octobus.net> [Mon, 03 Jul 2017 03:54:24 +0200] rev 33941
obsolete: move merge logic on the smaller object
Refactor some logic in _succs in order to clean successorssets code.
Differential Revision: https://phab.mercurial-scm.org/D530
Rishabh Madan <rishabhmadan96@gmail.com> [Mon, 28 Aug 2017 04:11:58 +0530] rev 33940
releasenotes: view admonition titles using -l flag
Since this extension is fairly new for almost all the contributors, remembering
the admonition (with titles) is difficult. The list (-l) flag provides
a list of all the active admonitions along with titles.
For usage, hg releasenotes -l returns the list.
Differential Revision: https://phab.mercurial-scm.org/D454
Martin von Zweigbergk <martinvonz@google.com> [Sat, 26 Aug 2017 16:00:07 -0700] rev 33939
tests: move baduisetup test inside "#if demandimport"
The test case depends on the failure happening not at import time, but
at uisetup() time, so it doesn't make sense when demandimport is
disabled.
There was already a section for testing demandimport stuff, so I moved
it inside that existing section. As part of the move, I enabled the
extension using '--config' so subsequent tests don't get the bad
extension enabled.
Differential Revision: https://phab.mercurial-scm.org/D526
Martin von Zweigbergk <martinvonz@google.com> [Fri, 25 Aug 2017 15:50:07 -0700] rev 33938
revlog: abort on attempt to write null revision
My repo got corrupted yesterday by something that ended up writing the
null revision to the revlog (nullid hash, not nullrev index, of
course). We use many extensions internally (narrowhg, remotefilelog,
evolve, internal extensions) and treemanifests are on. The null
revision was written to the changelog, the root manifest log, and one
subdirectory manifest log. I have no idea exactly why the null
revision was written, but it seems cheap enough to check that we
should fail instead of corrupting the repo.
Differential Revision: https://phab.mercurial-scm.org/D522
Martin von Zweigbergk <martinvonz@google.com> [Tue, 22 Aug 2017 23:39:05 -0700] rev 33937
context: remove unnecessary default values for matchers (API)
ctx._dirstatestatus() is called only from workingctx._buildstatus()
and that function, in turn, is called only from
basectx.status(). basectx.status() will always pass a matcher to
_buildstatus(), so there's no need to handle a None matcher there.
Differential Revision: https://phab.mercurial-scm.org/D492
Martin von Zweigbergk <martinvonz@google.com> [Tue, 22 Aug 2017 23:27:55 -0700] rev 33936
context: always pass a matcher into _matchstatus() (API)
This just makes it a little easier to follow and removes the need to
call the superclass's method in workingctx.
Differential Revision: https://phab.mercurial-scm.org/D491
Jun Wu <quark@fb.com> [Wed, 23 Aug 2017 11:30:25 -0700] rev 33935
test-casecollision-merge: fix the test
D30 (
055fee3547df) makes the error message unpredictable, therefore the fix.
Differential Revision: https://phab.mercurial-scm.org/D494
Jun Wu <quark@fb.com> [Sun, 20 Aug 2017 09:46:27 -0700] rev 33934
run-tests: make per-line condition support testcase names
7340465bd added multiple test cases support. The latter has a problem -
output lines cannot be made conditional with `#if`:
```
# COUNTEREXAMPLE: DOES NOT WORK
#testcases A B
$ command-foo
common ouput
#if A
A's ouput
#else
B's ouput
#endif
common ouput
```
That's not trivial to fix (even if it works in test, `run-tests.py -i` may
be suboptimal because diff algorithm does not know how to skip the `#if`
lines, even if it does, it may have trouble figuring out whether a changed
line belongs to inside a `#if` block or outside).
Matching output lines conditionally is useful.
4eec2f04a added per-line
condition support for hghave. This patch extends that to also support test
case names.
Differential Revision: https://phab.mercurial-scm.org/D466
Phil Cohen <phillco@fb.com> [Fri, 25 Aug 2017 13:49:17 -0700] rev 33933
simplemerge: refactor _picklabels to be more compact
Use @martinvonz's suggestion from D376.
Differential Revision: https://phab.mercurial-scm.org/D521
Phil Cohen <phillco@fb.com> [Fri, 25 Aug 2017 13:49:16 -0700] rev 33932
simplemerge: remove check for null context
Differential Revision: https://phab.mercurial-scm.org/D520
Yuya Nishihara <yuya@tcha.org> [Thu, 24 Aug 2017 22:20:02 +0900] rev 33931
run-tests: pass unicode to Pygments
This is required on Python 3, and is more correct on Python 2 because
Pygments is a unicode library.
Yuya Nishihara <yuya@tcha.org> [Thu, 24 Aug 2017 22:15:40 +0900] rev 33930
run-tests: factor out highlight functions
Yuya Nishihara <yuya@tcha.org> [Thu, 24 Aug 2017 22:09:57 +0900] rev 33929
run-tests: include "\n" in formatted message instead of calling writeln()
So we don't have to strip "\n" from pygments output.
Yuya Nishihara <yuya@tcha.org> [Sun, 23 Apr 2017 13:08:58 +0900] rev 33928
encoding: add fast path of from/toutf8b() for ASCII strings
See the previous patch for why.
The added test seems not making much sense because ASCII strings should
never contain "\xed" and be valid UTF-8.
(with mercurial repo)
$ export HGRCPATH=/dev/null HGPLAIN=
$ hg log --time --config experimental.stabilization=all -Tjson > /dev/null
(original)
time: real 6.830 secs (user 6.740+0.000 sys 0.080+0.000)
time: real 6.690 secs (user 6.650+0.000 sys 0.040+0.000)
time: real 6.700 secs (user 6.640+0.000 sys 0.060+0.000)
(fast jsonescape)
time: real 5.630 secs (user 5.550+0.000 sys 0.070+0.000)
time: real 5.700 secs (user 5.650+0.000 sys 0.050+0.000)
time: real 5.690 secs (user 5.640+0.000 sys 0.050+0.000)
(this patch)
time: real 5.190 secs (user 5.120+0.000 sys 0.070+0.000)
time: real 5.230 secs (user 5.170+0.000 sys 0.050+0.000)
time: real 5.220 secs (user 5.150+0.000 sys 0.070+0.000)
Yuya Nishihara <yuya@tcha.org> [Sun, 23 Apr 2017 13:06:23 +0900] rev 33927
encoding: add fast path of from/tolocal() for ASCII strings
This is micro optimization, but seems not bad since to/fromlocal() is called
lots of times and isasciistr() is cheap and simple.
We boldly assume that any non-ASCII characters have at least one 8-bit byte.
This isn't true for some email character sets (e.g. ISO-2022-JP and UTF-7),
but I believe no such encodings are used as a platform default. Shift_JIS,
a major crap, is okay as it should have a leading byte in 0x80-0xff range.
(with mercurial repo)
$ export HGRCPATH=/dev/null HGPLAIN=
$ hg log --time --config experimental.stabilization=all > /dev/null
(original)
time: real 7.460 secs (user 7.420+0.000 sys 0.030+0.000)
time: real 7.670 secs (user 7.590+0.000 sys 0.080+0.000)
time: real 7.560 secs (user 7.510+0.000 sys 0.040+0.000)
(this patch)
time: real 7.340 secs (user 7.260+0.000 sys 0.060+0.000)
time: real 7.260 secs (user 7.210+0.000 sys 0.030+0.000)
time: real 7.310 secs (user 7.260+0.000 sys 0.060+0.000)
Yuya Nishihara <yuya@tcha.org> [Sun, 23 Apr 2017 12:59:42 +0900] rev 33926
encoding: add function to test if a str consists of ASCII characters
Most strings are ASCII. Let's optimize for it.
Using uint64_t is slightly faster than uint32_t on 64bit system, but there
isn't huge difference.
Yuya Nishihara <yuya@tcha.org> [Sun, 23 Apr 2017 14:47:52 +0900] rev 33925
encoding: add fast path of jsonescape() (
issue5533)
This isn't highly optimized as it copies characters one by one, but seems
reasonably simple and not slow.
(with mercurial repo)
$ export HGRCPATH=/dev/null HGPLAIN=
$ hg log --time --config experimental.stabilization=all -Tjson > /dev/null
(original)
time: real 6.830 secs (user 6.740+0.000 sys 0.080+0.000)
time: real 6.690 secs (user 6.650+0.000 sys 0.040+0.000)
time: real 6.700 secs (user 6.640+0.000 sys 0.060+0.000)
(this patch)
time: real 5.630 secs (user 5.550+0.000 sys 0.070+0.000)
time: real 5.700 secs (user 5.650+0.000 sys 0.050+0.000)
time: real 5.690 secs (user 5.640+0.000 sys 0.050+0.000)
Yuya Nishihara <yuya@tcha.org> [Sun, 23 Apr 2017 16:10:51 +0900] rev 33924
encoding: extract stub for fast JSON escape
This moves JSON character maps to pure/charencode.py because they will be
used only when the fast-path fails.
Jun Wu <quark@fb.com> [Thu, 24 Aug 2017 21:43:54 -0700] rev 33923
journal: do not use atomictemp (
issue5338)
Writing journal files using `atomictemp` leads to quadratic performance that
could be problematic if automation runs many commands. Other logs like
blackbox does not use atomictemp, and journal logs are not critical for repo
correctness. So let's make them non-atomictemp.
Differential Revision: https://phab.mercurial-scm.org/D517
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 14:26:25 -0400] rev 33922
tests: update test-commandserver to pass our import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:37:56 -0400] rev 33921
tests: add blank output lines to test-commandserver
This helps the import checker notice when a Python heredoc has
ended. It's not perfect, but it gets nasty quick and I think the
better fix would be to add a real parser for .t-tests, which will have
to wait.
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:37:06 -0400] rev 33920
contrib: make import-checker agree more with run-tests about heredocpy
run-tests.py and import-checker.py take wholly different approaches to
.t-tests, and the result was that they had different notions about
when a Python heredoc had ended, leading to conflicts. This resolves
part of the issue, and the rest I can deal with by tweaking the one
offending test file.
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:28:54 -0400] rev 33919
contrib: add bzrlib to list of packages from which we import symbols
Helps some tests pass the import checker.
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:50:53 -0400] rev 33918
tests: ensure demandimport test uses absolute_import
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:16:58 -0400] rev 33917
tests: blacklist test-demandimport from test-check-module-imports
It just does too much weird import stuff to have a hope of passing the
checks.
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 15:16:09 -0400] rev 33916
tests: sort excluded test files in test-check-module-imports
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 14:25:06 -0400] rev 33915
contrib: allow symbol imports from hgclient for tests
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 14:15:16 -0400] rev 33914
tests: blacklist some more entries in module import checks
David Demelier <markand@malikania.fr> [Thu, 24 Aug 2017 09:23:06 +0200] rev 33913
bookmarks: allow deleting active bookmark using '.'
Boris Feld <boris.feld@octobus.net> [Thu, 17 Aug 2017 18:26:11 +0200] rev 33912
template: add minimal obsfate template function
The goal of this series is to have templates capable of displaying the
evolution of a changeset in a clean and human-readable way.
Add the succsandmarkers template return successors and markers so it can be
used separately like this:
> {succsandmarkers % "{get(succsandmarkers, "markers")|json};"}
The following patches will add template functions that takes successors and
markers as inputs and compute various obsfate fields from them.
Boris Feld <boris.feld@octobus.net> [Mon, 03 Jul 2017 03:27:58 +0200] rev 33911
obsolete: track markers in _succs
We now also store markers in _succs. It will be useful for the obsfate template that
will use them to display more meaningful information like the list of users
that have evolved a changeset into its successors.
Boris Feld <boris.feld@octobus.net> [Mon, 03 Jul 2017 03:13:17 +0200] rev 33910
obsolete: add an explicit '_succs.copy()' method
Mimic the standard API for copying in the _succs class, it makes the code
slightly cleaner and will be needed later for copying markers at the same time
than copying the list content.
Boris Feld <boris.feld@octobus.net> [Mon, 03 Jul 2017 00:53:55 +0200] rev 33909
obsolete: introduce a _succs class
It will be useful later when we will be adding markers to _succs in order to
represent a successorset with the list of markers from the root to each
successors sets. This information will be needed for the obsfate template I will
introduce.
Makes it a subclass of list so all callers will continue to work.
Phil Cohen <phillco@fb.com> [Thu, 24 Aug 2017 21:30:51 -0700] rev 33908
simplemerge: simplify code now that we always write to a context
There's no need for an `out` abstraction between files and contexts anymore.
Differential Revision: https://phab.mercurial-scm.org/D383
Phil Cohen <phillco@fb.com> [Thu, 24 Aug 2017 21:30:51 -0700] rev 33907
simplemerge: make context parameters non-optional
Also update the function docstring.
Differential Revision: https://phab.mercurial-scm.org/D382
Phil Cohen <phillco@fb.com> [Thu, 24 Aug 2017 21:30:51 -0700] rev 33906
simplemerge: stop accepting, and passing, file parameters
Differential Revision: https://phab.mercurial-scm.org/D381
Phil Cohen <phillco@fb.com> [Thu, 24 Aug 2017 21:30:37 -0700] rev 33905
simplemerge: stop reading from, and writing to, files
We now use contexts first for everything and also pass them everywhere.
Differential Revision: https://phab.mercurial-scm.org/D380
Phil Cohen <phillco@fb.com> [Thu, 24 Aug 2017 21:30:37 -0700] rev 33904
simplemerge: use context paths for default labels instead of file paths
This is the last place we used the filepath arguments without first using the
context version.
Differential Revision: https://phab.mercurial-scm.org/D379
Phil Cohen <phillco@fb.com> [Thu, 24 Aug 2017 21:30:37 -0700] rev 33903
contrib: make simplemerge script pass context-like objects
`simplemerge()` will soon require context-like objects to work. Create a simple
context-like object that wraps the requested files and can be passed to the new
API.
Differential Revision: https://phab.mercurial-scm.org/D378
Phil Cohen <phillco@fb.com> [Thu, 24 Aug 2017 21:26:40 -0700] rev 33902
simplemerge: use `ctx.decoddeddata()` instead of `repo.wreaddata`
This eliminates the need for the `repo` object.
Differential Revision: https://phab.mercurial-scm.org/D435
Phil Cohen <phillco@fb.com> [Thu, 24 Aug 2017 21:26:40 -0700] rev 33901
context: add `decodeddata()` to basefilectx
This will be used as an abstraction by simplemerge to get the data it used to
read off the filesystem.
Differential Revision: https://phab.mercurial-scm.org/D434
David Demelier <markand@malikania.fr> [Mon, 21 Aug 2017 08:52:46 +0200] rev 33900
bookmarks: allow renaming active bookmark using '.'
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 14:14:52 -0400] rev 33899
i18n: update check-translation script to pass import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 14:14:34 -0400] rev 33898
demandimportpy3: update to pass import checker
Augie Fackler <raf@durin42.com> [Tue, 22 Aug 2017 16:02:57 -0400] rev 33897
contrib: always treat importlib.* as stdlib