relnotes/next
author Pierre-Yves David <pierre-yves.david@octobus.net>
Thu, 02 Sep 2021 02:44:12 +0200
changeset 47970 7ab99007fce5
parent 47758 ec77f709495c
child 47978 bad66df931b5
permissions -rw-r--r--
dirstate: move the copymap drop inside dropfile Since the copymap is part of the dirstatemap it make more sense for the dirstatemap to manage it directly. This is part of a generic effort to move unified logic at lower level and to clean up higher level API. Differential Revision: https://phab.mercurial-scm.org/D11417

== New Features ==

 * `hg config` now has a `--source` option to show where each
   configuration value comes from.


== Default Format Change ==

These changes affects newly created repositories (or new clone) done with
Mercurial 5.8.


== New Experimental Features ==


== Bug Fixes ==


== Backwards Compatibility Changes ==


== Internal API Changes ==

The Dirstate API have been updated as the previous function leaked some
internal details and did not distinct between two important cases: "We are
changing parent and need to adjust the dirstate" and "some command is changing
which file is tracked". To clarify the situation:

* the following functions have been deprecated,

  - dirstate.add,
  - dirstate.normal,
  - dirstate.normallookup,
  - dirstate.merge,
  - dirstate.otherparent,
  - dirstate.remove,
  - dirstate.drop,

* these new functions are added for the "adjusting parents" use-case:

  - dirstate.update_file,
  - dirstate.update_file_p1,

* these new function are added for the "adjusting wc file" use-case":

  - dirstate.set_tracked,
  - dirstate.set_untracked,
  - dirstate.set_clean,
  - dirstate.set_possibly_dirty,

See inline documentation of the new functions for details.