equal
deleted
inserted
replaced
7 |
7 |
8 from __future__ import absolute_import |
8 from __future__ import absolute_import |
9 |
9 |
10 import difflib |
10 import difflib |
11 import errno |
11 import errno |
12 import itertools |
|
13 import os |
12 import os |
14 import re |
13 import re |
15 import sys |
14 import sys |
16 |
15 |
17 from .i18n import _ |
16 from .i18n import _ |
779 '--good': good, |
778 '--good': good, |
780 '--reset': reset, |
779 '--reset': reset, |
781 '--skip': skip, |
780 '--skip': skip, |
782 } |
781 } |
783 |
782 |
784 for left, right in itertools.combinations(sorted(incompatibles), 2): |
783 enabled = [x for x in incompatibles if incompatibles[x]] |
785 if incompatibles[left] and incompatibles[right]: |
784 |
786 raise error.Abort(_('%s and %s are incompatible') % (left, right)) |
785 if len(enabled) > 1: |
|
786 raise error.Abort(_('%s and %s are incompatible') % |
|
787 tuple(sorted(enabled)[0:2])) |
787 |
788 |
788 if reset: |
789 if reset: |
789 hbisect.resetstate(repo) |
790 hbisect.resetstate(repo) |
790 return |
791 return |
791 |
792 |