doc: PG 13 relnotes: final SGML indenting adjustments
authorBruce Momjian <bruce@momjian.us>
Fri, 15 May 2020 14:40:09 +0000 (10:40 -0400)
committerBruce Momjian <bruce@momjian.us>
Fri, 15 May 2020 14:40:09 +0000 (10:40 -0400)
doc/src/sgml/release-13.sgml

index a15e48a5f110dfa9ccd64b5fb1008d93747f20fd..9b7b10fd7a36c699ab843e7441566a1457c3e1e6 100644 (file)
@@ -12,9 +12,9 @@
   <sect2>
    <title>Overview</title>
 
-   <para>
-    Major enhancements in <productname>PostgreSQL</productname> 13 include:
-   </para>
+    <para>
+     Major enhancements in <productname>PostgreSQL</productname> 13 include:
+    </para>
 
    <!-- Items in this list summarize one or more items below -->
 
@@ -26,9 +26,9 @@
 
    </itemizedlist>
 
-   <para>
-    The above items are explained in more detail in the sections below.
-   </para>
+    <para>
+     The above items are explained in more detail in the sections below.
+    </para>
 
   </sect2>
 
 
   <title>Migration to Version 13</title>
 
-   <para>
-    A dump/restore using <xref linkend="app-pg-dumpall"/> or use of <xref
-    linkend="pgupgrade"/> or logical replication is required for those
-    wishing to migrate data from any previous release.  See <xref
-    linkend="upgrading"/> for general information on migrating to new major
-    releases.
-   </para>
-
-   <para>
-    Version 13 contains a number of changes that may affect compatibility
-    with previous releases.  Observe the following incompatibilities:
-   </para>
-
-   <itemizedlist>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-09-07 [ca70bdaef] Fix issues around strictness of SIMILAR TO.
-    -->
-
     <para>
-     Change <link linkend="functions-similarto-regexp"><command>SIMILAR
-     TO ... ESCAPE NULL</command></link> to return <literal>NULL</literal>
-     (Tom Lane)
+     A dump/restore using <xref linkend="app-pg-dumpall"/> or use of <xref
+     linkend="pgupgrade"/> or logical replication is required for those
+     wishing to migrate data from any previous release.  See <xref
+     linkend="upgrading"/> for general information on migrating to new major
+     releases.
     </para>
 
     <para>
-     This new behavior matches the <acronym>SQL</acronym> specification.
-     Previously this caused the escape to be set to the default backslash
-     character.  The previous behavior has been retained in old views
-     by keeping the original function unchanged.  This also applies to
-     <command>substring(text FROM pattern ESCAPE text)</command>.
+     Version 13 contains a number of changes that may affect compatibility
+     with previous releases.  Observe the following incompatibilities:
     </para>
 
-    </listitem>
+   <itemizedlist>
 
     <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-01-31 [870ad6a59] Fix not-quite-right string comparison in parse_jsonb_ind
-    -->
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-09-07 [ca70bdaef] Fix issues around strictness of SIMILAR TO.
+-->
 
-    <para>
-     Have <link
-     linkend="textsearch-functions-table"><function>jsonb_to_tsvector()</function></link>
-     properly check "string" parameter (Dominik Czarnota)
-    </para>
+     <para>
+      Change <link linkend="functions-similarto-regexp"><command>SIMILAR
+      TO ... ESCAPE NULL</command></link> to return <literal>NULL</literal>
+      (Tom Lane)
+     </para>
 
+     <para>
+      This new behavior matches the <acronym>SQL</acronym> specification.
+      Previously this caused the escape to be set to the default backslash
+      character.  The previous behavior has been retained in old views
+      by keeping the original function unchanged.  This also applies to
+      <command>substring(text FROM pattern ESCAPE text)</command>.
+     </para>
     </listitem>
 
     <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-03-28 [9950c8aad] Fix lquery's behavior for consecutive '*' items.
-    -->
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-01-31 [870ad6a59] Fix not-quite-right string comparison in parse_jsonb_ind
+-->
 
-    <para>
-     In <xref linkend="ltree"/>, when using adjacent asterisks with braces,
-     e.g. ".*{2}.*{3}", properly interpret that as ".*{5}" (Nikita Glukhov)
-    </para>
+     <para>
+      Have <link
+      linkend="textsearch-functions-table"><function>jsonb_to_tsvector()</function></link>
+      properly check "string" parameter (Dominik Czarnota)
+     </para>
+    </listitem>
+
+    <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-03-28 [9950c8aad] Fix lquery's behavior for consecutive '*' items.
+-->
 
+     <para>
+      In <xref linkend="ltree"/>, when using adjacent asterisks with braces,
+      e.g. ".*{2}.*{3}", properly interpret that as ".*{5}" (Nikita Glukhov)
+     </para>
     </listitem>
 
     <listitem>
-    <!--
-    Author: Thomas Munro <tmunro@postgresql.org>
-    2020-03-16 [b09ff5366] Simplify the effective_io_concurrency setting.
-    -->
+<!--
+Author: Thomas Munro <tmunro@postgresql.org>
+2020-03-16 [b09ff5366] Simplify the effective_io_concurrency setting.
+-->
 
-    <para>
-     Change the way non-default <xref
-     linkend="guc-effective-io-concurrency"/> values affect concurrency
-     (Thomas Munro)
-    </para>
+     <para>
+      Change the way non-default <xref
+      linkend="guc-effective-io-concurrency"/> values affect concurrency
+      (Thomas Munro)
+     </para>
 
-    <para>
-     Previously, this value was adjusted before effecting the number of
-     concurrent requests.  This value is now used directly.  Conversion of
-     old values to new ones can be done using:
-    </para>
+     <para>
+      Previously, this value was adjusted before effecting the number of
+      concurrent requests.  This value is now used directly.  Conversion of
+      old values to new ones can be done using:
+     </para>
 
     <programlisting>
     SELECT round(sum(OLD / n::float)) FROM generate_series(1, OLD) s(n);
     </programlisting>
-
     </listitem>
 
     <listitem>
-    <!--
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2019-11-12 [5c46e7d82] pg_stat_{ssl,gssapi}: Show only processes with connectio
-    -->
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2019-11-12 [5c46e7d82] pg_stat_{ssl,gssapi}: Show only processes with connectio
+-->
 
-    <para>
-     Prevent display of auxiliary processes in <xref
-     linkend="pg-stat-ssl-view"/> and <xref linkend="pg-stat-gssapi-view"/>
-     system views (Euler Taveira)
-    </para>
-
-    <para>
-     Queries that join these views to <xref
-     linkend="pg-stat-activity-view"/> and wish to see auxiliary processes
-     will need to use left joins.
-    </para>
+     <para>
+      Prevent display of auxiliary processes in <xref
+      linkend="pg-stat-ssl-view"/> and <xref linkend="pg-stat-gssapi-view"/>
+      system views (Euler Taveira)
+     </para>
 
+     <para>
+      Queries that join these views to <xref
+      linkend="pg-stat-activity-view"/> and wish to see auxiliary processes
+      will need to use left joins.
+     </para>
     </listitem>
 
     <listitem>
-    <!--
-    Author: Peter Geoghegan <pg@bowt.ie>
-    2020-03-07 [691e8b2e1] pageinspect: Fix types used for bt_metap() columns.
-    -->
-
-    <para>
-     Fix <xref linkend="pageinspect"/>'s <function>bt_metap()</function>
-     to return more appropriate data types that are less likely to overflow
-     (Peter Geoghegan)
-    </para>
+<!--
+Author: Peter Geoghegan <pg@bowt.ie>
+2020-03-07 [691e8b2e1] pageinspect: Fix types used for bt_metap() columns.
+-->
 
+     <para>
+      Fix <xref linkend="pageinspect"/>'s <function>bt_metap()</function>
+      to return more appropriate data types that are less likely to overflow
+      (Peter Geoghegan)
+     </para>
     </listitem>
 
     <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2020-03-19 [1d253bae5] Rename the recovery-related wait events.
-    -->
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2020-03-19 [1d253bae5] Rename the recovery-related wait events.
+-->
 
-    <para>
-     Rename some recovery-related <link linkend="wait-event-table">wait
-     events</link> (Fujii Masao)
-    </para>
-
-    <para>
-     Rename <literal>RecoveryWalAll</literal>
-     to <literal>RecoveryWalStream</literal>
-     and <literal>RecoveryWalStream</literal> to
-     <literal>RecoveryRetrieveRetryInterval</literal>.
-    </para>
+     <para>
+      Rename some recovery-related <link linkend="wait-event-table">wait
+      events</link> (Fujii Masao)
+     </para>
 
+     <para>
+      Rename <literal>RecoveryWalAll</literal>
+      to <literal>RecoveryWalStream</literal>
+      and <literal>RecoveryWalStream</literal> to
+      <literal>RecoveryRetrieveRetryInterval</literal>.
+     </para>
     </listitem>
 
     <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2019-11-06 [979766c0a] Correct the command tags for ALTER ... RENAME COLUMN.
-    -->
-
-    <para>
-     Fix <link linkend="sql-alterforeigntable"><command>ALTER FOREIGN
-     TABLE ... RENAME COLUMN</command></link> to return a more appropriate
-     command tag (Fujii Masao)
-    </para>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2019-11-06 [979766c0a] Correct the command tags for ALTER ... RENAME COLUMN.
+-->
 
-    <para>
-     Previously it returned <command>ALTER TABLE</command>, but now returns
-     <command>ALTER FOREIGN TABLE</command>.
-    </para>
+     <para>
+      Fix <link linkend="sql-alterforeigntable"><command>ALTER FOREIGN
+      TABLE ... RENAME COLUMN</command></link> to return a more appropriate
+      command tag (Fujii Masao)
+     </para>
 
+     <para>
+      Previously it returned <command>ALTER TABLE</command>, but now returns
+      <command>ALTER FOREIGN TABLE</command>.
+     </para>
     </listitem>
 
     <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2019-11-06 [979766c0a] Correct the command tags for ALTER ... RENAME COLUMN.
-    -->
-
-    <para>
-     Fix <link linkend="sql-altermaterializedview"><command>ALTER
-     MATERIALIZED VIEW ... RENAME COLUMN</command></link> to return a more
-     appropriate command tag (Fujii Masao)
-    </para>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2019-11-06 [979766c0a] Correct the command tags for ALTER ... RENAME COLUMN.
+-->
 
-    <para>
-     Previously it returned <command>ALTER TABLE</command>, but now returns
-     <command>ALTER MATERIALIZED VIEW</command>.
-    </para>
+     <para>
+      Fix <link linkend="sql-altermaterializedview"><command>ALTER
+      MATERIALIZED VIEW ... RENAME COLUMN</command></link> to return a more
+      appropriate command tag (Fujii Masao)
+     </para>
 
+     <para>
+      Previously it returned <command>ALTER TABLE</command>, but now returns
+      <command>ALTER MATERIALIZED VIEW</command>.
+     </para>
     </listitem>
 
     <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-03-05 [84eca14bc] Remove ancient hacks to ignore certain opclass names in 
-    -->
-
-    <para>
-     Remove support for defining <link linkend="sql-createopclass">operator
-     classes</link> using pre-<productname>PostgresSQL</productname>
-     8.0 syntax (Daniel Gustafsson)
-    </para>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-03-05 [84eca14bc] Remove ancient hacks to ignore certain opclass names in 
+-->
 
+     <para>
+      Remove support for defining <link linkend="sql-createopclass">operator
+      classes</link> using pre-<productname>PostgresSQL</productname>
+      8.0 syntax (Daniel Gustafsson)
+     </para>
     </listitem>
 
     <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-03-05 [e58a59975] Remove ancient support for upgrading pre-7.3 foreign key
-    -->
-
-    <para>
-     Remove support for defining <link linkend="sql-altertable">foreign key
-     constraints</link> using pre-<productname>PostgresSQL</productname>
-     7.3 syntax (Daniel Gustafsson)
-    </para>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-03-05 [e58a59975] Remove ancient support for upgrading pre-7.3 foreign key
+-->
 
+     <para>
+      Remove support for defining <link linkend="sql-altertable">foreign key
+      constraints</link> using pre-<productname>PostgresSQL</productname>
+      7.3 syntax (Daniel Gustafsson)
+     </para>
     </listitem>
 
     <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-03-05 [bb03010b9] Remove the "opaque" pseudo-type and associated compatibi
-    -->
-
-    <para>
-     Remove support for "opaque" <link
-     linkend="sql-createtype">pseudo-types</link> used by
-     pre-<productname>PostgresSQL</productname> 7.3 servers (Daniel
-     Gustafsson)
-    </para>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-03-05 [bb03010b9] Remove the "opaque" pseudo-type and associated compatibi
+-->
 
+     <para>
+      Remove support for "opaque" <link
+      linkend="sql-createtype">pseudo-types</link> used by
+      pre-<productname>PostgresSQL</productname> 7.3 servers (Daniel
+      Gustafsson)
+     </para>
     </listitem>
 
    </itemizedlist>
   <sect2>
    <title>Changes</title>
 
-    <para>
-      Below you will find a detailed account of the changes between
-      <productname>PostgreSQL</productname> 13 and the previous major
-      release.
-    </para>
+     <para>
+       Below you will find a detailed account of the changes between
+       <productname>PostgreSQL</productname> 13 and the previous major
+       release.
+     </para>
 
    <sect3>
     <title>Server</title>
 
      <itemizedlist>
 
-    <listitem>
-    <!--
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2019-08-07 [4e85642d9] Apply constraint exclusion more generally in partitionin
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2019-08-13 [815ef2f56] Don't constraint-exclude partitioned tables as much
-    -->
-
-    <para>
-     Improve cases where <link
-     linkend="ddl-partition-pruning">pruning</link> of partitions can happen
-     (Yuzuko Hosoya, Amit Langote, &Aacute;lvaro Herrera)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Etsuro Fujita <efujita@postgresql.org>
-    2020-04-08 [c8434d64c] Allow partitionwise joins in more cases.
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-04-07 [981643dcd] Allow partitionwise join to handle nested FULL JOIN USIN
-    -->
+      <listitem>
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2019-08-07 [4e85642d9] Apply constraint exclusion more generally in partitionin
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2019-08-13 [815ef2f56] Don't constraint-exclude partitioned tables as much
+-->
+
+       <para>
+        Improve cases where <link
+        linkend="ddl-partition-pruning">pruning</link> of partitions can happen
+        (Yuzuko Hosoya, Amit Langote, &Aacute;lvaro Herrera)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Etsuro Fujita <efujita@postgresql.org>
+2020-04-08 [c8434d64c] Allow partitionwise joins in more cases.
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-04-07 [981643dcd] Allow partitionwise join to handle nested FULL JOIN USIN
+-->
+
+      <para>
+       Allow <link linkend="guc-enable-partitionwise-join">partitionwise
+       joins</link> to happen in more cases (Ashutosh Bapat, Etsuro Fujita,
+       Amit Langote, Tom Lane)
+      </para>
+
+       <para>
+        For example, partitionwise joins can now happen between partitioned
+        tables even when their partition bounds do not match exactly.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2020-03-18 [487e9861d] Enable BEFORE row-level triggers for partitioned tables
+-->
+
+       <para>
+        Allow <literal>BEFORE</literal> row-level <link
+        linkend="triggers">triggers</link> on partitioned tables (&Aacute;lvaro
+        Herrera)
+       </para>
+
+       <para>
+        These triggers cannot change which partition is the destination.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2020-03-10 [17b9e7f9f] Support adding partitioned tables to publication
+Author: Peter Eisentraut <peter@eisentraut.org>
+2020-04-08 [83fd4532a] Allow publishing partition changes via ancestors
+-->
+
+       <para>
+        Allow partitioned tables to be logically replicated via <link
+        linkend="sql-createpublication">publications</link> (Amit Langote)
+       </para>
+
+       <para>
+        Previously, partitions had to be replicated individually.  Now
+        partitioned tables can be published explicitly causing all partitions
+        to be automatically published.  Addition/removal of partitions from
+        partitioned tables are automatically added/removed from publications.
+        The <link linkend="sql-createpublication"><command>CREATE
+        PUBLICATION</command></link> option
+        <literal>publish_via_partition_root</literal> controls whether changes
+        to partitions are published as their own or their ancestor's.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2020-04-06 [f1ac27bfd] Add logical replication support to replicate into partit
+-->
+
+       <para>
+        Allow logical replication into partitioned tables on subscribers
+        (Amit Langote)
+       </para>
+
+       <para>
+        Previously, subscribers could only receive rows into non-partitioned
+        tables.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-12-25 [bb4114a4e] Allow whole-row Vars to be used in partitioning expressi
+-->
+
+       <para>
+        Allow <link linkend="rowtypes"><literal>ROW</literal> values</link>
+        to be used as partitioning expressions (Amit Langote)
+       </para>
+      </listitem>
 
-    <para>
-     Allow <link linkend="guc-enable-partitionwise-join">partitionwise
-     joins</link> to happen in more cases (Ashutosh Bapat, Etsuro Fujita,
-     Amit Langote, Tom Lane)
-    </para>
+     </itemizedlist>
 
-    <para>
-     For example, partitionwise joins can now happen between partitioned
-     tables even when their partition bounds do not match exactly.
-    </para>
-    </listitem>
+    </sect4>
 
-    <listitem>
-    <!--
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2020-03-18 [487e9861d] Enable BEFORE row-level triggers for partitioned tables
-    -->
+    <sect4>
+     <title>Indexes</title>
 
-    <para>
-     Allow <literal>BEFORE</literal> row-level <link
-     linkend="triggers">triggers</link> on partitioned tables (&Aacute;lvaro
-     Herrera)
-    </para>
+     <itemizedlist>
 
