]> granicus.if.org Git - postgresql/commitdiff
8.5alpha3 release notes up to Fri Dec 18 21:37:38 2009 +0000
authorPeter Eisentraut <peter_e@gmx.net>
Fri, 18 Dec 2009 22:11:09 +0000 (22:11 +0000)
committerPeter Eisentraut <peter_e@gmx.net>
Fri, 18 Dec 2009 22:11:09 +0000 (22:11 +0000)
doc/src/sgml/release-8.5.sgml

index f95b35505c3647ff00dee18b7223b89848271420..73ad960fa2da3582b2190b50bc6a76d00153e17a 100644 (file)
@@ -1,7 +1,7 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/release-8.5.sgml,v 1.9 2009/12/11 01:33:35 adunstan Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/release-8.5.sgml,v 1.10 2009/12/18 22:11:09 petere Exp $ -->
 
 <sect1 id="release-8-5">
-  <title>Release 8.5alpha2</title>
+  <title>Release 8.5alpha3</title>
   <sect2>
     <title>Overview</title>
     <para>
       <itemizedlist>
        <listitem>
         <para>
-         <emphasis>Add SQL-compliant triggers on columns, which fire only if
-         certain columns are named in the UPDATE's SET list.</>
+         <emphasis>Remove previously deprecated configuration
+         parameter add_missing_from. The system now always behaves as
+         though add_missing_from were off.</emphasis>
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Add CREATE LIKE INCLUDING COMMENTS and STORAGE, and INCLUDING
+         <emphasis>Performance and behavioral improvements in UPDATE,
+         DELETE, and SELECT FOR UPDATE/SHARE queries with
+         joins. Various corner-cases could result in duplicated output
+         rows. Set-returning functions are now prohibited in the
+         target list of SELECT FOR UPDATE/SHARE. FOR UPDATE does not
+         propagate into a WITH query anymore.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Fixed for SELECT FOR UPDATE/SHARE in conjuction with LIMIT.
+          Previously, it could return fewer rows than the limit specified.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Add a WHEN clause to CREATE TRIGGER, allowing a boolean expression
+          to be checked to determine whether the trigger should be fired.</emphasis>
+        </para>
+        <para>
+         <emphasis>For BEFORE triggers this is mostly a matter of spec compliance; but
+          for AFTER triggers it can provide a noticeable performance
+          improvement, since queuing of a deferred trigger event and
+          re-fetching of the row(s) at end of statement can be
+          short-circuited if the trigger does not need to be fired.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Add exclusion constraints, which generalize the concept of
+          uniqueness to support any indexable commutative operator, not just
+          equality. Two rows violate the exclusion constraint if
+          &quot;row1.col OP row2.col&quot; is TRUE for each of the columns in
+          the constraint.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Support ORDER BY within aggregate function calls, at long last
+          providing a non-kluge method for controlling the order in which
+          values are fed to an aggregate function. At the same time eliminate
+          the old implementation restriction that DISTINCT was only supported
+          for single-argument aggregates.</emphasis>
+        </para>
+        <para>
+         <emphasis>Behavioral change: formerly, agg(DISTINCT x) dropped null values of
+          x unconditionally. Now, it does so only if the agg transition
+          function is strict; otherwise nulls are treated as DISTINCT
+          normally would, i.e., you get one copy.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         Add SQL-compliant triggers on columns, which fire only if
+         certain columns are named in the UPDATE's SET list.
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         Add CREATE LIKE INCLUDING COMMENTS and STORAGE, and INCLUDING
          ALL shortcut to allow users to make an exact copy of a table including
-         all options and features.</>
+         all options and features.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Define a new, more extensible syntax for COPY options
-         in order to support additional COPY options in the future.</>
+         Define a new, more extensible syntax for COPY options
+         in order to support additional COPY options in the future.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Modify the definition of window-function PARTITION
+         Modify the definition of window-function PARTITION
          BY and ORDER BY clauses so that their elements are always
          taken as simple expressions over the query's input
