view relnotes/next @ 42465:c19d259fd6ad

phabricator: use parents.set to always set dependencies Now that Mercurial's Phabricator instance has been updated to a version that supports the parents.set transaction on revision.edit we can use that to set dependency relationships in patch stacks instead of abusing the summary. This has the advantage that we can use it on every `phabsend` so commit reordering is picked up without spamming changes like abusing the summary would, and using parents.set will clear previous parents unlike parents.add. Differential Revision: https://phab.mercurial-scm.org/D6514
author Ian Moody <moz-ian@perix.co.uk>
date Wed, 12 Jun 2019 17:22:37 +0100
parents 0c72eddb4be5
children 089f14dd7df3
line wrap: on
line source

== New Features ==

 * New config `commands.commit.post-status` shows status after successful
 commit.


== New Experimental Features ==

 * New config `experimental.log.topo` makes `hg log -G` use
   topological sorting. This is especially useful for aliases since it
   lets the alias accept an `-r` option while still using topological
   sorting with or without the `-r` (unlike if you use the `sort(...,
   topo)` revset).


== Bug Fixes  ==

 * issue4292: "hg log and {files} {file_adds} {file_mods} {file_dels}
   in template show wrong files on merged revision". See details in
   "Backwards Compatibility Changes".


== Backwards Compatibility Changes ==

 * Removed (experimental) support for log graph lines mixing
   parent/grandparent styles. Setting
   e.g. `experimental.graphstyle.parent = !` and
   `experimental.graphstyle.grandparent = 3.` would use `!` for the
   first three lines of the graph and then `.`. This is no longer
   supported.

 * If `ui.origbackuppath` had been (incorrectly) configured to point
   to a file, we will now replace that file by a directory and put
   backups in that directory. This is similar to how we would
   previously replace files *in* the configured directory by
   subdirectories.

* Template keyword `{file_mods}`, `{file_adds}`, and `{file_dels}`
   have changed behavior on merge commits. They used to be relative to
   the first parent, but they now consider both parents. `{file_adds}`
   shows files that exists in the commit but did not exist in either
   parent. `{file_dels}` shows files that do not exist in the commit
   but existed in either parent. `{file_mods}` show the remaining
   files from `{files}` that were not in the other two
   sets.


== Internal API Changes ==

 * Matchers are no longer iterable. Use `match.files()` instead.

 * `match.visitdir()` and `match.visitchildrenset()` now expect the
   empty string instead of '.' to indicate the root directory.

 * `util.dirs()` and `util.finddirs()` now include an entry for the
   root directory (empty string).