summaryrefslogtreecommitdiff
path: root/CHANGELOG
blob: c2072949fda91b39246025f51968ca4114295155 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
Changelog
=========

10.5.3 -- 2022-12-09
--------------------

  * compatibility with Mercurial 6.3

  * evolve: make obs-hash-range cache and stable-range cache (that both use
    SQLite databases) slightly more tolerant to FS issues (issue6246)
  * evolve: adapt to Python 3.11 BC breakage with `random.sample()`

topic (0.24.2)

  * compatibility with Mercurial 6.3

  * topic: invalidate the topic cache when branchcache is invalidated, to fix
    an issue in TortoiseHg where stale topic labels appear in certain cases

  * next: properly handle cases when user selects an aspiring child, making
    sure that the destination is evolved when needed

10.5.2 -- 2022-07-13
--------------------

  * compatibility with Mercurial 6.2

topic (0.24.1)

  * compatibility with Mercurial 6.2

10.5.1 -- 2022-04-26
--------------------

  * evolve: avoid updating working copy when --dry-run is given (issue6669)
  * evolve: correctly pick successors of a split changeset when its child was
    pruned (issue6648)
  * fixup: allow to be aborted using hg abort
  * fixup: work correctly with bookmarks

  * packaging: allow to unvendor cbor, update debian/copyright

10.5.0 -- 2022-02-23
--------------------

  * compatibility with Mercurial 6.1

  * evolve: handle cases when working directory parent has multiple successors
  * multiple commands: do not check for new divergence if divergence is allowed
    via configuration
  * fixup: a new experimental command to add working directory changes to a
    specified revision
  * pick: show abort message after pick is aborted for consistency

  * evolve, pullbundle: drop compatibility with Mercurial 4.7

topic (0.24.0)

  * compatibility with Mercurial 6.1

  * topic: make histedit preserve topics when the first changeset in a stack
    is rewritten (issue6550)

  * drop compatibility with Mercurial 4.7

10.4.1 -- 2021-11-19
--------------------

  * compatibility with Mercurial 6.0

  * documentation: add a help section about making evolve skip
    content-divergence check with experimental.evolution.allowdivergence.
  * documentation: mention that pick uses the active topic if it's set

topic (0.23.1)

  * compatibility with Mercurial 6.0

10.4.0 -- 2021-10-12
--------------------

  * evolve: use a more stable criteria for picking p1 when solving
    content-divergence (most recent evolution will be used)
  * evolve: drop the deprecated --unstable, --divergent and --bumped flags,
    they were replaced by --orphan, --content-divergent and --phase-divergent
    respectively a long time ago
  * evolve: remove experimental.obshashrange.lru-size docs, that config option
    didn't do anything for a long time
  * evolve: use precheck function from Mercurial 5.9+ when available, mostly
    affects error messages and exit codes

  * next: add an --abort flag

  * evolve, topic, pullbundle: drop compatibility with Mercurial 4.6

topic (0.23.0)

  * topic: don't cache .topic() of memctx instances, as that could produce
    KeyError: b'topic' during some rewrite operations (issue6500)
  * topic: drop old code for working with amends on ancient hg versions (~3.6)

10.3.3 -- 2021-08-13
--------------------

  * evolve: compatibility with Mercurial 5.9
  * fold: make sure to save commit messages in last-message.txt, also affects
    metaedit (issue6549)
  * touch/fold/metaedit/rewind: no longer lose changes from merge commits
    (issue6416). As a consequence (for technical reasons), when run with
    Mercurial 5.5 and earlier, these commands now require there to be no
    unresolved conflicts.

topic (0.22.3)

  * topic: correctly update from public commits with a (now hidden) topic
    when hg update is called without any revision (issue6553)
  * topic: fix the help text to show how to disable publishing


10.3.2 -- 2021-05-28
--------------------

  * next: remove duplicated targets when updating from an unstable changeset
  * evolve: use "served" repo filter to guess what the server will publish

topic (0.22.2)

  * topic: don't lose any file changes when changing topic of a merge commit
  * topic: announce ext-topics-publish capability in case of SSH and HTTP too

10.3.1 -- 2021-04-25
--------------------

  * cache: fix corruption issue when mixing 32-bit and 64-bit environments

  * next: unstable changesets with a different topic are no longer targets for
    hg next as long as it's invoked without --no-topic flag
  * next: when some potential targets are unstable, ask user which changeset
    they want to update to (only mixing stable and unstable when --evolve flag
    is given, which is the default)

  * packaging: default to using Python 3 in Makefile

topic (0.22.1)

  * compatibility with Mercurial 5.8

10.3.0 -- 2021-03-11
--------------------

  * doc: document stack as a substitute for MQ's qseries
  * doc: document revsets provided by evolve extension

  * evolve: add a experimental.evolution.in-memory config for running evolve
    in memory (hg >= 5.6)
  * evolve: improve content-divergence resolution that involves parent changes
  * evolve: preserve wdir parent when using `hg evolve --stop`

  * obslog: clarify the command name in the help,

  * pdiff, pstatus: drop some irrelevant command flags inherited from `hg diff`
    and `hg status` respectively

  * rewind: detect and abort on cases when we rewind to changesets that are
    predecessors / successors of each other
  * rewind: when user gives only some parts of a fold, include the other parts
    as well, or abort if they are missing from local repo

topic (0.22.0)

  * doc: change topic phrase 'disappear' to 'fade out'

10.2.0.post1 -- 2021-02-01
--------------------------

same content as 10.2.0, but with a valid tarball on pypi.

10.2.0 -- 2021-02-01
--------------------

  * compatibility with Mercurial 5.7

  * doc: update the MQ To Evolve guide and fix build warning for index.rst

  * evolve: improve resolution of some case of parent divergence
  * evolve: respect command-templates.oneline-summary if configured
  * evolve: remove spurious "working directory is now at ..." messages
  * evolve: various documentation improvements

  * packaging: default to building docs on Python 3

  * strip: remove experimental.prunestrip option