-    <para>
-     These triggers cannot change which partition is the destination.
-    </para>
+      <listitem>
+<!--
+Author: Peter Geoghegan <pg@bowt.ie>
+2020-02-26 [0d861bbb7] Add deduplication to nbtree.
+-->
+
+       <para>
+        More efficiently store <link
+        linkend="btree-deduplication">duplicates</link> in btree indexes
+        (Anastasia Lubennikova, Peter Geoghegan)
+       </para>
+
+       <para>
+        This allows efficient btree indexing of low cardinality columns
+        by storing duplicate keys only once.  Users upgrading with <link
+        linkend="pgupgrade"><application>pg_upgrade</application></link>
+        will need to use <link
+        linkend="sql-reindex"><command>REINDEX</command></link> to make use
+        of this feature.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Alexander Korotkov <akorotkov@postgresql.org>
+2019-07-14 [c085e1c1c] Add support for <-> (box, point) operator to GiST box_op
+Author: Alexander Korotkov <akorotkov@postgresql.org>
+2019-07-14 [075f0a880] Add support for <-> (box, point) operator to SP-GiST box
+-->
+
+       <para>
+        Allow <link linkend="gist">GiST</link> and <link
+        linkend="spgist">SP-GiST</link> indexes for <link
+        linkend="datatype-line">box</link>/point distance lookups (Nikita
+        Glukhov)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Alexander Korotkov <akorotkov@postgresql.org>
+2020-01-18 [4b754d6c1] Avoid full scan of GIN indexes when possible
+-->
+
+       <para>
+        Allow <link linkend="gin"><acronym>GIN</acronym></link> indexes to
+        more efficiently handle <literal>NOT</literal> restrictions (Nikita
+        Glukhov, Alexander Korotkov, Tom Lane, Julien Rouhaud)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Alexander Korotkov <akorotkov@postgresql.org>
+2020-03-30 [911e70207] Implement operator class parameters
+-->
+
+       <para>
+        Allow <link linkend="sql-createindex">index operator classes</link>
+        to take parameters (Nikita Glukhov)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Alexander Korotkov <akorotkov@postgresql.org>
+2020-03-30 [911e70207] Implement operator class parameters
+-->
+
+       <para>
+        Allow <command>CREATE INDEX</command> to specify the GiST signature
+        length and maximum number of integer ranges (Nikita Glukhov)
+       </para>
+
+       <para>
+        Indexes created on four and eight-byte <link linkend="intarray">integer
+        array</link>, <link linkend="textsearch">tsvector</link>,
+        <xref linkend="pgtrgm"/>, <xref linkend="ltree"/>, and <xref
+        linkend="hstore"/> columns can now control these GiST index parameters,
+        rather than using the defaults.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-12-06 [fbbf68094] Disallow non-default collation in ADD PRIMARY KEY/UNIQUE
+-->
+
+       <para>
+        Prevent indexes that use non-default collations from being <link
+        linkend="sql-altertable">added</link> as a table's unique or primary
+        key constraint (Tom Lane)
+       </para>
+
+       <para>
+        The index and column collations must now match so the index's
+        uniqueness matches the column's uniqueness.
+       </para>
+      </listitem>
 
-    </listitem>
 
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2020-03-10 [17b9e7f9f] Support adding partitioned tables to publication
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2020-04-08 [83fd4532a] Allow publishing partition changes via ancestors
-    -->
+     </itemizedlist>
 
-    <para>
-     Allow partitioned tables to be logically replicated via <link
-     linkend="sql-createpublication">publications</link> (Amit Langote)
-    </para>
+    </sect4>
 
-    <para>
-     Previously, partitions had to be replicated individually.  Now
-     partitioned tables can be published explicitly causing all partitions
-     to be automatically published.  Addition/removal of partitions from
-     partitioned tables are automatically added/removed from publications.
-     The <link linkend="sql-createpublication"><command>CREATE
-     PUBLICATION</command></link> option
-     <literal>publish_via_partition_root</literal> controls whether changes
-     to partitions are published as their own or their ancestor's.
-    </para>
+    <sect4>
+     <title>Optimizer</title>
 
-    </listitem>
+     <itemizedlist>
 
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2020-04-06 [f1ac27bfd] Add logical replication support to replicate into partit
-    -->
+      <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-04-01 [a80818605] Improve selectivity estimation for assorted match-style 
+-->
+
+       <para>
+        Improve the optimizer's <link
+        linkend="planner-stats-details">selectivity</link> estimation for
+        containment/match operators (Tom Lane)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Tomas Vondra <tomas.vondra@postgresql.org>
+2019-09-11 [d06215d03] Allow setting statistics target for extended statistics
+-->
+
+       <para>
+        Allow setting <link linkend="sql-altertable">statistics target</link>
+        for <link linkend="sql-createstatistics">extended statistics</link>
+        (Tomas Vondra)
+       </para>
+
+       <para>
+        This is controlled with the new command option <command>ALTER
+        STATISTICS ... SET STATISTICS</command>.  Previously this was computed
+        based on more general statistics target settings.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Tomas Vondra <tomas.vondra@postgresql.org>
+2020-01-13 [aaa676187] Apply all available functional dependencies
+Author: Tomas Vondra <tomas.vondra@postgresql.org>
+2020-01-13 [eae056c19] Apply multiple multivariate MCV lists when possible
+-->
+
+       <para>
+        Allow use of multiple extended statistics objects in a single query
+        (Tomas Vondra)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Tomas Vondra <tomas.vondra@postgresql.org>
+2020-03-14 [8f321bd16] Use functional dependencies to estimate ScalarArrayOpExp
+Author: Tomas Vondra <tomas.vondra@postgresql.org>
+2020-03-14 [e83daa7e3] Use multi-variate MCV lists to estimate ScalarArrayOpExp
+Author: Tomas Vondra <tomas.vondra@postgresql.org>
+2020-03-18 [ccaa3569f] Recognize some OR clauses as compatible with functional 
+-->
+
+       <para>
+        Allow use of extended statistics objects for OR clauses and <link
+        linkend="functions-subquery">IN</link>/<literal>ANY</literal> constant
+        lists (Pierre Ducroquet, Tomas Vondra)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-08-01 [7266d0997] Allow functions-in-FROM to be pulled up if they reduce t
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-09-24 [a9ae99d01] Prevent bogus pullup of constant-valued functions return
+-->
+
+       <para>
+        Allow functions in <literal>FROM</literal> clauses to be moved to their
+        reference sites if they evaluate to constants (Alexander Kuzmenkov,
+        Aleksandr Parfenov)
+       </para>
+      </listitem>
 
-    <para>
-     Allow logical replication into partitioned tables on subscribers
-     (Amit Langote)
-    </para>
+     </itemizedlist>
 
-    <para>
-     Previously, subscribers could only receive rows into non-partitioned
-     tables.
-    </para>
-    </listitem>
+    </sect4>
 
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-12-25 [bb4114a4e] Allow whole-row Vars to be used in partitioning expressi
-    -->
+    <sect4>
+     <title>General Performance</title>
 
-    <para>
-     Allow <link linkend="rowtypes"><literal>ROW</literal> values</link>
-     to be used as partitioning expressions (Amit Langote)
-    </para>
+     <itemizedlist>
 
-    </listitem>
+      <listitem>
+<!--
+Author: Tomas Vondra <tomas.vondra@postgresql.org>
+2020-04-06 [d2d8a229b] Implement Incremental Sort
+-->
+
+       <para>
+        Implement <link linkend="guc-enable-incrementalsort">incremental
+        sorting</link> (James Coleman, Alexander Korotkov, Tomas Vondra)
+       </para>
+
+       <para>
+        If a result is already sorted by several leading keys, this
+        allows for batch sorting of additional trailing keys because the
+        previous keys are already equal.  This is controlled by <xref
+        linkend="guc-enable-incrementalsort"/>.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Peter Geoghegan <pg@bowt.ie>
+2019-08-01 [71dcd7438] Add sort support routine for the inet data type.
+-->
+
+       <para>
+        Improve the performance of sorting <link
+        linkend="datatype-inet">inet</link> values (Brandur Leach)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Jeff Davis <jdavis@postgresql.org>
+2020-03-18 [1f39bce02] Disk-based Hash Aggregation.
+Author: Jeff Davis <jdavis@postgresql.org>
+2020-03-24 [dd8e19132] Consider disk-based hash aggregation to implement DISTIN
+-->
+
+       <para>
+        Allow <link linkend="guc-enable-hashagg">hash aggregation</link>
+        to use disk storage for large aggregation result sets (Jeff Davis)
+       </para>
+
+       <para>
+        Previously, hash aggregation was avoided if it was expected to use
+        more than <xref linkend="guc-work-mem"/> memory.  This is controlled
+        by <xref linkend="guc-enable-hashagg-disk"/>.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Jeff Davis <jdavis@postgresql.org>
+2020-03-18 [1f39bce02] Disk-based Hash Aggregation.
+-->
+
+       <para>
+        Allow <link linkend="queries-grouping-sets">grouping sets</link> to
+        use hash aggregation with disk storage for large grouping set results
+        (Jeff Davis)
+       </para>
+
+       <para>
+        Previously, hash aggregation was avoided if it was expected to use
+        more than <xref linkend="guc-work-mem"/> memory.  This is controlled
+        by <xref linkend="guc-enable-hashagg-disk"/>.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: David Rowley <drowley@postgresql.org>
+2020-03-28 [b07642dbc] Trigger autovacuum based on number of INSERTs
+-->
+
+       <para>
+        Allow inserts to trigger <link linkend="autovacuum">autovacuum</link>
+        activity (Laurenz Albe, Darafei Praliaskouski)
+       </para>
+
+       <para>
+        This new behavior reduces the work necessary when the table needs to
+        be frozen and allows pages to be set as all-visible.  All-visible pages
+        allow index-only scans to access fewer heap rows.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Thomas Munro <tmunro@postgresql.org>
+2020-03-16 [fc34b0d9d] Introduce a maintenance_io_concurrency setting.
+-->
+
+       <para>
+        Add <xref linkend="guc-maintenance-io-concurrency"/> to control I/O
+        concurrency for maintenance operations (Thomas Munro)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Noah Misch <noah@leadboat.com>
+2020-04-04 [c6b92041d] Skip WAL for new relfilenodes, under wal_level=minimal.
+-->
+
+       <para>
+        Allow skipping of <acronym>WAL</acronym> for <link
+        linkend="guc-full-page-writes">full table writes</link> if <xref
+        linkend="guc-wal-level"/> is <literal>minimal</literal> (Kyotaro
+        Horiguchi)
+       </para>
+
+       <para>
+        Relations larger than <xref linkend="guc-wal-skip-threshold"/>
+        will have their files fsync'ed rather than generating
+        <acronym>WAL</acronym>.  Previously this was done only for
+        <command>COPY</command> operations, but the implementation had a bug
+        that could cause data loss during crash recovery.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2020-03-28 [8f3ec75de] Enable Unix-domain sockets support on Windows
+-->
+
+       <para>
+        Enable <link linkend="client-authentication">Unix-domain sockets</link>
+        support on Windows (Peter Eisentraut)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2019-11-21 [e6d806952] Make DROP DATABASE command generate less WAL records.
+-->
+
+       <para>
+        Improve the performance when replaying <link
+        linkend="sql-dropdatabase"><command>DROP DATABASE</command></link>
+        commands when many tablespaces are in use (Fujii Masao)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2019-09-24 [6d05086c0] Speedup truncations of relation forks.
+-->
+
+       <para>
+        Improve performance for <link linkend="sql-truncate">truncation</link>
+        of very large relations (Kirk Jamison)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Tomas Vondra <tomas.vondra@postgresql.org>
+2019-10-01 [11a078cf8] Optimize partial TOAST decompression
+-->
+
+       <para>
+        Improve speed of <link
+        linkend="storage-toast"><acronym>TOAST</acronym></link> decompression
+        and the retrieval of only the leading bytes of <acronym>TOAST</acronym>
+        values (Binguo Bao, Andrey Borodin)
+       </para>
+
+       <para>
+        Previously, <acronym>TOAST</acronym> values were fully fetched and
+        only the requested leading bytes were decompressed and returned.
+        Now, only the requested bytes are fetched.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-09-10 [bca6e6435] Reduce overhead of scanning the backend[] array in LISTE
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-09-22 [51004c717] Make some efficiency improvements in LISTEN/NOTIFY.
+-->
+
+       <para>
+        Improve performance of <link
+        linkend="sql-listen"><command>LISTEN</command></link>/<command>NOTIFY</command>
+        (Martijn van Oosterhout)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-08-15 [bb5ae8f6c] Use a hash table to de-duplicate NOTIFY events faster.
+-->
+
+       <para>
+        Improve the efficiency of removing duplicate <link
+        linkend="sql-notify"><command>NOTIFY</command></link> events (Tom Lane)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Andrew Gierth <rhodiumtoad@postgresql.org>
+2020-02-01 [1fd687a03] Optimizations for integer to decimal output.
+-->
+
+       <para>
+        Use lookup tables to speed up integer to text conversion (David Fetter)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-07-10 [b5810de3f] Reduce memory consumption for multi-statement query stri
+-->
+
+       <para>
+        Reduce memory usage for query strings that contain multiple
+        <acronym>SQL</acronym> statements (Amit Langote)
+       </para>
+      </listitem>
 
      </itemizedlist>
 
     </sect4>
 
     <sect4>
-     <title>Indexes</title>
+     <title>Monitoring</title>
 
      <itemizedlist>
 
-    <listitem>
-    <!--
-    Author: Peter Geoghegan <pg@bowt.ie>
-    2020-02-26 [0d861bbb7] Add deduplication to nbtree.
-    -->
-
-    <para>
-     More efficiently store <link
-     linkend="btree-deduplication">duplicates</link> in btree indexes
-     (Anastasia Lubennikova, Peter Geoghegan)
-    </para>
+      <listitem>
+<!--
+Author: Amit Kapila <akapila@postgresql.org>
+2020-04-05 [6b466bf5f] Allow pg_stat_statements to track WAL usage statistics.
+Author: Amit Kapila <akapila@postgresql.org>
+2020-04-06 [33e05f89c] Add the option to report WAL usage in EXPLAIN and auto_e
+Author: Amit Kapila <akapila@postgresql.org>
+2020-04-06 [b7ce6de93] Allow autovacuum to log WAL usage statistics.
+-->
+
+       <para>
+        Allow <link linkend="sql-explain"><command>EXPLAIN</command></link>,
+        <xref linkend="auto-explain"/>, <link
+        linkend="autovacuum">autovacuum</link>, and <xref
+        linkend="pgstatstatements"/> to track <acronym>WAL</acronym> usage
+        statistics (Kirill Bychik, Julien Rouhaud)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Tomas Vondra <tomas.vondra@postgresql.org>
+2019-11-06 [6e3e6cc0e] Allow sampling of statements depending on duration
+-->
+
+       <para>
+        Allow a sample of statements to be logged (Adrien Nayrat)
+       </para>
+
+       <para>
+        A <xref linkend="guc-log-statement-sample-rate"/> ratio of statements
+        taking over <xref linkend="guc-log-min-duration-sample"/> duration
+        will be logged.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2020-03-15 [70a7b4776] Add backend type to csvlog and optionally log_line_prefi
+-->
+
+       <para>
+        Add the backend type to <link
+        linkend="runtime-config-logging">csvlog</link> and optionally <xref
+        linkend="guc-log-line-prefix"/> log output (Peter Eisentraut)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2019-12-11 [ba79cb5dc] Emit parameter values during query bind/execute errors
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-04-02 [0b34e7d30] Improve user control over truncation of logged bind-para
+-->
+
+       <para>
+        Improve control of prepared statement parameter logging (Alexey
+        Bashtanov, &Aacute;lvaro Herrera)
+       </para>
+
+       <para>
+        The <acronym>GUC</acronym> setting <xref
+        linkend="guc-log-parameter-max-length"/> controls the maximum length
+        of parameter values output during statement non-error logging, and
+        <xref linkend="guc-log-parameter-max-length-on-error"/> does the
+        same for error statement logging.  Previously, prepared statement
+        parameters were not logged during errors.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2020-02-05 [15d13e829] Make vacuum buffer counters 64 bits wide
+-->
+
+       <para>
+        Make <link linkend="sql-vacuum">vacuum</link> buffer counters 64-bits
+        wide to avoid overflow (&Aacute;lvaro Herrera)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2019-11-08 [71a8a4f6e] Add backtrace support for error reporting
+-->
+
+       <para>
+        Allow function call backtraces of errors to be logged (Peter
+        Eisentraut, &Aacute;lvaro Herrera)
+       </para>
+
+       <para>
+        Server variable <xref linkend="guc-backtrace-functions"/> specifies
+        which C functions should generate backtraces on error.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Michael Paquier <michael@paquier.xyz>
+2019-07-05 [313f87a17] Add min() and max() aggregates for pg_lsn
+-->
+
+       <para>
+        Add <function>min()</function> and
+        <function>max()</function> aggregates for <link
+        linkend="datatype-pg-lsn"><type>pg_lsn</type></link> (Fabr&iacute;zio
+        de Royes Mello)
+       </para>
+
+       <para>
+        This is useful for monitoring queries.
+       </para>
+      </listitem>
 
-    <para>
-     This allows efficient btree indexing of low cardinality columns
-     by storing duplicate keys only once.  Users upgrading with <link
-     linkend="pgupgrade"><application>pg_upgrade</application></link>
-     will need to use <link
-     linkend="sql-reindex"><command>REINDEX</command></link> to make use
-     of this feature.
-    </para>
+     </itemizedlist>
 
-    </listitem>
+    </sect4>
 
-    <listitem>
-    <!--
-    Author: Alexander Korotkov <akorotkov@postgresql.org>
-    2019-07-14 [c085e1c1c] Add support for <-> (box, point) operator to GiST box_op
-    Author: Alexander Korotkov <akorotkov@postgresql.org>
-    2019-07-14 [075f0a880] Add support for <-> (box, point) operator to SP-GiST box
-    -->
+    <sect4>
+     <title>System Views</title>
 
-    <para>
-     Allow <link linkend="gist">GiST</link> and <link
-     linkend="spgist">SP-GiST</link> indexes for <link
-     linkend="datatype-line">box</link>/point distance lookups (Nikita
-     Glukhov)
-    </para>
+     <itemizedlist>
 
-    </listitem>
+      <listitem>
+<!--
+Author: Michael Paquier <michael@paquier.xyz>
+2020-02-06 [b025f32e0] Add leader_pid to pg_stat_activity
+-->
+
+       <para>
+        Add <structfield>leader_pid</structfield> to <xref
+        linkend="pg-stat-activity-view"/> to report parallel worker ownership
+        (Julien Rouhaud)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2020-03-03 [e65497df8] Report progress of streaming base backup.
+-->
+
+       <para>
+        Add system view <link
+        linkend="basebackup-progress-reporting"><structname>pg_stat_progress_basebackup</structname></link>
+        to report the progress of streaming base backups (Fujii Masao)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2020-01-15 [a166d408e] Report progress of ANALYZE commands
+-->
+
+       <para>
+        Add system view <link
+        linkend="monitoring-stats-dynamic-views-table"><structname>pg_stat_progress_analyze</structname></link>
+        to report <link linkend="sql-analyze">analyze</link> progress
+        (&Aacute;lvaro Herrera, Tatsuro Yamada, Vinayak Pokale)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Amit Kapila <akapila@postgresql.org>
+2019-11-21 [9290ad198] Track statistics for spilling of changes from ReorderBuf
+-->
+
+       <para>
+        Add columns to the <link
+        linkend="monitoring-stats-dynamic-views-table"><structname>pg_stat_replication</structname></link>
+        system view to report how much logical decoding information has been
+        spilled to disk (Tomas Vondra)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Robert Haas <rhaas@postgresql.org>
+2020-01-09 [ed10f32e3] Add pg_shmem_allocations view.
+-->
+
+       <para>
+        Add system view <link
+        linkend="view-pg-shmem-allocations"><structname>pg_shmem_allocations</structname></link>
+        to display shared memory usage (Andres Freund, Robert Haas)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Tomas Vondra <tomas.vondra@postgresql.org>
+2020-04-02 [28cac71bd] Collect statistics about SLRU caches
+-->
+
+       <para>
+        Create <link
+        linkend="monitoring-stats-views-table"><structname>pg_stat_slru</structname></link>
+        system view to monitor internal <acronym>SLRU</acronym> caches
+        (Tomas Vondra)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Robert Haas <rhaas@postgresql.org>
+2020-01-07 [814727858] Increase the maximum value of track_activity_query_size.
+-->
+
+       <para>
+        Allow <xref linkend="guc-track-activity-query-size"/> to be set up
+        to 1MB (Vyacheslav Makarov)
+       </para>
+
+       <para>
+        The previous maximum was 100kB.
+       </para>
+      </listitem>
 
