comparison README @ 3032:ba5b271298e9

README: move CHANGELOG to a new file
author Pulkit Goyal <7895pulkit@gmail.com>
date Sun, 01 Oct 2017 11:23:21 +0100
parents 0884856a4143
children cb8ae3cb0bbc
comparison
equal deleted inserted replaced
3031:b400759fd6d2 3032:ba5b271298e9
115 Mercurial. The documentation is built from the tip of stable. 115 Mercurial. The documentation is built from the tip of stable.
116 116
117 In addition, we have compatibility branches to check tests on older version of 117 In addition, we have compatibility branches to check tests on older version of
118 Mercurial. They are the "mercurial-x.y" branches. They are used to apply 118 Mercurial. They are the "mercurial-x.y" branches. They are used to apply
119 expected test change only, no code change should happen there. 119 expected test change only, no code change should happen there.
120
121 Changelog
122 =========
123
124 6.7.1 - in progress
125 -------------------
126
127 * stack: fix evolution previous for simple split
128
129 6.7.0 -- 2017-09-27
130 -------------------
131
132 * compatibility with change in future 4.4 at this release date,
133 * documentation: improvement to content, wording and graphs,
134 * obslog: improved templatability,
135 * obslog/log: improve verb used to describe and evolution,
136 * pstatus/pdiff: update to full command. They now appears in the help,
137 * uncommit: add a --interactive option (4.3+ only).
138
139 * push: add a --topic option to mirror --bookmark and --branch,
140 * stack: improve display of interleaved topic,
141 * stack: improve display of merge commit,
142 * topic: add a new 'debugconvertbookmark' commands (4.3+ only),
143 It helps migrating from bookmark feature branch to topic feature branch,
144 * topic: --age flag also shows the user who last touched the topic,
145 * topic: be more informative about topic activation and deactivation,
146 * topic: gain a --current flag,
147 * topic: small clarification and cleanup on various output.
148
149 6.6.0 -- 2017-07-25
150 -------------------
151
152 - amend: add a --extract flag to move change back to the working copy,
153 (same as uncommit, but accessible through the amend commit)
154 - split: now properly refuse to split public changeset,
155 - commands: unify and improve the pre-rewrite validation and error message,
156 - uncommit: add support for --current-date and --current-user option,
157 - fold: add support for --current-date and --current-user option,
158 - metaedit: add support for --current-date and --current-user option,
159 - split: add support for --current-date and --current-user option,
160 - compat: use various new API instead of the one deprecated in 4.3,
161 (when available)
162 - documentation: various minor documentation update.
163
164 topic (0.2.0):
165
166 - topic: add --age option to sort topic by the most recently touched,
167 - topic: add a 't0' to access the root of a topic while keeping it active,
168 - topic: allow 'hg prev' to me move to 't0',
169 - topic: add a config option to enforce topic on new commit,
170 (experimental.enforce-topic)
171 - topic: make command names valid as expected, even if ui.strict=true.
172
173 6.5.0 -- 2017-07-02
174 -------------------
175
176 features:
177
178 - obslog: gain a --patch flag to display changes introduced by the evolution
179 (Currently limited to in simple case only)
180 - log: display obsolescence fate by default, (future 4.3 only)
181 - doc: various minor improvement.
182
183 bugfixes:
184
185 - evolve: fix branch preservation for merge,
186 - obsfate: improve support for advanced template reformating,
187 - split: preserve author of the splitted changeset.
188 - grab: properly fix hg executable on windows.
189
190 topic (0.1.0):
191
192 - stack: also show the unstable status for the current changeset, (issue5553)
193 - stack: properly abort when and unknown topic is requested,
194 - stack: add basic and raw support for named branches,
195 - topic: changing topic on revs no longer adds extra instability, (issue5441)
196 - topic: topics: rename '--change' flag to '--rev' flag,
197 - topic: multiple large performance improvements,
198 - topic: various small output improvement,
199 - topic: improved topic preservation for various commands.
200
201
202 6.4.0 -- 2017-06-16
203 -------------------
204
205 - template: signifiant improvement to the '{obsfate}' template (now 4.2+ only)
206 - template: fix 'successors' and 'precursors' template to expose hex-node
207 - effect flag: the experiment is now active by default,
208 (see 'hg help -e evolve' to opt out)
209 - effect flag: fix a small bug related to hidden changeset,
210 - obscache: reduce impact on large repository
211 - obshashrange: install a '.max-revs' option see extension help for details
212
213 6.3.1 -- 2017-06-01
214 -------------------
215
216 - also backport the "revelant-markers" fix when using "evolve.serveronly"
217
218 6.3.0 -- 2017-05-31
219 -------------------
220
221 - olog: add an 'obslog' alias
222 - olog: add an '--all' option to show the whole obsolescence history tree.
223 - evolution: add an experiment to track the effect of rewrites.
224 (See hg help - evolve for details)
225 - exchange: fix the "relevant-markers" algorithm to include inline prune.
226 This will impact discovery of obsmarkers between server and client if one
227 still uses the old algorithm. Please upgrade both clients and servers as
228 soon as possible.
229 (See changeset 176d1a0ce385 in core Mercurial for details)
230 - obsdiscovery: add a config flag to disable all obsmarkers discovery
231 (See hg help - evolve for details)
232 - template: add a 'precursors' template that display the closests precursors of changesets
233 - template: add a 'successors' template that display the closests successors of changesets
234 - template: add a 'obsfate' template that display how a changeset has evolved
235 - new discovery experiment: add options to restrict memory consumption on
236 large repository (see "hg help -e evolve" for details).
237 - evolve: fix --rev handling in --list mode
238
239 6.2.1 -- 2017-05-23
240 -------------------
241
242 - prune: fix a crash related to color handling,
243 - next: fix a crash related to color handling,
244 - discovery: document the 'obshashrange' experiment,
245 - cache: reduce the warming load in case of reset,
246 - cache: add a 'experimental.obshashcache.warm-cache' option to allow
247 disabling post transaction cache warming.
248
249 6.2.0 -- 2017-05-18
250 -------------------
251
252 - olog: a new command to inspect the obs-history of a changeset (hg-4.0 + only),
253 - topic: have thg display topic name if possible,
254 - blackbox: log more information about discovery and cache computation,
255 - obscache: more efficient update in the (rare) case of a transaction adding
256 markers without changesets,
257 - obscache: fix more cache invalidation propagation,
258 - obscache: also enable the new cache (from 6.1.0) for 'evolve.server-only',
259 - obshashrange-cache: update incrementally in the (common) case of a
260 transaction not affecting existing range,
261 - obshashrange-cache: keep the cache warm after each transaction,
262 - topic: now requires Mercurial 4.0 or above,
263 - stack: now display if current revision is in bad state (issue5533),
264 - stack: fix json output to be valid json.
265
266 6.1.0 -- 2017-05-03
267 -------------------
268
269 - improve message about obsolete working copy parent,
270 - improve message issued when accessing hidden nodes (4.2 only),
271 - introduce a new caches to reduce the impact of evolution on read-only commands,
272 - add a 'experimental.auto-publish' config. See `hg help -e evolve` for details.
273 - fix the propagation of some some cache invalidation,
274
275 6.0.1 -- 2017-04-20
276 -------------------
277
278 - template: adapt to change in 4.2,
279 - fix 'debugrecordpruneparents' (outdated API usage)
280 - checkheads: give priority to updated 4.2 code,
281 - serveronly: fix repository initialization.
282
283 6.0.0 -- 2017-03-31
284 -------------------
285
286 - push: improved detection of obsoleted remote branch (issue4354),
287 - drop compatibility for Mercurial < 3.8,
288 - removed old (unpackaged) pushexperiment extension,
289 - move all extensions in the official 'hgext3rd' namespace package,
290 - add the "topic" experimental extensions. See the README.topic file for details
291 - officially ship 'evolve.serveronly' extensions. That extensions contains
292 only the part related to exchange and is intended to be used by server.
293
294 Using the extension will enable evolution, use 'experimental.evolution=!'
295 to disable obsmarkers echange. The old '__temporary__.advertiseobsolete'
296 option is no longer supported.
297
298 - a new prototype of obsmarker discovery is available. The prototype is still
299 at early stage and not recommended for production.
300 Examples of current limitations:
301
302 - write access to the repo is highly recommanded for all operation,
303 - large memory footprint,
304 - initial caching is slow,
305 - unusable on large repo (because of various issue pointed earlier),
306 - likely to constains various bugs.
307
308 It can be tested by setting `experimental.obshashrange=1` on both client and
309 server. It is recommanded to get in touch with the evolve maintainer if you
310 decide to test it.
311
312 - the 'debugrecordpruneparents' have been moved into the 'evolve.legacy'
313 separate extension. enable that extentions if you need to convert/update
314 markers in an old repository.
315
316 5.6.1 -- 2017-02-28
317 -------------------
318
319 - fix a crash that sometime happened when evolving merges.
320
321 5.6.0 -- 2017-02-01
322 -------------------
323
324 - compatibility with Mercurial 4.1.
325 - improvement of prune error message.
326 - fold: require --from flag for folding revisions to working copy
327 - fix crash when trying to fold an empty revision set (issue5453)
328 - uncommit: preserve copy information of remaining files (issue5403)
329
330 5.5.0 -- 2016-10-30
331 -------------------
332
333 - The {obsolete} template now yield "obsolete" or "".
334 - compatibility with Mercurial 4.0
335 - Fix erroneous manifest computation when solving 'bumped' changeset.
336 - split: avoid crash on empty commit (issue5191),
337 - next: improve locking to avoid issue with working copy parent (issue5244)
338 - prev: improve locking to avoid issue with working copy parent (issue5244)
339 - evolve: fix abort suggestion to include '.' in 'hg update -C .'
340
341 5.4.1 -- 2016-08-01
342 -------------------
343
344 - compat with Mercurial 3.9
345
346 5.4.0 -- 2016-05-06
347 -------------------
348
349 - Some collaboration with the topic experimental extensions,
350 - hg evolve --all with consider all troubles in your current topic,
351 - preserve 'topic' during evolve,
352 - 'next' and 'prev' restrict themself to the current topic by default,
353 - remove the dangerous 'kill' alias for 'prune' (because 'hg kill -1' without
354 the leading 'hg' will give you an hardtime)
355 - during 'hg evolve' skip unsupported merge instead of aborting
356 - various documentation fix and update
357 - hg summary now suggest 'hg evolve --continue when appropriate`
358 - compatibility with Mercurial 3.8 'hgext' namespace package.
359 - small improvement to the `hg split` instruction
360 - add a 'metaedit' command to rewrite changeset meta data.
361
362 5.3.0 -- 2016-02-11
363 -------------------
364
365 - split: add a new command to split changesets,
366 - tests: drop our copy of 'run-tests.py' use core one instead,
367 - bookmark: do all bookmark movement within a transaction.
368 - evolve: compatibility with Mercurial 3.7
369 - evolve: support merge with a single obsolete parent (hg-3.7+ only)
370 - evolve: prevent added file to be marked as unknown if evolve fails (issue4966)
371 - evolve: stop relying on graftstate file for save evolve state
372 (for `hg evolve --continue`)
373 - evolve: fix divergence resolution when it result in an empty commit
374 (issue4950) (hg-3.5+ only)
375 - no longer lock the repository for `hg parents` (issue4895)
376 - updated help for the `evolve` command
377
378 5.2.1 -- 2015-11-02
379 -------------------
380
381 - add compatibility with Mercurial 3.6
382 - prune: fixed possible issue with lock and bookmark
383 - next/prev: fixed possible issue with lock and bookmark
384 - add some progress data during changesets discovery
385 - take advantage of dirstate/transaction collaboration
386
387 5.2.0 -- 2015-06-25
388 -------------------
389
390 - evolve: gain a --rev option to control what revisions to evolve (issue4391)
391 - evolve: revision are processed in the order they stack on destination
392 - evolve: properly skip unstable revision with non-evolved unstable parent
393 - evolve: gain --unstable --divergent --bumped flag to select the trouble
394 - evolve: issue more useful error message and hint when evolve has nothing to
395 do as invocated.
396 - evolve: bare `hg evolve` commands now abort when multiple changesets could be
397 a target.
398 - evolve: `hg evolve --all` only evolve changeset that will end up as
399 descendant of the current working copy. The old behavior of `--all`
400 in now in `--all --any`.
401 - evolve: add a 'experimental.evolutioncommands' for fine grained commands
402 enabling
403 - next/prev: requires `--merge` to move with uncommitted changes
404 - next: significantly reword error messages
405 - next: add a --evolve flag to evolve aspiring children when on a head
406
407 5.1.5 -- 2015-06-23
408 -------------------
409
410 - minor documentation cleanup
411 - support -i option for `hg amend` if commit supports it (3.4)
412 - fix the `debugrecordpruneparents` utility
413 - fix some possible crash during command abort (release nonexistent transaction)
414 - fix simple4server bug tracker URL
415 - compatibility with bookmark API change in future Mercurial 3.5
416 - prune no longer move the active bookmark for no reason (issue4559)
417 - evolve: stop reporting divergence base as missing when we actually have it
418 - significant performance improvement for all revsets.
419 - provide a hint of how to update to the successor of an obsolete working copy
420 parent.
421
422 5.1.4 -- 2015-04-23
423 -------------------
424
425 - significant documentation update
426 - fix issue4616: pulling with bundle2 would crash if common marker when
427 discovered on non-served changesets.
428 - fix the debugobsrelsethashtree command
429
430 5.1.3 -- 2015-04-20
431 -------------------
432
433 - discovery: fix misbehaving discovery across python version
434 - pull: properly install the bundle2 par generator
435 (avoid sending all markers for each pull)
436 - commit: avoid potential deadlock (acquires wlock before lock)
437 - graft: avoid potential deadlock (acquires wlock before lock)
438
439 5.1.2 -- 2015-04-01
440 -------------------
441
442 - evolve: prevent a crash in httpclient_pushobsmarkers() when pushing
443
444 5.1.1 -- 2015-03-05
445 -------------------
446
447 - debugobsconvert: fix invalid markers during conversion
448 - discovery: cache some of the obs hash computation to improve performance (issue4518)
449 - revset: fix some crash with (issue4515)
450
451 5.1 -- 2015-01-30
452 -------------------
453
454 - evolve: explicitly disable bookmark on evolve (issue4432)
455 - evolve: don't abort Mercurial on version mismatch
456 - compatibility with mercurial 3.3
457
458 5.0.2 -- 2014-12-14
459 -------------------
460
461 - evolve: remove dependency to the rebase extension
462
463 5.0.1 -- 2014-11-25
464 -------------------
465
466 - amend: fix --logfile argument
467 - evolve: preserve branch change when evolving
468 - evolve: fix potential crash while solving `bumped` changesets.
469 - uncommit: abort when rev specifies the current changeset
470 - evolve: various message improvement
471 - evolve: fix selection of changeset to evolve from the middle of a stack (issue4434)
472 - evolve: make next/prev only move bookmarks optionally
473 - evolve: tell user which "base of divergent changeset" is not found
474
475 5.0.0 -- 2014-10-22
476 -------------------
477
478 - drop compat with Mercurial pre 3.2
479 - uncommit: add a --rev argument
480 - evolve: add a `working directory now at xxxxxxxxxx` message
481 - evolve: automatically translate obsolete hashes when evolving
482 - properly skip marker creating if patch apply cleanly
483 - prune: work around a massive slowdown from lazy revset
484 - grab: "fix" the grab alias on window
485
486 - fix an issue where prune performance were quadratic with the number of
487 changesets pruned.
488 - pull: use discovery to pull less obsmarkers through bundle2
489
490
491 4.1.0 -- 2014-08-08
492 -------------------
493
494 - amend: add -D/--current-date option
495 - amend: add -U/--current-user option
496 - evolve: add a --tool option
497 - evolve: add a --confirm option
498 - mark "commit -o", "graft -o" and "graft -O" as deprecated since they are
499 unlikely to eventually make it into core.
500 - push obsmarkers and phases in the same transaction than changesets
501 (when using hg >= 3.1 and bundle2-exp is enabled)
502 - hide message about the obsolescence marker exchange behind a
503 `experimental.verbose-obsolescence-exchange` variable (default to False).
504
505 4.0.1 -- 2014-08-08
506 -------------------
507
508 - createmarkers() accept an iterable (for compat with other extension)
509
510 4.0.0 -- 2014-06-03
511 -------------------
512
513 - require Mercurial version 3.0.1 or above
514 - some compatibility fixes with future 3.1.0
515 - deprecated `gup` and `gdown` in favor of prev and next
516 - record parent of pruned parent at prune time
517 - added a `debugobsstorestat` command to gather data on obsmarker content.
518 - added a `debugrecordpruneparents` command to upgrade existing prune marker
519 with parent information. Please run it once per repo after upgrading.
520 - improvement to obsolescence marker exchange:
521 - added progress when pushing obsmarkers
522 - added multiple output during obsolescence markers exchange
523 - only push markers relevant to pushed subset
524 - add a new experimental way to exchange marker (when server support):
525
526 - added progress when pulling obsmarkers
527 - only pull markers relevant to pulled subset
528 - avoid exchanging common markers in some case
529 - use bundle2 as transport when available.
530
531 - add a hook related to the new commands
532
533 3.3.2 -- 2014-05-14
534 -------------------
535
536 - fix a bug where evolve were creating changeset with 2 parents on windows
537 (fix issues #16, #35 and #42)
538 - adds a --obsolete flag to import (requires Mercurial 3.0)
539 - prune: update to successor rather than parent when pruning '.' with -s
540 - fold: add missing --message and --logfile option
541 - fold: add squash as an alias
542
543 3.3.1 -- 2014-04-23
544 -------------------
545
546 - various language fix
547 - active bookmark now move when using prev/next (#37)
548 - fix some preservation of rename information on evolve (#33)
549 - abort when evolve tries to move a node on top of itself (will helps on the #35 front)
550 - fold: enable --date and --user options
551
552 3.3.0 -- 2014-03-04
553 -------------------
554
555 - raise Mercurial's minimal requirement to 2.7
556 - drop `latercomer` and `conflicting` compatibility. Those old alias are
557 deprecated for a long time now.
558 - add verbose hint about how to handle corner case by hand.
559 This should help people until evolve is able to to it itself.
560 - removed the qsync extension. The only user I knew about (logilab) is not
561 using it anymore. It not compatible with coming Mercurial version 2.9.
562 - add progress indicator for long evolve command
563 - report troubles creation from `hg import`
564
565 3.2.0 -- 2013-11-15
566 -------------------
567
568 - conform to the Mercurial custom of lowercase messages
569 - added a small extension to experiment with obsolescence marker push
570 - amend: drop the deprecated note option
571 - amend: use core mechanism for amend (fix multiple bugs)
572 - parents command: add "working directory parent is obsolete" message
573 - evolve command: allow updating to the successor if the parent is
574 obsolete
575 - gdown and gup commands: add next and previous alias, respectively
576 - make grab aliases compatible with Mercurial 2.8
577 - Tested with 2.6, 2.7 and 2.8
578
579 3.1.0 -- 2013-02-11
580 -------------------
581
582 - amend: drop deprecated --change option for amend
583 - alias: add a grab alias to be used instead of graft -O
584 - touch: add a --duplicate option to *not* obsolete the old version
585 - touch: fix touching multiple revision at the same time
586 - evolve: add a --all option
587 - prune: various minor improvements
588 - prune: add option to prune a specific bookmark
589 - prune: add -u and -d option to control metadata
590
591 3.0.0 -- 2013-02-02
592 -------------------
593
594 - compatibility with 2.5
595
596 2.2.0 --
597 -------------------
598
599 - make evolve smarter at picking next troubled to solved without --any
600
601 2.1.0 -- 2012-12-03
602 -------------------
603
604 - qsync fixes
605 - have qfold ask for commit message
606
607 2.0.0 -- 2012-10-26
608 -------------------
609
610 - compat with mercurial 2.4
611
612 1.1.0 -- 2012-10-26
613 -------------------
614
615 - fix troubles creation reporting from rebase
616 - rename latecomer to bumped
617 - renamed conflicting to divergent
618 - smarter divergent handling
619
620 1.0.2 -- 2012-09-19
621 -------------------
622
623 - fix hg fold bug
624 - fix hg pull --rebase
625 - fix detection of conflict with external tools
626 - adapt to core movement (caches and --amend)
627
628 1.0.1 -- 2012-08-31
629 -------------------
630
631 - documentation improvement
632 - fix a performance bug with hgweb
633
634 1.0 -- 2012-08-29
635 -------------------
636
637 - Align with Mercurial version 2.3 (drop 2.2 support).
638 - stabilize handle killed parent
639 - stabilize handle late comer
640 - stabilize handle conflicting
641 - stabilize get a --continue switch
642 - merge and update ignore extinct changeset in most case.
643 - new "troubled()" revset
644 - summary now reports troubles changesets
645 - new touch command
646 - new fold command
647 - new basic olog alias
648
649 - rebase refuse to work on public changeset again
650 - rebase explicitly state that there is nothing to rebase because everything is
651 extinct() when that happen.
652 - amend now cleanly abort when --change switch is misused
653
654
655 0.7 -- 2012-08-06
656 -------------------
657
658 - hook: work around insanely huge value in obsolete pushkey call
659 - pushkey: properly handle abort during obsolete markers push
660 - amend: wrap the whole process in a single transaction.
661 - evolve: tweak and add EOL to kill warning
662 - obsolete: fix doc, rebase no longer aborts with --keep
663 - obsolete/evolve: fix grammar in prerequisite messages
664 - evolve: avoid duplication in graft wrapper
665 - evolve: graft --continue is optional, test
666
667 0.6 -- 2012-07-31
668 -------------------
669
670 - obsolete: change warning output to match mercurial core on
671 - qsync: ignore nonexistent nodes
672 - make compat server both compatible with "dump" and "dump%i" version
673
674 0.5 -- 2012-07-16
675 -------------------
676
677 - obsolete: Detect conflicting changeset!
678 - obsolete: adapt to core: marker are written in transaction now
679 - evolve: add the solve alias to obsolete
680 - doc: big update of terms and summary of the concept
681 - evolve: switch the official name for "kill" to prune
682
683
684 0.4.1 -- 2012-07-10
685 -------------------
686
687 - [convert] properly exclude null successors from conversion
688 - Ignore buggy marker in newerversion
689
690
691 0.4.0 -- 2012-07-06
692 -------------------
693
694 - obsolete: public changeset are no longer latecomer.
695 - obsolete: move to official binary format
696 - adapt for new mercurial
697 - obsolete: we are not compatible with 2.1 any more
698
699 0.3.0 -- 2012-06-27
700 -------------------
701
702 - obsolete: Add "latecomer" error detection (stabilize does not handle resolution yet)
703 - evolve: Introduce a new `uncommit` command to remove change from a changeset
704 - rebase: allow the use of --keep again
705 - commit: --amend option create obsolete marker (but still strip)
706 - obsolete: fewer marker are created when collapsing revision.
707 - revset: add, successors(), allsuccessors(), precursors(), allprecursors(),
708 latecomer() and hidden()
709 - evolve: add `prune` alias to `kill`.
710 - stabilize: clearly state that stabilize does not handle conflict
711 - template: add an {obsolete} keyword
712
713 0.2.0 -- 2012-06-20
714 -------------------
715
716 - stabilize: improve choice of the next changeset to stabilize
717 - stabilize: improve resolution of several corner case
718 - rebase: handle removing empty changesets
719 - rebase: handle --collapse
720 - evolve: add `obsolete` alias to `kill`
721 - evolve: add `evolve` alias to `stabilize`