topic (0.21.0)

  * performance: speed up various operations using an in-memory cache for topic

  * rebase: prevent in-memory rebase from silently dropping topic (by disabling
    the feature)

  * topic: rework how ctx.branch() is wrapped
  * topic: look for topic heads only when necessary, this fixes the output of
    e.g. hg heads when topics are in play

10.1.0 -- 2020-10-31
--------------------

  * compatibility with Mercurial 5.6

  * numerous minor changes to packaging, Makefile, README moved to README.rst

  * evolve: various improvements to content-divergence resolution
  * evolve: fix various issues with --continue when solving content-divergence
  * evolve: specify the source of config override for `server.bundle1=no`
  * evolve: avoid leaving mergestate after instability resolution
  * evolve: while resolving conflicts, the evolved node will no longer be a
    dirstate parent (won't show up in `hg parents` and not as `@` in `hg log -G`,
    but it will show up as `%` with hg >= 5.4)

  * metaedit: update bookmark location when applicable

  * rewind: add a --dry-run flag
  * rewind: properly record rewind of splits as folds

topic (0.20.0)

  * stack: support foo#stack relation revset (hg-5.4+ only)
  * merge: add a experimental.topic.linear-merge option to allow oedipus merges
    in some cases

10.0.2 -- 2020-09-08
--------------------

  * py3: use '%d' for formatting revision numbers in stable range cache warning
    (issue6390)

  * split: correctly handle discard action after previously splitting changes
    into more than one commit

  * uncommit: fix situation where added file would be left in a wrong state

topic (0.19.2)

  * revset: when processing `topic(REVSET)`, no longer return changesets
    without topic from REVSET

10.0.1 -- 2020-07-31
--------------------

  * compatibility with Mercurial 5.5

  * evolve: update the template keywords section in `hg help -e evolve`

  * obslog: make obslog --no-origin -f work with multiple successor sets

topic (0.19.1)

  * compatibility with Mercurial 5.5

  * topic: hg push --topic does-not-exist now doesn't try to push unrelated
    changesets and aborts instead
  * topic: hg outgoing/push --topic . will use current topic

10.0.0 -- 2020-05-09
--------------------

  * compat: clean up old compatibility code
  * compat: compatibility with Mercurial 5.4

  * evolve: add {obsorigin}, a template keyword that works similarly to
    {obsfate}, but shows predecessors of a changeset
  * evolve: fix permissions of new cache files using SQLite
  * evolve: always create commit when resolving divergence
  * evolve: handle relocation during divergence resolution producing no changes
  * evolve: provide cache to successorssets() in more cases

  * obslog: make --all and --filternonlocal work properly with --no-graph
  * obslog: add --origin flag to show predecessors instead of successors
  * obslog: make --origin flag the default

  * stablerangecache: sanity check subranges

topic (0.19.0)

  * auto-publish: issue the capabilities in all cases

  * topic: provide cache to successorssets() in one more case

9.3.1 -- 2020-04-08
-------------------

  * compat: make __touch-noise__ and __rewind-hash__ extra field be bytes

  * obsexchange: avoid sending too large request to http server
  * obsdiscovery: server no longer aborts with a 500 error if client sends a
    request without obscommon
  * obsdiscovery: avoid considering locally hidden changeset
  * single-heads: ignore obsolete section when enforcing one head per branch

  * evolve: improved behavior when evolving above the result of a split
  * evolve: checking for new head on push is no longer confused by mixed
    branches (or topics)

topic (0.18.1)

  * topic: fix auto-publish=abort with server that auto-publishes bare branches

9.3.0 -- 2020-03-04
-------------------

  * compat: compatibility with Mercurial 5.3
  * compat: drop compatibility with Mercurial 4.5
  * compat: cleanup old compatibility code for Mercurial < 4.5

  * evolve: extensive cleanup of functions, template keywords and compatibility
    code related to obsfate and successorssets
  * evolve: add content divergence checking to the standard pre-rewrite check
  * evolve: improve the message associated with content divergence
  * evolve: correctly handle --continue and --stop when relocating
    content-divergent changesets

  * exchange: dropped more bundle-1 related dead code

  * help: categorizing evolve and topic commands

  * obslog: make templatable
  * obslog: show folds and use more specific verbs when possible

  * topic: add a `experimental.topic.server-gate-topic-changesets` config

9.2.2 -- 2020-01-31
-------------------

  * amend: cleany abort when both `--patch` and `--extract` are passed
  * compatibility for changes in upcoming Mercurial 5.3
  * debian: allow to build with python 3
  * documentation: update text and add missing figures
  * evolve: also merge the date field when solving content-divergence
  * evolve: fix content-divergence resolution when p1 is null (issue6201)
  * evolve: make sure divergence resolution doesn't undo changes (issue6203)
  * evolve: preserve date when resolving content-divergence (issue6202)
  * evolve: use more often seen metavariables in command synopsis strings
  * metaedit: don't change commit date by default (issue5994),
  * pick: don't create any successors when there were no changes (issue6093),
  * py3: fix documentation generation
  * py3: fix setup.py --version
  * py3: fix some exception formatting
  * rewind: preserve date
  * topic: add more options to command synopsis string
  * topic: fix a bug in logic of choosing destination for hg update
  * topic: fix a bug in logic to choose destination when no active topic

9.2.1 -- 2019-10-05
-------------------

  * setup: fix install on python 3

9.2.0 -- 2019-09-28
-------------------

  * evolve: check that relocating makes sense in _solvedivergent() (issue5958)
  * evolve: test that target is not orig in _solveunstable() (issue6097)
  * fold: check allowdivergence before folding obsolete changesets (issue5817)
  * obslog: correct spacing of patch output with word-diff=yes (issue6175)
  * stack: make sure to preserve dependencies, fixes certain complex cases
  * prune: improve documentation for `--pair`

  * python3: beta support for Python 3.6+
    (thanks to ludovicchabant, martinvonz and rgomes for their hard work)
  * prune: clarify error message when no revision were passed,
  * evolve: avoid possible race conditions bu locking earlier
  * abort: add support for `evolve` and `pick` to `hg abort` (hg-5.1+)
  * rewind: add --keep flag to preserve working copy