-         columns. This fixes a bug.</>
+         columns. This fixes a bug.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Fix bug with nested WITH RECURSIVE statements.</>
+         Fix bug with nested WITH RECURSIVE statements.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Add surrogate pair support for U&amp; string and identifier
-         syntax.</>
+         Add surrogate pair support for U&amp; string and identifier
+         syntax.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Add Unicode escapes in E'...' strings.</>
+         Add Unicode escapes in E'...' strings.
         </para>
        </listitem>
         <listitem>
       <itemizedlist>
        <listitem>
         <para>
-         <emphasis>Make TRUNCATE do truncate-in-place when processing
+         <emphasis>Allow rewriting ALTER TABLE to skip WAL logging.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Speed up information schema privilege views.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         Make TRUNCATE do truncate-in-place when processing
          a relation that was created or previously truncated in the
-         current (sub)transaction.</>
+         current (sub)transaction.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Implement &quot;join removal&quot; for cases where the inner side
+         Implement &quot;join removal&quot; for cases where the inner side
           of a left join is unique and is not referenced above the join.  This should
-          speed up many ORM-generated and reporting tool queries.</emphasis>
+          speed up many ORM-generated and reporting tool queries.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Remove the use of the flat files pg_auth and
+         Remove the use of the flat files pg_auth and
          pg_database in order to improve performance. (Warning: pgbouncer
          and possibly other tools currently suggest referring to the pg_auth
-         file for its user database. Such schemes will no longer work.)</emphasis>
+         file for its user database. Such schemes will no longer work.)
         </para>
        </listitem>
         <listitem>
       <itemizedlist>
        <listitem>
         <para>
-         <emphasis>Add a Boolean server configuration parameter
+         <emphasis>Provide a parenthesized-options syntax for VACUUM, analogous to
+          that recently adopted for EXPLAIN. This will allow additional
+          options to be implemented in future without having to make them
+          fully-reserved keywords. The old syntax remains available for
+          existing options, however.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Add support for an application_name parameter, which is displayed
+          in pg_stat_activity and recorded in log entries.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Fix longstanding problems in VACUUM caused by untimely
+          interruptions.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Error when a specified connection service is not found in
+          pg_service.conf, instead of ignoring it.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Add YAML to list of EXPLAIN formats.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Add an EXPLAIN (BUFFERS) option to show buffer-usage statistics.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Add a hook to let loadable modules get control at ProcessUtility
+          execution, and use it to extend contrib/pg_stat_statements to track
+          utility commands.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         Add a Boolean server configuration parameter
          &quot;bonjour&quot; to control whether a Bonjour-enabled
-         build actually attempts to advertise itself via Bonjour.</>
+         build actually attempts to advertise itself via Bonjour.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>When reloading postgresql.conf, log what parameters actually
-         changed.</>
+         When reloading postgresql.conf, log what parameters actually
+         changed.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Make it possibly to specify server configuration parameters
+         Make it possibly to specify server configuration parameters
          per user-database combination. Add a \drds command to psql to
-         display the settings.</>
+         display the settings.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Allow the collection of statistics on sequences.</>
+         Allow the collection of statistics on sequences.
         </para>
        </listitem>
       <listitem>
        <para>
-        <emphasis>Increase the maximum value of extra_float_digits to
+        Increase the maximum value of extra_float_digits to
         3, and have pg_dump use that value when the backend is new
         enough to allow it, because it is possible to need 3 extra
-        digits for float4 values (but not for float8 values).</>
+        digits for float4 values (but not for float8 values).
        </para>
       </listitem>
         <listitem>
       <itemizedlist>
        <listitem>
         <para>
-         <emphasis>Add ALTER DEFAULT PRIVILEGES command, which allows
+         <emphasis>When querying a table with child tables, do not check permissions
+          on the child tables, only on the parent table. The old behavior was
+          found to be useless and confusing in virtually all cases, and also
+          contrary to the SQL standard.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Add a hook to CREATE/ALTER ROLE to allow an external module to
+          check the strength of database passwords, and create a sample
+          implementation of such a hook as a new contrib module
+          &quot;passwordcheck&quot;.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Add large object access control.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Allow LDAP authentication to operate in search+bind
+         mode, meaning it does a search for the user in the directory
+         first, and then binds with the DN found for this user.  This
+         allows for LDAP logins in scenarios where the DN of the user
+         cannot be determined simply by prefix and suffix, such as the
+         case where different users are located in different
+         containers.  The old way of authentication can be
+         significantly faster, so it's kept as an option.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         Add ALTER DEFAULT PRIVILEGES command, which allows
          users to adjust the privileges that will be applied to
