Commit Graph

44 Commits

Author SHA1 Message Date
Michael Haggerty
a597e11046 Add copyright and GPL verbiage. 2012-12-27 23:43:15 +01:00
Michael Haggerty
169a0ac46d Strip out the --progress option. 2012-12-27 23:29:13 +01:00
Michael Haggerty
2aa9019f56 Add a README file. 2012-12-27 23:27:00 +01:00
Michael Haggerty
8684a34a01 Store the length of MergeResults.commits1 and commits2 as separate members.
(They're needed an awful lot.)
2012-12-09 16:58:33 +01:00
Michael Haggerty
c49e2d5c4b Remove unused members MergeResults.indexes1 and indexes2. 2012-12-09 16:58:00 +01:00
Michael Haggerty
3b4d07b376 Keep track of which results were tested explicitly vs. inferred. 2012-12-09 16:49:31 +01:00
Michael Haggerty
03926ec151 Rename MergeResults.results to _data. 2012-12-09 12:34:03 +01:00
Michael Haggerty
0eb1832410 Teach MergeResults.__setitem__() to handle slices.
Use this to replace fill_block().
2012-12-09 12:33:02 +01:00
Michael Haggerty
811d441a12 Change fill_assuming_monotonic() to call find_first_false() directly. 2012-12-09 12:24:19 +01:00
Michael Haggerty
c10477e9de Change find_first_false() to take both lo and hi as arguments. 2012-12-09 12:18:21 +01:00
Michael Haggerty
90b8f83d74 Change MergeResults to work with integer indexes.
Also add a method MergeResults.is_mergeable().
2012-12-09 12:18:02 +01:00
Michael Haggerty
dc6ba05847 Extract method find_first_false(). 2012-12-09 09:19:05 +01:00
Michael Haggerty
2a25080845 Change how rev_list() is called. 2012-12-09 09:13:33 +01:00
Michael Haggerty
454649935a fill_full() and fill_assuming_monotonic() do not need commits arguments.
The lists of commits are already available via the results argument.
2012-12-09 09:05:53 +01:00
Michael Haggerty
5cf81f5b75 Remove TrapsosedMergeResults, which is no longer used. 2012-12-09 08:24:21 +01:00
Michael Haggerty
c783d34cef Improve docstring. 2012-12-09 08:24:06 +01:00
Michael Haggerty
fa2181b85e Document the --diagram option and change how full diagram computation is requested. 2012-12-09 08:16:39 +01:00
Michael Haggerty
282c659523 Move special-casing from find_first_failing_merge() to fill_assuming_monotonic(). 2012-12-09 08:16:01 +01:00
Michael Haggerty
517fd58e29 Fill diagram using zig-zag algorithm. 2012-12-09 07:38:51 +01:00
Michael Haggerty
7cd168b8b7 Allow MergeResults to be transposed.
This makes it easier to implement fill_assuming_monotonic().
2012-12-06 19:07:20 +01:00
Michael Haggerty
b9f4d4c2a1 After the first bisection, use a second pair to find the corners of the boxes just discovered. 2012-12-06 14:19:47 +01:00
Michael Haggerty
0acacb684c Remove temporary. 2012-12-05 10:43:32 +01:00
Michael Haggerty
42085c6c41 Change fill_block() to take two lists of commits.
This allows it to work through the MergeResults API.
2012-12-05 10:40:39 +01:00
Michael Haggerty
37a083dd3e Share some common code in fill_block(). 2012-12-05 10:25:03 +01:00
Michael Haggerty
1aa9932e04 Inline local variables. 2012-12-05 10:12:41 +01:00
Michael Haggerty
a25d30edcc Remove member MergeResults.assume_monotonic. 2012-12-05 10:11:17 +01:00
Michael Haggerty
66dca86191 Move the block-setting code from MergeResults.__setitem__() to a new fill_block() function. 2012-12-05 10:10:44 +01:00
Michael Haggerty
b04580ee6c Split fill() into two functions, fill_full() and fill_assuming_monotonic(). 2012-12-05 09:59:32 +01:00
Michael Haggerty
cb85a3d4ee Convert fill() into a top-level function. 2012-12-05 09:56:07 +01:00
Michael Haggerty
a7943a9362 Remove unused variables. 2012-12-05 09:03:56 +01:00
Michael Haggerty
7219f73eaf Rename "graph" -> "diagram". 2012-12-05 08:34:39 +01:00
Michael Haggerty
1be4182efd Write graph as PNM file.
Add an option to show progress while working.
2012-12-03 17:05:37 +01:00
Michael Haggerty
39f0b69ea0 Optimize find_first_failing_merge() for the common case that all merges succeed or all fail. 2012-12-01 08:43:04 +01:00
Michael Haggerty
a657754551 Bisect by block rather than line by line. 2012-12-01 08:09:12 +01:00
Michael Haggerty
74eec88dce Move code for filling MergeResults to a class method. 2012-12-01 07:35:29 +01:00
Michael Haggerty
0d2500fe8d Use a class to accumulate results. 2012-12-01 07:31:21 +01:00
Michael Haggerty
80324f404e Add option --graph/--graph-full. 2012-12-01 06:47:06 +01:00
Michael Haggerty
1f932bff68 Explicitly invoke Python 2.x. 2012-12-01 06:05:15 +01:00
Michael Haggerty
8df90cfb72 Update and improve file docstring.
(It is also used in the --help output.)
2012-12-01 05:59:17 +01:00
Michael Haggerty
70cce91508 Implement functions not available in Python 2.4's subprocess module. 2012-12-01 05:11:22 +01:00
Michael Haggerty
67a2132af5 Improve progress output during incremental merges. 2012-11-09 10:03:34 +01:00
Michael Haggerty
7d1e149754 Implement incremental merging. 2012-11-09 10:01:54 +01:00
Michael Haggerty
30e640b505 Use try...finally. 2012-11-01 15:31:10 +01:00
Michael Haggerty
f76a185203 An experiment in using bisection to find merge/rebase points. 2012-10-25 16:28:43 +02:00