9.1.0 -- 2019-07-29
-------------------

  * compatibility with upcoming Mercurial 5.1,

  * pick: no longer forget file in case of conflict (issue6037),
  * pick: properly report and cleanup "unfinished state",

  * prune: don't update wcp if pruned revision are unrelated (issue6137),
  * prune: spell --successor flag without any unnecessary shortcuts,
  * prune: update to the successor of wdir also with --pair/--biject (issue6142)

  * evolve: properly prune changeset with no change in case of conflict (issue5967),
  * evolve: use the same wording as core in case of unresolved conflict,
  * evolve: minor output message improvements,
  * evolve: improve `hg evolve --all` behavior when "." is obsolete,

  * touch: detect resulting divergence in more cases (issue6107),
  * touch: now works on merge commit too,

  * rewind: fix behavior for merge commit,

  * fold: allow fold with merge commit

  * metaedit: now also operates on merge commit.

(topic 0.16.0)

  * topic: fix confusion in branch heads checking logic.


9.0.0 -- 2019-06-06
-------------------

  * evolve: preserve the working directory after resolving instability (BC)
            (use `hg next` or `hg evolve --update` to get the old behavior)
  * evolve: evolve all relevant revision by default (BC)
            (use --no-all to evolve only one)
  * evolve: drop compatibility with 4.4
  * evolve: reinstalled compatibility with narrow repositories,
  * evolve: use "unstable" instead of "troubled"
  * evolve: run multiple stabilisation in the same transaction
  * evolve: improve users merging during content-divergence
  * evolve: reduce the verbosity of `content-divergence` resolution
  * documentation: various improvement and vocabulary update
  * packaging: fix documentation build step on debian
  * progress: improved support in various command
  * help: avoid duplicated entry for some templates
  * obsdiscovery: drop support for deprecated discovery protocol `obshash`
    (Make sure your servers are configured to use the obshashrange one.
    It is available in evolve 7.2 and above.)

(topic 0.15.0)

  * stack: handle hash sizes when --debug flag is provided
  * stack: remove 'topic.' prefix from colors/labels (BC)
  * stack: always provide (full) node hash to non-default --template
  * topic: drop the b# alias. It conflicted with normal hashes.
  * topic: add a `experimental.topic.allow-publish` option (default: True)

8.5.1 -- 2019-04-23
-------------------

  * evolve: make sure we use upstream merge code with 5.0,
  * evolve: restore compatibility with 4.4
            (This regress the narrow compatibility)
  * evolve: fix progress display with hg <= 4.6
  * topic: compatibility with mercurial-5.0,
  * topic: improve extensions isolation (issue6121).

8.5.0 -- 2019-04-12
-------------------

  * evolve: fix an recoverable state (issue6053),
  * evolve: share evolve related cache between `shares`,
  * evolve: make sure the extensions are only active on repository that
            enables it (issue6057).
  * evolve: improved compatibility with narrow repositories,
  * evolve: preserve --[no-]update value over --continue,
  * evolve: make sure divergence resolution keep the initial author (issue6113),
  * evolve: improved support for content-divergence with public changesets,
  * pick: align working dir branch with the one from the pick result (issue6089),
  * pick: add the standard `--tool` option,
  * prune: fix error message when pruning public changesets,
  * split: preserve phases (issue6048),
  * touch: fix error message when touching public changesets,
  * uncommit: abort if an explicitly given file cannot be uncommitted.

topic 0.14.0

  * stack: support ranges in revsets indexing,
  * stack: mention divergences unstability,
  * stack: improved and speed --children flag up.

8.4.0 -- 2019-01-22
-------------------

  * compat: add compatibility with Mercurial 4.9
  * compat: drop compatibility with Mercurial 4.3
  * evolve: avoid potential crash when stabilizing orphan merges
  * evolve: pick right destination in split+prune cases issue5686 (hg-4.9 only)
  * evolve: prioritize --rev/--any/--all option over obsolete working directory
  * fold: concatenate commit message in revision order
  * next: evolve aspiring children by default (use --no-evolve to skip)
  * next: pick lower part of a split as destination
  * push: have `--publish` overrule the `auto-publish` config
  * split: accept file patterns
  * split: improve and update the user prompt (BC)
  * split: make it possible to drop change during a split
  * split: no longer accept revision without --rev (BC)
  * split: support for non interactive splits

topic 0.13.0

  * stack: introduce a --children flag (see help for details)
  * stack: support for '#stack[idx]' absolute indexing in revset (hg-4.9+ only)
  * topic: support for '#topic[idx]' relative indexing in revset (hg-4.9+ only)
  * topic: make --age compatible with the usual other display for `hg topic`
  * topics: improve the message around topic changes

8.3.3 -- 2018-12-24
-------------------

  * evolve: properly detect unresolved merge conflict (issue-5966)
  * evolve: fix possible crash when the repo changes during evolve (issue-6028)
  * test: avoid leaking `hg serve` process
  * topic: fix error message for the `ngtip` revset

8.3.2 -- 2018-11-27
-------------------

  * evolve: not longer attempt to translate revision's descriptions (issue6016)
  * evolve: fix compatibility with mercurial 4.8's narrow extension.
  * pick: fix summary help text
  * topic: only use pager when it make senses

8.3.1 -- 2018-10-25
-------------------

  * evolve+topic: fix possible crash during content-divergence evolution
  * use "new" unstabilities vocabulary in help
  * compat: compatibility with Mercurial 4.8rc0

