Commit Graph

22 Commits

Author SHA1 Message Date
Martin Geisler
4c02a87d5a hbisect: use real Booleans instead of 0/1 2011-05-06 10:02:46 +02:00
Martin Geisler
5f46f16fb7 Lowercase error messages 2010-08-29 22:37:58 +02:00
Matt Mackall
f710302a5d bisect: better message for unrelated starting revisions 2010-08-20 17:16:37 -05:00
Matt Mackall
595d66f424 Update license to GPLv2+ 2010-01-19 22:20:08 -06:00
Matt Mackall
34aac1e48a bisect: limit considered set to descendants of first good rev 2009-10-12 14:59:28 -05:00
Martin Geisler
1dfd32f41d hbisect: use set.update for bulk updates 2009-05-17 16:57:12 +02:00
Benoit Boissinot
dbf61e11b8 bisect: use set instead of dict 2009-05-17 03:40:54 +02:00
Martin Geisler
7d509c2459 add blank line after copyright notices and after header 2009-04-26 01:25:53 +02:00
Martin Geisler
750183bdad updated license to be explicit about GPL version 2 2009-04-26 01:08:54 +02:00
Martin Geisler
e2222d3c43 replace set-like dictionaries with real sets
Many of the dictionaries created by dict.fromkeys were emulating sets.
These can now be replaced with real sets.
2009-04-22 00:57:28 +02:00
Ronny Pfannschmidt
5356baa346 switch lock releasing in the core from gc to explicit 2009-04-22 02:01:22 +02:00
Benoit Boissinot
6469b223b7 bisect: use integer division 2009-03-28 17:29:14 +01:00
Bernhard Leiner
586b4a2c7c Circumvent removal of valid bisect candidates due to previously skipped ones
As reported in issue 1445:
A valid candidate revision for a bisect test is not considered for testing
due to its skipped ancestor. If this revision is the only untested one left
an assertion error occurs.
2008-12-27 19:05:26 +01:00
Alexander Solovyov
df3cbc6026 bisect: ability to check revision with command 2008-10-10 16:58:14 +03:00
Patrick Mezard
d5320d378a Merge with crew-stable 2008-08-02 23:45:10 +02:00
Bernhard Leiner
5e75dbce63 Add support for multiple possible bisect results (issue1228, issue1182)
The real reason for both issue is that bisect can not handle cases where there
are multiple possibilities for the result.

Example (from issue1228):
rev 0 -> good
rev 1 -> skipped
rev 2 -> skipped
rev 3 -> skipped
rev 4 -> bad

Note that this patch does not only fix the reported Assertion Error but also
the problem of a non converging bisect:

hg init
for i in `seq 3`; do echo $i > $i; hg add $i; hg ci -m$i; done
hg bisect -b 2
hg bisect -g 0
hg bisect -s

From this state on, you can:
 a) mark as bad forever (non converging!)
 b) mark as good to get an inconsistent state
 c) skip for the Assertion Error

Minor description and code edits by pmezard.
2008-08-02 22:10:10 +02:00
Matt Mackall
a65ef7bc5d util: add sort helper 2008-06-27 18:28:45 -05:00
Matt Mackall
bc715be859 add __len__ and __iter__ methods to repo and revlog 2008-06-26 14:35:50 -05:00
Joel Rosdahl
c26213193c Avoid importing mercurial.node/mercurial.repo stuff from mercurial.hg 2008-03-06 22:51:16 +01:00
Matt Mackall
6b6b2e0e73 bisect: improve tests
- test skipping
- test noupdate
- test bad->good search
- test inconsistent state
2007-12-31 18:20:34 -06:00
Matt Mackall
917f5ce70a bisect: handle search for bad to good transitions
Automatically detect whether we're looking for a bad to good
transition rather than the usual good to bad transition by detecting
when badrev is inside the good set and flipping good/bad.
2007-12-31 18:20:34 -06:00
Matt Mackall
bee8b54b36 bisect: make bisect a built-in command 2007-12-31 18:20:34 -06:00