-    <listitem>
-    <!--
-    Author: Alexander Korotkov <akorotkov@postgresql.org>
-    2020-01-18 [4b754d6c1] Avoid full scan of GIN indexes when possible
-    -->
+     </itemizedlist>
 
-    <para>
-     Allow <link linkend="gin"><acronym>GIN</acronym></link> indexes to
-     more efficiently handle <literal>NOT</literal> restrictions (Nikita
-     Glukhov, Alexander Korotkov, Tom Lane, Julien Rouhaud)
-    </para>
+    </sect4>
 
-    </listitem>
+    <sect4>
+     <title><link linkend="wait-event-table">Wait Events</link></title>
 
-    <listitem>
-    <!--
-    Author: Alexander Korotkov <akorotkov@postgresql.org>
-    2020-03-30 [911e70207] Implement operator class parameters
-    -->
+     <itemizedlist>
 
-    <para>
-     Allow <link linkend="sql-createindex">index operator classes</link>
-     to take parameters (Nikita Glukhov)
-    </para>
+      <listitem>
+<!--
+Author: Thomas Munro <tmunro@postgresql.org>
+2020-01-31 [ef02fb15a] Report time spent in posix_fallocate() as a wait event.
+-->
+
+       <para>
+        Add wait event for <function>posix_fallocate()</function> (Thomas
+        Munro)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Andres Freund <andres@anarazel.de>
+2020-03-23 [cedffbdb8] Report wait event for cost-based vacuum delay.
+-->
+
+       <para>
+        Add wait event VacuumDelay to report on cost-based vacuum delay
+        (Justin Pryzby)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2020-03-24 [b8e20d6da] Add wait events for WAL archive and recovery pause.
+-->
+
+       <para>
+        Add wait events for <acronym>WAL</acronym> archive and recovery pause
+        (Fujii Masao)
+       </para>
+
+       <para>
+        The new events are BackupWaitWalArchive and RecoveryPause.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2020-04-03 [18808f8c8] Add wait events for recovery conflicts.
+-->
+
+       <para>
+        Add  wait events RecoveryConflictSnapshot and
+        RecoveryConflictTablespace to monitor recovery conflicts (Masahiko
+        Sawada)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Thomas Munro <tmunro@postgresql.org>
+2020-02-05 [815c2f097] Add kqueue(2) support to the WaitEventSet API.
+-->
+
+       <para>
+        Improve performance of wait events on <acronym>BSD</acronym>-based
+        systems (Thomas Munro)
+       </para>
+      </listitem>
 
-    </listitem>
+     </itemizedlist>
 
-    <listitem>
-    <!--
-    Author: Alexander Korotkov <akorotkov@postgresql.org>
-    2020-03-30 [911e70207] Implement operator class parameters
-    -->
+    </sect4>
 
-    <para>
-     Allow <command>CREATE INDEX</command> to specify the GiST signature
-     length and maximum number of integer ranges (Nikita Glukhov)
-    </para>
+    <sect4>
+     <title><acronym>Authentication</acronym></title>
 
-    <para>
-     Indexes created on four and eight-byte <link linkend="intarray">integer
-     array</link>, <link linkend="textsearch">tsvector</link>,
-     <xref linkend="pgtrgm"/>, <xref linkend="ltree"/>, and <xref
-     linkend="hstore"/> columns can now control these GiST index parameters,
-     rather than using the defaults.
-    </para>
+     <itemizedlist>
 
-    </listitem>
+      <listitem>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2020-03-09 [d9249441e] Mark ssl_passphrase_command as GUC_SUPERUSER_ONLY.
+-->
+
+       <para>
+        Only allow superusers to view the <xref
+        linkend="guc-ssl-passphrase-command"/> setting (Insung Moon)
+       </para>
+
+       <para>
+        This was changed as a security precaution.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2019-12-04 [b1abfec82] Update minimum SSL version
+-->
+
+       <para>
+        Change the default minimum <acronym>TLS</acronym> version from 1.0
+        to 1.2 (Peter Eisentraut)
+       </para>
+
+       <para>
+        This is controlled by <xref linkend="guc-ssl-min-protocol-version"/>.
+       </para>
+      </listitem>
 
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-12-06 [fbbf68094] Disallow non-default collation in ADD PRIMARY KEY/UNIQUE
-    -->
+     </itemizedlist>
 
-    <para>
-     Prevent indexes that use non-default collations from being <link
-     linkend="sql-altertable">added</link> as a table's unique or primary
-     key constraint (Tom Lane)
-    </para>
+    </sect4>
 
-    <para>
-     The index and column collations must now match so the index's
-     uniqueness matches the column's uniqueness.
-    </para>
+    <sect4>
+     <title>Server Configuration</title>
 
-    </listitem>
+     <itemizedlist>
 
+      <listitem>
+<!--
+Author: Robert Haas <rhaas@postgresql.org>
+2020-01-16 [2eb34ac36] Fix problems with "read only query" checks, and refactor
+-->
+
+       <para>
+        Tighten rules on which utility commands are possible in <xref
+        linkend="guc-default-transaction-read-only"/> mode (Robert Haas)
+       </para>
+
+       <para>
+        This also increases the number of utility commands that can run in
+        parallel queries.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2019-11-29 [c4a7a392e] Make allow_system_table_mods settable at run time
+-->
+
+       <para>
+        Allow <xref linkend="guc-allow-system-table-mods"/> to be changed
+        after server start (Peter Eisentraut)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2019-11-29 [508bf95b7] Remove any-user DML capability from allow_system_table_m
+-->
+
+       <para>
+        Disallow non-superusers from modifying system tables when <xref
+        linkend="guc-allow-system-table-mods"/> is set (Peter Eisentraut)
+       </para>
+
+       <para>
+        Previously, if <xref linkend="guc-allow-system-table-mods"/>
+        was set at server start, non-superusers could issue
+        <command>INSERT</command>/<command>UPDATE</command>/<command>DELETE</command>
+        commands on system tables.
+       </para>
+      </listitem>
 
      </itemizedlist>
 
     </sect4>
 
-    <sect4>
-     <title>Optimizer</title>
+   </sect3>
 
-     <itemizedlist>
+   <sect3>
+    <title>Streaming Replication and Recovery</title>
 
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-04-01 [a80818605] Improve selectivity estimation for assorted match-style 
-    -->
+    <itemizedlist>
 
-    <para>
-     Improve the optimizer's <link
-     linkend="planner-stats-details">selectivity</link> estimation for
-     containment/match operators (Tom Lane)
-    </para>
+     <listitem>
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2020-03-27 [1e6148032] Allow walreceiver configuration to change on reload
+-->
+
+      <para>
+       Allow streaming replication configuration settings to be changed by
+       reload (Sergei Kornilov)
+      </para>
+
+      <para>
+       Previously, a server restart was required to change
+       <xref linkend="guc-primary-conninfo"/> and <xref
+       linkend="guc-primary-slot-name"/>.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2020-01-14 [329730827] walreceiver uses a temporary replication slot by default
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2020-03-27 [092c6936d] Set wal_receiver_create_temp_slot PGC_POSTMASTER
+-->
+
+      <para>
+       Allow <acronym>WAL</acronym> receivers use a temporary replication slot
+       if a permanent one is not specified (Peter Eisentraut, Sergei Kornilov)
+      </para>
+
+      <para>
+       This behavior can be enabled using <xref
+       linkend="guc-wal-receiver-create-temp-slot"/>.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2020-04-07 [c65507763] Allow users to limit storage reserved by replication slo
+-->
+
+      <para>
+       Allow replication slot storage to be limited by <xref
+       linkend="guc-max-slot-wal-keep-size"/> (Kyotaro Horiguchi)
+      </para>
+
+      <para>
+       Replication slots that exceed this value are invalidated.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2020-03-24 [496ee647e] Prefer standby promotion over recovery pause.
+-->
+
+      <para>
+       Allow <link linkend="guc-promote-trigger-file">standby promotion</link>
+       to cancel any requested pause (Fujii Masao)
+      </para>
+
+      <para>
+       Previously, promotion could not happen while the standby was in
+       paused state.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2020-01-29 [dc788668b] Fail if recovery target is not reached
+-->
+
+      <para>
+       Generate an error if recovery does not reach the specified <link
+       linkend="runtime-config-wal-recovery-target">recovery target</link>
+       (Leif Gunnar Erlandsen, Peter Eisentraut)
+      </para>
+
+      <para>
+       Previously, the end of the <acronym>WAL</acronym> would promote the
+       standby, even if the target was not reached.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Amit Kapila <akapila@postgresql.org>
+2019-11-19 [cec2edfa7] Add logical_decoding_work_mem to limit ReorderBuffer mem
+-->
+
+      <para>
+       Allow control over how much memory is used by logical decoding before
+       it is spilled to disk (Tomas Vondra, Dilip Kumar, Amit Kapila)
+      </para>
+
+      <para>
+       This is controlled by <xref linkend="guc-logical-decoding-work-mem"/>.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2020-01-22 [41c184bc6] Add GUC ignore_invalid_pages.
+-->
+
+      <para>
+       Allow <acronym>WAL</acronym> recovery to continue even if invalid
+       pages are referenced (Fujii Masao)
+      </para>
+
+      <para>
+       This is enabled using <xref linkend="guc-ignore-invalid-pages"/>.
+      </para>
+     </listitem>
 
-    </listitem>
+    </itemizedlist>
 
-    <listitem>
-    <!--
-    Author: Tomas Vondra <tomas.vondra@postgresql.org>
-    2019-09-11 [d06215d03] Allow setting statistics target for extended statistics
-    -->
+   </sect3>
 
-    <para>
-     Allow setting <link linkend="sql-altertable">statistics target</link>
-     for <link linkend="sql-createstatistics">extended statistics</link>
-     (Tomas Vondra)
-    </para>
+   <sect3>
+    <title>Utility Commands</title>
 
-    <para>
-     This is controlled with the new command option <command>ALTER
-     STATISTICS ... SET STATISTICS</command>.  Previously this was computed
-     based on more general statistics target settings.
-    </para>
+    <itemizedlist>
 
-    </listitem>
+     <listitem>
+<!--
+Author: Amit Kapila <akapila@postgresql.org>
+2020-01-20 [40d964ec9] Allow vacuum command to process indexes in parallel.
+-->
+
+      <para>
+       Allow <link linkend="sql-vacuum"><command>VACUUM</command></link>
+       to process indexes in parallel (Masahiko Sawada, Amit Kapila)
+      </para>
+
+      <para>
+       The new <literal>PARALLEL</literal> option controls this.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2020-04-07 [357889eb1] Support FETCH FIRST WITH TIES
+-->
+
+      <para>
+       Allow <link linkend="sql-fetch"><command>FETCH FIRST</command></link>
+       to use <literal>WITH TIES</literal> to return any additional rows
+       that match the last result row (Surafel Temesgen)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2020-04-04 [ce77abe63] Include information on buffer usage during planning phas
+-->
+
+      <para>
+       Report planning-time buffer usage in <link
+       linkend="sql-explain"><command>EXPLAIN</command></link>'s
+       <literal>BUFFER</literal> output (Julien Rouhaud)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-03-10 [cacef1722] Ensure that CREATE TABLE LIKE copies any NO INHERIT cons
+-->
+
+      <para>
+       Have <link linkend="sql-createtable"><command>CREATE TABLE
+       LIKE</command></link> propagate <literal>CHECK</literal>'s <literal>NO
+       INHERIT</literal> property to created tables (Ildar Musin, Chris
+       Travers)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2020-02-18 [b7e51b350] Make inherited LOCK TABLE perform access permission chec
+-->
+
+      <para>
+       When using <link linkend="sql-lock"><command>LOCK
+       TABLE</command></link> on a partitioned table, do not check permissions
+       on the child tables (Amit Langote)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2020-03-31 [de3bbfcc9] Fix INSERT OVERRIDING USER VALUE behavior
+-->
+
+      <para>
+       Allow <link linkend="sql-insert"><literal>OVERRIDING USER
+       VALUE</literal></link> on inserts into identity columns (Dean Rasheed)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2020-01-14 [f595117e2] ALTER TABLE ... ALTER COLUMN ... DROP EXPRESSION
+-->
+
+      <para>
+       Add <link linkend="sql-altertable"><command>ALTER
+       TABLE</command></link> clause <literal>DROP EXPRESSION</literal>
+       to remove generated properties from columns (Peter Eisentraut)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-01-15 [1281a5c90] Restructure ALTER TABLE execution to fix assorted bugs.
+-->
+
+      <para>
+       Fix bugs in <command>ALTER TABLE</command> when later clauses overlap
+       changes made by earlier clauses in the same command (Tom Lane)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2019-11-21 [30840c92a] Allow ALTER VIEW command to rename the column in the vie
+-->
+
+      <para>
+       Add <link linkend="sql-alterview"><command>ALTER VIEW</command></link>
+       syntax to rename view columns (Fujii Masao)
+      </para>
+
+      <para>
+       This was previously possible only using <command>ALTER TABLE RENAME
+       COLUMN</command>.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-03-06 [fe30e7ebf] Allow ALTER TYPE to change some properties of a base typ
+-->
+
+      <para>
+       Add <link linkend="sql-altertype"><command>ALTER TYPE</command></link>
+       options useful for extensions, like <acronym>TOAST</acronym> and I/O
+       functions control (Tomas Vondra, Tom Lane)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2019-07-23 [06140c201] Add CREATE DATABASE LOCALE option
+-->
+
+      <para>
+       Add <link linkend="sql-createdatabase"><command>CREATE
+       DATABASE</command></link> <literal>LOCALE</literal> option (Peter
+       Eisentraut)
+      </para>
+
+      <para>
+       This combines existing options <literal>LC_COLLATE</literal> and
+       <literal>LC_CTYPE</literal> into a single option.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Amit Kapila <akapila@postgresql.org>
+2019-11-13 [1379fd537] Introduce the 'force' option for the Drop Database comma
+-->
+
+      <para>
+       Allow <link linkend="sql-dropdatabase"><command>DROP
+       DATABASE</command></link> to disconnect users so drop succeeds (Pavel
+       Stehule, Amit Kapila)
+      </para>
+
+      <para>
+       This is enabled by <literal>WITH FORCE</literal>.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2020-03-09 [71d60e2aa] Add tg_updatedcols to TriggerData
+-->
+
+      <para>
+       Add C structure member <link
+       linkend="trigger-interface"><structfield>tg_updatedcols</structfield></link>
+       to record updated columns to C triggers (Peter Eisentraut)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2020-03-20 [4e6209134] pg_dump: Add FOREIGN to ALTER statements, if appropriate
+-->
+
+      <para>
+       Add <literal>FOREIGN</literal> to <command>ALTER</command> statements,
+       if appropriate (Luis Carril)
+      </para>
+
+      <para>
+       WHAT IS THIS ABOUT?
+      </para>
+     </listitem>
 
-    <listitem>
-    <!--
-    Author: Tomas Vondra <tomas.vondra@postgresql.org>
-    2020-01-13 [aaa676187] Apply all available functional dependencies
-    Author: Tomas Vondra <tomas.vondra@postgresql.org>
-    2020-01-13 [eae056c19] Apply multiple multivariate MCV lists when possible
-    -->
+    </itemizedlist>
 
-    <para>
-     Allow use of multiple extended statistics objects in a single query
-     (Tomas Vondra)
-    </para>
+   </sect3>
 
-    </listitem>
+   <sect3>
+    <title>Data Types</title>
 
-    <listitem>
-    <!--
-    Author: Tomas Vondra <tomas.vondra@postgresql.org>
-    2020-03-14 [8f321bd16] Use functional dependencies to estimate ScalarArrayOpExp
-    Author: Tomas Vondra <tomas.vondra@postgresql.org>
-    2020-03-14 [e83daa7e3] Use multi-variate MCV lists to estimate ScalarArrayOpExp
-    Author: Tomas Vondra <tomas.vondra@postgresql.org>
-    2020-03-18 [ccaa3569f] Recognize some OR clauses as compatible with functional 
-    -->
+    <itemizedlist>
 
-    <para>
-     Allow use of extended statistics objects for OR clauses and <link
-     linkend="functions-subquery">IN</link>/<literal>ANY</literal> constant
-     lists (Pierre Ducroquet, Tomas Vondra)
-    </para>
+     <listitem>
+<!--
+Tom Lane <tgl@sss.pgh.pa.us>
+2020-03-19 [24e2885ee] Introduce "anycompatible" family of polymorphic types.
+-->
+
+      <para>
+       Add polymorphic data types for use by functions requiring compatible
+       arguments (Pavel Stehule)
+      </para>
+
+      <para>
+       The new data types are <link
+       linkend="datatype-pseudotypes-table">anycompatible</link>,
+       anycompatiblearray, anycompatiblenonarray, and anycompatiblerange.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Thomas Munro <tmunro@postgresql.org>
+2020-04-07 [aeec457de] Add SQL type xid8 to expose FullTransactionId to users.
+-->
+
+      <para>
+       Add <acronym>SQL</acronym> data type <link
+       linkend="datatype-oid">xid8</link> to expose FullTransactionId
+       (Thomas Munro)
+      </para>
+
+      <para>
+       The xid data type is only four bytes so does not show the transaction
+       epoch.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2020-03-18 [a2b1faa0f] Implement type regcollation
+-->
+
+      <para>
+       Add data type <link linkend="datatype-oid">regcollation</link> and
+       helper functions for system collations (Julien Rouhaud)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Thomas Munro <tmunro@postgresql.org>
+2019-10-16 [d5ac14f9c] Use libc version as a collation version on glibc systems
+-->
+
+      <para>
+       Use the glibc version in some cases as the <link
+       linkend="collation">collation</link> version (Thomas Munro)
+      </para>
+
+      <para>
+       If the glibc version changes, a warning will be issued when a
+       mismatching collation is used.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Thomas Munro <tmunro@postgresql.org>
+2020-03-25 [352f6f2df] Add collation versions for Windows.
+-->
+
+      <para>
+       Add support for collation versions on Windows (Thomas Munro)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-10-28 [8b7a0f1d1] Allow extracting fields from a ROW() expression in more 
+-->
+
+      <para>
+       Allow <link linkend="rowtypes"><literal>ROW</literal> values</link>
+       values to have their members extracted with suffix notation (Tom Lane)
+      </para>
+
+      <para>
+       For example, <literal>(ROW(4, 5.0)).f1</literal> returns 4.
+      </para>
+     </listitem>
 