8.3.0 -- 2018-10-12
-------------------

  * evolve: avoid redundant output when handling linear orphans
  * evolve: use stack alias s# in `hg evolve` messages
  * next, prev: use stack alias s# when relevant
  * rewind: add an undo alias
  * caches: skip warming the stablerange cache on strip in "auto" mode
  * topic: properly register the '{topicidx}' for mercurial <= 4.5

  * pullbundle: experimental extension to slice pull in multiple slices whose
                associated bundle can be cached. The extensions is shipped
                alongside evolve only for convenience. It it requires data
                structures that currently live in the evolve extensions.

8.2.1 -- 2018-09-14
-------------------

  * obshashrange: issue the "long stable cache" update message only once
  * obshashrange: reduce impact of cache invalidation from many new obsmarkers
  * caches: properly silence permission error related to caches

8.2.0 -- 2018-09-03
-------------------

  * prune: rename `--biject` flag to `--pair` (old flag is kept as an alias)
  * pick: rename the "grab" command to "pick" to avoid ambiguity with graft
  * discovery: enable obshashrange based discovery by default

topic

  * revset: `topic("patterns")` now handle standard patterns ("re:", etc)
  * revset: `topic(REVS)` matches revisions with same topic as REVS
  * topic: using `s#` alias instead of `t#` and `b#` alias
           (compat with old form is preserved)

8.1.2 -- 2018-08-28
-------------------

  * obshashrange: improved robusness of the cache under heavy load
  * obshashrange: force recomputation of the final obshash related cache
                  (to make sure people benefit from the 8.1.1 fixes)

8.1.1 -- 2018-08-21
-------------------

  * clone: fix possible crash when using clone bundle and forcing cache warming
  * evolve: properly set second parent during conflict (issue5927)
  * next: delete the evolvestate after aborting interrupted `next --evolve`
  * next: fix topic restriction when passing --evolve
  * obshashrange: fix speed and consistency issues during cache invalidation
  * obshashrange: properly persist all caches involved in obshashrange discovery
  * prune: improve documentation

8.1.0 -- 2018-08-03
-------------------

  * compatibility with mercurial 4.7
  * evolve: improve multiple aspect of content-divergence resolution
            * branch changes handling,
            * parent changes handling,
            * description changes handling,
            * divergent stack handling,
            * improved resume, stop and abort of divergent resolution
  * evolve: improved automatic resolution of phase-divergence

  * evolve: add a --update and --no-update flag to evolve to control final
            working copy parent
  * evolve: show `hg help evolve.interrupted-evolve` in error when conflicts
  * evolve: show unfinished state information in `hg status -v` (issue5886)
  * evolve: move bookmarks also when updating to successors (issue5923)
  * evolve: improve orphan resolution when combined with divergence (issue5946)
  * amend: abort `--patch` by saving an empty file (issue5925)
  *
  * evolve: add a new `--no-update` flag to keep working copy on the initial
            revision.
  * evolve: new help section dedicated to resuming operation interrupted by
            merge conflit, `hg help evolve.interrupted`.
  * obslog: --filternonlocal

  * rewind: first limited version of `rewind` command to restore stack of commit to a
            precusors state (check command help for detail and limitation)

topic (0.10.0)

  * display a hint when a topic becomes empty

8.0.1 -- 2018-06-11
-------------------

  * compatibility with mercurial 4.6.1
  * next-prev: respect commands.update.check config option (issue5808)
  * next-prev: fix `evolve --abort` on conflicts (issue5897)
  * obslog: fix breakage when commit has no description
  * amend: use context manager for locks (issue5887)
  * evolve: fix detection of interactive shell

topic (0.9.1)

  * topic: fix documentation formatting

8.0.0 -- 2018-04-25
-------------------

  * evolve: a new `--abort` flag which aborts an interrupted evolve
            resolving orphans,
  * `hg evolve` now return 0 if there is nothing to evolve,
  * amend: a new `--patch` flag to make changes to wdir parent by editing patch,
  * evolve: fixed some memory leak issue,
  * evolve: prevent some crash with merge and split (issue5833 and issue5832),
  * evolve: improvemed support for solving phase-divergence situation,
  * evolve: improvemed support for solving orphan situation,
  * obsdiscovery: added unit to various progress bar,
  * evolve: record "operation" for command where it was missing,

  * compatibility with Mercurial 4.6
  * drop support for Mercurial 4.1 and 4.2
  * `--obsolete` and `--old-obsolete` flags for `hg graft` are dropped
  * templatekw: remove `obsfatedata` templatekw. Individuals fields are
    available in core as single template functions.
  * topic: restraining name to letter, '-', '_' and '.'

7.3.0 -- 2018-03-21
---------------------

  * grab: new command to grab a changeset, put in on wdir parent
          and update to it
  * resolve: shows how to continue evolve after resolving all conflicts
  * evolve: `--continue` flag now continue evolving all the remaining revisions
  * prev and next now prompts user to choose a changeset in case of ambiguity
  * evolve: a new `--stop` flag which can be used to stop interrupted evolution

  * fold: fix issue related to bookmarks movement (issue5772)
  * amend: take lock before parsing the commit description (issue5266)
  * legacy: respect 'server.bundle1' config if any is set
  * previous: fix behavior on obsolete rev when topic is involved (issue5708)

7.2.1 --2018-01-20
-------------------

  * compatibility with future Mercurial 4.5
  * fix a packaging issue affect `hg evolve --continue`
  * fix "automatic" cache warming mode for push (client side)

7.2.0 -- 2018-01-15
-------------------

  * evolve: changes to the on disk format for interrupted evolve
  * evolve: --continue now propertly preserve phase information (issue5720)
  * evolve: --continue now properly reports merges as evolve
  * commit: suggest using topic on new heads
  * uncommit: `--revert` flag added to clean the wdir after uncommit
  * obslog: add color support to content-diff output with --patch
  * fix `hg prev` behavior on obsolete changesets
  * no longer issues "obsolete working copy" message during no-op

  * use the new instabilities names from mercurial 4.4+
    (in `hg evolve --list` and other messages)

  * new algorithm for obshashrange discovery:

    The new algorithm is faster, simpler to cache and with better complexity. It
    is able to handle repository of any size (naive python implementation is a
    bit slow). Support for the previous experimental approach have been
    dropped, please update both clients and servers. The new approach is still
    hidden behind and experimental flag for now.