-         subsequently-created objects.</>
+         subsequently-created objects.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Add GRANT/REVOKE ON ALL TABLES/SEQUENCES/FUNCTIONS IN SCHEMA.
-         This makes it easier to manage permissions on database objects.</emphasis>
+         Add GRANT/REVOKE ON ALL TABLES/SEQUENCES/FUNCTIONS IN SCHEMA.
+         This makes it easier to manage permissions on database objects.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Support &quot;samehost&quot; and &quot;samenet&quot; specifications
+         Support &quot;samehost&quot; and &quot;samenet&quot; specifications
          in pg_hba.conf.  This allows users with dynamic server addresses to run
-         PostgreSQL without frequently modifying pg_hba.conf</emphasis>
+         PostgreSQL without frequently modifying pg_hba.conf.
         </para>
        </listitem>
         <listitem>
       <itemizedlist>
        <listitem>
         <para>
-         <emphasis>Support POSIX-compatible interpretation of ? as well as {m,n}
-         and related constructs in SIMILAR TO, per SQL:2008.</>
+         <emphasis>Remove configuration parameter regex_flavor. It is now always
+          &quot;advanced&quot;.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Teach the regular expression functions to do case-insensitive
+          matching and locale-dependent character classification properly
+          when the database encoding is UTF8. This previously only worked
+          correct for single-byte encodings and is still broken for other
+          multibyte encodings.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         Support POSIX-compatible interpretation of ? as well as {m,n}
+         and related constructs in SIMILAR TO, per SQL:2008.
         </para>
        </listitem>
         <listitem>
       <itemizedlist>
        <listitem>
         <para>
-         <emphasis>Fix encoding handling in binary input function of xml type.</>
+         <emphasis>When doing &quot;ARRAY[...]::domain&quot;, where domain is a domain
+          over an array type, we need to check domain constraints. Regression
+          introduced in 8.4.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Fix integer-to-bit-string conversions to handle the first
+          fractional byte correctly when the output bit width is wider than
+          the given integer by something other than a multiple of 8 bits.</emphasis>
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Tighten binary receive functions so that they reject values
-         that the text input functions don't accept either.</>
+         Fix encoding handling in binary input function of xml type.
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         Tighten binary receive functions so that they reject values
+         that the text input functions don't accept either.
         </para>
        </listitem>
         <listitem>
       <itemizedlist>
        <listitem>
         <para>
-         <emphasis>It is now reasonably safe to use pg_ctl to start
-         the postmaster from a boot-time script.</emphasis>
+         <emphasis>initdb now selects the encoding SQL_ASCII when the locale specifies
+          US-ASCII. This case previously failed.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Add init[db] option to pg_ctl.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         It is now reasonably safe to use pg_ctl to start
+         the postmaster from a boot-time script.
         </para>
        </listitem>
        <listitem>
       <itemizedlist>
        <listitem>
         <para>
-         <emphasis>Implement significantly saner behavior when two or
-         more psql sessions overlap in their use of the history file.</>
+         <emphasis>In psql, show view definition only with \d+, not with \d.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>In psql, ignore UTF-8-encoded Unicode byte-order mark at the
+          beginning of a file if the client encoding is UTF-8.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Improve psql's tabular display of wrapped-around data by inserting
+          markers in the formerly-always-blank columns just to left and right
+          of the data. &quot;pset linestyle old-ascii&quot; is added to make
+          the previous behavior available if anyone really wants it.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Simplify psql's new linestyle behavior to default to
+          linestyle=ascii all the time, rather than hoping we can tell
+          whether the terminal supports UTF-8 characters.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         Implement significantly saner behavior when two or
+         more psql sessions overlap in their use of the history file.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Add &quot;pset linestyle ascii/unicode&quot; option to psql,
+         Add &quot;pset linestyle ascii/unicode&quot; option to psql,
          allowing our traditional ASCII-art style of table output to
          be upgraded to use Unicode box drawing characters if
