518a5030acba98a4e267ca364929474063ba834d: histedit: have dropmissing abort on empty plan
Mateusz Kwapich <mitrandir@fb.com> - Sun, 13 Mar 2016 16:46:49 -0700 - rev 30821
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
histedit: have dropmissing abort on empty plan We noticed that many users have the intuition of laving the editor empty when they want to abort the operation. The fact that dropmissing allows user to delete all edited commits is not intuitive even for users that asked for it. Let's prevent people from this footgun.
aa440c3d7c5d2baafeb632ee35db4d917ed9cf83: streamclone: fix error when store files grow while stream cloning stable
Mads Kiilerich <madski@unity3d.com> - Sun, 13 Mar 2016 02:29:11 +0100 - rev 30820
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
streamclone: fix error when store files grow while stream cloning Effectively a backout of 9fea6b38a8da, but updated to using 'with'.
95163ababeb86d6ca889e5e57a0c4eadb77b53d8: tests: add test of stream clone of repo that is changing stable
Mads Kiilerich <madski@unity3d.com> - Sun, 13 Mar 2016 02:28:46 +0100 - rev 30819
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
tests: add test of stream clone of repo that is changing This reveals an error introduced by 9fea6b38a8da.
3bf2892f685f3e240768e2f3b109f4a61a7839d3: chgserver: handle ParseError during validate
Jun Wu <quark@fb.com> - Mon, 14 Mar 2016 12:52:35 +0000 - rev 30818
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
chgserver: handle ParseError during validate Currently the validate command in chgserver expects config can be loaded without issues but the config can be broken and chg will print a stacktrace instead of the parsing error, if a chg server is already running. This patch adds a handler for ParseError in validate and a new instruction "exit" to make the client exit without abortmsg. A test is also added to make sure it will behave as expected.
491eabd0df79ac5f9a0719cd1c26e480212457ba: dispatch: extract common logic for handling ParseError
Jun Wu <quark@fb.com> - Mon, 14 Mar 2016 12:32:09 +0000 - rev 30817
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
dispatch: extract common logic for handling ParseError The way ParseError is handled at two different places in dispatch.py is the same. Move common logic into _formatparse.
0747ef2c4ab25e6f0928143217588ad4f6698d9c: chgserver: resolve relative path before sending via system channel
Jun Wu <quark@fb.com> - Mon, 14 Mar 2016 11:23:04 +0000 - rev 30816
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
chgserver: resolve relative path before sending via system channel The chgserver may have a different cwd from the client because of the side effect of "--cwd" and other possible os.chdir done by extensions. Therefore relative paths can be misunderstood by the client. This patch solves it by expanding relative cwd path to absolute one before sending them via the 'S' channel. It can help chg to pass a testcase in test-alias.t later.
859af6e78368600f724ccc26397ec30b145bffdb: mercurial: use pure Python module policy on Python 3
Gregory Szorc <gregory.szorc@gmail.com> - Sat, 12 Mar 2016 13:19:19 -0800 - rev 30815
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
mercurial: use pure Python module policy on Python 3 The C extensions don't yet work with Python 3. Let's minimize the work required to get Mercurial running on Python 3 by always using the pure Python module policy on Python 3.
b957b4c6cad8f67f4a68935fe1c9300ec45b3755: chg: provide early exception to user
Yuya Nishihara <yuya@tcha.org> - Sat, 12 Mar 2016 22:17:30 +0900 - rev 30814
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
chg: provide early exception to user See the previous patch for details. Since the socket will be closed by the server, handleresponse() will never return: Traceback (most recent call last): ... chg: abort: failed to read channel
ff5f923fca3cce6c11edf3e48a9878f52959dacc: cmdserver: write early exception to 'e' channel in 'unix' mode
Yuya Nishihara <yuya@tcha.org> - Sat, 12 Mar 2016 22:03:30 +0900 - rev 30813
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
cmdserver: write early exception to 'e' channel in 'unix' mode In 'unix' mode, the server is typically detached from the console. Therefore a client couldn't see the exception that occurred while instantiating the server object. This patch tries to catch the early error and send it to 'e' channel even if the server isn't instantiated yet. This means the error may be sent before the initial hello message. So it's up to the client implementation whether to handle the early error message or error out as protocol violation. The error handling code is also copied to chgserver.py. I'll factor out them later if we manage to get chg passes the test suite.
ade330deb39a4d2b0bfe044196c87fc4c5fd69b2: contrib: make memory.py use absolute_import
Pulkit Goyal <7895pulkit@gmail.com> - Sun, 13 Mar 2016 01:32:42 +0530 - rev 30812
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
contrib: make memory.py use absolute_import
9e3ecb6f499537225f4871ceb3ffce812e9c65b0: check-code: use absolute_import and print_function
Pulkit Goyal <7895pulkit@gmail.com> - Sun, 13 Mar 2016 01:08:39 +0530 - rev 30811
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
check-code: use absolute_import and print_function
3c6e94d0811ce186094f8da72a297707bdc0426a: encoding: use range() instead of xrange()
Gregory Szorc <gregory.szorc@gmail.com> - Fri, 11 Mar 2016 21:27:26 -0800 - rev 30810
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
encoding: use range() instead of xrange() Python 3 doesn't have xrange(). Instead, range() on Python 3 is a generator, like xrange() is on Python 2. The benefits of xrange() over range() are when there are very large ranges that are too expensive to pre-allocate. The code here is only creating <128 values, so the benefits of xrange() should be negligible. With this patch, encoding.py imports safely on Python 3.
9bcbd941222561ae3abf3a40a484d2da7d8dccf0: encoding: make HFS+ ignore code Python 3 compatible
Gregory Szorc <gregory.szorc@gmail.com> - Fri, 11 Mar 2016 21:23:34 -0800 - rev 30809
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
encoding: make HFS+ ignore code Python 3 compatible unichr() doesn't exist in Python 3. chr() is the equivalent there. Unfortunately, we can't use chr() outright because Python 2 only accepts values smaller than 256. Also, Python 3 returns an int when accessing a character of a bytes type (s[x]). So, we have to ord() the values in the assert statement.
10252652c6e4f6861b5ea921adf3b5cb275ba4c2: extensions: factor import error reporting out
Pierre-Yves David <pierre-yves.david@fb.com> - Fri, 11 Mar 2016 10:28:58 +0000 - rev 30808
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
extensions: factor import error reporting out To clarify third party extensions lookup, we are about to add a third place where extensions are searched for. So we factor the error reporting logic out to be able to easily reuse it in the next patch.
d5512a0a8ad6ed260cb8eab84843d47d3048d500: extensions: extract the 'importh' closure as normal function
Pierre-Yves David <pierre-yves.david@fb.com> - Fri, 11 Mar 2016 10:24:54 +0000 - rev 30807
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
extensions: extract the 'importh' closure as normal function There is no reason for this to be a closure so we extract it for clarity.
3c90090320ad1c9017a9f14019a19f05442f8866: zeroconf: remove leftover camelcase identifier
Martin von Zweigbergk <martinvonz@google.com> - Fri, 11 Mar 2016 15:40:58 -0800 - rev 30806
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
zeroconf: remove leftover camelcase identifier eb9d0e828c30 (zeroconf: remove camelcase in identifiers, 2016-03-01) forgot one occurrence of "numAuthorities", which makes test-paths.t fail for me. I don't even know what zeroconf is, but this patch seems obviously correct and it fixes the failing test case.
138ec8835e63006158ba0b87e457dc4a50892546: hg: acquire wlock while updating the working directory via updatetotally
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> - Sat, 12 Mar 2016 04:35:42 +0900 - rev 30805
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
hg: acquire wlock while updating the working directory via updatetotally updatetotally() might be invoked outside wlock scope (e.g. invocation via postincoming() at "hg unbundle" or "hg pull"). In such case, acquisition of wlock is needed for consistent view, because parallel "hg update" and/or "hg bookmarks" might change working directory status while executing updatetotally(). Strictly speaking, truly consistent updating should acquire also store lock, because active bookmark might be moved to another one outside wlock scope (e.g. pulling from other repository causes updating current active one). Acquisition of wlock in this patch ensures consistency in as same level as past "hg update".
e0d19d95560888a742a47a6956b7438acee26476: commands: add postincoming docstring for explanation of arguments
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> - Sat, 12 Mar 2016 04:35:42 +0900 - rev 30804
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
commands: add postincoming docstring for explanation of arguments
66513f6ca038aec840b91febcb2f40f627562cfd: commands: centralize code to update with extra care for non-file components
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> - Sat, 12 Mar 2016 04:35:42 +0900 - rev 30803
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
commands: centralize code to update with extra care for non-file components This patch centralizes similar code paths to update the working directory with extra care for non-file components (e.g. bookmark) into newly added function updatetotally(). 'if True' at the beginning of updatetotally() is redundant at this patch, but useful to reduce amount of changes in subsequent patch.
2e1bceeea5204ef59e785093b8e5b6706ed146f4: update: omit redundant activating message for already active bookmark
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> - Sat, 12 Mar 2016 04:35:42 +0900 - rev 30802
Push 208 by gszorc@mozilla.com at Sat, 19 Mar 2016 01:42:47 +0000
update: omit redundant activating message for already active bookmark This patch also adds "hg bookmarks" invocation into tests, where redundant message is omitted but bookmark activity isn't clear from context.
(0) -30000 -10000 -1000 -300 -100 -20 +20 +50 +100 +300 +1000 +10000 tip