-    </listitem>
+    </itemizedlist>
 
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-08-01 [7266d0997] Allow functions-in-FROM to be pulled up if they reduce t
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-09-24 [a9ae99d01] Prevent bogus pullup of constant-valued functions return
-    -->
+   </sect3>
 
-    <para>
-     Allow functions in <literal>FROM</literal> clauses to be moved to their
-     reference sites if they evaluate to constants (Alexander Kuzmenkov,
-     Aleksandr Parfenov)
-    </para>
+   <sect3>
+    <title>Functions</title>
 
-    </listitem>
+    <itemizedlist>
 
+     <listitem>
+<!--
+Author: Andrew Dunstan <andrew@dunslane.net>
+2020-01-17 [a83586b55] Add a non-strict version of jsonb_set
+-->
+
+      <para>
+       Add alternate version of <link
+       linkend="functions-json-processing-table"><function>jsonb_setI()</function></link>
+       with special <literal>NULL</literal> handling (Andrew Dunstan)
+      </para>
+
+      <para>
+       The new function, <function>jsonb_set_lax()</function>, allows null
+       new values to either set the specified key to <acronym>JSON</acronym>
+       null, delete the key, raise exception, or ignore the operation.
+       IS 'return_target' CLEAR?
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Alexander Korotkov <akorotkov@postgresql.org>
+2019-09-25 [bffe1bd68] Implement jsonpath .datetime() method
+-->
+
+      <para>
+       Add jsonpath <link
+       linkend="functions-sqljson-path-operators">.<function>datetime()</function></link>
+       method (Nikita Glukhov, Teodor Sigaev, Oleg Bartunov, Alexander
+       Korotkov)
+      </para>
+
+      <para>
+       This allows json values to be converted to timestamps, which can
+       then be processed in jsonpath expressions.  This also adds jsonpath
+       functions that support time zone-aware output.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2020-04-02 [2991ac5fc] Add SQL functions for Unicode normalization
+-->
+
+      <para>
+       Add <acronym>SQL</acronym> functions <link
+       linkend="functions-string-sql"><literal>NORMALIZE</literal>()</link>
+       to normalize Unicode strings, and <link
+       linkend="collation-nondeterministic"><literal>IS
+       NORMALIZED</literal></link> to check for normalization (Peter
+       Eisentraut)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-03-06 [a6525588b] Allow Unicode escapes in any server encoding, not only U
+-->
+
+      <para>
+       Allow <link linkend="sql-syntax-strings-uescape">Unicode
+       escapes</link>, e.g., E'\u####', U&amp;'\####', to specify any
+       character available in the database encoding, even when the database
+       encoding is not <acronym>UTF</acronym>-8 (Tom Lane)
+      </para>
+
+      <para>
+       The Unicode characters must be available in the database encoding.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-03-03 [d67755049] Allow to_date/to_timestamp to recognize non-English mont
+-->
+
+      <para>
+       Allow <link
+       linkend="functions-formatting"><function>to_date()</function></link>
+       and <function>to_timestamp()</function> to recognize non-English
+       month/day names (Juan Jos&eacute; Santamar&iacute;a Flecha, Tom Lane)
+      </para>
+
+      <para>
+       The names recognized are the same as those output by <link
+       linkend="functions-formatting"><function>to_char()</function></link>
+       with the same format codes.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Alexander Korotkov <akorotkov@postgresql.org>
+2019-09-16 [d589f9446] Support for FF1-FF6 datetime format patterns
+-->
+
+      <para>
+       Add format specifications FF1-FF6 to control display of 1-6 subsecond
+       digits (Alexander Korotkov, Nikita Glukhov, Teodor Sigaev, Oleg
+       Bartunov)
+      </para>
+
+      <para>
+       These patterns can be used by <function>to_char()</function>,
+       <function>to_timestamp()</function>, and jsonpath's
+       .<function>datetime()</function>.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Alexander Korotkov <akorotkov@postgresql.org>
+2019-09-16 [b64b857f5] Support for SSSSS datetime format pattern
+-->
+
+      <para>
+       Add <literal>SSSSS</literal> time format specification as an
+       <acronym>SQL</acronym> standard alias for <literal>SSSS</literal>
+       (Nikita Glukhov, Alexander Korotkov)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2019-07-14 [5925e5549] Add gen_random_uuid function
+-->
+
+      <para>
+       Add function <link
+       linkend="functions-uuid"><function>gen_random_uuid()</function></link>
+       to generate version 4 UUIDs (Peter Eisentraut)
+      </para>
+
+      <para>
+       Previously <acronym>UUID</acronym> generation functions were only
+       available external modules <xref linkend="uuid-ossp"/> or <xref
+       linkend="pgcrypto"/> were installed.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Dean Rasheed <dean.a.rasheed@gmail.com>
+2020-01-25 [13661ddd7] Add functions gcd() and lcm() for integer and numeric ty
+-->
+
+      <para>
+       Add greatest-common-denominator (<link
+       linkend="functions-math-func-table">gcd</link>) and
+       least-common-multiple (lcm) functions (Vik Fearing)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Dean Rasheed <dean.a.rasheed@gmail.com>
+2020-03-01 [43a899f41] Fix corner-case loss of precision in numeric ln().
+Author: Dean Rasheed <dean.a.rasheed@gmail.com>
+2020-03-28 [4083f445c] Improve the performance and accuracy of numeric sqrt() a
+-->
+
+      <para>
+       Improve the performance and accuracy of <link
+       linkend="functions-math-func-table">square root</link> and natural log
+       (ln) output (Dean Rasheed)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-01-06 [20d6225d1] Add functions min_scale(numeric) and trim_scale(numeric)
+-->
+
+      <para>
+       Add function <link
+       linkend="functions-math-func-table"><function>min_scale()</function></link>
+       that returns the number of digits to the right the decimal point
+       that is required to represent the numeric value with full precision
+       (Pavel Stehule)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-01-06 [20d6225d1] Add functions min_scale(numeric) and trim_scale(numeric)
+-->
+
+      <para>
+       Add function <link
+       linkend="functions-math-func-table"><function>trim_scale()</function></link>
+       to reduce the scale of a number by removing trailing zeros (Pavel
+       Stehule)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Alexander Korotkov <akorotkov@postgresql.org>
+2019-07-14 [6254c55f8] Add missing commutators for distance operators
+-->
+
+      <para>
+       Add commutators of <link linkend="functions-geometry-op-table">distance
+       operators</link> (Nikita Glukhov)
+      </para>
+
+      <para>
+       For example, previously only point &lt;-&gt; line was supported,
+       now line &lt;-&gt; point works too.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Thomas Munro <tmunro@postgresql.org>
+2020-04-07 [4c04be9b0] Introduce xid8-based functions to replace txid_XXX.
+-->
+
+      <para>
+       Create xid8 versions of all <link
+       linkend="functions-pg-snapshot">transaction id functions</link>
+       (Thomas Munro)
+      </para>
+
+      <para>
+       The old function names were kept for backward compatibility.  DO WE
+       HAVE NEW NAMES?
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-04-07 [26a944cf2] Adjust bytea get_bit/set_bit to use int8 not int4 for bi
+-->
+
+      <para>
+       Allow <link
+       linkend="functions-binarystring-other"><function>get_bit()</function></link>
+       and <function>set_bit()</function> to set bits beyond 256MB of bytea
+       data (Movead Li)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-08-01 [4886da832] Mark advisory-lock functions as parallel restricted, not
+-->
+
+      <para>
+       Allow <link linkend="functions-advisory-locks">advisory-lock
+       functions</link> to be used in some parallel operations (Tom Lane)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2020-04-20 [5fc703946] Add ALTER .. NO DEPENDS ON
+-->
+
+      <para>
+       Add the ability to remove an object's dependency on an extension
+       (&Aacute;lvaro Herrera)
+      </para>
+
+      <para>
+       The object can be a function, materialized view, index, or trigger.
+       The syntax is <command>ALTER .. NO DEPENDS ON</command>.
+      </para>
+     </listitem>
 
-     </itemizedlist>
 
-    </sect4>
+    </itemizedlist>
 
-    <sect4>
-     <title>General Performance</title>
+   </sect3>
 
-     <itemizedlist>
+   <sect3>
+    <title><link linkend="plpgsql">PL/pgSQL</link></title>
 
-    <listitem>
-    <!--
-    Author: Tomas Vondra <tomas.vondra@postgresql.org>
-    2020-04-06 [d2d8a229b] Implement Incremental Sort
-    -->
+    <itemizedlist>
 
-    <para>
-     Implement <link linkend="guc-enable-incrementalsort">incremental
-     sorting</link> (James Coleman, Alexander Korotkov, Tomas Vondra)
-    </para>
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-03-26 [8f59f6b9c] Improve performance of "simple expressions" in PL/pgSQL.
+-->
+
+      <para>
+       Improve performance of simple PL/pgSQL expressions (Tom Lane,
+       Amit Langote)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-11-22 [73b06cf89] Avoid taking a new snapshot for an immutable simple expr
+-->
+
+      <para>
+       Improve the performance of PL/pgSQL functions that use immutable
+       expressions (Konstantin Knizhnik)
+      </para>
+     </listitem>
 
-    <para>
-     If a result is already sorted by several leading keys, this
-     allows for batch sorting of additional trailing keys because the
-     previous keys are already equal.  This is controlled by <xref
-     linkend="guc-enable-incrementalsort"/>.
-    </para>
+    </itemizedlist>
 
-    </listitem>
+   </sect3>
 
-    <listitem>
-    <!--
-    Author: Peter Geoghegan <pg@bowt.ie>
-    2019-08-01 [71dcd7438] Add sort support routine for the inet data type.
-    -->
+   <sect3>
+    <title>Client Interfaces</title>
 
-    <para>
-     Improve the performance of sorting <link
-     linkend="datatype-inet">inet</link> values (Brandur Leach)
-    </para>
+    <itemizedlist>
 
-    </listitem>
+     <listitem>
+<!--
+Author: Jeff Davis <jdavis@postgresql.org>
+2019-09-23 [d6e612f83] Add libpq parameter 'channel_binding'.
+-->
+
+      <para>
+       Allow libpq clients to require channel binding (Jeff Davis)
+      </para>
+
+      <para>
+       Using the libpq connection parameter <link
+       linkend="libpq-connect-channel-binding"><literal>channel_binding</literal></link>
+       forces the other end of the <acronym>TLS</acronym> connection to prove
+       it knows the user's password.  This prevents man-in-the-middle attacks.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Michael Paquier <michael@paquier.xyz>
+2020-01-28 [ff8ca5fad] Add connection parameters to control SSL protocol min/ma
+Author: Michael Paquier <michael@paquier.xyz>
+2020-04-30 [401aad670] Rename connection parameters to control min/max SSL prot
+-->
+
+      <para>
+       Add libpq connection parameters to control the min/max
+       <acronym>TLS</acronym> version (Daniel Gustafsson)
+      </para>
+
+      <para>
+       The settings are <xref
+       linkend="libpq-connect-ssl-min-protocol-version"/> and <xref
+       linkend="libpq-connect-ssl-max-protocol-version"/>.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2020-03-05 [2eb3bc588] Fix issues around .pgpass file.
+-->
+
+      <para>
+       Tighten line length and comment detection in <link
+       linkend="libpq-pgpass">.pgpass</link> files (Fujii Masao)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Andrew Dunstan <andrew@dunslane.net>
+2019-11-30 [4dc635521] libq support for sslpassword connection param,  DER form
+-->
+
+      <para>
+       Allow specification of passwords to unlock client certificates (Craig
+       Ringer, Andrew Dunstan)
+      </para>
+
+      <para>
+       This is specified by the <xref linkend="libpq-connect-sslpassword"/>
+       connection option.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Andrew Dunstan <andrew@dunslane.net>
+2019-11-30 [4dc635521] libq support for sslpassword connection param,  DER form
+-->
+
+      <para>
+       Allow <acronym>DER</acronym>-encoded client certificates (Craig Ringer,
+       Andrew Dunstan)
+      </para>
+     </listitem>
 
-    <listitem>
-    <!--
-    Author: Jeff Davis <jdavis@postgresql.org>
-    2020-03-18 [1f39bce02] Disk-based Hash Aggregation.
-    Author: Jeff Davis <jdavis@postgresql.org>
-    2020-03-24 [dd8e19132] Consider disk-based hash aggregation to implement DISTIN
-    -->
+    </itemizedlist>
 
-    <para>
-     Allow <link linkend="guc-enable-hashagg">hash aggregation</link>
-     to use disk storage for large aggregation result sets (Jeff Davis)
-    </para>
+   </sect3>
 
-    <para>
-     Previously, hash aggregation was avoided if it was expected to use
-     more than <xref linkend="guc-work-mem"/> memory.  This is controlled
-     by <xref linkend="guc-enable-hashagg-disk"/>.
-    </para>
+   <sect3>
+    <title>Client Applications</title>
 
-    </listitem>
+    <sect4>
+     <title><xref linkend="app-psql"/></title>
 
-    <listitem>
-    <!--
-    Author: Jeff Davis <jdavis@postgresql.org>
-    2020-03-18 [1f39bce02] Disk-based Hash Aggregation.
-    -->
+     <itemizedlist>
 
-    <para>
-     Allow <link linkend="queries-grouping-sets">grouping sets</link> to
-     use hash aggregation with disk storage for large grouping set results
-     (Jeff Davis)
-    </para>
+      <listitem>
+<!--
+Author: Michael Paquier <michael@paquier.xyz>
+2020-02-12 [dcdbb5a5d] Add %x to default PROMPT1 and PROMPT2 in psql
+-->
+
+       <para>
+        Add the transaction status (%x) to the default <link
+        linkend="app-psql-prompting"><application>psql</application>
+        prompts</link> (Vik Fearing)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Thomas Munro <tmunro@postgresql.org>
+2019-11-19 [7f338369c] Allow invisible PROMPT2 in psql.
+-->
+
+       <para>
+        Allow the secondary <application>psql</application> prompt to be same
+        number of spaces as the primary prompt (Thomas Munro)
+       </para>
+
+       <para>
+        This is accomplished by setting PROMPT2 to %w.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-04-07 [b63c293bc] Allow psql's \g and \gx commands to transiently change \
+-->
+
+       <para>
+        Allow <link linkend="app-psql-meta-commands">\g</link> and \gx to
+        change any <link linkend="app-psql-meta-commands">\pset</link> output
+        options for a single command (Tom Lane)
+       </para>
+
+       <para>
+        This allows syntax like \g (expand=on), which is equivalent to \gx.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Alexander Korotkov <akorotkov@postgresql.org>
+2020-03-08 [b0b5e20cd] Show opclass and opfamily related information in psql
+-->
+
+       <para>
+        Add <application>psql</application> commands to report operator
+        classes and operator families (Sergey Cherkashin, Nikita Glukhov,
+        Alexander Korotkov)
+       </para>
+
+       <para>
+        The new commands are <link
+        linkend="app-psql-meta-commands">\dAc</link>, \dAf, \dAo, and \dAp.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-07-03 [9a2ea6183] Show table persistence in psql's \dt+ and related comman
+-->
+
+       <para>
+        Show table persistence in <application>psql</application>'s <link
+        linkend="app-psql-meta-commands">\dt+</link> and related commands
+        (David Fetter)
+       </para>
+
+       <para>
+        In verbose mode, the table/index/view shows if the object is permanent,
+        temporary, or unlogged.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-07-23 [eb5472da9] Improve psql's \d output for TOAST tables.
+-->
+
+       <para>
+        Improve output of <application>psql</application> <link
+        linkend="app-psql-meta-commands">\d</link> for <acronym>TOAST</acronym>
+        tables (Justin Pryzby)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-11-22 [d1c866e57] Make psql redisplay the query buffer after \e.
+-->
+
+       <para>
+        Adjust display of <application>psql</application>'s <link
+        linkend="app-psql-meta-commands">\e</link> query (Tom Lane)
+       </para>
+
+       <para>
+        When exiting the editor, if the query doesn't end with a semicolon
+        or \g, the query buffer contents will now be displayed.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-07-05 [02e95a504] Add \warn command to psql.
+-->
+
+       <para>
+        Add <link linkend="app-psql-meta-commands">\warn</link> command to
+        <application>psql</application> (David Fetter)
+       </para>
+
+       <para>
+        This is like \echo except that the text is sent to stderr instead
+        of stdout.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2020-02-28 [1933ae629] Add PostgreSQL home page to - -help output
+-->
+
+       <para>
+        Add the <productname>PostgreSQL</productname> home page to command-line
+        <option>--help</option> output (Peter Eisentraut)
+       </para>
+      </listitem>
 
-    <para>
-     Previously, hash aggregation was avoided if it was expected to use
-     more than <xref linkend="guc-work-mem"/> memory.  This is controlled
-     by <xref linkend="guc-enable-hashagg-disk"/>.
-    </para>
+     </itemizedlist>
 
-    </listitem>
+    </sect4>
 
-    <listitem>
-    <!--
-    Author: David Rowley <drowley@postgresql.org>
-    2020-03-28 [b07642dbc] Trigger autovacuum based on number of INSERTs
-    -->
+    <sect4>
+     <title><link linkend="pgbench"><application>pgbench</application></link></title>
 
