Thu, 20 Mar 2014 19:38:17 -0700 subrepo: convert matched string to integer before comparing Git version stable
Siddharth Agarwal <sid0@fb.com> [Thu, 20 Mar 2014 19:38:17 -0700] rev 20816
subrepo: convert matched string to integer before comparing Git version (1, '4') is greater than (1, 5) so the version check never actually worked.
Thu, 20 Mar 2014 19:37:01 -0700 subrepo: only retrieve the first two components of the Git version stable
Siddharth Agarwal <sid0@fb.com> [Thu, 20 Mar 2014 19:37:01 -0700] rev 20815
subrepo: only retrieve the first two components of the Git version This makes the version detection compatible with Git versions like '1.9-rc0'. We only cared about the first two components of the version anyway.
Tue, 18 Mar 2014 18:56:08 -0700 bundle2: force the first char of parameter to be an letter.
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 18 Mar 2014 18:56:08 -0700] rev 20814
bundle2: force the first char of parameter to be an letter. We need a case sensitive character to convey mandatory/advisory parameter semantic in a later patches.
Tue, 18 Mar 2014 18:40:31 -0700 bundle2: refuse empty parameter name
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 18 Mar 2014 18:40:31 -0700] rev 20813
bundle2: refuse empty parameter name The bundle2 now raise value error when seeing invalid parameter names. The first introduced rules is: no empty parameter. The test extension is improve to properly abort when ValueError are encountered.
Tue, 18 Mar 2014 17:43:08 -0700 bundle2: urlunquote stream parameter name and value during unbundling
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 18 Mar 2014 17:43:08 -0700] rev 20812
bundle2: urlunquote stream parameter name and value during unbundling Align to new escaping used during bundling.
Tue, 18 Mar 2014 17:38:11 -0700 bundle2: urlquote stream parameter name and value
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 18 Mar 2014 17:38:11 -0700] rev 20811
bundle2: urlquote stream parameter name and value This introduces support for arbitrary characters in stream parameters name and value. The urlquote format has been chosen because it is: - simple, - standard, - no-op on simple alphanumerical entry.
Tue, 18 Mar 2014 16:12:33 -0700 bundle2: support for unbundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 18 Mar 2014 16:12:33 -0700] rev 20810
bundle2: support for unbundling parameter value The unbundler now understand parameter value. introduced in the previous changeset.
Tue, 18 Mar 2014 16:05:06 -0700 bundle2: support for bundling parameter value
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 18 Mar 2014 16:05:06 -0700] rev 20809
bundle2: support for bundling parameter value Parameter can now have a value. We use a `<name>=<value>` form inspired from capabilities. There is still no kind of escaping in the name or value, yet.
Thu, 20 Mar 2014 13:18:34 -0700 bundle2: clarify stream parameter design in the documentation
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 20 Mar 2014 13:18:34 -0700] rev 20808
bundle2: clarify stream parameter design in the documentation Stream level parameter have very restricted use case. Clarify why we chosen a textual format and point that applicative data goes in applicative parts.
Tue, 18 Mar 2014 20:10:33 -0500 repoview: add non-global tags to candidate list for blocking hidden changesets
Sean Farley <sean.michael.farley@gmail.com> [Tue, 18 Mar 2014 20:10:33 -0500] rev 20807
repoview: add non-global tags to candidate list for blocking hidden changesets Previously, only bookmarks would be considered for blocking a changeset from being hidden. Now, we also consider non-global tags. This is helpful if we have local tags that might be hard to find once they are hidden, or tag that are added by extensions (e.g. hggit or remotebranches).
Thu, 13 Mar 2014 16:05:06 -0700 histedit: select the lowest rev when looking for a root in a revset (bc)
David Soria Parra <davidsp@fb.com> [Thu, 13 Mar 2014 16:05:06 -0700] rev 20806
histedit: select the lowest rev when looking for a root in a revset (bc) When we specify a revision or a revset we just get the last element from the list. For revsets this can lead to unintended effects where you specify a revset like only() but instead histedit selects the highest revision in the set as root. Therefore we should always use the lowest revision number as root.
Tue, 18 Mar 2014 15:56:24 -0700 bundle2: support for unbundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 18 Mar 2014 15:56:24 -0700] rev 20805
bundle2: support for unbundling simple parameter the unbundler now understand simple list of parameter.
Wed, 19 Mar 2014 14:52:03 -0700 bundle2: support bundling simple parameter
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 19 Mar 2014 14:52:03 -0700] rev 20804
bundle2: support bundling simple parameter This changeset add bundling capacity for simple parameters, not value or any special case are handled.
Tue, 18 Mar 2014 16:35:34 -0700 bundle2: make sure the unbundler refuse non bundle2 stream
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 18 Mar 2014 16:35:34 -0700] rev 20803
bundle2: make sure the unbundler refuse non bundle2 stream We now make use of the magic string at the beginning of the file.
Tue, 18 Mar 2014 14:28:42 -0700 bundle2: a very first version of bundle2 unbundler
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 18 Mar 2014 14:28:42 -0700] rev 20802
bundle2: a very first version of bundle2 unbundler This changeset introduce an unbundler class to match the bundle2 bundler. It is currently able to unbundle an empty bundle2 only and will gain more feature at the same pace than the bundler. It also comes with its special extension command in test.
Tue, 18 Mar 2014 14:00:50 -0700 bundle2: very first version of a bundle2 bundler
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 18 Mar 2014 14:00:50 -0700] rev 20801
bundle2: very first version of a bundle2 bundler This changeset is the very first of a long series. It create a new bundle2 module and add a simple class that generate and empty bundle2 container. The module is documented with the current state of the implementation. For information about the final goal you may want to consult the mercurial wiki page: http://mercurial.selenic.com/wiki/BundleFormat2 The documentation of the module will be updated with later patches adding more and more feature to the format. This patches also introduce a test case. This test case build and use its own small extension that use the new bundle2 module. Since the new format is unable to do anything right now, we could not use real mercurial code to test it. Moreover, some advanced feature of the bundle2 spec will not be used by core mercurial at all. So we need to have them tested.
Sat, 22 Mar 2014 00:46:12 +0900 clone: abort if default destination has no meaningful name (BC)
Yuya Nishihara <yuya@tcha.org> [Sat, 22 Mar 2014 00:46:12 +0900] rev 20800
clone: abort if default destination has no meaningful name (BC) If source URL has no path, default destination is resolved as '.'. It is surprising than useful, and perhaps an unexpected behavior. This change does not solve issue3880, but can avoid to clone into current directory by accident.
Sat, 22 Mar 2014 00:46:08 +0900 clone: add doctest for default destination
Yuya Nishihara <yuya@tcha.org> [Sat, 22 Mar 2014 00:46:08 +0900] rev 20799
clone: add doctest for default destination
Thu, 20 Mar 2014 09:55:44 -0700 scmutil: fix revrange when multiple revs are specified
Durham Goode <durham@fb.com> [Thu, 20 Mar 2014 09:55:44 -0700] rev 20798
scmutil: fix revrange when multiple revs are specified revrange was trying to add a list to a revset class, but revset classes only support adding with other revset classes. So wrap the lists in basesets.
Thu, 20 Mar 2014 00:01:59 -0400 parsers: fix compiler errors on MSVC 2008
Matt Harbison <matt_harbison@yahoo.com> [Thu, 20 Mar 2014 00:01:59 -0400] rev 20797
parsers: fix compiler errors on MSVC 2008 This broke in 3681de20b0a7.
Wed, 19 Mar 2014 18:04:03 -0500 check-code: check for argument passing py2.6ism
Matt Mackall <mpm@selenic.com> [Wed, 19 Mar 2014 18:04:03 -0500] rev 20796
check-code: check for argument passing py2.6ism
Wed, 19 Mar 2014 16:21:53 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Wed, 19 Mar 2014 16:21:53 -0500] rev 20795
merge with stable
Tue, 18 Mar 2014 13:40:03 -0700 sshpeer: only print out 'running ssh' messages in debug mode (BC)
Siddharth Agarwal <sid0@fb.com> [Tue, 18 Mar 2014 13:40:03 -0700] rev 20794
sshpeer: only print out 'running ssh' messages in debug mode (BC) Previously, if another command was run with --verbose, and for whatever reason that invoked sshpeer, we'd get a 'running ssh' message from sshpeer. This extra line would interfere with that command's output and cause dumb parsers to break. For example, hg annotate can be run with --verbose to get full usernames. This, combined with the third-party remotefilelog extension which can cause ssh connections to be created, leads to an extra 'running ssh' line that breaks most parsers. This patch is (BC) because hg pull --verbose will no longer print out exactly what ssh command it is running. No tests are affected by this change.
Wed, 19 Mar 2014 00:19:54 +0100 tests: small refactoring of run-tests' handling of tests list
Mads Kiilerich <madski@unity3d.com> [Wed, 19 Mar 2014 00:19:54 +0100] rev 20793
tests: small refactoring of run-tests' handling of tests list
Fri, 28 Feb 2014 02:26:03 +0100 merge: mark mergestate as dirty when resolve changes _state
Mads Kiilerich <madski@unity3d.com> [Fri, 28 Feb 2014 02:26:03 +0100] rev 20792
merge: mark mergestate as dirty when resolve changes _state Correctness - no visible difference so far.
Mon, 24 Feb 2014 22:42:14 +0100 backout: improve confusing 'cannot backout change on a different branch' abort
Mads Kiilerich <madski@unity3d.com> [Mon, 24 Feb 2014 22:42:14 +0100] rev 20791
backout: improve confusing 'cannot backout change on a different branch' abort These days 'branch' usually refer to a named branch. Instead, abort with 'cannot backout change that not is an ancestor'.
Wed, 19 Mar 2014 02:45:14 +0100 config: set a 'source' in most cases where config don't come from file but code
Mads Kiilerich <madski@unity3d.com> [Wed, 19 Mar 2014 02:45:14 +0100] rev 20790
config: set a 'source' in most cases where config don't come from file but code Some extensions set configuration settings that showed up in 'hg showconfig --debug' with 'none' as source. That was confusing. Instead, they will now tell which extension they come from. This change tries to be consistent and specify a source everywhere - also where it perhaps is less relevant.
Wed, 19 Mar 2014 02:45:14 +0100 config: don't set source when no source is specified - don't overwrite with ''
Mads Kiilerich <madski@unity3d.com> [Wed, 19 Mar 2014 02:45:14 +0100] rev 20789
config: don't set source when no source is specified - don't overwrite with '' This prevents ui.fixconfig from overwriting the source of paths and it will thus show up in showconfig --debug.
Wed, 19 Mar 2014 02:45:04 +0100 config: give a useful hint of source for the most common command line settings
Mads Kiilerich <madski@unity3d.com> [Wed, 19 Mar 2014 02:45:04 +0100] rev 20788
config: give a useful hint of source for the most common command line settings 'hg showconfig --debug' will instead of: none: ui.verbose=False give the better hint: --verbose: ui.verbose=False
Wed, 19 Mar 2014 01:59:15 +0100 config: backout 77f1f206e135 - 743daa601445 removed the only use of overlay
Mads Kiilerich <madski@unity3d.com> [Wed, 19 Mar 2014 01:59:15 +0100] rev 20787
config: backout 77f1f206e135 - 743daa601445 removed the only use of overlay
Thu, 20 Mar 2014 00:10:45 +0900 mq: omit ".hgsubstate" from qnew/qrefresh target list for consistent node hash
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Thu, 20 Mar 2014 00:10:45 +0900] rev 20786
mq: omit ".hgsubstate" from qnew/qrefresh target list for consistent node hash Before this patch, even if specified file patterns and -I/-X options cause listing ".hgsubstate" up in the target list, qnew/qrefresh put ".hgsubstate" into the target list individually and forcibly. This changes how many times ".hgsubstate" appear in the target list according to run-time conditions, and causes inconsistent node hash, even though revision content is same, because node hash calculation uses the specified target list directly (without duplication check or so). This patch always omits ".hgsubstate" from qnew/qrefresh target list for consistent node hash. This omitting doesn't miss including ".hgsubstate" changes, because: - "localrepository.commit()" puts ".hgsubstate" into the target list for "commitctx()" forcibly if needed - "mq.putsubstate2changes()" puts ".hgsubstate" into the target list for "patch.diff()" if it is not yet listed up
Thu, 20 Mar 2014 00:10:45 +0900 qnew: omit meaningless and harmful putting subrepositories into target list
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Thu, 20 Mar 2014 00:10:45 +0900] rev 20785
qnew: omit meaningless and harmful putting subrepositories into target list Before this patch, qnew puts updated subrepositories into target list forcibly, if any of -I, -X or patterns are specified. But this is meaningless and harmful, because: - putting subrepositories into target list doesn't affect the result of "localrepository.status()" "dirstate.status()" invoked via "localrepository.status()" always omits subrepositories from the result of it - any -I/-X opts and empty "pats" causes unexpected failure when any -I/-X opts are specified, "inclsubs" are always added to "pats", even if "pats" is empty. but this changes meaning of "pats" from "including all to be included" to "including only listed subrepositories" this may exclude ".hgsub" and cause unexpected exception raising ("can't commit subrepos without .hgsub" ). - qnew at other than repository root (with -I, -X or any patterns) causes unexpected failure "scmutil.match()" treats pattern without syntax type as 'relpath' type (= one rooted at cwd). but qnew puts subrepository paths rooted at the repository root, and it causes unexpected exception raising ("SUBREPO not under root ROOT" in "pathutil.canonpath()"), if "hg qnew" is executed at other than repository root with -I, -X or any patterns. This patch omits meaningless and harmful putting subrepositories into target list. This omitting doesn't miss including updated subrepositories, because subrepositories are specified to "scmutil.matchfiles()" directly, to get "match" object for "localrepository.commit()".
(0) -10000 -3000 -1000 -300 -100 -50 -32 +32 +50 +100 +300 +1000 +3000 +10000 +30000 tip