Sat, 30 Aug 2014 16:06:09 +0200 revert: add more padding in the dispatch list
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 30 Aug 2014 16:06:09 +0200] rev 22372
revert: add more padding in the dispatch list We are going to add more sets and some of them will have longer names. We add padding in a standalone patch for readbility purposes.
Sat, 30 Aug 2014 01:48:58 +0200 revert: add documentation in the dispatch table
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 30 Aug 2014 01:48:58 +0200] rev 22371
revert: add documentation in the dispatch table More sets are coming so documenting the existing ones will help.
Sat, 30 Aug 2014 02:47:59 +0200 revert: add a way for external extensions to prefetch file data
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 30 Aug 2014 02:47:59 +0200] rev 22370
revert: add a way for external extensions to prefetch file data This allow extensions that mess with the storage layer (remotefilelog, largefile) to prefetch any data that will be accessed during the revert operation. We are currently fetching more data than theoretically required because the backup code is a bit stupid. Future patches will improve that.
Sun, 07 Sep 2014 11:46:11 -0500 merge with stable
Kevin Bullock <kbullock@ringworld.org> [Sun, 07 Sep 2014 11:46:11 -0500] rev 22369
merge with stable
Wed, 03 Sep 2014 20:42:51 +0200 histedit: abort gracefully on --continue/--abort with no state stable
Siddharth Agarwal <sid0@fb.com> [Wed, 03 Sep 2014 20:42:51 +0200] rev 22368
histedit: abort gracefully on --continue/--abort with no state Previously we'd print an ugly message saying that the histedit-state file doesn't exist in the repo.
Thu, 04 Sep 2014 09:59:23 -0400 merge with stable
Augie Fackler <raf@durin42.com> [Thu, 04 Sep 2014 09:59:23 -0400] rev 22367
merge with stable
Tue, 02 Sep 2014 03:41:01 +0200 Added signature for changeset 5dc91146f353 stable
Matt Mackall <mpm@selenic.com> [Tue, 02 Sep 2014 03:41:01 +0200] rev 22366
Added signature for changeset 5dc91146f353
Tue, 02 Sep 2014 03:40:55 +0200 Added tag 3.1.1 for changeset 5dc91146f353 stable
Matt Mackall <mpm@selenic.com> [Tue, 02 Sep 2014 03:40:55 +0200] rev 22365
Added tag 3.1.1 for changeset 5dc91146f353
Tue, 26 Aug 2014 04:58:41 -0700 bookmarks: allow pushkey if new equals current
Durham Goode <durham@fb.com> [Tue, 26 Aug 2014 04:58:41 -0700] rev 22364
bookmarks: allow pushkey if new equals current Previously a bookmark pushkey would be rejected if the specified 'old' value didn't match the servers 'current' value. This change allows this situation, as long as the 'current' server value equals the 'new' pushkey value already. We are trying to write a hook that forces a server bookmark to move forward, using a changegroup hook. If the user also pushed the bookmark, they would get an error, since they computed their pushkey (old,new) pair before the server moved the bookmark. Long term, bundle2 will let us do this more smartly, but this change seems reasonable for now.
Fri, 29 Aug 2014 12:17:53 +0200 tests: improve test coverage of branch command and existing branches
Mads Kiilerich <madski@unity3d.com> [Fri, 29 Aug 2014 12:17:53 +0200] rev 22363
tests: improve test coverage of branch command and existing branches
Thu, 28 Aug 2014 17:23:05 +0200 localrepo: make it possible to pass multiple path elements to join and wjoin
Angel Ezquerra <angel.ezquerra@gmail.com> [Thu, 28 Aug 2014 17:23:05 +0200] rev 22362
localrepo: make it possible to pass multiple path elements to join and wjoin This makes join and wjoin behave in the same way as os.path.join. That is, it makes it possible to pass more than one path element to them. Note that the first path element is still required, as it was before this patch, and as is the case for os.path.join.
Sun, 31 Aug 2014 12:22:44 +0200 run-tests: make --interactive work with --view
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 31 Aug 2014 12:22:44 +0200] rev 22361
run-tests: make --interactive work with --view
Sun, 31 Aug 2014 11:11:42 +0200 convert: don't use multi-argument set.update
Mads Kiilerich <madski@unity3d.com> [Sun, 31 Aug 2014 11:11:42 +0200] rev 22360
convert: don't use multi-argument set.update Mumble mumble 2.4 mumble.
Sat, 30 Aug 2014 12:22:20 +0200 error: use docstrings, not bare strings, for error classes
Mike Edgar <adgar@google.com> [Sat, 30 Aug 2014 12:22:20 +0200] rev 22359
error: use docstrings, not bare strings, for error classes
Sun, 31 Aug 2014 10:24:25 +0200 osx: create dmg with installer instead of zip
Mads Kiilerich <madski@unity3d.com> [Sun, 31 Aug 2014 10:24:25 +0200] rev 22358
osx: create dmg with installer instead of zip OS X would offer to expand the zip so the (multi file) installer inside it could be run ... but that would leave the expanded zip folder around. Instead, use a .dmg file that automatically will be mounted - that seems more common on OS X. Still, there is two levels of levels of clicking before actually launching the installer. Having a single file installer would be better ... but seems to be hard. A more feasible improvement would be some fancy layout inside the .dmg .
Sat, 30 Aug 2014 12:33:12 +0200 branchmap: pre-filter topological heads before ancestors based filtering
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 30 Aug 2014 12:33:12 +0200] rev 22357
branchmap: pre-filter topological heads before ancestors based filtering We know that topological heads will not be ancestors of anything, so we filter them out to potentially reduce the range of the ancestors computation. On a strongly headed repo this gives humble speedup: from 0.1984 to 0.1629
Sat, 30 Aug 2014 12:20:50 +0200 branchmap: issue a single call to `ancestors` for all heads
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 30 Aug 2014 12:20:50 +0200] rev 22356
branchmap: issue a single call to `ancestors` for all heads There is no reason to make multiple calls. This provides a massive speedup for repo with a lot of heads. On a strongly headed repo this gives humble speedup in simple case: from 8.1097 to 5.1051 And massive speedup in other case: from 7.8787 to 0.1984
Sat, 30 Aug 2014 11:39:15 +0200 test-ancestor: add a test for `ancestor` with ancestry within the initset
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 30 Aug 2014 11:39:15 +0200] rev 22355
test-ancestor: add a test for `ancestor` with ancestry within the initset I was wondering if revisions in the initial set that are still ancestors of other elements in the initial set were yielded by `changelog.ancestors`. I now have my answer (they do) and Mercurial has a new test.
Tue, 26 Aug 2014 12:47:41 +0200 bundle2: pull obsmarkers relevant to the pulled set through bundle2
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 26 Aug 2014 12:47:41 +0200] rev 22354
bundle2: pull obsmarkers relevant to the pulled set through bundle2 We use the new `obsheads` argument to retrieve them in a bundle2 part at the same time as the changegroup.
Fri, 29 Aug 2014 12:36:17 +0200 getbundle: add `obsmarkers` argument to getbundle
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 29 Aug 2014 12:36:17 +0200] rev 22353
getbundle: add `obsmarkers` argument to getbundle This argument triggers the retrieval of all markers relevant to the set of changesets defined by the nodes in `heads`.
Fri, 29 Aug 2014 12:28:58 +0200 pull: use the "cg" argument when pulling a bundle2
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 29 Aug 2014 12:28:58 +0200] rev 22352
pull: use the "cg" argument when pulling a bundle2 We use the `cg` argument to disable the generation of a changegroup part. This is useful to pull information when changesets are already in sync (phases, obsmarkers).
Fri, 29 Aug 2014 12:51:00 +0200 wireprotocol: fix 'boolean' handling
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 29 Aug 2014 12:51:00 +0200] rev 22351
wireprotocol: fix 'boolean' handling The encoding and decoding code were swapped. This is now fixed.
Wed, 20 Aug 2014 01:15:09 -0700 push: only push obsmarkers relevant to the "pushed subset"
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 20 Aug 2014 01:15:09 -0700] rev 22350
push: only push obsmarkers relevant to the "pushed subset" We should only exchange obsolete markers related to the changesets that are being exchanged. For example, if `A'` is a successor of `A`, we do not want to push the marker if we are not exchanging `A'`. Otherwise `A` would disappear without a successor, leading to confusion for both users and the evolution mechanism. Therefore we now exchange only the markers relevant to the subset of nodes involved in the push (the nodes themselves may be already common but were selected by --rev (or the lack of --rev)). Note that all selected markers are still exchanged on each push. We do not have a discovery protocol for markers in core yet. Such discovery would save us the exchange of markers known on both side.
Wed, 20 Aug 2014 19:47:35 -0700 test-obsolete: sort the output of debugobsolete
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 20 Aug 2014 19:47:35 -0700] rev 22349
test-obsolete: sort the output of debugobsolete The set of relevant markers is currently unordered. Therefore the markers will be added in arbitrary order. We sort the list of markers beforehand to ensure stable output for testing.
Wed, 20 Aug 2014 19:42:33 -0700 test-obsolete: change a marker so it is relevant to the exchanged set
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 20 Aug 2014 19:42:33 -0700] rev 22348
test-obsolete: change a marker so it is relevant to the exchanged set We are going to only exchange markers relevant to the exchanged changesets. So we need to change this marker to use a known changeset as a successor instead of a precursor.
Mon, 25 Aug 2014 19:44:27 +0200 push: use bundle2 to push obsmarkers when possible
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 19:44:27 +0200] rev 22347
push: use bundle2 to push obsmarkers when possible
Mon, 25 Aug 2014 19:32:51 +0200 exchange: add a `buildobsmarkerpart` function
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 19:32:51 +0200] rev 22346
exchange: add a `buildobsmarkerpart` function We'll have to build an obsmarker part for both push and pull. So we build a function to factor out the common part.
Tue, 26 Aug 2014 11:36:23 +0200 obsolete: add a `commonversion` function
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 26 Aug 2014 11:36:23 +0200] rev 22345
obsolete: add a `commonversion` function This function returns the highest common version between the locally known formats and a list of remotely known formats. This is going to be useful to know what format should be used for exchange.
Tue, 26 Aug 2014 11:48:26 +0200 bundle2: add a `obsmarkersversion` function to extract supported version
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 26 Aug 2014 11:48:26 +0200] rev 22344
bundle2: add a `obsmarkersversion` function to extract supported version Right next to the function that encodes the supported versions in capabilities we add a function that decodes the versions out of capabilities. This is going to be useful to know what formats can be used for exchange.
Thu, 21 Aug 2014 18:18:38 -0700 bundle2: advertise the obsmarker part in bundle2 capabilities
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 21 Aug 2014 18:18:38 -0700] rev 22343
bundle2: advertise the obsmarker part in bundle2 capabilities
Mon, 25 Aug 2014 19:21:47 +0200 bundle2: introduce a `getrepocaps` to retrieve the bundle2 caps of a repo
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 19:21:47 +0200] rev 22342
bundle2: introduce a `getrepocaps` to retrieve the bundle2 caps of a repo This function lets extensions change the bundle2 capabilities of a repository.
Mon, 25 Aug 2014 19:17:06 +0200 obsmarker: move bundle2caps from the localrepo class to the bundle2 module
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 19:17:06 +0200] rev 22341
obsmarker: move bundle2caps from the localrepo class to the bundle2 module The localrepo path was quicker, easier, more seductive. We'll soon add a function in another changeset to alter the capabilities.
Mon, 25 Aug 2014 18:35:39 +0200 obsmarker: produce a reply part for markers received through bundle2
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 18:35:39 +0200] rev 22340
obsmarker: produce a reply part for markers received through bundle2
Mon, 25 Aug 2014 18:26:56 +0200 obsmarker: record the number of new markers in the transaction
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 18:26:56 +0200] rev 22339
obsmarker: record the number of new markers in the transaction This lets hooks be notified about new markers in the repository.
Mon, 25 Aug 2014 18:10:08 +0200 obssmarker: add a bundle2 record with the number of markers added
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 18:10:08 +0200] rev 22338
obssmarker: add a bundle2 record with the number of markers added
Mon, 25 Aug 2014 18:09:54 +0200 obsmarker: write a message with the number of markers added through bundle2
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 18:09:54 +0200] rev 22337
obsmarker: write a message with the number of markers added through bundle2
Mon, 25 Aug 2014 18:08:22 +0200 bundle2: add an obsmarkers part handler
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 18:08:22 +0200] rev 22336
bundle2: add an obsmarkers part handler This part contains a binary stream of obsolescence markers. Received markers are added to the repository.
Mon, 25 Aug 2014 16:24:40 +0200 obsolete: make encodemarkers a public function
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 16:24:40 +0200] rev 22335
obsolete: make encodemarkers a public function We'll need access to it for bundle2.
Mon, 25 Aug 2014 16:21:33 +0200 obsolete: move _encodemarkers next to _readmarkers
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 16:21:33 +0200] rev 22334
obsolete: move _encodemarkers next to _readmarkers
Mon, 25 Aug 2014 16:18:44 +0200 obsstore: store and preserve ondisk version
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 16:18:44 +0200] rev 22333
obsstore: store and preserve ondisk version
Mon, 25 Aug 2014 16:51:51 +0200 obsolete: have _readmarkers return the format version
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 16:51:51 +0200] rev 22332
obsolete: have _readmarkers return the format version readmarkers is not returning the version of the format it read from. This will let callers know about the format and allow them to preserve it.
Mon, 25 Aug 2014 16:16:01 +0200 obsolete: support for any known obsstore format when reading or writing
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 16:16:01 +0200] rev 22331
obsolete: support for any known obsstore format when reading or writing We can now read and write any known format. The list of known formats currently has one element (0). The obsstore itself is not aware of multiple formats yet and always uses format 0.
Mon, 25 Aug 2014 16:09:18 +0200 obsolete: move _fm0encodeonemarker next to _fm0readmarkers
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 16:09:18 +0200] rev 22330
obsolete: move _fm0encodeonemarker next to _fm0readmarkers
Mon, 25 Aug 2014 16:43:23 +0200 obsolete: rename _encodeonemarker to _fm0encodeonemarkers
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 16:43:23 +0200] rev 22329
obsolete: rename _encodeonemarker to _fm0encodeonemarkers This function encodes markers in version 0 of the format.
Mon, 25 Aug 2014 14:58:11 +0200 obsolete: extract the part of _readmarkers specific to format version 0
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 14:58:11 +0200] rev 22328
obsolete: extract the part of _readmarkers specific to format version 0 If we are to introduce new formats we need to be able call different functions for different formats. Creating a function for format version 0 is the first step.
Mon, 25 Aug 2014 14:56:15 +0200 obsolete: rename all _fm to _fm0
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 14:56:15 +0200] rev 22327
obsolete: rename all _fm to _fm0 This change is because these formats are used for version 0 of the obsstore format. This is going to be useful in the future when we introduce new versions of the format.
Mon, 25 Aug 2014 14:52:51 +0200 obsolete: rename _fnodesize to _fmfnodesize
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 25 Aug 2014 14:52:51 +0200] rev 22326
obsolete: rename _fnodesize to _fmfnodesize All variables involved in the obsstore format are prefixed with `_fm`. `_fnodesize` was the exception. It is now back in line. This is meaningful as we'll need to distinguish between multiple versions of the obsstore format.
Thu, 21 Aug 2014 17:42:50 -0700 obsstore: have the `mergemarkers` method return the number of new markers
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 21 Aug 2014 17:42:50 -0700] rev 22325
obsstore: have the `mergemarkers` method return the number of new markers The mergemarkers function now returns the number of unknown markers in the stream that have been added to the obsstore. This is similar to what `obsstore.add` already does. The method gains a docstring in the process.
Mon, 01 Sep 2014 23:43:33 +0200 merge with i18n stable 3.1.1
Matt Mackall <mpm@selenic.com> [Mon, 01 Sep 2014 23:43:33 +0200] rev 22324
merge with i18n
Thu, 21 Aug 2014 17:36:05 -0700 test-bundle2: add obsolescence information to be exchanged
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 21 Aug 2014 17:36:05 -0700] rev 22323
test-bundle2: add obsolescence information to be exchanged To introduce a bundle2 way to exchange obsolescence markers, we need to have some information available to exchange. Introduce markers relevant to changesets involved in the exchange. The new markers reference the changesets as successor nodes of clowny (nonexistent) hashes so that other than being exchanged they have no effect. We introduce them in two waves as push is expected to be smart about the number of markers it exchanges sooner than pull.
Sat, 30 Aug 2014 20:06:24 +0200 help: only call doc() when it is callable stable
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 30 Aug 2014 20:06:24 +0200] rev 22322
help: only call doc() when it is callable `hg help -k` on my machine was aborting because the hg-prompt extension was inserting a string and not a function into help.helptable and help was blindly calling it. This patch changes keyword searching to be more robust against unexpected types.
Mon, 01 Sep 2014 10:57:27 -0300 i18n-pt_BR: synchronized with 6a8b8efb0641 stable
Wagner Bruna <wbruna@softwareexpress.com.br> [Mon, 01 Sep 2014 10:57:27 -0300] rev 22321
i18n-pt_BR: synchronized with 6a8b8efb0641
Mon, 01 Sep 2014 10:54:49 -0300 merge with i18n stable
Wagner Bruna <wbruna@softwareexpress.com.br> [Mon, 01 Sep 2014 10:54:49 -0300] rev 22320
merge with i18n
Sun, 31 Aug 2014 20:49:13 +0900 i18n-ja: synchronized with 0c838e7459a5 stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Sun, 31 Aug 2014 20:49:13 +0900] rev 22319
i18n-ja: synchronized with 0c838e7459a5
Sat, 30 Aug 2014 09:40:31 -0300 i18n-pt_BR: synchronized with 0c838e7459a5 stable
Wagner Bruna <wbruna@yahoo.com> [Sat, 30 Aug 2014 09:40:31 -0300] rev 22318
i18n-pt_BR: synchronized with 0c838e7459a5
Sun, 31 Aug 2014 19:43:03 +0900 repoview: fix typo in repoview.changelog stable
Mike Hommey <mh@glandium.org> [Sun, 31 Aug 2014 19:43:03 +0900] rev 22317
repoview: fix typo in repoview.changelog Incidentally, this avoids the changelog cache being invalidated each time it's accessed on a repoview. On a filtering experiment on a repository the size of mozilla-central, this makes a significant difference: Before, running hg log -l 10 --time with about 8k changesets filtered out: time: real 1.490 secs (user 1.450+0.000 sys 0.040+0.000) After: time: real 0.540 secs (user 0.530+0.000 sys 0.010+0.000)
Tue, 19 Aug 2014 16:57:02 -0700 config: exit non zero on non-existent config option (issue4247) stable
Aaron Kushner <akushner@fb.com> [Tue, 19 Aug 2014 16:57:02 -0700] rev 22316
config: exit non zero on non-existent config option (issue4247) When running 'hg config no_such_option', hg exited with a zero exit code. This change now exits with a 1 if the config option does not exist.
Sat, 30 Aug 2014 18:44:59 +0200 merge with crew
Matt Mackall <mpm@selenic.com> [Sat, 30 Aug 2014 18:44:59 +0200] rev 22315
merge with crew
Sat, 30 Aug 2014 15:13:02 +0200 bookmarks: refer to "the" active bookmark to clarify that there's only one stable
Kevin Bullock <kbullock@ringworld.org> [Sat, 30 Aug 2014 15:13:02 +0200] rev 22314
bookmarks: refer to "the" active bookmark to clarify that there's only one This is a follow-on to 0c6cdbb697d9 that just makes a slight clarification.
Sat, 30 Aug 2014 05:29:38 -0700 memctx: allow extensions to determine what filectxfn should do
Siddharth Agarwal <sid0@fb.com> [Sat, 30 Aug 2014 05:29:38 -0700] rev 22313
memctx: allow extensions to determine what filectxfn should do Rev 650b5b6e75ed switched the contract for filectxfn from "raise IOError if file is missing" to "return None if file is missing". Out of tree extensions need to be updated for that, but for extensions interested in compatibility with both Mercurial <= 3.1 and default, it is next to impossible to introspect core Mercurial to figure out what to do. This patch adds a field to memctx for extensions to use.
(0) -10000 -3000 -1000 -300 -100 -60 +60 +100 +300 +1000 +3000 +10000 tip