-    <para>
-     Allow inserts to trigger <link linkend="autovacuum">autovacuum</link>
-     activity (Laurenz Albe, Darafei Praliaskouski)
-    </para>
-
-    <para>
-     This new behavior reduces the work necessary when the table needs to
-     be frozen and allows pages to be set as all-visible.  All-visible pages
-     allow index-only scans to access fewer heap rows.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Thomas Munro <tmunro@postgresql.org>
-    2020-03-16 [fc34b0d9d] Introduce a maintenance_io_concurrency setting.
-    -->
-
-    <para>
-     Add <xref linkend="guc-maintenance-io-concurrency"/> to control I/O
-     concurrency for maintenance operations (Thomas Munro)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Noah Misch <noah@leadboat.com>
-    2020-04-04 [c6b92041d] Skip WAL for new relfilenodes, under wal_level=minimal.
-    -->
-
-    <para>
-     Allow skipping of <acronym>WAL</acronym> for <link
-     linkend="guc-full-page-writes">full table writes</link> if <xref
-     linkend="guc-wal-level"/> is <literal>minimal</literal> (Kyotaro
-     Horiguchi)
-    </para>
-
-    <para>
-     Relations larger than <xref linkend="guc-wal-skip-threshold"/>
-     will have their files fsync'ed rather than generating
-     <acronym>WAL</acronym>.  Previously this was done only for
-     <command>COPY</command> operations, but the implementation had a bug
-     that could cause data loss during crash recovery.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2020-03-28 [8f3ec75de] Enable Unix-domain sockets support on Windows
-    -->
-
-    <para>
-     Enable <link linkend="client-authentication">Unix-domain sockets</link>
-     support on Windows (Peter Eisentraut)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2019-11-21 [e6d806952] Make DROP DATABASE command generate less WAL records.
-    -->
-
-    <para>
-     Improve the performance when replaying <link
-     linkend="sql-dropdatabase"><command>DROP DATABASE</command></link>
-     commands when many tablespaces are in use (Fujii Masao)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2019-09-24 [6d05086c0] Speedup truncations of relation forks.
-    -->
-
-    <para>
-     Improve performance for <link linkend="sql-truncate">truncation</link>
-     of very large relations (Kirk Jamison)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tomas Vondra <tomas.vondra@postgresql.org>
-    2019-10-01 [11a078cf8] Optimize partial TOAST decompression
-    -->
-
-    <para>
-     Improve speed of <link
-     linkend="storage-toast"><acronym>TOAST</acronym></link> decompression
-     and the retrieval of only the leading bytes of <acronym>TOAST</acronym>
-     values (Binguo Bao, Andrey Borodin)
-    </para>
-
-    <para>
-     Previously, <acronym>TOAST</acronym> values were fully fetched and
-     only the requested leading bytes were decompressed and returned.
-     Now, only the requested bytes are fetched.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-09-10 [bca6e6435] Reduce overhead of scanning the backend[] array in LISTE
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-09-22 [51004c717] Make some efficiency improvements in LISTEN/NOTIFY.
-    -->
-
-    <para>
-     Improve performance of <link
-     linkend="sql-listen"><command>LISTEN</command></link>/<command>NOTIFY</command>
-     (Martijn van Oosterhout)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-08-15 [bb5ae8f6c] Use a hash table to de-duplicate NOTIFY events faster.
-    -->
-
-    <para>
-     Improve the efficiency of removing duplicate <link
-     linkend="sql-notify"><command>NOTIFY</command></link> events (Tom Lane)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Andrew Gierth <rhodiumtoad@postgresql.org>
-    2020-02-01 [1fd687a03] Optimizations for integer to decimal output.
-    -->
-
-    <para>
-     Use lookup tables to speed up integer to text conversion (David Fetter)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-07-10 [b5810de3f] Reduce memory consumption for multi-statement query stri
-    -->
-
-    <para>
-     Reduce memory usage for query strings that contain multiple
-     <acronym>SQL</acronym> statements (Amit Langote)
-    </para>
-
-    </listitem>
-
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title>Monitoring</title>
-
-     <itemizedlist>
-
-    <listitem>
-    <!--
-    Author: Amit Kapila <akapila@postgresql.org>
-    2020-04-05 [6b466bf5f] Allow pg_stat_statements to track WAL usage statistics.
-    Author: Amit Kapila <akapila@postgresql.org>
-    2020-04-06 [33e05f89c] Add the option to report WAL usage in EXPLAIN and auto_e
-    Author: Amit Kapila <akapila@postgresql.org>
-    2020-04-06 [b7ce6de93] Allow autovacuum to log WAL usage statistics.
-    -->
-
-    <para>
-     Allow <link linkend="sql-explain"><command>EXPLAIN</command></link>,
-     <xref linkend="auto-explain"/>, <link
-     linkend="autovacuum">autovacuum</link>, and <xref
-     linkend="pgstatstatements"/> to track <acronym>WAL</acronym> usage
-     statistics (Kirill Bychik, Julien Rouhaud)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tomas Vondra <tomas.vondra@postgresql.org>
-    2019-11-06 [6e3e6cc0e] Allow sampling of statements depending on duration
-    -->
-
-    <para>
-     Allow a sample of statements to be logged (Adrien Nayrat)
-    </para>
-
-    <para>
-     A <xref linkend="guc-log-statement-sample-rate"/> ratio of statements
-     taking over <xref linkend="guc-log-min-duration-sample"/> duration
-     will be logged.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2020-03-15 [70a7b4776] Add backend type to csvlog and optionally log_line_prefi
-    -->
-
-    <para>
-     Add the backend type to <link
-     linkend="runtime-config-logging">csvlog</link> and optionally <xref
-     linkend="guc-log-line-prefix"/> log output (Peter Eisentraut)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2019-12-11 [ba79cb5dc] Emit parameter values during query bind/execute errors
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-04-02 [0b34e7d30] Improve user control over truncation of logged bind-para
-    -->
-
-    <para>
-     Improve control of prepared statement parameter logging (Alexey
-     Bashtanov, &Aacute;lvaro Herrera)
-    </para>
-
-    <para>
-     The <acronym>GUC</acronym> setting <xref
-     linkend="guc-log-parameter-max-length"/> controls the maximum length
-     of parameter values output during statement non-error logging, and
-     <xref linkend="guc-log-parameter-max-length-on-error"/> does the
-     same for error statement logging.  Previously, prepared statement
-     parameters were not logged during errors.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2020-02-05 [15d13e829] Make vacuum buffer counters 64 bits wide
-    -->
-
-    <para>
-     Make <link linkend="sql-vacuum">vacuum</link> buffer counters 64-bits
-     wide to avoid overflow (&Aacute;lvaro Herrera)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2019-11-08 [71a8a4f6e] Add backtrace support for error reporting
-    -->
-
-    <para>
-     Allow function call backtraces of errors to be logged (Peter
-     Eisentraut, &Aacute;lvaro Herrera)
-    </para>
-
-    <para>
-     Server variable <xref linkend="guc-backtrace-functions"/> specifies
-     which C functions should generate backtraces on error.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Michael Paquier <michael@paquier.xyz>
-    2019-07-05 [313f87a17] Add min() and max() aggregates for pg_lsn
-    -->
-
-    <para>
-     Add <function>min()</function> and
-     <function>max()</function> aggregates for <link
-     linkend="datatype-pg-lsn"><type>pg_lsn</type></link> (Fabr&iacute;zio
-     de Royes Mello)
-    </para>
-
-    <para>
-     This is useful for monitoring queries.
-    </para>
-
-    </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title>System Views</title>
-
-     <itemizedlist>
-
-    <listitem>
-    <!--
-    Author: Michael Paquier <michael@paquier.xyz>
-    2020-02-06 [b025f32e0] Add leader_pid to pg_stat_activity
-    -->
-
-    <para>
-     Add <structfield>leader_pid</structfield> to <xref
-     linkend="pg-stat-activity-view"/> to report parallel worker ownership
-     (Julien Rouhaud)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2020-03-03 [e65497df8] Report progress of streaming base backup.
-    -->
-
-    <para>
-     Add system view <link
-     linkend="basebackup-progress-reporting"><structname>pg_stat_progress_basebackup</structname></link>
-     to report the progress of streaming base backups (Fujii Masao)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2020-01-15 [a166d408e] Report progress of ANALYZE commands
-    -->
-
-    <para>
-     Add system view <link
-     linkend="monitoring-stats-dynamic-views-table"><structname>pg_stat_progress_analyze</structname></link>
-     to report <link linkend="sql-analyze">analyze</link> progress
-     (&Aacute;lvaro Herrera, Tatsuro Yamada, Vinayak Pokale)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Amit Kapila <akapila@postgresql.org>
-    2019-11-21 [9290ad198] Track statistics for spilling of changes from ReorderBuf
-    -->
-
-    <para>
-     Add columns to the <link
-     linkend="monitoring-stats-dynamic-views-table"><structname>pg_stat_replication</structname></link>
-     system view to report how much logical decoding information has been
-     spilled to disk (Tomas Vondra)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Robert Haas <rhaas@postgresql.org>
-    2020-01-09 [ed10f32e3] Add pg_shmem_allocations view.
-    -->
-
-    <para>
-     Add system view <link
-     linkend="view-pg-shmem-allocations"><structname>pg_shmem_allocations</structname></link>
-     to display shared memory usage (Andres Freund, Robert Haas)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tomas Vondra <tomas.vondra@postgresql.org>
-    2020-04-02 [28cac71bd] Collect statistics about SLRU caches
-    -->
-
-    <para>
-     Create <link
-     linkend="monitoring-stats-views-table"><structname>pg_stat_slru</structname></link>
-     system view to monitor internal <acronym>SLRU</acronym> caches
-     (Tomas Vondra)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Robert Haas <rhaas@postgresql.org>
-    2020-01-07 [814727858] Increase the maximum value of track_activity_query_size.
-    -->
-
-    <para>
-     Allow <xref linkend="guc-track-activity-query-size"/> to be set up
-     to 1MB (Vyacheslav Makarov)
-    </para>
-
-    <para>
-     The previous maximum was 100kB.
-    </para>
-
-    </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title><link linkend="wait-event-table">Wait Events</link></title>
-
-     <itemizedlist>
-
-    <listitem>
-    <!--
-    Author: Thomas Munro <tmunro@postgresql.org>
-    2020-01-31 [ef02fb15a] Report time spent in posix_fallocate() as a wait event.
-    -->
-
-    <para>
-     Add wait event for <function>posix_fallocate()</function> (Thomas
-     Munro)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Andres Freund <andres@anarazel.de>
-    2020-03-23 [cedffbdb8] Report wait event for cost-based vacuum delay.
-    -->
-
-    <para>
-     Add wait event VacuumDelay to report on cost-based vacuum delay
-     (Justin Pryzby)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2020-03-24 [b8e20d6da] Add wait events for WAL archive and recovery pause.
-    -->
-
-    <para>
-     Add wait events for <acronym>WAL</acronym> archive and recovery pause
-     (Fujii Masao)
-    </para>
-
-    <para>
-     The new events are BackupWaitWalArchive and RecoveryPause.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2020-04-03 [18808f8c8] Add wait events for recovery conflicts.
-    -->
-
-    <para>
-     Add  wait events RecoveryConflictSnapshot and
-     RecoveryConflictTablespace to monitor recovery conflicts (Masahiko
-     Sawada)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Thomas Munro <tmunro@postgresql.org>
-    2020-02-05 [815c2f097] Add kqueue(2) support to the WaitEventSet API.
-    -->
-
-    <para>
-     Improve performance of wait events on <acronym>BSD</acronym>-based
-     systems (Thomas Munro)
-    </para>
-
-    </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title><acronym>Authentication</acronym></title>
-
-     <itemizedlist>
-
-    <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2020-03-09 [d9249441e] Mark ssl_passphrase_command as GUC_SUPERUSER_ONLY.
-    -->
-
-    <para>
-     Only allow superusers to view the <xref
-     linkend="guc-ssl-passphrase-command"/> setting (Insung Moon)
-    </para>
-
-    <para>
-     This was changed as a security precaution.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2019-12-04 [b1abfec82] Update minimum SSL version
-    -->
-
-    <para>
-     Change the default minimum <acronym>TLS</acronym> version from 1.0
-     to 1.2 (Peter Eisentraut)
-    </para>
-
-    <para>
-     This is controlled by <xref linkend="guc-ssl-min-protocol-version"/>.
-    </para>
-
-    </listitem>
-
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title>Server Configuration</title>
-
-     <itemizedlist>
-
-    <listitem>
-    <!--
-    Author: Robert Haas <rhaas@postgresql.org>
-    2020-01-16 [2eb34ac36] Fix problems with "read only query" checks, and refactor
-    -->
-
-    <para>
-     Tighten rules on which utility commands are possible in <xref
-     linkend="guc-default-transaction-read-only"/> mode (Robert Haas)
-    </para>
-
-    <para>
-     This also increases the number of utility commands that can run in
-     parallel queries.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2019-11-29 [c4a7a392e] Make allow_system_table_mods settable at run time
-    -->
-
-    <para>
-     Allow <xref linkend="guc-allow-system-table-mods"/> to be changed
-     after server start (Peter Eisentraut)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2019-11-29 [508bf95b7] Remove any-user DML capability from allow_system_table_m
-    -->
-
-    <para>
-     Disallow non-superusers from modifying system tables when <xref
-     linkend="guc-allow-system-table-mods"/> is set (Peter Eisentraut)
-    </para>
-
-    <para>
-     Previously, if <xref linkend="guc-allow-system-table-mods"/>
-     was set at server start, non-superusers could issue
-     <command>INSERT</command>/<command>UPDATE</command>/<command>DELETE</command>
-     commands on system tables.
-    </para>
-
-    </listitem>
-
-
-     </itemizedlist>
-
-    </sect4>
-
-   </sect3>
-
-   <sect3>
-    <title>Streaming Replication and Recovery</title>
-
-    <itemizedlist>
-
-    <listitem>
-    <!--
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2020-03-27 [1e6148032] Allow walreceiver configuration to change on reload
-    -->
-
-    <para>
-     Allow streaming replication configuration settings to be changed by
-     reload (Sergei Kornilov)
-    </para>
-
-    <para>
-     Previously, a server restart was required to change
-     <xref linkend="guc-primary-conninfo"/> and <xref
-     linkend="guc-primary-slot-name"/>.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2020-01-14 [329730827] walreceiver uses a temporary replication slot by default
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2020-03-27 [092c6936d] Set wal_receiver_create_temp_slot PGC_POSTMASTER
-    -->
-
-    <para>
-     Allow <acronym>WAL</acronym> receivers use a temporary replication slot
-     if a permanent one is not specified (Peter Eisentraut, Sergei Kornilov)
-    </para>
-
-    <para>
-     This behavior can be enabled using <xref
-     linkend="guc-wal-receiver-create-temp-slot"/>.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2020-04-07 [c65507763] Allow users to limit storage reserved by replication slo
-    -->
-
-    <para>
-     Allow replication slot storage to be limited by <xref
-     linkend="guc-max-slot-wal-keep-size"/> (Kyotaro Horiguchi)
-    </para>
-
-    <para>
-     Replication slots that exceed this value are invalidated.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2020-03-24 [496ee647e] Prefer standby promotion over recovery pause.
-    -->
-
-    <para>
-     Allow <link linkend="guc-promote-trigger-file">standby promotion</link>
-     to cancel any requested pause (Fujii Masao)
-    </para>
-
-    <para>
-     Previously, promotion could not happen while the standby was in
-     paused state.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2020-01-29 [dc788668b] Fail if recovery target is not reached
-    -->
-
-    <para>
-     Generate an error if recovery does not reach the specified <link
-     linkend="runtime-config-wal-recovery-target">recovery target</link>
-     (Leif Gunnar Erlandsen, Peter Eisentraut)
-    </para>
-
-    <para>
-     Previously, the end of the <acronym>WAL</acronym> would promote the
-     standby, even if the target was not reached.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Amit Kapila <akapila@postgresql.org>
-    2019-11-19 [cec2edfa7] Add logical_decoding_work_mem to limit ReorderBuffer mem
-    -->
-
-    <para>
-     Allow control over how much memory is used by logical decoding before
-     it is spilled to disk (Tomas Vondra, Dilip Kumar, Amit Kapila)
-    </para>
-
-    <para>
-     This is controlled by <xref linkend="guc-logical-decoding-work-mem"/>.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2020-01-22 [41c184bc6] Add GUC ignore_invalid_pages.
-    -->
-
-    <para>
-     Allow <acronym>WAL</acronym> recovery to continue even if invalid
-     pages are referenced (Fujii Masao)
-    </para>
-
-    <para>
-     This is enabled using <xref linkend="guc-ignore-invalid-pages"/>.
-    </para>
-
-    </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Utility Commands</title>
-
-    <itemizedlist>
-
-    <listitem>
-    <!--
-    Author: Amit Kapila <akapila@postgresql.org>
-    2020-01-20 [40d964ec9] Allow vacuum command to process indexes in parallel.
-    -->
-
-    <para>
-     Allow <link linkend="sql-vacuum"><command>VACUUM</command></link>
-     to process indexes in parallel (Masahiko Sawada, Amit Kapila)
-    </para>
-
-    <para>
-     The new <literal>PARALLEL</literal> option controls this.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2020-04-07 [357889eb1] Support FETCH FIRST WITH TIES
-    -->
-
-    <para>
-     Allow <link linkend="sql-fetch"><command>FETCH FIRST</command></link>
-     to use <literal>WITH TIES</literal> to return any additional rows
-     that match the last result row (Surafel Temesgen)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2020-04-04 [ce77abe63] Include information on buffer usage during planning phas
-    -->
-
-    <para>
-     Report planning-time buffer usage in <link
-     linkend="sql-explain"><command>EXPLAIN</command></link>'s
-     <literal>BUFFER</literal> output (Julien Rouhaud)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-03-10 [cacef1722] Ensure that CREATE TABLE LIKE copies any NO INHERIT cons
-    -->
-
-    <para>
-     Have <link linkend="sql-createtable"><command>CREATE TABLE
-     LIKE</command></link> propagate <literal>CHECK</literal>'s <literal>NO
-     INHERIT</literal> property to created tables (Ildar Musin, Chris
-     Travers)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2020-02-18 [b7e51b350] Make inherited LOCK TABLE perform access permission chec
-    -->
-
-    <para>
-     When using <link linkend="sql-lock"><command>LOCK
-     TABLE</command></link> on a partitioned table, do not check permissions
-     on the child tables (Amit Langote)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2020-03-31 [de3bbfcc9] Fix INSERT OVERRIDING USER VALUE behavior
-    -->
-
-    <para>
-     Allow <link linkend="sql-insert"><literal>OVERRIDING USER
-     VALUE</literal></link> on inserts into identity columns (Dean Rasheed)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2020-01-14 [f595117e2] ALTER TABLE ... ALTER COLUMN ... DROP EXPRESSION
-    -->
-
-    <para>
-     Add <link linkend="sql-altertable"><command>ALTER
-     TABLE</command></link> clause <literal>DROP EXPRESSION</literal>
-     to remove generated properties from columns (Peter Eisentraut)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-01-15 [1281a5c90] Restructure ALTER TABLE execution to fix assorted bugs.
-    -->
-
-    <para>
-     Fix bugs in <command>ALTER TABLE</command> when later clauses overlap
-     changes made by earlier clauses in the same command (Tom Lane)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2019-11-21 [30840c92a] Allow ALTER VIEW command to rename the column in the vie
-    -->
-
-    <para>
-     Add <link linkend="sql-alterview"><command>ALTER VIEW</command></link>
-     syntax to rename view columns (Fujii Masao)
-    </para>
-
-    <para>
-     This was previously possible only using <command>ALTER TABLE RENAME
-     COLUMN</command>.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-03-06 [fe30e7ebf] Allow ALTER TYPE to change some properties of a base typ
-    -->
-
-    <para>
-     Add <link linkend="sql-altertype"><command>ALTER TYPE</command></link>
-     options useful for extensions, like <acronym>TOAST</acronym> and I/O
-     functions control (Tomas Vondra, Tom Lane)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2019-07-23 [06140c201] Add CREATE DATABASE LOCALE option
-    -->
-
-    <para>
-     Add <link linkend="sql-createdatabase"><command>CREATE
-     DATABASE</command></link> <literal>LOCALE</literal> option (Peter
-     Eisentraut)
-    </para>
-
-    <para>
-     This combines existing options <literal>LC_COLLATE</literal> and
-     <literal>LC_CTYPE</literal> into a single option.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Amit Kapila <akapila@postgresql.org>
-    2019-11-13 [1379fd537] Introduce the 'force' option for the Drop Database comma
-    -->
-
-    <para>
-     Allow <link linkend="sql-dropdatabase"><command>DROP
-     DATABASE</command></link> to disconnect users so drop succeeds (Pavel
-     Stehule, Amit Kapila)
-    </para>
-
-    <para>
-     This is enabled by <literal>WITH FORCE</literal>.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2020-03-09 [71d60e2aa] Add tg_updatedcols to TriggerData
-    -->
-
-    <para>
-     Add C structure member <link
-     linkend="trigger-interface"><structfield>tg_updatedcols</structfield></link>
-     to record updated columns to C triggers (Peter Eisentraut)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2020-03-20 [4e6209134] pg_dump: Add FOREIGN to ALTER statements, if appropriate
-    -->
-
-    <para>
-     Add <literal>FOREIGN</literal> to <command>ALTER</command> statements,
-     if appropriate (Luis Carril)
-    </para>
-
-    <para>
-     WHAT IS THIS ABOUT?
-    </para>
-
-    </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Data Types</title>
-
-    <itemizedlist>
-
-    <listitem>
-    <!--
-    Tom Lane <tgl@sss.pgh.pa.us>
-    2020-03-19 [24e2885ee] Introduce "anycompatible" family of polymorphic types.
-    -->
-
-    <para>
-     Add polymorphic data types for use by functions requiring compatible
-     arguments (Pavel Stehule)
-    </para>
-
-    <para>
-     The new data types are <link
-     linkend="datatype-pseudotypes-table">anycompatible</link>,
-     anycompatiblearray, anycompatiblenonarray, and anycompatiblerange.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Thomas Munro <tmunro@postgresql.org>
-    2020-04-07 [aeec457de] Add SQL type xid8 to expose FullTransactionId to users.
-    -->
-
-    <para>
-     Add <acronym>SQL</acronym> data type <link
-     linkend="datatype-oid">xid8</link> to expose FullTransactionId
-     (Thomas Munro)
-    </para>
-
-    <para>
-     The xid data type is only four bytes so does not show the transaction
-     epoch.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2020-03-18 [a2b1faa0f] Implement type regcollation
-    -->
-
-    <para>
-     Add data type <link linkend="datatype-oid">regcollation</link> and
-     helper functions for system collations (Julien Rouhaud)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Thomas Munro <tmunro@postgresql.org>
-    2019-10-16 [d5ac14f9c] Use libc version as a collation version on glibc systems
-    -->
-
-    <para>
-     Use the glibc version in some cases as the <link
-     linkend="collation">collation</link> version (Thomas Munro)
-    </para>
-
-    <para>
-     If the glibc version changes, a warning will be issued when a
-     mismatching collation is used.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Thomas Munro <tmunro@postgresql.org>
-    2020-03-25 [352f6f2df] Add collation versions for Windows.
-    -->
-
-    <para>
-     Add support for collation versions on Windows (Thomas Munro)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-10-28 [8b7a0f1d1] Allow extracting fields from a ROW() expression in more 
-    -->
-
-    <para>
-     Allow <link linkend="rowtypes"><literal>ROW</literal> values</link>
-     values to have their members extracted with suffix notation (Tom Lane)
-    </para>
-
-    <para>
-     For example, <literal>(ROW(4, 5.0)).f1</literal> returns 4.
-    </para>
-
-    </listitem>
-
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Functions</title>
-
-    <itemizedlist>
-
-    <listitem>
-    <!--
-    Author: Andrew Dunstan <andrew@dunslane.net>
-    2020-01-17 [a83586b55] Add a non-strict version of jsonb_set
-    -->
-
-    <para>
-     Add alternate version of <link
-     linkend="functions-json-processing-table"><function>jsonb_setI()</function></link>
-     with special <literal>NULL</literal> handling (Andrew Dunstan)
-    </para>
-
-    <para>
-     The new function, <function>jsonb_set_lax()</function>, allows null
-     new values to either set the specified key to <acronym>JSON</acronym>
-     null, delete the key, raise exception, or ignore the operation.
-     IS 'return_target' CLEAR?
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Alexander Korotkov <akorotkov@postgresql.org>
-    2019-09-25 [bffe1bd68] Implement jsonpath .datetime() method
-    -->
-
-    <para>
-     Add jsonpath <link
-     linkend="functions-sqljson-path-operators">.<function>datetime()</function></link>
-     method (Nikita Glukhov, Teodor Sigaev, Oleg Bartunov, Alexander
-     Korotkov)
-    </para>
-
-    <para>
-     This allows json values to be converted to timestamps, which can
-     then be processed in jsonpath expressions.  This also adds jsonpath
-     functions that support time zone-aware output.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2020-04-02 [2991ac5fc] Add SQL functions for Unicode normalization
-    -->
-
-    <para>
-     Add <acronym>SQL</acronym> functions <link
-     linkend="functions-string-sql"><literal>NORMALIZE</literal>()</link>
-     to normalize Unicode strings, and <link
-     linkend="collation-nondeterministic"><literal>IS
-     NORMALIZED</literal></link> to check for normalization (Peter
-     Eisentraut)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-03-06 [a6525588b] Allow Unicode escapes in any server encoding, not only U
-    -->
-
-    <para>
-     Allow <link linkend="sql-syntax-strings-uescape">Unicode
-     escapes</link>, e.g., E'\u####', U&amp;'\####', to specify any
-     character available in the database encoding, even when the database
-     encoding is not <acronym>UTF</acronym>-8 (Tom Lane)
-    </para>
-
-    <para>
-     The Unicode characters must be available in the database encoding.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-03-03 [d67755049] Allow to_date/to_timestamp to recognize non-English mont
-    -->
-
-    <para>
-     Allow <link
-     linkend="functions-formatting"><function>to_date()</function></link>
-     and <function>to_timestamp()</function> to recognize non-English
-     month/day names (Juan Jos&eacute; Santamar&iacute;a Flecha, Tom Lane)
-    </para>
-
-    <para>
-     The names recognized are the same as those output by <link
-     linkend="functions-formatting"><function>to_char()</function></link>
-     with the same format codes.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Alexander Korotkov <akorotkov@postgresql.org>
-    2019-09-16 [d589f9446] Support for FF1-FF6 datetime format patterns
-    -->
-
-    <para>
-     Add format specifications FF1-FF6 to control display of 1-6 subsecond
-     digits (Alexander Korotkov, Nikita Glukhov, Teodor Sigaev, Oleg
-     Bartunov)
-    </para>
-
-    <para>
-     These patterns can be used by <function>to_char()</function>,
-     <function>to_timestamp()</function>, and jsonpath's
-     .<function>datetime()</function>.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Alexander Korotkov <akorotkov@postgresql.org>
-    2019-09-16 [b64b857f5] Support for SSSSS datetime format pattern
-    -->
-
-    <para>
-     Add <literal>SSSSS</literal> time format specification as an
-     <acronym>SQL</acronym> standard alias for <literal>SSSS</literal>
-     (Nikita Glukhov, Alexander Korotkov)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2019-07-14 [5925e5549] Add gen_random_uuid function
-    -->
-
-    <para>
-     Add function <link
-     linkend="functions-uuid"><function>gen_random_uuid()</function></link>
-     to generate version 4 UUIDs (Peter Eisentraut)
-    </para>
-
-    <para>
-     Previously <acronym>UUID</acronym> generation functions were only
-     available external modules <xref linkend="uuid-ossp"/> or <xref
-     linkend="pgcrypto"/> were installed.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Dean Rasheed <dean.a.rasheed@gmail.com>
-    2020-01-25 [13661ddd7] Add functions gcd() and lcm() for integer and numeric ty
-    -->
-
-    <para>
-     Add greatest-common-denominator (<link
-     linkend="functions-math-func-table">gcd</link>) and
-     least-common-multiple (lcm) functions (Vik Fearing)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Dean Rasheed <dean.a.rasheed@gmail.com>
-    2020-03-01 [43a899f41] Fix corner-case loss of precision in numeric ln().
-    Author: Dean Rasheed <dean.a.rasheed@gmail.com>
-    2020-03-28 [4083f445c] Improve the performance and accuracy of numeric sqrt() a
-    -->
-
-    <para>
-     Improve the performance and accuracy of <link
-     linkend="functions-math-func-table">square root</link> and natural log
-     (ln) output (Dean Rasheed)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-01-06 [20d6225d1] Add functions min_scale(numeric) and trim_scale(numeric)
-    -->
-
-    <para>
-     Add function <link
-     linkend="functions-math-func-table"><function>min_scale()</function></link>
-     that returns the number of digits to the right the decimal point
-     that is required to represent the numeric value with full precision
-     (Pavel Stehule)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-01-06 [20d6225d1] Add functions min_scale(numeric) and trim_scale(numeric)
-    -->
-
-    <para>
-     Add function <link
-     linkend="functions-math-func-table"><function>trim_scale()</function></link>
-     to reduce the scale of a number by removing trailing zeros (Pavel
-     Stehule)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Alexander Korotkov <akorotkov@postgresql.org>
-    2019-07-14 [6254c55f8] Add missing commutators for distance operators
-    -->
-
-    <para>
-     Add commutators of <link linkend="functions-geometry-op-table">distance
-     operators</link> (Nikita Glukhov)
-    </para>
-
-    <para>
-     For example, previously only point &lt;-&gt; line was supported,
-     now line &lt;-&gt; point works too.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Thomas Munro <tmunro@postgresql.org>
-    2020-04-07 [4c04be9b0] Introduce xid8-based functions to replace txid_XXX.
-    -->
-
-    <para>
-     Create xid8 versions of all <link
-     linkend="functions-pg-snapshot">transaction id functions</link>
-     (Thomas Munro)
-    </para>
-
-    <para>
-     The old function names were kept for backward compatibility.  DO WE
-     HAVE NEW NAMES?
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-04-07 [26a944cf2] Adjust bytea get_bit/set_bit to use int8 not int4 for bi
-    -->
-
-    <para>
-     Allow <link
-     linkend="functions-binarystring-other"><function>get_bit()</function></link>
-     and <function>set_bit()</function> to set bits beyond 256MB of bytea
-     data (Movead Li)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-08-01 [4886da832] Mark advisory-lock functions as parallel restricted, not
-    -->
-
-    <para>
-     Allow <link linkend="functions-advisory-locks">advisory-lock
-     functions</link> to be used in some parallel operations (Tom Lane)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2020-04-20 [5fc703946] Add ALTER .. NO DEPENDS ON
-    -->
-
-    <para>
-     Add the ability to remove an object's dependency on an extension
-     (&Aacute;lvaro Herrera)
-    </para>
-
-    <para>
-     The object can be a function, materialized view, index, or trigger.
-     The syntax is <command>ALTER .. NO DEPENDS ON</command>.
-    </para>
-
-    </listitem>
-
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title><link linkend="plpgsql">PL/pgSQL</link></title>
-
-    <itemizedlist>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-03-26 [8f59f6b9c] Improve performance of "simple expressions" in PL/pgSQL.
-    -->
-
-    <para>
-     Improve performance of simple PL/pgSQL expressions (Tom Lane,
-     Amit Langote)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-11-22 [73b06cf89] Avoid taking a new snapshot for an immutable simple expr
-    -->
-
-    <para>
-     Improve the performance of PL/pgSQL functions that use immutable
-     expressions (Konstantin Knizhnik)
-    </para>
-
-    </listitem>
-
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Client Interfaces</title>
-
-    <itemizedlist>
-
-    <listitem>
-    <!--
-    Author: Jeff Davis <jdavis@postgresql.org>
-    2019-09-23 [d6e612f83] Add libpq parameter 'channel_binding'.
-    -->
-
-    <para>
-     Allow libpq clients to require channel binding (Jeff Davis)
-    </para>
-
-    <para>
-     Using the libpq connection parameter <link
-     linkend="libpq-connect-channel-binding"><literal>channel_binding</literal></link>
-     forces the other end of the <acronym>TLS</acronym> connection to prove
-     it knows the user's password.  This prevents man-in-the-middle attacks.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Michael Paquier <michael@paquier.xyz>
-    2020-01-28 [ff8ca5fad] Add connection parameters to control SSL protocol min/ma
-    Author: Michael Paquier <michael@paquier.xyz>
-    2020-04-30 [401aad670] Rename connection parameters to control min/max SSL prot
-    -->
-
-    <para>
-     Add libpq connection parameters to control the min/max
-     <acronym>TLS</acronym> version (Daniel Gustafsson)
-    </para>
-
-    <para>
-     The settings are <xref
-     linkend="libpq-connect-ssl-min-protocol-version"/> and <xref
-     linkend="libpq-connect-ssl-max-protocol-version"/>.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2020-03-05 [2eb3bc588] Fix issues around .pgpass file.
-    -->
-
-    <para>
-     Tighten line length and comment detection in <link
-     linkend="libpq-pgpass">.pgpass</link> files (Fujii Masao)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Andrew Dunstan <andrew@dunslane.net>
-    2019-11-30 [4dc635521] libq support for sslpassword connection param,  DER form
-    -->
-
-    <para>
-     Allow specification of passwords to unlock client certificates (Craig
-     Ringer, Andrew Dunstan)
-    </para>
-
-    <para>
-     This is specified by the <xref linkend="libpq-connect-sslpassword"/>
-     connection option.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Andrew Dunstan <andrew@dunslane.net>
-    2019-11-30 [4dc635521] libq support for sslpassword connection param,  DER form
-    -->
-
-    <para>
-     Allow <acronym>DER</acronym>-encoded client certificates (Craig Ringer,
-     Andrew Dunstan)
-    </para>
-
-    </listitem>
-
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Client Applications</title>
-
-    <sect4>
-     <title><xref linkend="app-psql"/></title>
-
-     <itemizedlist>
-
-    <listitem>
-    <!--
-    Author: Michael Paquier <michael@paquier.xyz>
-    2020-02-12 [dcdbb5a5d] Add %x to default PROMPT1 and PROMPT2 in psql
-    -->
-
-    <para>
-     Add the transaction status (%x) to the default <link
-     linkend="app-psql-prompting"><application>psql</application>
-     prompts</link> (Vik Fearing)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Thomas Munro <tmunro@postgresql.org>
-    2019-11-19 [7f338369c] Allow invisible PROMPT2 in psql.
-    -->
-
-    <para>
-     Allow the secondary <application>psql</application> prompt to be same
-     number of spaces as the primary prompt (Thomas Munro)
-    </para>
-
-    <para>
-     This is accomplished by setting PROMPT2 to %w.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-04-07 [b63c293bc] Allow psql's \g and \gx commands to transiently change \
-    -->
-
-    <para>
-     Allow <link linkend="app-psql-meta-commands">\g</link> and \gx to
-     change any <link linkend="app-psql-meta-commands">\pset</link> output
-     options for a single command (Tom Lane)
-    </para>
-
-    <para>
-     This allows syntax like \g (expand=on), which is equivalent to \gx.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Alexander Korotkov <akorotkov@postgresql.org>
-    2020-03-08 [b0b5e20cd] Show opclass and opfamily related information in psql
-    -->
-
-    <para>
-     Add <application>psql</application> commands to report operator
-     classes and operator families (Sergey Cherkashin, Nikita Glukhov,
-     Alexander Korotkov)
-    </para>
-
-    <para>
-     The new commands are <link
-     linkend="app-psql-meta-commands">\dAc</link>, \dAf, \dAo, and \dAp.
-    </para>
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-07-03 [9a2ea6183] Show table persistence in psql's \dt+ and related comman
-    -->
-
-    <para>
-     Show table persistence in <application>psql</application>'s <link
-     linkend="app-psql-meta-commands">\dt+</link> and related commands
-     (David Fetter)
-    </para>
-
-    <para>
-     In verbose mode, the table/index/view shows if the object is permanent,
-     temporary, or unlogged.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-07-23 [eb5472da9] Improve psql's \d output for TOAST tables.
-    -->
-
-    <para>
-     Improve output of <application>psql</application> <link
-     linkend="app-psql-meta-commands">\d</link> for <acronym>TOAST</acronym>
-     tables (Justin Pryzby)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-11-22 [d1c866e57] Make psql redisplay the query buffer after \e.
-    -->
-
-    <para>
-     Adjust display of <application>psql</application>'s <link
-     linkend="app-psql-meta-commands">\e</link> query (Tom Lane)
-    </para>
-
-    <para>
-     When exiting the editor, if the query doesn't end with a semicolon
-     or \g, the query buffer contents will now be displayed.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-07-05 [02e95a504] Add \warn command to psql.
-    -->
-
-    <para>
-     Add <link linkend="app-psql-meta-commands">\warn</link> command to
-     <application>psql</application> (David Fetter)
-    </para>
-
-    <para>
-     This is like \echo except that the text is sent to stderr instead
-     of stdout.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2020-02-28 [1933ae629] Add PostgreSQL home page to - -help output
-    -->
-
-    <para>
-     Add the <productname>PostgreSQL</productname> home page to command-line
-     <option>--help</option> output (Peter Eisentraut)
-    </para>
-
-    </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-    <sect4>
-     <title><link linkend="pgbench"><application>pgbench</application></link></title>
-
-     <itemizedlist>
-
-    <listitem>
-    <!--
-    Author: Amit Kapila <akapila@postgresql.org>
-    2019-10-03 [b1c1aa531] pgbench: add - -partitions and - -partition-method options
-    -->
-
-    <para>
-     Allow pgbench to partition its 'accounts' table (Fabien Coelho)
-    </para>
-
-    <para>
-     This allows performance testing of partitioning.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Michael Paquier <michael@paquier.xyz>
-    2020-04-03 [9d8ef9880] Add support for \aset in pgbench
-    -->
-
-    <para>
-     Add pgbench command \aset, which behaves like \gset, but for multiple
-     queries (Fabien Coelho)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2019-11-06 [a386942bd] Add "G" (server-side data generation) as an initializati
-    -->
-
-    <para>
-     Allow pgbench to generate its data server-side, rather than client side
-     (Fabien Coelho)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Thomas Munro <tmunro@postgresql.org>
-    2019-07-16 [5823677ac] Provide pgbench - -show-script to dump built-in scripts.
-    -->
-
-    <para>
-     Allow pgbench to dump script contents using
-     <option>--show-script</option> (Fabien Coelho)
-    </para>
-
-    </listitem>
-
-     </itemizedlist>
-
-    </sect4>
-
-   </sect3>
-
-   <sect3>
-    <title>Server Applications</title>
-
-    <itemizedlist>
-
-    <listitem>
-    <!--
-    Author: Robert Haas <rhaas@postgresql.org>
-    2020-04-03 [0d8c9c121] Generate backup manifests for base backups, and validate
-    Author: Robert Haas <rhaas@postgresql.org>
-    2020-04-12 [dbc60c559] Rename pg_validatebackup to pg_verifybackup.
-    -->
-
-    <para>
-     Generate backup manifests for base backups, and verify them (Robert
-     Haas)
-    </para>
-
-    <para>
-     A new tool <link
-     linkend="app-pgverifybackup"><application>pg_verifybackup</application>"</link>
-     can verify backups.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Author: Fujii Masao <fujii@postgresql.org>
-    2020-03-19 [fab13dc50] Make pg_basebackup ask the server to estimate the total 
-    -->
-
-    <para>
-     Have <link
-     linkend="app-pgbasebackup"><application>pg_basebackup</application></link>
-     estimate the total backup size by default (Fujii Masao)
-    </para>
-
-    <para>
-     This computation allows <link
-     linkend="monitoring-stats-dynamic-views-table"><structname>pg_stat_progress_analyze</structname></link>
-     to show progress, and can be disabled by using the
-     <option>--no-estimate-size</option> option.  Previously, this
-     computation happened only if <option>--progress</option> was used.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2019-09-30 [927474ce1] pg_rewind: Allow writing recovery configuration
-    -->
-
-    <para>
-     Add <link
-     linkend="app-pgrewind"><application>pg_rewind</application></link>
-     option to configure standbys (Paul Guo, Jimmy Yih, Ashwin Agrawal)
-    </para>
-
-    <para>
-     This matches <link
-     linkend="app-pgbasebackup"><application>pg_basebackup</application></link>'s
-     <option>--write-recovery-conf</option> option.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Michael Paquier <michael@paquier.xyz>
-    2020-04-01 [a7e8ece41] Add -c/- -restore-target-wal to pg_rewind
-    -->
-
-    <para>
-     Allow <application>pg_rewind</application> to use the target
-     cluster's <xref linkend="guc-restore-command"/> to retrieve needed
-     <acronym>WAL</acronym> (Alexey Kondratov)
-    </para>
-
-    <para>
-     This is enabled using the
-     <option>-c</option>/<option>--restore-target-wal</option> option.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2019-09-27 [5adafaf17] Have pg_rewind run crash recovery before rewinding
-    -->
-
-    <para>
-     Have <application>pg_rewind</application> automatically run crash
-     recovery before rewinding (Paul Guo, Jimmy Yih, Ashwin Agrawal)
-    </para>
-
-    <para>
-     This can be disabled by using <option>--no-ensure-shutdown</option>.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2019-11-13 [7b8a899bd] Make pg_waldump report more detail information about PRE
-    -->
-
-    <para>
-     Increase <link linkend="sql-prepare-transaction"><command>PREPARE
-     TRANSACTION</command></link> information reported by
-     <application>pg_waldump</application> (Fujii Masao)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Robert Haas <rhaas@postgresql.org>
-    2020-04-02 [ac44367ef] pg_waldump: Add a - -quiet option.
-    -->
-
-    <para>
-     Add <link
-     linkend="pgwaldump"><application>pg_waldump</application></link>
-     option <option>--quiet</option> to suppress non-error output (Andres
-     Freund, Robert Haas)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2020-03-25 [2f9eb3132] pg_dump: Allow dumping data of specific foreign servers
-    -->
-
-    <para>
-     Allow <link
-     linkend="app-pgdump"><application>pg_dump</application></link>
-     <option>--include-foreign-data</option> to dump data from foreign
-     servers (Luis Carril)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Amit Kapila <akapila@postgresql.org>
-    2020-01-29 [47bc9ced0] Add - -parallel option to vacuumdb command.
-    -->
-
-    <para>
-     Allow vacuum commands run by <link
-     linkend="app-vacuumdb">vacuumdb</link> to operate in parallel mode
-     (Masahiko Sawada)
-    </para>
-
-    <para>
-     This is enabled with the new <option>--parallel</option> option.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Michael Paquier <michael@paquier.xyz>
-    2019-07-27 [5ab892c39] Add support for - -jobs in reindexdb
-    -->
-
-    <para>
-     Allow <link linkend="app-reindexdb">reindexdb</link> to operate in
-     parallel (Julien Rouhaud)
-    </para>
-
-    <para>
-     Parallel mode is enabled with the new <option>--jobs</option> option.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Amit Kapila <akapila@postgresql.org>
-    2019-11-20 [80e05a088] Add the support for '-f' option in dropdb utility.
-    -->
-
-    <para>
-     Allow <link linkend="app-dropdb">dropdb</link> to force disconnections
-     so the drop succeeds (Pavel Stehule)
-    </para>
-
-    <para>
-     This is enabled with the <option>-f</option> option.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Author: Michael Paquier <michael@paquier.xyz>
-    2019-10-23 [4fa5edcd1] Remove last traces of - -adduser/- -no-adduser in createus
-    -->
-
-    <para>
-     Remove <option>--adduser</option> and <option>--no-adduser</option>
-     from <link linkend="app-createuser">createuser</link> (Alexander
-     Lakhin)
-    </para>
-
-    <para>
-     The long-supported options for this are called
-     <option>--superuser</option> and <option>--no-superuser</option>.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2019-07-27 [959f6d6a1] pg_upgrade: Default new bindir to pg_upgrade location
-    -->
-
-    <para>
-     Use the directory of the <link
-     linkend="pgupgrade"><application>pg_upgrade</application></link>
-     binary as the default new 'bindir' location when running
-     <application>pg_upgrade</application> (Daniel Gustafsson)
-    </para>
-
-    </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Documentation</title>
-
-    <itemizedlist>
-
-    <listitem>
-    <!--
-    Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
-    2020-04-03 [347d2b07f] Add a glossary to the documentation
-    -->
-
-    <para>
-     Add a <link linkend="glossary">glossary</link> to the documentation
-     (Corey Huinker, J&uuml;rgen Purtz, Roger Harkavy, &Aacute;lvaro
-     Herrera)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-04-12 [e894c6183] Doc: introduce new layout for tables of functions and op
-    -->
-
-    <para>
-     Reformat tables containing <link linkend="functions">function
-     information</link> for better clarity (Tom Lane)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2019-08-13 [416c75cf3] Update to DocBook 4.5
-    -->
-
-    <para>
-     Upgrade to use <link linkend="docguide-docbook">DocBook 4.5</link>
-     (Peter Eisentraut)
-    </para>
-
-    </listitem>
-
-    </itemizedlist>
-
-   </sect3>
-
-   <sect3>
-    <title>Source Code</title>
-
-    <itemizedlist>
-
-    <listitem>
-    <!--
-    Author: Michael Paquier <michael@paquier.xyz>
-    2019-07-02 [2b1394fc2] Add support for Visual Studio 2019 in build scripts
-    -->
-
-    <para>
-     Add support for building on Visual Studio 2019 (Haribabu Kommi)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2019-12-19 [e975c1a60] Add support for MSYS2
-    -->
-
-    <para>
-     Add build support for MSYS2 (Peter Eisentraut)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Noah Misch <noah@leadboat.com>
-    2019-10-18 [30ee5d17c] For all ppc compilers, implement compare_exchange and fe
-    -->
-
-    <para>
-     Add compare_exchange and fetch_add assembly language code for Power
-     PC compilers (Noah Misch)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2019-07-04 [7b925e127] Sync our Snowball stemmer dictionaries with current upst
-    -->
-
-    <para>
-     Update <link linkend="textsearch-snowball-dictionary">Snowball
-     stemmer</link> dictionaries used by full text search (Panagiotis
-     Mavrogiorgos)
-    </para>
-
-    <para>
-     This adds Greek stemming and improves Danish and French stemming.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Michael Paquier <michael@paquier.xyz>
-    2020-02-19 [e2e02191e] Clean up some code, comments and docs referring to Windo
-    -->
-
-    <para>
-     Remove support for Windows 2000 (Michael Paquier)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2019-07-01 [c72f9b950] Remove support for non-ELF BSD systems
-    -->
-
-    <para>
-     Remove support for non-<acronym>ELF</acronym> <acronym>BSD</acronym>
-     systems (Peter Eisentraut)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2020-01-08 [37f21ed13] Remove support for Python older than 2.6
-    -->
-
-    <para>
-     Remove <link linkend="plpython">support</link> for Python versions
-     2.5.X and earlier (Peter Eisentraut)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Michael Paquier <michael@paquier.xyz>
-    2020-01-06 [7b283d0e1] Remove support for OpenSSL 0.9.8 and 1.0.0
-    -->
-
-    <para>
-     Remove <link linkend="install-short">support</link> for OpenSSL 0.9.8
-     and 1.0.0 (Michael Paquier)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2019-11-27 [4513d8b07] Move configure - -disable-float8-byval to pg_config_manua
-    -->
-
-    <para>
-     Remove <link linkend="install-short">support</link> option
-     <option>--disable-float</option>8-byval (Peter Eisentraut)
-    </para>
-
-    <para>
-     This was needed for previously supported version-zero functions.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2019-11-21 [2e4db241b] Remove configure - -disable-float4-byval
-    -->
-
-    <para>
-     Remove configure option <option>--disable-float4-byval</option>
-     (Peter Eisentraut)
-    </para>
-
-    <para>
-     This was needed for previously supported version-zero functions.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2020-03-30 [6aba63ef3] Allow the planner-related functions and hook to accept t
-    -->
-
-    <para>
-     Add the query string to planner hook functions (Pascal Legrand,
-     Julien Rouhaud)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Joe Conway <mail@joeconway.com>
-    2019-11-23 [f7a2002e8] Add object TRUNCATE hook
-    -->
-
-    <para>
-     Add <link linkend="sql-truncate"><command>TRUNCATE</command></link>
-     command hook (Yuli Khodorkovskiy)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Andrew Dunstan <andrew@dunslane.net>
-    2020-03-25 [896fcdb23] Provide a TLS init hook
-    -->
-
-    <para>
-     Add <acronym>TLS</acronym> init hook (Andrew Dunstan)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2020-01-31 [a9cff89f7] Allow building without default socket directory
-    -->
-
-    <para>
-     Allow building with no predefined Unix-domain socket directory
-     (Peter Eisentraut)
-    </para>
-
-    </listitem>
+     <itemizedlist>
 
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-09-05 [7de19fbc0] Use data directory inode number, not port, to select Sys
-    -->
+      <listitem>
+<!--
+Author: Amit Kapila <akapila@postgresql.org>
+2019-10-03 [b1c1aa531] pgbench: add - -partitions and - -partition-method options
+-->
+
+       <para>
+        Allow pgbench to partition its 'accounts' table (Fabien Coelho)
+       </para>
+
+       <para>
+        This allows performance testing of partitioning.
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Michael Paquier <michael@paquier.xyz>
+2020-04-03 [9d8ef9880] Add support for \aset in pgbench
+-->
+
+       <para>
+        Add pgbench command \aset, which behaves like \gset, but for multiple
+        queries (Fabien Coelho)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2019-11-06 [a386942bd] Add "G" (server-side data generation) as an initializati
+-->
+
+       <para>
+        Allow pgbench to generate its data server-side, rather than client side
+        (Fabien Coelho)
+       </para>
+      </listitem>
+
+      <listitem>
+<!--
+Author: Thomas Munro <tmunro@postgresql.org>
+2019-07-16 [5823677ac] Provide pgbench - -show-script to dump built-in scripts.
+-->
+
+       <para>
+        Allow pgbench to dump script contents using
+        <option>--show-script</option> (Fabien Coelho)
+       </para>
+      </listitem>
 
