Matt Harbison <matt_harbison@yahoo.com> [Sat, 09 Aug 2014 19:12:16 -0400] rev 1106
evolve: replace each obsolete sha1 in the description with its latest successor
Obsolete csets are hidden by default and don't get pushed to the parent repo.
In order to avoid broken references in commit messages, it makes sense to evolve
those references to the latest and greatest successor, as each cset containing
them is evolved. Of course, stale references can still occur if a commit in
branch 'A' references something in branch 'B', and that something in 'B' is
evolved but 'A' isn't subsequently evolved.
This alleviates the user that is evolving a series of commits from having to
1) recognize that there is a hash that needs updating in any one of the series
2) look up the latest successor manually
3) hg amend -e
The regular expression for matching and the logic for replacing are borrowed
from the convert extension [1].
It might be nice for the output to state the reason that the reference couldn't
be updated (it was pruned, split or diverged), but that may be excessive for
something only displayed in verbose mode. (Maybe it should be a ui.status()
instead?)
[1] http://selenic.com/hg/rev/45562379ce4e
Matt Harbison <matt_harbison@yahoo.com> [Sat, 09 Aug 2014 18:36:28 -0400] rev 1105
test: add parent hash to commit message in test-evolve.t
This (slightly) reduces the changes to the test when hashes in the commit
message are evolved in the next commit.
Matt Harbison <matt_harbison@yahoo.com> [Tue, 12 Aug 2014 19:09:53 -0400] rev 1104
evolve: fix the 'grab' alias to work on Windows
For some reason, the variable wasn't substituted on Windows in this case.
From the test suite:
$ hg grab 8
'' is not recognized as an internal or external command,\r (esc)
operable program or batch file.\r (esc)
This change seems hacky, but there isn't a readily available example of setting
up a shell alias like this from a python module to know if there is a better
way, and it seems like this is maybe just a convenience for tests, since there
is no documentation for the aliases.
The local copy of run-tests.py appears to predate the Windows support in the
Mercurial repository's version, and fails each test with:
The system cannot find the path specified.
However, with this change and blacklisting test-simple4server.t, the tests can
(mostly) be run on Windows like so:
$ ../../hg/tests/run-tests.py --with-hg=../../hg/hg --blacklist windows
Skipped test-simple4server.t: blacklisted
Warned test-obsolete.t: no result code from test
Warned test-tutorial.t: no result code from test
Warned test-evolve.t: no result code from test
Warned test-userguide.t: no result code from test
Warned test-sharing.t: no result code from test
Warned test-drop.t: no result code from test
Failed test-prune.t: output changed
# Ran 41 tests, 1 skipped, 6 warned, 1 failed.
Faheem Mitha <faheem@faheem.info> [Sun, 24 Aug 2014 01:02:18 +0530] rev 1103
debian: add README to the list of documents shipped with the package.
Faheem Mitha <faheem@faheem.info> [Sun, 24 Aug 2014 01:42:34 +0530] rev 1102
debian: add missing curl Build-Depends
curl is required to run the tests.
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 25 Apr 2014 14:14:29 -0700] rev 1101
prune: work around lazy revset slowdown
Since 3.0 lazy revset is making some revset very slow. We currently work around
the issue by using a simple loop instead.
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 02 Sep 2014 19:19:17 +0200] rev 1100
readme: act that there will not be a 4.1.1 release
David Soria Parra <davidsp@fb.com> [Fri, 29 Aug 2014 14:26:17 +0200] rev 1099
evolve: write a status message when the working directory changes
Evolve changes the working directory during atop, etc which can confuse people
as they are not aware that this happend. The ideal solution is to not have
evolve change it, however mercurial limitations don't allow us to do that at the
moment. So instead we are printing a status message that the working directory
changed.
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 29 Aug 2014 09:29:02 +0200] rev 1098
merge small default improvement before dropping compat with released Mercurial
We are going to drop a bunch of compatibility layer.
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 29 Aug 2014 16:13:19 +0200] rev 1097
pull: use discovery to pull less obsmarkers through bundle2
This hooks in the official API for bundle2
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 29 Aug 2014 16:13:01 +0200] rev 1096
pull: run obsmarker discovery only on the common set
If the discovery is run before the obsmarker push, pulled revs does not exist in
the repository yet.
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 29 Aug 2014 16:11:22 +0200] rev 1095
evolve: fix a typo in a long function name
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 29 Aug 2014 15:19:19 +0200] rev 1094
bundle2: burn some more of the old code
Some of it survived.
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 27 Aug 2014 18:59:11 +0200] rev 1093
obsexch: respect todosteps when using the old push
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 27 Aug 2014 18:28:22 +0200] rev 1092
compat: update the tests after the jump
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 27 Aug 2014 18:16:10 +0200] rev 1091
compat: use in-core encodemarkers
Now exist in core witha slightly different format.
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 27 Aug 2014 18:15:39 +0200] rev 1090
compat: rename encodeonemarkers to _fm0encodemarkers
This is getting renamed in core.
Pierre-Yves David <pierre-yves.david@fb.com> [Sun, 27 Jul 2014 23:09:45 +0200] rev 1089
enable bundle2
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 29 Aug 2014 11:56:16 +0200] rev 1088
drop the debug output
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 27 Aug 2014 18:28:09 +0200] rev 1087
test-simple4server: add error output for http
This is useful in case of failure.
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 29 Aug 2014 10:44:40 +0200] rev 1086
compat: adapt to change to memctx
Since core mercurial 650b5b6e75ed we must return None instead of raising
IOError. Hooray for mads!!
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 27 Aug 2014 17:49:08 +0200] rev 1085
evolve: use pushkeyescape from core
It exists for all version we are compatible with.
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 27 Aug 2014 17:55:20 +0200] rev 1084
evolve: display more message
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 27 Aug 2014 17:36:35 +0200] rev 1083
evolve: drop a very old safe guard about bad marker
The do not clean marker with nullrev successors. I assume none of them remains.
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 27 Aug 2014 17:31:21 +0200] rev 1082
pull: drop the custom bundle2 part
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 27 Aug 2014 17:25:18 +0200] rev 1081
obsexc: add support for evoext_pushobsmarkers_0 on localpeer
This will unify the behavior of exchange in the tests.
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 27 Aug 2014 17:24:40 +0200] rev 1080
evolve: allow read() from the magic StringIO
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 27 Aug 2014 17:12:01 +0200] rev 1079
evolve: drop old obsmarker discovery code
It as not caller anymore.