-         desired.</>
+         desired.
         </para>
        </listitem>
         <listitem>
       <itemizedlist>
        <listitem>
         <para>
-         <emphasis>Add DO statement to support execution of procedural language
-         code without having to create a function for it.</>
+         <emphasis>PL/pgSQL is installed by default.</emphasis>
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Support use of function argument names to identify which
+         <emphasis>Remove PL/pgSQL's RENAME declaration, which has
+          bizarre and mostly nonfunctional behavior, and is so little
+          used that no one has been interested in fixing it. To ensure
+          that possible uses are covered, remove the ALIAS declaration's
+          arbitrary restriction that only $n identifiers can be
+          aliased.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>The PL/pgSQL parser and scanner were reworked to behave much more
+          sanely:</emphasis>
+        </para>
+        <para>
+         <emphasis>A variable reference will only be recognized where it can validly
+          go, ie, a place where a column value or parameter would be legal,
+          instead of the former behavior that would replace any textual match
+          including table names and column aliases (leading to syntax errors
+          later on). PL/pgSQL variable names that match fully-reserved words
+          will now need to be quoted. An the other hand, a number of
+          PL/pgSQL-specific words were de-reserved.</emphasis>
+        </para>
+        <para>
+         <emphasis>The variable resolution behavior is by default not backward
+          compatible, but can be configured; see documentation.</emphasis>
+        </para>
+        <para>
+         <emphasis>Error reporting is much nicer and accurate.</emphasis>
+        </para>
+        <para>
+         <emphasis>The argument of WHERE CURRENT OF can be a PL/pgSQL cursor variable.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Add support for anonymous code blocks (DO blocks) to PL/Perl.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Support arrays as parameters and return values of PL/Python
+          functions.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Python 3 support in PL/Python; behaves more or less unchanged
+          compared to Python 2, but the new language variant is called
+          plpython3u.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         Add DO statement to support execution of procedural language
+         code without having to create a function for it.
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         Support use of function argument names to identify which
          actual arguments match which function parameters. The syntax
          uses AS, for example funcname(value AS arg1, anothervalue AS
-         arg2).</>
+         arg2).
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Fix/improve bytea and boolean support in PL/Python. Data type
+         Fix/improve bytea and boolean support in PL/Python. Data type
          conversion into and out of PL/Python previously went through
          an intermediate string representation, which caused various
          discrepancies especially with bytea and boolean data. This is
-         now fixed by converting the values directly.</>
+         now fixed by converting the values directly.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>PL/Python now accepts Unicode objects where it previously
+         PL/Python now accepts Unicode objects where it previously
          only accepted string objects (for example, as return
          value). Unicode objects are converted to the PostgreSQL
-         server encoding as necessary.</>
+         server encoding as necessary.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Improve error context reporting in PL/Perl, for
-         easier debugging.</>
+         Improve error context reporting in PL/Perl, for
+         easier debugging.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>PL/pgSQL IN parameters now accept value assignments.</>
+         PL/pgSQL IN parameters now accept value assignments.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Convert a Perl array to a PostgreSQL array when returned by
-         set-returning functions as well as non-SRFs.</>
+         Convert a Perl array to a PostgreSQL array when returned by
+         set-returning functions as well as non-SRFs.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Allow cursor commands MOVE FORWARD n, MOVE BACKWARD n, 
-         MOVE FORWARD ALL, MOVE BACKWARD ALL in PL/pgSQL.</>
+         Allow cursor commands MOVE FORWARD n, MOVE BACKWARD n, 
+         MOVE FORWARD ALL, MOVE BACKWARD ALL in PL/pgSQL.
         </para>
        </listitem>
         <listitem>
       <itemizedlist>
        <listitem>
         <para>
