view relnotes/5.6 @ 50639:5e60abf811f3

stream-clone: make it the responsability of the store entry to stream content The store entry has more context, this will especially be true when it comes to revlogs. So we move the details of how to retrieve binary content to the StoreEntry. The stream clone code now focus on the protocol bits.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Sun, 28 May 2023 05:52:58 +0200
parents 84eb4c833c41
children
line wrap: on
line source

== New Features ==

 * `hg mv -A` can now be used with `--at-rev`. It behaves just like
   `hg cp -A --at-rev`, i.e. it marks the destination as a copy of the
   source whether or not the source still exists (but the source must
   exist in the parent revision).

 * New revset predicate `diffcontains(pattern)` for filtering revisions
   in the same way as `hg grep --diff pattern`.

 * The memory footprint per changeset and per file during pull/unbundle
   operations has been significantly reduced.


== New Experimental Features ==



== Bug Fixes ==



== Backwards Compatibility Changes ==



== Internal API Changes ==

 * `merge.update()` is now private (renamed to `_update()`). Hopefully
   the higher-level functions available in the same module cover your
   use cases.

 * `phases.registernew` now takes a set of revisions instead of a list
   of nodes. `phases.advanceboundary` takes an optional set of revisions
   in addition to the list of nodes. The corresponeding members of the
   `phasecache` class follow this change.

 * The `addgroup` member of `revlog` classes no longer keeps a list of
   all found nodes. It now returns True iff a node was found in the group.
   An optional callback for duplicated nodes can be used by callers to keep
   track of all nodes themselve.

 * The `_chaininfocache` of `revlog` classes has been changed from a dict
   to a LRU cache.