relnotes: add release notes for relevant changes I did since the 5.4 release
After having written the notes, I realized that the added points contain changes
that were part of the 5.4.2 release. These were never included in any release
notes. I asked on IRC whether they should be added to this file or not, but
didn’t get an answer to this question. If they should not be added here, I can
remove them.
Differential Revision: https://phab.mercurial-scm.org/D8770
--- a/relnotes/next Mon Jul 20 18:04:19 2020 +0200
+++ b/relnotes/next Tue Jul 21 01:04:19 2020 +0200
@@ -21,6 +21,30 @@
windows. See rust/README.rst in the mercurial repository for
instructions to opt into this.
+ * An experimental config `rewrite.empty-successor` was introduced to control
+ what happens when rewrite operations result in empty changesets.
+
+
+== Bug Fixes ==
+
+ * For the case when connected to a TTY, stdout was fixed to be line-buffered
+ on Python 3 (where it was block-buffered before, causing the process to seem
+ hanging) and Windows on Python 2 (where it was unbuffered before).
+
+ * Subversion sources of the convert extension were fixed to work on Python 3.
+
+ * Subversion sources of the convert extension now interpret the encoding of
+ URLs like Subversion. Previously, there were situations where the convert
+ extension recognized a repository as present but Subversion did not, and
+ vice versa.
+
+ * The empty changeset check of in-memory rebases was fixed to match that of
+ normal rebases (and that of the commit command).
+
+ * The push command now checks the correct set of outgoing changesets for
+ obsolete and unstable changesets. Previously, it could happen that the check
+ prevented pushing changesets which were already on the server.
+
== Backwards Compatibility Changes ==
@@ -33,6 +57,10 @@
changed its default behavior. To get the previous behavior, run `hg perfwrite
--nlines=100000 --nitems=1 --item='Testing write performance' --batch-line`.
+ * The absorb extension now preserves changesets with no file changes that can
+ be created by the commit command (those which change the branch name
+ compared to the parent and those closing a branch head).
+
== Internal API Changes ==
@@ -45,3 +73,8 @@
New accessors are provided to detect if any non-public changeset exists
(`hasnonpublicphases`) and get the correponsponding root set
(`nonpublicphaseroots`).
+
+ * The `stdin`, `stdout` and `stderr` attributes of the `mercurial.pycompat`
+ module were removed. Instead, the attributes of same name from the
+ `mercurial.utils.procutil` module should be used, which provide more
+ consistent behavior across Python versions and platforms.