-         <emphasis>Multiple improvements in contrib/hstore, including
+         <emphasis>Add \shell and \setshell meta commands to pgbench.</emphasis>
+        </para>
+        <para>
+         <emphasis>\shell command runs an external shell command. \setshell also does
+          the same and sets the result to a variable.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         Multiple improvements in contrib/hstore, including
          raising limits on keys and values, conversions to and from
-         records and arrays, and support for GROUP BY and DISTINCT.</emphasis>
+         records and arrays, and support for GROUP BY and DISTINCT.
         </para>
        </listitem>
         <listitem>
     <sect3>
       <title>Development</title>
       <itemizedlist>
+       <listitem>
+        <para>
+         <emphasis>Refactor ECPG grammar so that it uses the core grammar's
+          unreserved_keyword list, minus a few specific words that have to be
+          treated specially. This de-reserves a number of works in ECPG.</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         <emphasis>Added dynamic cursor names to ECPG.</emphasis>
+        </para>
+       </listitem>
       <listitem>
        <para>
-        <emphasis>Add ECPG function that returns the current transaction status.</>
+        Add ECPG function that returns the current transaction status.
        </para>
       </listitem>
       <listitem>
        <para>
-        <emphasis>Make ECPG more robust against applications freeing strings.</>
+        Make ECPG more robust against applications freeing strings.
        </para>
       </listitem>
       <listitem>
        <para>
-        <emphasis>Make libpq reject non-numeric and out-of-range port numbers with a
-        suitable error message.</emphasis>
+        Make libpq reject non-numeric and out-of-range port numbers with a
+        suitable error message.
        </para>
       </listitem>
         <listitem>
       <itemizedlist>
        <listitem>
         <para>
-         <emphasis>Change the WIN32 API version to be 5.01 (Windows XP), to
-         bring in the proper IPv6 headers in newer SDKs.</>
+         <emphasis>Disable triggering failover with a signal in pg_standby on Windows.
+          It never really worked before anyway.</emphasis>
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Write to the Windows eventlog in UTF-16, converting the
-         message encoding as necessary.</>
+         Change the WIN32 API version to be 5.01 (Windows XP), to
+         bring in the proper IPv6 headers in newer SDKs.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Replace use of the long-deprecated Bonjour API
-         DNSServiceRegistrationCreate with the not-so-deprecated
-         DNSServiceRegister. The new code will fail on Mac OS X
-         releases before 10.3.</>
+         Write to the Windows eventlog in UTF-16, converting the
+         message encoding as necessary.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Install a hopefully-temporary workaround for Mac OS X Snow Leopard
-         readdir() bug.</>
+         Replace use of the long-deprecated Bonjour API
+         DNSServiceRegistrationCreate with the not-so-deprecated
+         DNSServiceRegister. The new code will fail on Mac OS X
+         releases before 10.3.
         </para>
        </listitem>
        <listitem>
       </itemizedlist>
     </sect3>
     <sect3>
-      <title>Source code, build options</title>
+      <title>Source Code, Build Options</title>
       <itemizedlist>
        <listitem>
         <para>
-         <emphasis>Fix inclusions of readline/editline header files so that we
+         <emphasis>configure --enable-thread-safety is now the default (but can still
+          be turned off).</emphasis>
+        </para>
+       </listitem>
+       <listitem>
+        <para>
+         Fix inclusions of readline/editline header files so that we
          only attempt to #include the version of history.h that is in
          the same directory as the readline.h we are using. This
          avoids problems in some scenarios where both readline and
-         editline are installed.</>
+         editline are installed.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Derived files that are shipped in the distribution used to be
+         Derived files that are shipped in the distribution used to be
          built in the source directory even for out-of-tree
          builds. They are now also built in the build tree. This
-         should be more convenient for certain developers' workflows.</>
+         should be more convenient for certain developers' workflows.
         </para>
        </listitem>
        <listitem>
         <para>
-         <emphasis>Translations were updated.</>
+         Translations were updated.
         </para>
        </listitem>
         <listitem>