-    <para>
-     Reduce the probability of SysV resource key collision on Unix platforms
-     (Tom Lane)
-    </para>
+     </itemizedlist>
 
-    </listitem>
+    </sect4>
 
-    <listitem>
-    <!--
-    Author: Peter Eisentraut <peter@eisentraut.org>
-    2019-09-05 [74a308cf5] Use explicit_bzero
-    -->
+   </sect3>
 
-    <para>
-     Use operating system functions to cleanly erase memory that contains
-     sensitive information (Peter Eisentraut)
-    </para>
+   <sect3>
+    <title>Server Applications</title>
 
-    <para>
-     For example, this is used for clearing passwords stored in memory.
-    </para>
+    <itemizedlist>
 
-    </listitem>
+     <listitem>
+<!--
+Author: Robert Haas <rhaas@postgresql.org>
+2020-04-03 [0d8c9c121] Generate backup manifests for base backups, and validate
+Author: Robert Haas <rhaas@postgresql.org>
+2020-04-12 [dbc60c559] Rename pg_validatebackup to pg_verifybackup.
+-->
+
+      <para>
+       Generate backup manifests for base backups, and verify them (Robert
+       Haas)
+      </para>
+
+      <para>
+       A new tool <link
+       linkend="app-pgverifybackup"><application>pg_verifybackup</application>"</link>
+       can verify backups.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Author: Fujii Masao <fujii@postgresql.org>
+2020-03-19 [fab13dc50] Make pg_basebackup ask the server to estimate the total 
+-->
+
+      <para>
+       Have <link
+       linkend="app-pgbasebackup"><application>pg_basebackup</application></link>
+       estimate the total backup size by default (Fujii Masao)
+      </para>
+
+      <para>
+       This computation allows <link
+       linkend="monitoring-stats-dynamic-views-table"><structname>pg_stat_progress_analyze</structname></link>
+       to show progress, and can be disabled by using the
+       <option>--no-estimate-size</option> option.  Previously, this
+       computation happened only if <option>--progress</option> was used.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2019-09-30 [927474ce1] pg_rewind: Allow writing recovery configuration
+-->
+
+      <para>
+       Add <link
+       linkend="app-pgrewind"><application>pg_rewind</application></link>
+       option to configure standbys (Paul Guo, Jimmy Yih, Ashwin Agrawal)
+      </para>
+
+      <para>
+       This matches <link
+       linkend="app-pgbasebackup"><application>pg_basebackup</application></link>'s
+       <option>--write-recovery-conf</option> option.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Michael Paquier <michael@paquier.xyz>
+2020-04-01 [a7e8ece41] Add -c/- -restore-target-wal to pg_rewind
+-->
+
+      <para>
+       Allow <application>pg_rewind</application> to use the target
+       cluster's <xref linkend="guc-restore-command"/> to retrieve needed
+       <acronym>WAL</acronym> (Alexey Kondratov)
+      </para>
+
+      <para>
+       This is enabled using the
+       <option>-c</option>/<option>--restore-target-wal</option> option.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2019-09-27 [5adafaf17] Have pg_rewind run crash recovery before rewinding
+-->
+
+      <para>
+       Have <application>pg_rewind</application> automatically run crash
+       recovery before rewinding (Paul Guo, Jimmy Yih, Ashwin Agrawal)
+      </para>
+
+      <para>
+       This can be disabled by using <option>--no-ensure-shutdown</option>.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2019-11-13 [7b8a899bd] Make pg_waldump report more detail information about PRE
+-->
+
+      <para>
+       Increase <link linkend="sql-prepare-transaction"><command>PREPARE
+       TRANSACTION</command></link> information reported by
+       <application>pg_waldump</application> (Fujii Masao)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Robert Haas <rhaas@postgresql.org>
+2020-04-02 [ac44367ef] pg_waldump: Add a - -quiet option.
+-->
+
+      <para>
+       Add <link
+       linkend="pgwaldump"><application>pg_waldump</application></link>
+       option <option>--quiet</option> to suppress non-error output (Andres
+       Freund, Robert Haas)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2020-03-25 [2f9eb3132] pg_dump: Allow dumping data of specific foreign servers
+-->
+
+      <para>
+       Allow <link
+       linkend="app-pgdump"><application>pg_dump</application></link>
+       <option>--include-foreign-data</option> to dump data from foreign
+       servers (Luis Carril)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Amit Kapila <akapila@postgresql.org>
+2020-01-29 [47bc9ced0] Add - -parallel option to vacuumdb command.
+-->
+
+      <para>
+       Allow vacuum commands run by <link
+       linkend="app-vacuumdb">vacuumdb</link> to operate in parallel mode
+       (Masahiko Sawada)
+      </para>
+
+      <para>
+       This is enabled with the new <option>--parallel</option> option.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Michael Paquier <michael@paquier.xyz>
+2019-07-27 [5ab892c39] Add support for - -jobs in reindexdb
+-->
+
+      <para>
+       Allow <link linkend="app-reindexdb">reindexdb</link> to operate in
+       parallel (Julien Rouhaud)
+      </para>
+
+      <para>
+       Parallel mode is enabled with the new <option>--jobs</option> option.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Amit Kapila <akapila@postgresql.org>
+2019-11-20 [80e05a088] Add the support for '-f' option in dropdb utility.
+-->
+
+      <para>
+       Allow <link linkend="app-dropdb">dropdb</link> to force disconnections
+       so the drop succeeds (Pavel Stehule)
+      </para>
+
+      <para>
+       This is enabled with the <option>-f</option> option.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Author: Michael Paquier <michael@paquier.xyz>
+2019-10-23 [4fa5edcd1] Remove last traces of - -adduser/- -no-adduser in createus
+-->
+
+      <para>
+       Remove <option>--adduser</option> and <option>--no-adduser</option>
+       from <link linkend="app-createuser">createuser</link> (Alexander
+       Lakhin)
+      </para>
+
+      <para>
+       The long-supported options for this are called
+       <option>--superuser</option> and <option>--no-superuser</option>.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2019-07-27 [959f6d6a1] pg_upgrade: Default new bindir to pg_upgrade location
+-->
+
+      <para>
+       Use the directory of the <link
+       linkend="pgupgrade"><application>pg_upgrade</application></link>
+       binary as the default new 'bindir' location when running
+       <application>pg_upgrade</application> (Daniel Gustafsson)
+      </para>
+     </listitem>
 