topic (0.7.0)

  * fix compatibility with Mercurial-4.3
  * new template keyword `topic` to get changesets topic

7.1.0 -- 2017-12-12
-------------------

  * verbosity: respect --quiet for prev, next and summary
  * note: add a `-n/--note` flag to all history rewritting commands
  * obslog: shows the obsmarkers notes
  * obsdiscover: Improved stable range slice for the experimental obshashrange
                 (client and server need to upgrade to this version)
  * split: preserve the branch of the source changeset

topic (0.6.0)

  * add a new 'serverminitopic' extension for minimal server support
    (see `hg help -e serverminitopic` for details)
  * add a new config option `experimental.topic-mode.server` using which a
    server can reject draft changesets without topic
  * fix behavior of `hg stack` in cases of split
  * makes code more resilient to partiel initialization
  * avoid over wrapping inside of long living process

7.0.1 -- 2017-11-14
-------------------

  * obsdiscovery: allow the config option to disable discovery server side
    (it was previously only honored on the client side)

  * server: avoid exposing 'abort' to evolution enabled client talking
            to server with the extension bu obsolescence marker exchange
            disabled.

topic (0.5.1)

  * fix new-heads check when pushing new topic with --publish.

7.0.0 -- 2017-11-02
-------------------

  * drop compatibility with Mercurial 3.8, 3.9 and 4.0,
  * drop support for old and deprecated method to exchange obsmarkers,
  * forbid usage of the old pushbey based protocol to exchange obsmarkers,
  * evolve: rename '--contentdivergent' flag to '--content-divergent',
  * evolve: rename '--phasedivergent' flag to '--phase-divergent'.

topic (0.5.0)

  * add an experimental flag to enforce one head per name policy,
    (off by default, see 'hg help -e topic' for details)
  * add an experimental flag to have changesets without topic published on push,
    (off by default, see 'hg help -e topic' for details)
  * add a '--publish' flag to `hg push` (4.4+ only).

6.8.0 -- 2017-10-23
-------------------

  * compatibility with Mercurial 4.4
    (use upstream implementation for obsfate and effect-flags starting hg 4.4+)
  * pager: pager support to `obslog` and `evolve --list`

topic(0.4.0)

  * topic: fix handling of bookmarks and phases while changing topics.
           (mercurial 4.2 and above only)
  * topic: fix 'topic-mode' behavior when amending
  * pager: pager support to `topics` and `stack`

6.7.1 -- 2017-10-10
-------------------

  * obsfate: fix case were current user would disapear from the user list

topic (0.3.1)

  * topic: introduce a documented 'experimental.topic-mode' config
  * topic: add support for 'random' topic mode (see documentation for details)
  * stack: fix evolution preview for simple split.
  * fix a performance regression affecting all transactions.
    (the more non public changeset (hidden included), the slower)

6.7.0 -- 2017-09-27
-------------------

  * compatibility with change in future 4.4 at this release date,
  * documentation: improvement to content, wording and graphs,
  * obslog: improved templatability,
  * obslog/log: improve verb used to describe and evolution,
  * pstatus/pdiff: update to full command. They now appears in the help,
  * uncommit: add a --interactive option (4.3+ only).

topic (0.3.0)

  * push: add a --topic option to mirror --bookmark and --branch,
  * stack: improve display of interleaved topic,
  * stack: improve display of merge commit,
  * topic: add a new 'debugconvertbookmark' commands (4.3+ only),
    It helps migrating from bookmark feature branch to topic feature branch,
  * topic: --age flag also shows the user who last touched the topic,
  * topic: be more informative about topic activation and deactivation,
  * topic: gain a --current flag,
  * topic: small clarification and cleanup on various output.

6.6.0 -- 2017-07-25
-------------------

  - amend: add a --extract flag to move change back to the working copy,
    (same as uncommit, but accessible through the amend commit)
  - split: now properly refuse to split public changeset,
  - commands: unify and improve the pre-rewrite validation and error message,
  - uncommit: add support for --current-date and --current-user option,
  - fold: add support for --current-date and --current-user option,
  - metaedit: add support for --current-date and --current-user option,
  - split: add support for --current-date and --current-user option,
  - compat: use various new API instead of the one deprecated in 4.3,
    (when available)
  - documentation: various minor documentation update.

topic (0.2.0):

  - topic: add --age option to sort topic by the most recently touched,
  - topic: add a 't0' to access the root of a topic while keeping it active,
  - topic: allow 'hg prev' to me move to 't0',
  - topic: add a config option to enforce topic on new commit,
    (experimental.enforce-topic)
  - topic: make command names valid as expected, even if ui.strict=true.

6.5.0 -- 2017-07-02
-------------------

features:

 - obslog: gain a --patch flag to display changes introduced by the evolution
  (Currently limited to in simple case only)
 - log: display obsolescence fate by default, (future 4.3 only)
 - doc: various minor improvement.

bugfixes:

 - evolve: fix branch preservation for merge,
 - obsfate: improve support for advanced template reformating,
 - split: preserve author of the splitted changeset.
 - grab: properly fix hg executable on windows.

topic (0.1.0):

 - stack: also show the unstable status for the current changeset, (issue5553)
 - stack: properly abort when and unknown topic is requested,
 - stack: add basic and raw support for named branches,
 - topic: changing topic on revs no longer adds extra instability, (issue5441)
 - topic: topics: rename '--change' flag to '--rev' flag,
 - topic: multiple large performance improvements,
 - topic: various small output improvement,
 - topic: improved topic preservation for various commands.


