- Aug 23, 2014
-
-
Katsunori FUJIWARA authored
Before this patch, external editor is invoked when imported patch has no commit message, even if "--exact" is specified. Then, exact-ness is broken, because empty commit message causes failure of committing. This patch avoids editor invocation at importing with "--exact" for exact-ness, because commit message in the patch should be kept as it is in such case, even if it is empty.
-
Katsunori FUJIWARA authored
Before this patch, "hg import" allows combination of "--exact" and "--edit", even though editing commit message breaks exact-ness. This patch disallows meaningless combination of "--exact" and "--edit".
-
- Mar 16, 2014
-
-
Razvan Cojocaru authored
Added "unexpected leading whitespace" message to parse error when .hgrc has a line that starts with whitespace. Helps new users unfamiliar with syntax of rc file.
-
- Aug 21, 2014
-
-
Pierre-Yves David authored
This was not tested and there is more to come in the next patch.
-
- Aug 20, 2014
-
-
Pierre-Yves David authored
This argument can be used to list markers relevant to a set of revisions. We add a test for this option and the relevant computation in the same move.
-
- Aug 21, 2014
-
-
Pierre-Yves David authored
This function is going to gain a "nodes" argument to filter the markers to the ones relevant to <nodes> only.
-
- Aug 20, 2014
-
-
Pierre-Yves David authored
We add a ``--record-parents`` flag to debugobsolete. This can be used to record parent information in the marker when the precursors are known locally. This will be useful to test the "relevant markers" computation.
-
Pierre-Yves David authored
We add a ``relevantmarkers`` method to fetch all markers that seem relevant to a set of nodes. See function documentation about how this set is computed. This will let us exchange only the markers that seem "relevant" to the set of changesets related to a push or a pull. The approach used to define "relevant" has been successfully tested in evolve for 6 months.
-
- Aug 19, 2014
-
-
Pierre-Yves David authored
We use the new `parents` field to build a dictionary of markers that touch children of a node. This will be used to link prune markers to a set of exchanged nodes.
-
- Aug 21, 2014
-
-
Pierre-Yves David authored
We can now directly prevent any evolution-related operation from happening by using an empty set for outgoing markers. So we detect if no transfers should occur and use an empty set in this case.
-
- Aug 19, 2014
-
-
Pierre-Yves David authored
This comment was associated with a now-defunct line.
-
- Aug 21, 2014
-
-
durin42 authored
test-convert-cvs.t has been a little flaky for a while now. Add an extra tiebreaker in cscmp so that all the cases in the test will sort reliably. Without this patch, test-convert-cvs.t failed after 346 runs. With this patch, I stopped trying to get it to fail after 615 runs. While not conclusive, that makes me pretty optimistic that this is a working fix.
-
- Aug 16, 2014
-
-
Yuya Nishihara authored
This change is intended to move the getdate function near the opmap table.
-
- Aug 20, 2014
-
-
Siddharth Agarwal authored
If match.traversedir is not None, we're forced to do full walks. However when we aren't purging directories we don't need to set match.traversedir to anything. This speeds up non-full walks such as the one hgwatchman makes possible. For mozilla-central with hgwatchman enabled, 'hg purge --files' goes from 0.88 seconds to 0.22.
-
- Aug 21, 2014
-
-
Siddharth Agarwal authored
Local clones copy/hardlink over files directly, so the branchcaches should all be valid. There's a slight chance that a read operation would update one of the branchcaches, but we hold a lock over the source repo so they shouldn't cause an invalid branchcache to be copied over, just a different, valid one.
-
Siddharth Agarwal authored
The unfiltered branchcache is in .hg/cache/branch2, not .hg/store/cache/branch2.
-
- Aug 20, 2014
-
-
durin42 authored
-
durin42 authored
45b5cd948a4d accidentally broke Python 2.4 compatibility, this fixes it.
-
- Aug 19, 2014
-
-
Pierre-Yves David authored
Now that we have a new field, we need a way to visualize it.
-
Pierre-Yves David authored
-
- Aug 18, 2014
-
-
Pierre-Yves David authored
We now store the `parents` field on disk. We use the same strategy as for `date`: We stick it into the metadata. This is slow and dirty, but this is also the only way we currently have. At some point we'll have a new obsstore format to store this properly.
-
- Aug 19, 2014
-
-
Pierre-Yves David authored
We are extracting the `date` information from the metadata at read time. However, we failed to remove it from the metadata returned in the markers. This is now fixed.
-
- Aug 18, 2014
-
-
Pierre-Yves David authored
We need this information to build the set of relevant markers during exchanges. This can only be done at the `createmarkers` level since the `obsstore.create` function does not have a repo and therefore has no access to the parent information.
-
Pierre-Yves David authored
We need a way to pass the information to the function. Some guru told me that what's arguments are made for.
-
Pierre-Yves David authored
This field is intended to store the parent of the precursor. This is useful to attach pruned changesets to a set of exchanged changesets. We currently just add the fields with a None value. None stands for "no data recorded".
-
- Aug 19, 2014
-
-
Pierre-Yves David authored
As the number of fields grow, it makes sense to start documenting their contents.
-
- Aug 16, 2014
-
-
Katsunori FUJIWARA authored
"editform" argument for "getcommiteditor" is decided according to the format below: EXTENSION[.COMMAND][.ROUTE] - EXTENSION: name of extension - COMMAND: name of command, if there are two or more commands in EXTENSION - ROUTE: name of route, if there are two or more routes in COMMAND This patch newly adds "normal" and "merge" as ROUTE, to distinguish merge commits from other. This patch adds 4 test patterns to test combination of "merge"(x2) and "--continue"(x2).
-
Katsunori FUJIWARA authored
"editform" argument for "getcommiteditor" is decided according to the format below: EXTENSION[.COMMAND][.ROUTE] - EXTENSION: name of extension - COMMAND: name of command, if there are two or more commands in EXTENSION - ROUTE: name of route, if there are two or more routes in COMMAND This patch newly adds "merge" as ROUTE, to distinguish merge commits from other. This patch passes bool as "ctxorbool" to "mergeeditform", because working context has always 2 parents at this point. Dropping the second parent of non-merging commits is executed in "concludenode". Unlike other patches in this series (e.g. for "hg commit"), this patch doesn't add "normal.normal"/"normal.merge" style ROUTEs, because there is no "merge" case in "collapse" ROUTE.
-
Katsunori FUJIWARA authored
"editform" argument for "getcommiteditor" is decided according to the format below: COMMAND[.ROUTE] - COMMAND: name of command - ROUTE: name of route, if there are two or more routes in COMMAND This patch uses "normal.normal" and "normal.merge" as ROUTE of "editform" instead of "normal", to distinguish merge commits from other in "hg import" without "--bypass" case. This patch assumes "editform" variations for "hg import" below: import.normal.normal import.normal.merge import.bypass.normal import.bypass.merge Unlike other patches in this series, this patch uses "editor.sh" instead of "checkeditform.sh" for the name of the script to check "HGEDITFORM", because it has to do more than checking "HGEDITFORM". To invoke editor forcibly in "test-import-merge.t", this patch creates the patch not having patch description as "merge.nomsg.diff".
-
Katsunori FUJIWARA authored
"editform" argument for "getcommiteditor" is decided according to the format below: COMMAND[.ROUTE] - COMMAND: name of command - ROUTE: name of route, if there are two or more routes in COMMAND This patch uses "amend.normal" and "amend.merge" as ROUTE of "editform" instead of "amend", to distinguish merge commits from other in "hg commit --amend" case.
-
Katsunori FUJIWARA authored
"editform" argument for "getcommiteditor" is decided according to the format below: COMMAND[.ROUTE] - COMMAND: name of command - ROUTE: name of route, if there are two or more routes in COMMAND This patch uses "normal.normal" and "normal.merge" as ROUTE of "editform" instead of "normal", to distinguish merge commits from others in "hg commit" without "--amend" case. This patch assumes "editform" variations for "hg commit" below: commit.normal.normal commit.normal.merge commit.amend.normal commit.amend.merge "mergeeditform" is factored out for subsequent patches. It takes "ctxorbool" argument, because context object can't be passed in some cases.
-
Gregory Szorc authored
The issue fixed in the previous patch was uncovered by implementing an extension that printed additional output locally before the push command completed. This test emulates that. If this change is applied before the previous patch, the test will fail on Linux, with the local output being printed before the "remote: " lines.
-
Gregory Szorc authored
On Linux, fstat().st_size of a pipe always returns 0, even if the pipe has data available for reading. This meant that reading from and subsequently printing the stderr pipe content after wireproto commands over SSH meant that available data wasn't being printed. We now implement pipe reading on POSIX by doing a non-blocking read for all available data.
-
Gregory Szorc authored
Reading all available data from a pipe has a platform-dependent implementation. This patch establishes platform.readpipe() by copying the inline implementation in sshpeer.readerr(). The implementations for POSIX and Windows are currently identical. The POSIX implementation will be changed in a subsequent patch.
-
Pierre-Yves David authored
Not sure how it got there but it is useless.
-
- Aug 19, 2014
-
-
durin42 authored
-
- Aug 16, 2014
-
-
Pierre-Yves David authored
We use the `pushkey` part to exchange bookmark updates within the unified bundle2 push. Note that this only applies on update (moving a bookmark known on both sides) since bookmark export (creation of a new bookmark on remote) is apparently done outside of the _push function.
-
Pierre-Yves David authored
If we add bookmarks to bundle2, we need a way to test the new code. Tests are changed beforehand to highlight that inclusion of bookmarks in bundle does not introduce any behavior changes.
-
Pierre-Yves David authored
If bookmark are to be integrated in the unified bundle2, we need a way to disable the old-style push.
-
Pierre-Yves David authored
The discovery of necessary bookmark updates is now done within the "discovery phase". This opens the door to the inclusion of bookmarks in a unified bundle2 push.
-