Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 01 Apr 2015 16:47:22 -0700] rev 1235
merge with stable
Laurent Charignon <lcharignon@fb.com> [Mon, 30 Mar 2015 13:31:09 -0700] rev 1234
inhibit: ensure that no obsolete changesets are visible after a bookmark change
When creating a bookmark, we could reveal obsolete changesets. We are
inhibiting the obsolete changesets resulting from a bookmark change.
There are two ways to record bookmark changes to disk and we wrap both.
Laurent Charignon <lcharignon@fb.com> [Mon, 30 Mar 2015 11:45:17 -0700] rev 1233
inhibit: ensure no visible changesets are obsolete after an update
When updating to a commit we want to inhibit any obsolete commit affecting
the changeset we are updating to. In other words we don't want any
visible commit to be obsolete.
Laurent Charignon <lcharignon@fb.com> [Fri, 27 Mar 2015 10:58:04 -0700] rev 1232
inhibit: enable direct access from parsing the revset tree
To enable direct access we:
- detect explicit hexadical reference to node in the revset tree
- add these hashes to the static blockers to make them and their parent
visible for the command to run
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 01 Apr 2015 14:44:12 -0700] rev 1231
Added tag 5.1.2 for changeset e886bc501796
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 01 Apr 2015 14:40:40 -0700] rev 1230
preparing version 5.1.2
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 01 Apr 2015 14:43:13 -0700] rev 1229
update 5.1.2 with latest bugfix
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 01 Apr 2015 14:37:02 -0700] rev 1228
evolve: have a stable manifest content when solving bumped
We cannot really use iteritems here.
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 01 Apr 2015 14:26:10 -0700] rev 1227
evolve: change config option name
I forgot to amend...
Durham Goode <durham@fb.com> [Wed, 15 Oct 2014 15:41:26 -0700] rev 1226
config: allow disabling commands
Now that upstream Mercurial has multiple options for obsolete configuration, we
can allow enabling and disabling of evolve commands.
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 07 Mar 2015 02:32:43 -0800] rev 1225
inhibit: Add some inhibition clearing mechanism
We do not want to keep inhibition marker around for ever. So we are removing the
one applying on public changeset.
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 06 Mar 2015 21:25:44 -0800] rev 1224
add a 'inhibit' extension
This extension will be used to reduce the scope of evolve in order to make some
of its features available to the mass earlier.
See extension documentation for details.
Matt Harbison <matt_harbison@yahoo.com> [Sat, 21 Mar 2015 19:09:56 -0400] rev 1223
tests: use 'wget' instead of 'curl' for Windows compatibility
The whole test suite now runs without skips, and the only two failures are a
bookmark cache issue in test-prune.t, and a local output vs remote output
reordering when pushing to ssh. The latter anyway is a core problem.
Matt Harbison <matt_harbison@yahoo.com> [Sat, 21 Mar 2015 18:42:51 -0400] rev 1222
tests: import killdaemons.py from Mercurial 1cfded2fa1a9
This contains updated functionality to kill the server process on Windows, which
is needed to run the test-*server.t tests. This version requires the pids to be
passed as an argument instead of via $DAEMON_PIDS.
Durham Goode <durham@fb.com> [Fri, 20 Mar 2015 12:51:57 -0700] rev 1221
prune: add --keep to not touch the working copy
In order to more closely emulate strip, lets add --keep to leave the working
copy untouched when we do our prune.
Durham Goode <durham@fb.com> [Thu, 19 Mar 2015 12:31:51 -0700] rev 1220
strip: add the option for wrapping the strip command
Adds an experimental option for wrapping the existing strip command and
replacing its functionality with prune. It currently doesn't handle the --keep
case, but an upcoming patch will address that.
Durham Goode <durham@fb.com> [Thu, 19 Mar 2015 12:32:32 -0700] rev 1219
wrapcommand: fix wrapping extensions that aren't enabled
The extension command wrapping would previously fail if the extension wasn't
enabled. Let's just eat that silently.
Durham Goode <durham@fb.com> [Thu, 19 Mar 2015 10:52:28 -0700] rev 1218
wrapcommand: allow adding additional arguments to commands
This allows eh.wrapcommand to specify additional parameters to be added to the
commands being wrapped. This will be useful when wrapping strip in the future.
Durham Goode <durham@fb.com> [Thu, 19 Mar 2015 17:42:21 -0700] rev 1217
pushexperiment: remove use of obsolete._enabled
pushexperiment.py was using obsolete._enabled but it didn't cause any tests to
fail so I didn't see it. Let's go ahead and replace it with the new
obsolete.isenabled() api.
Durham Goode <durham@fb.com> [Thu, 19 Mar 2015 13:42:27 -0700] rev 1216
oldobsolete: remove use of obsolete._enabled
obsolete._enabled is deprecated. Switch to the newer obsolete.isenabled() logic.
Durham Goode <durham@fb.com> [Thu, 19 Mar 2015 13:41:58 -0700] rev 1215
server4simple: remove use of obsolete._enabled
obsolete._enabled is deprecated, so let's replace it's uses.
Durham Goode <durham@fb.com> [Tue, 17 Mar 2015 19:04:16 -0700] rev 1214
config: remove uses of obsolete._enabled
Upstream Mercurial will be removing obsolete._enabled soon, so switch all our
uses of it to use the new obsolete.isenabled(repo, option) function.
Durham Goode <durham@fb.com> [Tue, 17 Mar 2015 19:03:27 -0700] rev 1213
config: enable all obsolete options
Upstream Mercurial has moved away from obsolete._enabled as the obsolete flag to
a series of options. This patch makes evolve enable all the options
automatically if the user hasn't enabled any already. This preserves the
existing evolve experience of not having to configure anything.
Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 13 Mar 2015 10:49:02 -0700] rev 1212
merge with stable
Durham Goode <durham@fb.com> [Fri, 13 Mar 2015 09:05:34 -0700] rev 1211
evolve: fix manifest usage to match upstream
The manifest class upstream is no longer a dictionary, so switch to using an API
it does support.
Durham Goode <durham@fb.com> [Fri, 13 Mar 2015 09:04:12 -0700] rev 1210
drophack: fix to match upstream repair.strip
repair.strip upstream now assumes the input nodelist is a list, so update to
match it. The upstream change only affects the name of the backup bundle, so
this shouldn't affect any other functionality.
Matt Harbison <matt_harbison@yahoo.com> [Thu, 05 Mar 2015 20:02:07 -0500] rev 1209
evolve: prevent a crash in httpclient_pushobsmarkers() when pushing
I've been running into a crash when pushing from my hg repo in a Fedora 16 VM to
Win7 running 'hg serve', even with extensions disabled on both sides:
../hg push -r . pc
pushing to http://192.168.1.4:8000/
searching for changes
no changes found
pushing 2 obsolescence markers (263 bytes)
** unknown exception encountered, please report by visiting
...
File "hg-evolve/hgext/evolve.py", line 2482, in _pushobsolete
remote.evoext_pushobsmarkers_0(obsdata)
File "hg-evolve/hgext/evolve.py", line 2522, in httpclient_pushobsmarkers
ret, output = self._call('evoext_pushobsmarkers_0', data=obsfile)
ValueError: too many values to unpack
I'm not sure how this repo differs from the one in the test suite, so I'm not
sure how to craft a test for this. The failure occurs even when there _are_
csets to push. There was no crash if no obsolete markers needed to be pushed.
At any rate, this code was stolen from httppeer._callpush(), where it calls
self._call(). The socket exception handling wasn't necessary to fix the crash,
but the calling code might as well be duplicated in its entirety.
A successful push with this patch looks like this. Note the final line is _not_
in the output of the http push in test-simple4server.t:
../hg push -r . pc
pushing to http://192.168.1.4:8000/
searching for changes
remote has heads on branch 'default' that are not known locally: 3af110194a0c
56000e3ae44d 57ac6e51d290 7da4355c21b8 and 8 others
remote: adding changesets
remote: adding manifests
remote: adding file changes
remote: added 1 changesets with 0 changes to 1 files (+1 heads)
pushing 4 obsolescence markers (525 bytes)
remote: 2 obsolescence markers added
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 05 Mar 2015 10:52:01 -0800] rev 1208
merge stable into default
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 05 Mar 2015 10:45:53 -0800] rev 1207
Added tag 5.1.1 for changeset 9b8628e0a142
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 05 Mar 2015 10:45:40 -0800] rev 1206
prepare release 5.1.1