6.4.0 -- 2017-06-16
-------------------

 - template: signifiant improvement to the '{obsfate}' template (now 4.2+ only)
 - template: fix 'successors' and 'precursors' template to expose hex-node
 - effect flag: the experiment is now active by default,
   (see 'hg help -e evolve' to opt out)
 - effect flag: fix a small bug related to hidden changeset,
 - obscache: reduce impact on large repository
 - obshashrange: install a '.max-revs' option see extension help for details

6.3.1 -- 2017-06-01
-------------------

 - also backport the "revelant-markers" fix when using "evolve.serveronly"

6.3.0 -- 2017-05-31
-------------------

 - olog: add an 'obslog' alias
 - olog: add an '--all' option to show the whole obsolescence history tree.
 - evolution: add an experiment to track the effect of rewrites.
   (See hg help - evolve for details)
 - exchange: fix the "relevant-markers" algorithm to include inline prune.
   This will impact discovery of obsmarkers between server and client if one
   still uses the old algorithm. Please upgrade both clients and servers as
   soon as possible.
   (See changeset 176d1a0ce385 in core Mercurial for details)
 - obsdiscovery: add a config flag to disable all obsmarkers discovery
   (See hg help - evolve for details)
 - template: add a 'precursors' template that display the closests precursors of changesets
 - template: add a 'successors' template that display the closests successors of changesets
 - template: add a 'obsfate' template that display how a changeset has evolved
 - new discovery experiment: add options to restrict memory consumption on
   large repository (see "hg help -e evolve" for details).
 - evolve: fix --rev handling in --list mode

6.2.1 -- 2017-05-23
-------------------

 - prune: fix a crash related to color handling,
 - next: fix a crash related to color handling,
 - discovery: document the 'obshashrange' experiment,
 - cache: reduce the warming load in case of reset,
 - cache: add a 'experimental.obshashcache.warm-cache' option to allow
   disabling post transaction cache warming.

6.2.0 -- 2017-05-18
-------------------

 - olog: a new command to inspect the obs-history of a changeset (hg-4.0 + only),
 - topic: have thg display topic name if possible,
 - blackbox: log more information about discovery and cache computation,
 - obscache: more efficient update in the (rare) case of a transaction adding
   markers without changesets,
 - obscache: fix more cache invalidation propagation,
 - obscache: also enable the new cache (from 6.1.0) for 'evolve.server-only',
 - obshashrange-cache: update incrementally in the (common) case of a
   transaction not affecting existing range,
 - obshashrange-cache: keep the cache warm after each transaction,
 - topic: now requires Mercurial 4.0 or above,
 - stack: now display if current revision is in bad state (issue5533),
 - stack: fix json output to be valid json.

6.1.0 -- 2017-05-03
-------------------

 - improve message about obsolete working copy parent,
 - improve message issued  when accessing hidden nodes (4.2 only),
 - introduce a new caches to reduce the impact of evolution on read-only commands,
 - add a 'experimental.auto-publish' config. See `hg help -e evolve` for details.
 - fix the propagation of some some cache invalidation,

6.0.1 -- 2017-04-20
-------------------

 - template: adapt to change in 4.2,
 - fix 'debugrecordpruneparents' (outdated API usage)
 - checkheads: give priority to updated 4.2 code,
 - serveronly: fix repository initialization.

6.0.0 -- 2017-03-31
-------------------

- push: improved detection of obsoleted remote branch (issue4354),
- drop compatibility for Mercurial < 3.8,
- removed old (unpackaged) pushexperiment extension,
- move all extensions in the official 'hgext3rd' namespace package,
- add the "topic" experimental extensions. See the README.topic file for details
- officially ship 'evolve.serveronly' extensions. That extensions contains
  only the part related to exchange and is intended to be used by server.

  Using the extension will enable evolution, use 'experimental.evolution=!'
  to disable obsmarkers echange.  The old '__temporary__.advertiseobsolete'
  option is no longer supported.

- a new prototype of obsmarker discovery is available. The prototype is still
  at early stage and not recommended for production.
  Examples of current limitations:

  - write access to the repo is highly recommanded for all operation,
  - large memory footprint,
  - initial caching is slow,
  - unusable on large repo (because of various issue pointed earlier),
  - likely to constains various bugs.

  It can be tested by setting `experimental.obshashrange=1` on both client and
  server. It is recommanded to get in touch with the evolve maintainer if you
  decide to test it.

- the 'debugrecordpruneparents' have been moved into the 'evolve.legacy'
  separate extension. enable that extentions if you need to convert/update
  markers in an old repository.

5.6.1 -- 2017-02-28
-------------------

- fix a crash that sometime happened when evolving merges.

5.6.0 -- 2017-02-01
-------------------

- compatibility with Mercurial 4.1.
- improvement of prune error message.
- fold: require --from flag for folding revisions to working copy
- fix crash when trying to fold an empty revision set (issue5453)
- uncommit: preserve copy information of remaining files (issue5403)

5.5.0 -- 2016-10-30
-------------------

- The {obsolete} template now yield "obsolete" or "".
- compatibility with Mercurial 4.0
- Fix erroneous manifest computation when solving 'bumped' changeset.
- split: avoid crash on empty commit (issue5191),
- next: improve locking to avoid issue with working copy parent (issue5244)
- prev: improve locking to avoid issue with working copy parent (issue5244)
- evolve: fix abort suggestion to include '.' in 'hg update -C .'

5.4.1 -- 2016-08-01
-------------------

 - compat with Mercurial 3.9

5.4.0 -- 2016-05-06
-------------------

- Some collaboration with the topic experimental extensions,
  - hg evolve --all with consider all troubles in your current topic,
  - preserve 'topic' during evolve,
  - 'next' and 'prev' restrict themself to the current topic by default,
- remove the dangerous 'kill' alias for 'prune' (because 'hg kill -1' without
  the leading 'hg' will give you an hardtime)
- during 'hg evolve' skip unsupported merge instead of aborting
- various documentation fix and update
- hg summary now suggest 'hg evolve --continue when appropriate`
- compatibility with Mercurial 3.8 'hgext' namespace package.
- small improvement to the `hg split` instruction
- add a 'metaedit' command to rewrite changeset meta data.

