Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Jun 2017 12:08:49 +0200] rev 32628
strip: do not include obsolescence markers for the temporary bundle
When stripping, we need to put all non-stripped revisions "above" the stripped
ones in a "temporary-bundle" while we strip the targets revision. Then we
reapply that bundle to restore these non-stripped revisions (with a new revision
numbers). We skip the inclusion of obsolescence markers in that bundle. This is
safe since all obsmarkers we plan to strip will be backed-up in the strip backup
bundle. Including the markers would create issue in some case were we try to
strip a prune markers that is "relevant" to a revision in the
"temporary-bundle".
(note: we do not strip obsmarkers yet)
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Jun 2017 08:44:01 +0200] rev 32627
exclusive-markers: update the dedicated test with list of exclusive markers
We now display data about the "exclusive markers" in the test dedicated to
relevant and exclusive markers computation and usage. Each output have been
carefully validated
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 20 May 2017 15:02:30 +0200] rev 32626
obsolete: add a function to compute "exclusive-markers" for a set of nodes
This set will be used to select the obsmarkers to be stripped alongside the
stripped changesets. See the function docstring for details.
More advanced testing is introduced in the next changesets to keep this one
simpler. That extra testing provides more example.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 01 Jun 2017 08:32:24 +0200] rev 32625
test-obsolete-bundle-strip: check all changesets in the isolated prune case
We also want to check the result of the various computations when both
changesets are selected (the pruned changesets and its parents).
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 26 May 2017 03:52:11 +0200] rev 32624
test-obsolete-bundle-strip: add testing of markers backup during strip
When applicable, we strip the revision tested in the test and we check that the
backup bundle contains the appropriate markers.
Pierre-Yves David <pierre-yves.david@octobus.net> [Sat, 20 May 2017 15:06:10 +0200] rev 32623
strip: also backup obsmarkers
We are about to give 'strip' the ability to remove obsmarkers. Before we start
removing data we must make sure it is preserved somewhere. So the backup bundle
created by 'strip' now contains obsmarkers.
Augie Fackler <augie@google.com> [Tue, 30 May 2017 20:48:43 -0400] rev 32622
tests: fix run-tests when there's a bad #if in a test
That has (and still does) caused the test to be skipped, but without
this fix it was possible to exit this block of code without clearing
the output channel, which poisoned the channel list for later test
method runs. Fix this by always clearing the channel in a finally.
The test for this is somewhat unfortunate. Sadly, I couldn't get a way
to reproduce this with less than 2n+1 test cases, nor could I get it
to reproduce reliably without the sleep statements. It's also crucial
that the test with the broken #if be smaller (in terms of byte count)
than the sleeping tests, so that it runs first and would poison the
channel list prior to another test needing that entry from the list.
Augie Fackler <augie@google.com> [Tue, 30 May 2017 20:47:00 -0400] rev 32621
tests: make run-tests fail early if no channel is found
I hit a weird corner case in run-tests where a test that caused an
exception to be raised was breaking everything with an unbound
variable error a few lines down because channel was never getting set
in this for loop. By adding an `else` clause to this for loop, we can
explode right away if we can't find a channel and give the developer a
better chance at figuring out what's going on.