# HG changeset patch # User Martin von Zweigbergk # Date 1564682532 25200 # Node ID cba59b338976af0e4c92cf16b8f95331e6ac4f30 # Parent 9e0f1c80cddb6f0470242c02f222cd2d5734165d relnotes: copy "next" to "5.1" and clear "next" To avoid merge conflicts, we want to avoid modifying the file on multiple branches in parallel. This patch is therefore meant to be applied to the stable branch and then quickly be merged to default (at least before edits are made to relnotes/next there). Another option would have been to copy the file on the stable branch and to clear it on the default branch. However, that still results in conflicts if the copy is edited on the stable branch (Mercurial would try to apply the changes from the default branch to it). We could also delete the file in one commit and recreate it in another commit. However, Mercurial is quite inconsistent in what it considers a break in history (see test-copies-unrelated.t), so I'd like to avoid that. Differential Revision: https://phab.mercurial-scm.org/D6705 diff -r 9e0f1c80cddb -r cba59b338976 relnotes/5.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/relnotes/5.1 Thu Aug 01 11:02:12 2019 -0700 @@ -0,0 +1,90 @@ +== New Features == + + * New config `commands.commit.post-status` shows status after successful + commit. + + * `hg root` now has templating support, including support for showing + where a repo share's source is. See `hg help -v root` for details. + + * New `--force-close-branch` flag for `hg commit` to forcibly close + branch from a non-head changeset. + + * The curses-based interface for commands like `hg commit -i` now supports + a range-select mechanism. Select the first line using space like before, + navigate to the last line, and press X (capital x) to set all items in + the range at once. Lowercase x has been added as a synonym for space to + help reinforce the mechanism, and pressing enter/return continues to be a + synonym for "toggle the current line and move down to the next item in + this section." + +== 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). + + * shelve is no longer an extension now. it will be turned on by default. + + * New API to manage unfinished operations: Earlier there were distinct APIs + which dealt with unfinished states and separate lists maintaining them + that are `cmdutil.afterresolvestates`, `cmdutil.unfinishedstates` and + `cmdutil.STATES`. Now these have been unified to a single + API which handles the various states and their utilities. This API + has been added to `state.py`. Now instead of adding to these 3 lists + independently a state for a new operation can be registered using + `addunfinished()` in `state` module. + + * `cmdutil.checkunfinished()` now includes detection for merge too. + + * merge abort has been disallowed in case an operation of higher + precedence is in progress to avoid cases of partial abort of + operations. + + * We used to automatically attempt to make extensions compatible with + Python 3 (by translating their source code while loading it). We no + longer do that. diff -r 9e0f1c80cddb -r cba59b338976 relnotes/next --- a/relnotes/next Sat Aug 03 12:13:51 2019 -0700 +++ b/relnotes/next Thu Aug 01 11:02:12 2019 -0700 @@ -1,90 +1,14 @@ == New Features == - * New config `commands.commit.post-status` shows status after successful - commit. - - * `hg root` now has templating support, including support for showing - where a repo share's source is. See `hg help -v root` for details. - - * New `--force-close-branch` flag for `hg commit` to forcibly close - branch from a non-head changeset. - - * The curses-based interface for commands like `hg commit -i` now supports - a range-select mechanism. Select the first line using space like before, - navigate to the last line, and press X (capital x) to set all items in - the range at once. Lowercase x has been added as a synonym for space to - help reinforce the mechanism, and pressing enter/return continues to be a - synonym for "toggle the current line and move down to the next item in - this section." == 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). - - * shelve is no longer an extension now. it will be turned on by default. - - * New API to manage unfinished operations: Earlier there were distinct APIs - which dealt with unfinished states and separate lists maintaining them - that are `cmdutil.afterresolvestates`, `cmdutil.unfinishedstates` and - `cmdutil.STATES`. Now these have been unified to a single - API which handles the various states and their utilities. This API - has been added to `state.py`. Now instead of adding to these 3 lists - independently a state for a new operation can be registered using - `addunfinished()` in `state` module. - - * `cmdutil.checkunfinished()` now includes detection for merge too. - - * merge abort has been disallowed in case an operation of higher - precedence is in progress to avoid cases of partial abort of - operations. - - * We used to automatically attempt to make extensions compatible with - Python 3 (by translating their source code while loading it). We no - longer do that.