5.3.0 -- 2016-02-11
-------------------

- split: add a new command to split changesets,
- tests: drop our copy of 'run-tests.py' use core one instead,
- bookmark: do all bookmark movement within a transaction.
- evolve: compatibility with Mercurial 3.7
- evolve: support merge with a single obsolete parent (hg-3.7+ only)
- evolve: prevent added file to be marked as unknown if evolve fails (issue4966)
- evolve: stop relying on graftstate file for save evolve state
          (for `hg evolve --continue`)
- evolve: fix divergence resolution when it result in an empty commit
          (issue4950) (hg-3.5+ only)
- no longer lock the repository for `hg parents` (issue4895)
- updated help for the `evolve` command

5.2.1 -- 2015-11-02
-------------------

- add compatibility with Mercurial 3.6
- prune: fixed possible issue with lock and bookmark
- next/prev: fixed possible issue with lock and bookmark
- add some progress data during changesets discovery
- take advantage of dirstate/transaction collaboration

5.2.0 -- 2015-06-25
-------------------

- evolve: gain a --rev option to control what revisions to evolve (issue4391)
- evolve: revision are processed in the order they stack on destination
- evolve: properly skip unstable revision with non-evolved unstable parent
- evolve: gain --unstable --divergent --bumped flag to select the trouble
- evolve: issue more useful error message and hint when evolve has nothing to
          do as invocated.
- evolve: bare `hg evolve` commands now abort when multiple changesets could be
          a target.
- evolve: `hg evolve --all` only evolve changeset that will end up as
          descendant of the current working copy. The old behavior of `--all`
          in now in `--all --any`.
- evolve: add a 'experimental.evolutioncommands' for fine grained commands
          enabling
- next/prev: requires `--merge` to move with uncommitted changes
- next: significantly reword error messages
- next: add a --evolve flag to evolve aspiring children when on a head

5.1.5 -- 2015-06-23
-------------------

- minor documentation cleanup
- support -i option for `hg amend` if commit supports it (3.4)
- fix the `debugrecordpruneparents` utility
- fix some possible crash during command abort (release nonexistent transaction)
- fix simple4server bug tracker URL
- compatibility with bookmark API change in future Mercurial 3.5
- prune no longer move the active bookmark for no reason (issue4559)
- evolve: stop reporting divergence base as missing when we actually have it
- significant performance improvement for all revsets.
- provide a hint of how to update to the successor of an obsolete working copy
  parent.

5.1.4 -- 2015-04-23
-------------------

- significant documentation update
- fix issue4616: pulling with bundle2 would crash if common marker when
  discovered on non-served changesets.
- fix the debugobsrelsethashtree command

5.1.3 -- 2015-04-20
-------------------

- discovery: fix misbehaving discovery across python version
- pull: properly install the bundle2 par generator
  (avoid sending all markers for each pull)
- commit: avoid potential deadlock (acquires wlock before lock)
- graft: avoid potential deadlock (acquires wlock before lock)

5.1.2 -- 2015-04-01
-------------------

- evolve: prevent a crash in httpclient_pushobsmarkers() when pushing

5.1.1 -- 2015-03-05
-------------------

- debugobsconvert: fix invalid markers during conversion
- discovery: cache some of the obs hash computation to improve performance (issue4518)
- revset: fix some crash with (issue4515)

5.1 -- 2015-01-30
-------------------

- evolve: explicitly disable bookmark on evolve (issue4432)
- evolve: don't abort Mercurial on version mismatch
- compatibility with mercurial 3.3

5.0.2 -- 2014-12-14
-------------------

- evolve: remove dependency to the rebase extension

5.0.1 -- 2014-11-25
-------------------

- amend: fix --logfile argument
- evolve: preserve branch change when evolving
- evolve: fix potential crash while solving `bumped` changesets.
- uncommit: abort when rev specifies the current changeset
- evolve: various message improvement
- evolve: fix selection of changeset to evolve from the middle of a stack (issue4434)
- evolve: make next/prev only move bookmarks optionally
- evolve: tell user which "base of divergent changeset" is not found

5.0.0 -- 2014-10-22
-------------------

- drop compat with Mercurial pre 3.2
- uncommit: add a --rev argument
- evolve: add a `working directory now at xxxxxxxxxx` message
- evolve: automatically translate obsolete hashes when evolving
- properly skip marker creating if patch apply cleanly
- prune: work around a massive slowdown from lazy revset
- grab: "fix" the grab alias on window

- fix an issue where prune performance were quadratic with the number of
  changesets pruned.
- pull: use discovery to pull less obsmarkers through bundle2


4.1.0 -- 2014-08-08
-------------------

- amend: add -D/--current-date option
- amend: add -U/--current-user option
- evolve: add a --tool option
- evolve: add a --confirm option
- mark "commit -o", "graft -o" and "graft -O" as deprecated since they are
  unlikely to eventually make it into core.
- push obsmarkers and phases in the same transaction than changesets
  (when using hg >= 3.1 and bundle2-exp is enabled)
- hide message about the obsolescence marker exchange behind a
  `experimental.verbose-obsolescence-exchange` variable (default to False).

4.0.1 -- 2014-08-08
-------------------

- createmarkers() accept an iterable (for compat with other extension)

4.0.0 -- 2014-06-03
-------------------

- require Mercurial version 3.0.1 or above
- some compatibility fixes with future 3.1.0
- deprecated `gup` and `gdown` in favor of prev and next
- record parent of pruned parent at prune time
- added a `debugobsstorestat` command to gather data on obsmarker content.
- added a `debugrecordpruneparents` command to upgrade existing prune marker
  with parent information. Please run it once per repo after upgrading.
