Sat, 19 Mar 2016 16:43:16 -0400 mpatch: un-nest the move() method
Augie Fackler <augie@google.com> [Sat, 19 Mar 2016 16:43:16 -0400] rev 28588
mpatch: un-nest the move() method This helps the code read a little more clearly.
Sat, 19 Mar 2016 16:37:30 -0400 mpatch: move pull() method to top level
Augie Fackler <augie@google.com> [Sat, 19 Mar 2016 16:37:30 -0400] rev 28587
mpatch: move pull() method to top level There was no need for this to be nested.
Thu, 17 Mar 2016 18:27:48 +0000 chgserver: use old ui.system if fout is not stdout or needs to be captured
Jun Wu <quark@fb.com> [Thu, 17 Mar 2016 18:27:48 +0000] rev 28586
chgserver: use old ui.system if fout is not stdout or needs to be captured Before this patch, chgui will override the system method, forwarding every process execution to the client so sessions and process groups can work as expected. But the chg client will just use stdout, if ui.fout is not stdout or if the output is set to be captured to safe._buffers, the client will not behave correctly. This can happen especially with code prepending "remote:". For example, bundle2 uses ui.pushbuffer, and sshpeer sets fout to ferr. We may have trouble with interactive commands in the fout set to ferr case but if it really bites us, we can always send file descriptors to the client. This patch adds a check to detect the above situations and fallback to the old ui.system if so. It will make chg happy with test-bundle2-exchange.t, test-phases-exchange.t, test-ssh-bundle1.t and test-ssh.t.
Sat, 12 Mar 2016 14:04:57 -0800 node: use byte literals to construct nullid and wdirid
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 12 Mar 2016 14:04:57 -0800] rev 28585
node: use byte literals to construct nullid and wdirid Python 3's hex() insists on operating on bytes. This patch gives it what it wants. '' and b'' in Python 2 are equivalent, so this has no impact on Python 2.
Sat, 12 Mar 2016 14:05:23 -0800 tests: try to import modules with Python 3
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 12 Mar 2016 14:05:23 -0800] rev 28584
tests: try to import modules with Python 3 All of mercurial.* is now using absolute_import. Most of mercurial.* is able to ast parse with Python 3. The next big hurdle is being able to import modules using Python 3. This patch adds testing of hgext.* and mercurial.* module imports in Python 3. As the new test output shows, most modules can't import under Python 3. However, many of the failures are due to a common problem in a highly imported module (e.g. the bytes vs str issue in node.py).
Fri, 18 Mar 2016 16:15:12 -0700 tests: perform an ast parse with Python 3
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 18 Mar 2016 16:15:12 -0700] rev 28583
tests: perform an ast parse with Python 3 Previously, test-check-py3-compat.t parsed Python files with Python 2 and looked for known patterns that are incompatible with Python 3. Now that we have a mechanism for invoking Python 3 interpreters from tests, we can expand check-py3-compat.py and its corresponding .t test to perform an additional AST parse using Python 3. As the test output shows, we identify a number of new parse failures on Python 3. There are some redundant warnings for missing parentheses for the print function. Given the recent influx of patches around fixing these, the redundancy shouldn't last for too long.
Fri, 18 Mar 2016 16:17:56 -0700 run-tests: add --with-python3 to define a Python 3 interpreter
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 18 Mar 2016 16:17:56 -0700] rev 28582
run-tests: add --with-python3 to define a Python 3 interpreter Currently, very few parts of Mercurial run under Python 3, notably the test harness. We want to write tests that run Python 3. For example, we want to extend test-check-py3-compat.t to parse and load Python files. However, we have a problem: finding appropriate files requires running `hg files` and this requires Python 2 until `hg` works with Python 3. As a temporary workaround, we add --with-python3 to the test harness to allow us to define the path to a Python 3 interpreter. This interpreter is made available to the test environment via $PYTHON3 so tests can run things with Python 3 while the test harness and `hg` invocations continue to run from Python 2. To round out the feature, a "py3exe" hghave check has been added.
Fri, 18 Mar 2016 11:06:03 -0700 crecord: add docblock to handlekeypressed
Ryan McElroy <rmcelroy@fb.com> [Fri, 18 Mar 2016 11:06:03 -0700] rev 28581
crecord: add docblock to handlekeypressed This information is pretty useful when reading the code.
Fri, 18 Mar 2016 11:06:03 -0700 crecord: fix docblock indentation
Ryan McElroy <rmcelroy@fb.com> [Fri, 18 Mar 2016 11:06:03 -0700] rev 28580
crecord: fix docblock indentation
Fri, 18 Mar 2016 11:06:03 -0700 crecord: clean up empty lines at ends of docblocks
Ryan McElroy <rmcelroy@fb.com> [Fri, 18 Mar 2016 11:06:03 -0700] rev 28579
crecord: clean up empty lines at ends of docblocks
Thu, 17 Mar 2016 00:36:01 +0000 filemerge: indicate that local/other are p1/p2
timeless <timeless@mozdev.org> [Thu, 17 Mar 2016 00:36:01 +0000] rev 28578
filemerge: indicate that local/other are p1/p2
Sat, 19 Mar 2016 10:10:09 -0700 sslutil: use preferred formatting for import syntax
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 19 Mar 2016 10:10:09 -0700] rev 28577
sslutil: use preferred formatting for import syntax
Sat, 19 Mar 2016 08:28:24 -0700 largefiles: add some docstrings
Mads Kiilerich <madski@unity3d.com> [Sat, 19 Mar 2016 08:28:24 -0700] rev 28576
largefiles: add some docstrings
Sat, 19 Mar 2016 08:27:54 -0700 largefiles: drop partial support for not having a user cache
Mads Kiilerich <madski@unity3d.com> [Sat, 19 Mar 2016 08:27:54 -0700] rev 28575
largefiles: drop partial support for not having a user cache 971c55ce03b8 introduced support for not having a "global" user cache. In the rare cases where the environment didn't provide the location of the current home directory, the usercachepath function could return None. That functionality has since bitrotten and several code paths did not correctly check for usercachepath returning None: $ HOME= XDG_CACHE_HOME= hg up --config extensions.largefiles= getting changed largefiles abort: unknown largefiles usercache location Dropping the partial support for it is thus not really a backward compatibility breaking change. Thus: consistently fail early if the usercache location is unknown. It is relevant to be able to control where the largefiles are stored and how they propagate, but that should probably be done differently. The dysfunctional code just gets in the way.
Sat, 19 Mar 2016 08:23:55 -0700 largefiles: refactor usercachepath - extract user cache path function
Mads Kiilerich <madski@unity3d.com> [Sat, 19 Mar 2016 08:23:55 -0700] rev 28574
largefiles: refactor usercachepath - extract user cache path function It is convenient to have the user cache location explicitly.
Wed, 10 Feb 2016 02:23:27 +0100 shelve: adds restoring newly created branch (issue5048) (BC)
liscju <piotr.listkiewicz@gmail.com> [Wed, 10 Feb 2016 02:23:27 +0100] rev 28573
shelve: adds restoring newly created branch (issue5048) (BC) Before this patch shelve never preserved branch information, so after applying unshelve branch was the same as it was on working copy no matter in which branch shelve took place. This patch makes bare shelving(with no files specified, without interactive,include and exclude option) remembers information if the working directory was on newly created branch ,in other words working directory was on different branch than its first parent. In this situation unshelving restores branch information to the working directory.
Mon, 07 Mar 2016 22:58:11 +0100 shelve: make non bare shelve not saving branch information in bundle
liscju <piotr.listkiewicz@gmail.com> [Mon, 07 Mar 2016 22:58:11 +0100] rev 28572
shelve: make non bare shelve not saving branch information in bundle This patch prepares for restoring newly created branch only on bare shelve later because information about new-branch will be preserved only when shelve was bare and working copy branch was different than branch of its parent. In other case information about new-branch will be gone, so unshelve will not recognise that shelve was made on new-branch and it will not restore branch information from the bundle to the working directory.
Sat, 12 Mar 2016 18:36:31 +0100 shelve: preserve newly created branch on non-bare shelve in wctx (BC)
liscju <piotr.listkiewicz@gmail.com> [Sat, 12 Mar 2016 18:36:31 +0100] rev 28571
shelve: preserve newly created branch on non-bare shelve in wctx (BC) Before this patch current branch in working context wasnt preserved after shelve, this patch makes it restore after update.
Fri, 18 Mar 2016 16:14:57 -0400 crecord: rewrite a comment about filtering patches
Jordi Gutiérrez Hermoso <jordigh@octave.org> [Fri, 18 Mar 2016 16:14:57 -0400] rev 28570
crecord: rewrite a comment about filtering patches I couldn't parse the previous version. I think the rewrite better expresses the intent of that comment.
Thu, 17 Mar 2016 20:52:06 +0000 run-tests: teach _processoutput to handle multiple lines of churn
timeless <timeless@mozdev.org> [Thu, 17 Mar 2016 20:52:06 +0000] rev 28569
run-tests: teach _processoutput to handle multiple lines of churn Instead of treating expected output as happening in a precise order, and assuming that if a line is missing it will never happen, assume that expected output is a prioritized list of likely matching lines. This means that if: foo/bar (glob) baz/bad (glob) changes to: baz/bad foo/bar instead of generating: baz/bad foo/bar For which we've lost both (glob) markers, we will match both lines and generate: baz/bad (glob) foo/bar (glob) This retains any special annotations we have for lines.
Thu, 17 Mar 2016 20:54:36 +0000 run-tests: indent _processoutput to aid readability for next patch
timeless <timeless@mozdev.org> [Thu, 17 Mar 2016 20:54:36 +0000] rev 28568
run-tests: indent _processoutput to aid readability for next patch The next commit will loop over the expected[pos] list, this change makes that change easier to review.
Wed, 16 Mar 2016 23:12:43 +0000 namespaces: fix name/node confusion
timeless <timeless@mozdev.org> [Wed, 16 Mar 2016 23:12:43 +0000] rev 28567
namespaces: fix name/node confusion There was a lot of copy/paste here.
Sun, 13 Mar 2016 23:27:27 +0900 tests: add test for "log -r wdir() -p" (issue4871)
Yuya Nishihara <yuya@tcha.org> [Sun, 13 Mar 2016 23:27:27 +0900] rev 28566
tests: add test for "log -r wdir() -p" (issue4871) The issue has been fixed by 93bcc73df8d5, "cmdutil.changeset_printer: pass context into showpatch()". This patch adds test to prevent future regression.
Sun, 13 Mar 2016 23:21:45 +0900 tests: include modified/added/removed files in "log -r wdir()" output
Yuya Nishihara <yuya@tcha.org> [Sun, 13 Mar 2016 23:21:45 +0900] rev 28565
tests: include modified/added/removed files in "log -r wdir()" output This patch prepares for the test of "hg log -r wdir() -p".
Wed, 16 Mar 2016 04:35:03 +0530 contrib: revsetbenchmarks use absolute_import and print_function
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 16 Mar 2016 04:35:03 +0530] rev 28564
contrib: revsetbenchmarks use absolute_import and print_function
Wed, 16 Mar 2016 04:23:58 +0530 contrib: synthrepo use absolute_import
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 16 Mar 2016 04:23:58 +0530] rev 28563
contrib: synthrepo use absolute_import
Wed, 16 Mar 2016 04:13:28 +0530 contrib: python-hook-examples use absolute_import
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 16 Mar 2016 04:13:28 +0530] rev 28562
contrib: python-hook-examples use absolute_import
Wed, 16 Mar 2016 04:12:16 +0530 contrib: make perf.py use absolute_import
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 16 Mar 2016 04:12:16 +0530] rev 28561
contrib: make perf.py use absolute_import
Mon, 14 Mar 2016 20:20:22 +0100 largefiles: replace invocation of os.path module by vfs in lfutil.py
liscju <piotr.listkiewicz@gmail.com> [Mon, 14 Mar 2016 20:20:22 +0100] rev 28560
largefiles: replace invocation of os.path module by vfs in lfutil.py Replaces invocations os.path functions to methods in vfs. Unfortunately (in my view) this makes code less readable, because instead of using clear variable names with path it needs to replace them with vfs(..). I need guidance how to make such transition look more readable. For example in this patch there is example with few places with wvfs.join(standindir), standindir before this patch was absolute path, in this it is changed to relative because it is used also in expression wvfs.join(standindir, pat).
Sun, 13 Mar 2016 23:16:44 +0100 largefiles: replace invocation of os.path module by vfs in lfcommands.py
liscju <piotr.listkiewicz@gmail.com> [Sun, 13 Mar 2016 23:16:44 +0100] rev 28559
largefiles: replace invocation of os.path module by vfs in lfcommands.py
(0) -10000 -3000 -1000 -300 -100 -50 -30 +30 +50 +100 +300 +1000 +3000 +10000 tip