-    <listitem>
-    <!--
-    Author: Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-08-19 [55ea10918] Add "headerscheck" script to test header-file compilabil
-    -->
+    </itemizedlist>
 
-    <para>
-     Add "headerscheck" script to test C header-file compatibility
-     (Tom Lane)
-    </para>
+   </sect3>
 
-    </listitem>
+   <sect3>
+    <title>Documentation</title>
 
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2019-07-15 [1cff1b95a] Represent Lists as expansible arrays, not chains of cons
-    -->
+    <itemizedlist>
 
-    <para>
-     Implement internal lists as arrays, rather than a chain of structures
-     (Tom Lane)
-    </para>
+     <listitem>
+<!--
+Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
+2020-04-03 [347d2b07f] Add a glossary to the documentation
+-->
+
+      <para>
+       Add a <link linkend="glossary">glossary</link> to the documentation
+       (Corey Huinker, J&uuml;rgen Purtz, Roger Harkavy, &Aacute;lvaro
+       Herrera)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-04-12 [e894c6183] Doc: introduce new layout for tables of functions and op
+-->
+
+      <para>
+       Reformat tables containing <link linkend="functions">function
+       information</link> for better clarity (Tom Lane)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2019-08-13 [416c75cf3] Update to DocBook 4.5
+-->
+
+      <para>
+       Upgrade to use <link linkend="docguide-docbook">DocBook 4.5</link>
+       (Peter Eisentraut)
+      </para>
+     </listitem>
 