- improvement to obsolescence marker exchange:
  - added progress when pushing obsmarkers
  - added multiple output during obsolescence markers exchange
  - only push markers relevant to pushed subset
  - add a new experimental way to exchange marker (when server support):

    - added progress when pulling obsmarkers
    - only pull markers relevant to pulled subset
    - avoid exchanging common markers in some case
    - use bundle2 as transport when available.

 - add a hook related to the new commands

3.3.2 -- 2014-05-14
-------------------

- fix a bug where evolve were creating changeset with 2 parents on windows
  (fix issues #16, #35 and #42)
- adds a --obsolete flag to import (requires Mercurial 3.0)
- prune: update to successor rather than parent when pruning '.' with -s
- fold: add missing --message and --logfile option
- fold: add squash as an alias

3.3.1 -- 2014-04-23
-------------------

- various language fix
- active bookmark now move when using prev/next (#37)
- fix some preservation of rename information on evolve (#33)
- abort when evolve tries to move a node on top of itself (will helps on the #35 front)
- fold: enable --date and --user options

3.3.0 -- 2014-03-04
-------------------

- raise Mercurial's minimal requirement to 2.7
- drop `latercomer` and `conflicting` compatibility. Those old alias are
  deprecated for a long time now.
- add verbose hint about how to handle corner case by hand.
  This should help people until evolve is able to to it itself.
- removed the qsync extension. The only user I knew about (logilab) is not
  using it anymore. It not compatible with coming Mercurial version 2.9.
- add progress indicator for long evolve command
- report troubles creation from `hg import`

3.2.0 -- 2013-11-15
-------------------

- conform to the Mercurial custom of lowercase messages
- added a small extension to experiment with obsolescence marker push
- amend: drop the deprecated note option
- amend: use core mechanism for amend (fix multiple bugs)
- parents command: add "working directory parent is obsolete" message
- evolve command: allow updating to the successor if the parent is
  obsolete
- gdown and gup commands: add next and previous alias, respectively
- make grab aliases compatible with Mercurial 2.8
- Tested with 2.6, 2.7 and 2.8

3.1.0 -- 2013-02-11
-------------------

- amend: drop deprecated --change option for amend
- alias: add a grab alias to be used instead of graft -O
- touch: add a --duplicate option to *not* obsolete the old version
- touch: fix touching multiple revision at the same time
- evolve: add a --all option
- prune: various minor improvements
- prune: add option to prune a specific bookmark
- prune: add -u and -d option to control metadata

3.0.0 -- 2013-02-02
-------------------

- compatibility with 2.5

2.2.0 --
-------------------

- make evolve smarter at picking next troubled to solved without --any

2.1.0 -- 2012-12-03
-------------------

- qsync fixes
- have qfold ask for commit message

2.0.0 -- 2012-10-26
-------------------

- compat with mercurial 2.4

1.1.0 -- 2012-10-26
-------------------

- fix troubles creation reporting from rebase
- rename latecomer to bumped
- renamed conflicting to divergent
- smarter divergent handling

1.0.2 -- 2012-09-19
-------------------

- fix hg fold bug
- fix hg pull --rebase
- fix detection of conflict with external tools
- adapt to core movement (caches and --amend)

1.0.1 -- 2012-08-31
-------------------

- documentation improvement
- fix a performance bug with hgweb

1.0 -- 2012-08-29
-------------------

- Align with Mercurial version 2.3 (drop 2.2 support).
- stabilize handle killed parent
- stabilize handle late comer
- stabilize handle conflicting
- stabilize get a --continue switch
- merge and update ignore extinct changeset in most case.
- new "troubled()" revset
- summary now reports troubles changesets
- new touch command
- new fold command
- new basic olog alias

- rebase refuse to work on public changeset again
- rebase explicitly state that there is nothing to rebase because everything is
  extinct() when that happen.
- amend now cleanly abort when --change switch is misused


0.7 -- 2012-08-06
-------------------

- hook: work around insanely huge value in obsolete pushkey call
- pushkey: properly handle abort during obsolete markers push
- amend: wrap the whole process in a single transaction.
- evolve: tweak and add EOL to kill warning
- obsolete: fix doc, rebase no longer aborts with --keep
- obsolete/evolve: fix grammar in prerequisite messages
- evolve: avoid duplication in graft wrapper
- evolve: graft --continue is optional, test

0.6 -- 2012-07-31
-------------------

- obsolete: change warning output to match mercurial core on
- qsync: ignore nonexistent nodes
- make compat server both compatible with "dump" and "dump%i" version

0.5 -- 2012-07-16
-------------------

- obsolete: Detect conflicting changeset!
- obsolete: adapt to core: marker are written in transaction now
- evolve: add the solve alias to obsolete
- doc: big update of terms and summary of the concept
- evolve: switch the official name for "kill" to prune


0.4.1 -- 2012-07-10
-------------------

- [convert] properly exclude null successors from conversion
- Ignore buggy marker in newerversion


0.4.0 -- 2012-07-06
-------------------

- obsolete: public changeset are no longer latecomer.
- obsolete: move to official binary format
- adapt for new mercurial
- obsolete: we are not compatible with 2.1 any more

0.3.0 -- 2012-06-27
-------------------

- obsolete:  Add "latecomer" error detection (stabilize does not handle resolution yet)
- evolve:    Introduce a new `uncommit` command to remove change from a changeset
- rebase:    allow the use of --keep again
- commit:    --amend option create obsolete marker (but still strip)
- obsolete:  fewer marker are created when collapsing revision.
- revset:    add, successors(), allsuccessors(), precursors(), allprecursors(),
             latecomer() and hidden()
- evolve:    add `prune` alias to `kill`.
- stabilize: clearly state that stabilize does not handle conflict
- template:  add an {obsolete} keyword

0.2.0 -- 2012-06-20
-------------------

- stabilize: improve choice of the next changeset to stabilize
- stabilize: improve resolution of several corner case
- rebase:    handle removing empty changesets
- rebase:    handle --collapse
- evolve:   add `obsolete` alias to `kill`
- evolve:   add `evolve` alias to `stabilize`