      * * * * * * * * * * * * * * * * * * * * * * * * * * * *
      *                                                     *
      *  THIS RELEASE STREAM IS OPEN FOR STABILIZATION.     *
      *                                                     *
      * * * * * * * * * * * * * * * * * * * * * * * * * * * *

This file tracks the status of releases in the 1.14.x line.

See http://subversion.apache.org/docs/community-guide/releasing.html#release-stabilization
for details on how release lines and voting work, what kinds of bugs can
delay a release, etc.

Status of 1.14.1:

Candidate changes:
==================

 * r1877310
   Add a test for issue #4711 "invalid xml file produced by svn log --xml
   --verbose --use-merge-history --search".
   Justification:
     Increase test coverage.
   Votes:
     +0: danielsh (with appropriate Skip()/XFail() annotations if needed)

 * r1883355
   Use the APR-1.4+ API for flushing file contents to disk.
   Justification:
     Reduce code duplication between APR and SVN.
   Votes:
     +1: brane

 * r1878379, r1883719, r1883722, r1884610
   Distinguish configure scripts on release mode and non release mode.
   Justification:
     Building process should not be prevented by swig installed in users'
     environment when users use release tar balls.
   Votes:
     +1: futatuki, stsp

 * r1881534 (without CRLF problem)
   Fix issue #4864 "build/ac-macros/macosx.m4: workaround AC_RUN_IFELSE"
   Justification:
     Unblocks cross-compiling SVN.
   Notes:
     Replacement for veto-blocked r1881534 group (see below) without the
     inconsistent line endings that instigated said veto blockage.
   Branch:
     1.14.x-r1881534-no-crlf
   Votes:
     +1: hartmannathan, stsp

Veto-blocked changes:
=====================

 * r1881534, r1883388
   Fix issue #4864 "build/ac-macros/macosx.m4: workaround AC_RUN_IFELSE"
   Justification:
     Unblocks cross-compiling SVN.
   Notes:
     Replacement nomination above (the 1.14.x-r1881534-no-crlf branch)
   Votes:
     +1: hartmannathan
     -1: brane (contains CRLF line endings, needs svn:eol-style + fixup)
               (+1 once that is fixed)

Approved changes:
=================