-    <para>
-     This improves performance for queries that access many object.
-     The internal List <acronym>API</acronym> has also been improved.
-    </para>
+    </itemizedlist>
 
-    </listitem>
+   </sect3>
 
-    <listitem>
-    <!--
-    Author: Michael Paquier <michael@paquier.xyz>
-    2019-07-13 [39aadc984] Fix some inconsistencies in MSVC scripts
-    -->
+   <sect3>
+    <title>Source Code</title>
 
-    <para>
-     Update <link linkend="install-windows">Windows build scripts</link>
-     to use the modern <option>--with-uuid</option> flag for
-     <acronym>UUID</acronym> libraries (Kyotaro Horiguchi)
-    </para>
+    <itemizedlist>
 
-    </listitem>
+     <listitem>
+<!--
+Author: Michael Paquier <michael@paquier.xyz>
+2019-07-02 [2b1394fc2] Add support for Visual Studio 2019 in build scripts
+-->
+
+      <para>
+       Add support for building on Visual Studio 2019 (Haribabu Kommi)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2019-12-19 [e975c1a60] Add support for MSYS2
+-->
+
+      <para>
+       Add build support for MSYS2 (Peter Eisentraut)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Noah Misch <noah@leadboat.com>
+2019-10-18 [30ee5d17c] For all ppc compilers, implement compare_exchange and fe
+-->
+
+      <para>
+       Add compare_exchange and fetch_add assembly language code for Power
+       PC compilers (Noah Misch)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2019-07-04 [7b925e127] Sync our Snowball stemmer dictionaries with current upst
+-->
+
+      <para>
+       Update <link linkend="textsearch-snowball-dictionary">Snowball
+       stemmer</link> dictionaries used by full text search (Panagiotis
+       Mavrogiorgos)
+      </para>
+
+      <para>
+       This adds Greek stemming and improves Danish and French stemming.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Michael Paquier <michael@paquier.xyz>
+2020-02-19 [e2e02191e] Clean up some code, comments and docs referring to Windo
+-->
+
+      <para>
+       Remove support for Windows 2000 (Michael Paquier)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2019-07-01 [c72f9b950] Remove support for non-ELF BSD systems
+-->
+
+      <para>
+       Remove support for non-<acronym>ELF</acronym> <acronym>BSD</acronym>
+       systems (Peter Eisentraut)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2020-01-08 [37f21ed13] Remove support for Python older than 2.6
+-->
+
+      <para>
+       Remove <link linkend="plpython">support</link> for Python versions
+       2.5.X and earlier (Peter Eisentraut)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Michael Paquier <michael@paquier.xyz>
+2020-01-06 [7b283d0e1] Remove support for OpenSSL 0.9.8 and 1.0.0
+-->
+
+      <para>
+       Remove <link linkend="install-short">support</link> for OpenSSL 0.9.8
+       and 1.0.0 (Michael Paquier)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2019-11-27 [4513d8b07] Move configure - -disable-float8-byval to pg_config_manua
+-->
+
+      <para>
+       Remove <link linkend="install-short">support</link> option
+       <option>--disable-float</option>8-byval (Peter Eisentraut)
+      </para>
+
+      <para>
+       This was needed for previously supported version-zero functions.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2019-11-21 [2e4db241b] Remove configure - -disable-float4-byval
+-->
+
+      <para>
+       Remove configure option <option>--disable-float4-byval</option>
+       (Peter Eisentraut)
+      </para>
+
+      <para>
+       This was needed for previously supported version-zero functions.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2020-03-30 [6aba63ef3] Allow the planner-related functions and hook to accept t
+-->
+
+      <para>
+       Add the query string to planner hook functions (Pascal Legrand,
+       Julien Rouhaud)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Joe Conway <mail@joeconway.com>
+2019-11-23 [f7a2002e8] Add object TRUNCATE hook
+-->
+
+      <para>
+       Add <link linkend="sql-truncate"><command>TRUNCATE</command></link>
+       command hook (Yuli Khodorkovskiy)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Andrew Dunstan <andrew@dunslane.net>
+2020-03-25 [896fcdb23] Provide a TLS init hook
+-->
+
+      <para>
+       Add <acronym>TLS</acronym> init hook (Andrew Dunstan)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2020-01-31 [a9cff89f7] Allow building without default socket directory
+-->
+
+      <para>
+       Allow building with no predefined Unix-domain socket directory
+       (Peter Eisentraut)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-09-05 [7de19fbc0] Use data directory inode number, not port, to select Sys
+-->
+
+      <para>
+       Reduce the probability of SysV resource key collision on Unix platforms
+       (Tom Lane)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Eisentraut <peter@eisentraut.org>
+2019-09-05 [74a308cf5] Use explicit_bzero
+-->
+
+      <para>
+       Use operating system functions to cleanly erase memory that contains
+       sensitive information (Peter Eisentraut)
+      </para>
+
+      <para>
+       For example, this is used for clearing passwords stored in memory.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-08-19 [55ea10918] Add "headerscheck" script to test header-file compilabil
+-->
+
+      <para>
+       Add "headerscheck" script to test C header-file compatibility
+       (Tom Lane)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2019-07-15 [1cff1b95a] Represent Lists as expansible arrays, not chains of cons
+-->
+
+      <para>
+       Implement internal lists as arrays, rather than a chain of structures
+       (Tom Lane)
+      </para>
+
+      <para>
+       This improves performance for queries that access many object.
+       The internal List <acronym>API</acronym> has also been improved.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Michael Paquier <michael@paquier.xyz>
+2019-07-13 [39aadc984] Fix some inconsistencies in MSVC scripts
+-->
+
+      <para>
+       Update <link linkend="install-windows">Windows build scripts</link>
+       to use the modern <option>--with-uuid</option> flag for
+       <acronym>UUID</acronym> libraries (Kyotaro Horiguchi)
+      </para>
+     </listitem>
 
     </itemizedlist>
 
 
     <itemizedlist>
 
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-01-29 [50fc694e4] Invent "trusted" extensions, and remove the pg_pltemplat
-    -->
-
-    <para>
-     Allow <link linkend="sql-createextension">extensions</link> to be
-     specified as trusted (Tom Lane)
-    </para>
-
-    <para>
-     Such extensions can be installed in a database by users with creation
-     rights, even if they are not superusers.  This change also removes
-     the <structname>pg_pltemplate</structname> system catalog.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-02-19 [70a773200] Remove support for upgrading extensions from "unpackaged
-    -->
-
-    <para>
-     Remove support for upgrading "unpackaged" extensions (Tom Lane)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Andrew Dunstan <andrew@dunslane.net>
-    2019-12-20 [6136e94dc] Superuser can permit passwordless connections on postgre
-    -->
-
-    <para>
-     Allow non-superusers to connect to <xref linkend="postgres-fdw"/>
-     foreign servers without using a password (Craig Ringer)
-    </para>
-
-    <para>
-     Specifically, allow <link linkend="sql-alterusermapping"><command>ALTER
-     USER MAPPING</command></link> to set
-     <literal>password_required</literal> to false.  Care must still be
-     taken to avoid non-superusers from using superuser credentials to
-     connect to the foreign server.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Andrew Dunstan <andrew@dunslane.net>
-    2020-01-09 [f5fd995a1] Allow 'sslkey' and 'sslcert' in postgres_fdw user mappin
-    -->
-
-    <para>
-     Allow <application>postgres_fdw</application> to use certificate
-     authentication (Craig Ringer)
-    </para>
-
-    <para>
-     Different users can use different certificates.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Joe Conway <mail@joeconway.com>
-    2019-11-23 [4f66c93f6] Update sepgsql to add mandatory access control for TRUNC
-    -->
-
-    <para>
-     Allow <xref linkend="sepgsql"/> to control access to the
-     <command>TRUNCATE</command> command (Yuli Khodorkovskiy)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-03-06 [36058a3c5] Create contrib/bool_plperl to provide a bool transform f
-    -->
-
-    <para>
-     Add extension <application>bool_plperl</application> which transforms
-     <acronym>SQL</acronym> booleans to/from PL/Perl booleans (Ivan
-     Panchenko) WHERE IS THIS DOCUMENTED?
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Andrew Gierth <rhodiumtoad@postgresql.org>
-    2019-07-14 [6e74c64bc] Teach pg_stat_statements not to ignore FOR UPDATE clause
-    -->
-
-    <para>
-     Have <xref linkend="pgstatstatements"/> treat <command>SELECT
-     ... FOR UPDATE</command>  as distinct from those without <command>FOR
-     UPDATE</command> (Andrew Gierth, Vik Fearing)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2020-04-02 [17e032822] Allow pg_stat_statements to track planning statistics.
-    -->
-
-    <para>
-     Allow <application>pg_stat_statements</application> to optionally
-     track the planning time of statements (Julien Rouhaud, Pascal Legrand,
-     Thomas Munro, Fujii Masao)
-    </para>
-
-    <para>
-     Previously only execution time was tracked.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-03-31 [70dc4c509] Fix lquery's NOT handling, and add ability to quantify n
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-04-01 [17ca06799] Clean up parsing of ltree and lquery some more.
-    -->
-
-    <para>
-     Overhaul <xref linkend="ltree"/>'s lquery syntax to treat
-     <literal>NOT</literal> (!) more logically (Filip Rembialkowski,
-     Tom Lane, Nikita Glukhov)
-    </para>
-
-    <para>
-     Also allow non-* queries to use a numeric range ({}) of matches.
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-04-01 [949a9f043] Add support for binary I/O of ltree, lquery, and ltxtque
-    -->
-
-    <para>
-     Add support for binary I/O of <xref linkend="ltree"/>, lquery, and
-     ltxtquery types (Nino Floris)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Tom Lane <tgl@sss.pgh.pa.us>
-    2020-03-08 [806eb92c0] Add an "absval" parameter to allow contrib/dict_int to i
-    -->
-
-    <para>
-     Add option to <xref linkend="dict-int"/> extension to ignore the sign
-     of integers (Jeff Janes)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Fujii Masao <fujii@postgresql.org>
-    2020-01-24 [d694e0bb7] Add pg_file_sync() to adminpack extension.
-    -->
-
-    <para>
-     Add <xref linkend="adminpack"/> function
-     <function>pg_file_sync()</function> to allow fsync'ing a file
-     (Fujii Masao)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Michael Paquier <michael@paquier.xyz>
-    2019-09-12 [ddbd5d873] Add to pageinspect function to make t_infomask/t_infomas
-    Author: Author: Michael Paquier <michael@paquier.xyz>
-    2019-09-19 [58b4cb30a] Redesign pageinspect function printing infomask bits
-    -->
-
-    <para>
-     Add <xref linkend="pageinspect"/> functions to output
-     <structfield>t_infomask</structfield>/<structfield>t_infomask2</structfield>
-     values in human-readable format (Craig Ringer, Sawada Masahiko,
-     Michael Paquier)
-    </para>
-
-    </listitem>
-
-    <listitem>
-    <!--
-    Author: Peter Geoghegan <pg@bowt.ie>
-    2020-02-29 [93ee38ead] Teach pageinspect about nbtree deduplication.
-    -->
-
-    <para>
-     Add btree index deduplication processing columns to pageinspect output
-     (Peter Geoghegan)
-    </para>
-
-    </listitem>
-
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-01-29 [50fc694e4] Invent "trusted" extensions, and remove the pg_pltemplat
+-->
+
+      <para>
+       Allow <link linkend="sql-createextension">extensions</link> to be
+       specified as trusted (Tom Lane)
+      </para>
+
+      <para>
+       Such extensions can be installed in a database by users with creation
+       rights, even if they are not superusers.  This change also removes
+       the <structname>pg_pltemplate</structname> system catalog.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-02-19 [70a773200] Remove support for upgrading extensions from "unpackaged
+-->
+
+      <para>
+       Remove support for upgrading "unpackaged" extensions (Tom Lane)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Andrew Dunstan <andrew@dunslane.net>
+2019-12-20 [6136e94dc] Superuser can permit passwordless connections on postgre
+-->
+
+      <para>
+       Allow non-superusers to connect to <xref linkend="postgres-fdw"/>
+       foreign servers without using a password (Craig Ringer)
+      </para>
+
+      <para>
+       Specifically, allow <link linkend="sql-alterusermapping"><command>ALTER
+       USER MAPPING</command></link> to set
+       <literal>password_required</literal> to false.  Care must still be
+       taken to avoid non-superusers from using superuser credentials to
+       connect to the foreign server.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Andrew Dunstan <andrew@dunslane.net>
+2020-01-09 [f5fd995a1] Allow 'sslkey' and 'sslcert' in postgres_fdw user mappin
+-->
+
+      <para>
+       Allow <application>postgres_fdw</application> to use certificate
+       authentication (Craig Ringer)
+      </para>
+
+      <para>
+       Different users can use different certificates.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Joe Conway <mail@joeconway.com>
+2019-11-23 [4f66c93f6] Update sepgsql to add mandatory access control for TRUNC
+-->
+
+      <para>
+       Allow <xref linkend="sepgsql"/> to control access to the
+       <command>TRUNCATE</command> command (Yuli Khodorkovskiy)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-03-06 [36058a3c5] Create contrib/bool_plperl to provide a bool transform f
+-->
+
+      <para>
+       Add extension <application>bool_plperl</application> which transforms
+       <acronym>SQL</acronym> booleans to/from PL/Perl booleans (Ivan
+       Panchenko) WHERE IS THIS DOCUMENTED?
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Andrew Gierth <rhodiumtoad@postgresql.org>
+2019-07-14 [6e74c64bc] Teach pg_stat_statements not to ignore FOR UPDATE clause
+-->
+
+      <para>
+       Have <xref linkend="pgstatstatements"/> treat <command>SELECT
+       ... FOR UPDATE</command>  as distinct from those without <command>FOR
+       UPDATE</command> (Andrew Gierth, Vik Fearing)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2020-04-02 [17e032822] Allow pg_stat_statements to track planning statistics.
+-->
+
+      <para>
+       Allow <application>pg_stat_statements</application> to optionally
+       track the planning time of statements (Julien Rouhaud, Pascal Legrand,
+       Thomas Munro, Fujii Masao)
+      </para>
+
+      <para>
+       Previously only execution time was tracked.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-03-31 [70dc4c509] Fix lquery's NOT handling, and add ability to quantify n
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-04-01 [17ca06799] Clean up parsing of ltree and lquery some more.
+-->
+
+      <para>
+       Overhaul <xref linkend="ltree"/>'s lquery syntax to treat
+       <literal>NOT</literal> (!) more logically (Filip Rembialkowski,
+       Tom Lane, Nikita Glukhov)
+      </para>
+
+      <para>
+       Also allow non-* queries to use a numeric range ({}) of matches.
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-04-01 [949a9f043] Add support for binary I/O of ltree, lquery, and ltxtque
+-->
+
+      <para>
+       Add support for binary I/O of <xref linkend="ltree"/>, lquery, and
+       ltxtquery types (Nino Floris)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Tom Lane <tgl@sss.pgh.pa.us>
+2020-03-08 [806eb92c0] Add an "absval" parameter to allow contrib/dict_int to i
+-->
+
+      <para>
+       Add option to <xref linkend="dict-int"/> extension to ignore the sign
+       of integers (Jeff Janes)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Fujii Masao <fujii@postgresql.org>
+2020-01-24 [d694e0bb7] Add pg_file_sync() to adminpack extension.
+-->
+
+      <para>
+       Add <xref linkend="adminpack"/> function
+       <function>pg_file_sync()</function> to allow fsync'ing a file
+       (Fujii Masao)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Michael Paquier <michael@paquier.xyz>
+2019-09-12 [ddbd5d873] Add to pageinspect function to make t_infomask/t_infomas
+Author: Author: Michael Paquier <michael@paquier.xyz>
+2019-09-19 [58b4cb30a] Redesign pageinspect function printing infomask bits
+-->
+
+      <para>
+       Add <xref linkend="pageinspect"/> functions to output
+       <structfield>t_infomask</structfield>/<structfield>t_infomask2</structfield>
+       values in human-readable format (Craig Ringer, Sawada Masahiko,
+       Michael Paquier)
+      </para>
+     </listitem>
+
+     <listitem>
+<!--
+Author: Peter Geoghegan <pg@bowt.ie>
+2020-02-29 [93ee38ead] Teach pageinspect about nbtree deduplication.
+-->
+
+      <para>
+       Add btree index deduplication processing columns to pageinspect output
+       (Peter Geoghegan)
+      </para>
+     </listitem>
 
     </itemizedlist>
 
   <sect2 id="release-13-acknowledgements">
    <title>Acknowledgments</title>
 
-   <para>
-    The following individuals (in alphabetical order) have contributed to this
-    release as patch authors, committers, reviewers, testers, or reporters of
-    issues.
-   </para>
+    <para>
+     The following individuals (in alphabetical order) have contributed to this
+     release as patch authors, committers, reviewers, testers, or reporters of
+     issues.
+    </para>
 
    <simplelist>
     <member></member>