Server IP : 85.214.239.14 / Your IP : 3.144.237.52 Web Server : Apache/2.4.62 (Debian) System : Linux h2886529.stratoserver.net 4.9.0 #1 SMP Tue Jan 9 19:45:01 MSK 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.18 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : OFF | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /proc/2/root/usr/share/doc/subversion/ |
Upload File : |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Apache Subversion 1.12 Release Notes</title> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <base href="https://subversion.apache.org"/> <style type="text/css"> @import url("/style/site.css"); </style> </head> <body> <div id="site-banner"> <div style="float: right; width: 379px; height: 80px; font-style: italic; text-align: center;"> <a href="https://www.apache.org/" ><img src="/images/apache-logo.png" alt="Apache Software Foundation" /></a> </div> <a href="/"> <img src="/images/svn-square.jpg" alt="[S]" style="width: 80px; height: 80px;"/> <img src="/images/svn-name-banner.jpg" alt="Subversion" style="width: 320px; height: 80px;"/></a> </div> <!-- #site-banner --> <div id="site-nav"> <div id="site-nav-menu"> <ul> <li>About Subversion <ul> <li><a href="/news.html">News</a></li> <li><a href="/features.html">Features</a></li> <li><a href="/docs/">Documentation</a></li> <li><a href="/faq.html">FAQ</a></li> <li><a href="/roadmap.html">Roadmap</a></li> <li><a href="/security/">Security</a></li> <li><a href="/quick-start">Quick Start</a></li> </ul> </li> <li>Getting Subversion <ul> <!-- A parameter in the form '?update=YYYYMMDDhhmm' may be appended to 'download.cgi' to only offer mirrors that have synced after the specified date. We update it after a security release when the email announcement is less than 24 hours after the upload to /dist/release, in order to prevent offering mirrors that don't carry the just-released artifacts. --> <li><a href="/packages.html">Binary Packages</a></li> <li><a href="/download.cgi">Source Download</a></li> <li><a href="/docs/release-notes/">Release Notes</a></li> </ul> </li> <li>Community <ul> <li><a href="/mailing-lists.html">Mailing Lists</a></li> <li><a href="/reporting-issues.html">Reporting Issues</a></li> <li><a href="https://cwiki.apache.org/confluence/display/SVN/">Wiki</a></li> <li><a href="/contributing.html">Getting Involved</a></li> <li><a href="/source-code.html">Source Code</a></li> </ul> </li> <li>About the <acronym title="Apache Software Foundation">ASF</acronym> <ul> <li><a class="linkaway" href="https://www.apache.org/licenses/">Licenses</a></li> <li><a class="linkaway" href="https://www.apache.org/foundation/sponsorship.html">Donate</a></li> <li><a class="linkaway" href="https://www.apache.org/foundation/thanks.html">Thanks</a></li> </ul> </li> </ul> </div> <!-- #site-nav-menu --> <div id="site-search"> <form action="https://www.google.com/search" method="get" style="margin-top: 10px; margin-bottom: 10px; display: inline;"> <div style="display: inline;"> <input value="subversion.apache.org" name="sitesearch" type="hidden" /> <input name="q" id="query" type="text" placeholder="Search..." style="width: 10em" /> <input name="Search" value="Go" type="submit"/> </div> </form> </div> <!-- #site-search --> <div id="site-svnbook-block"> <p>Read the official Subversion documentation <a href="http://svnbook.org" class="linkaway">online</a>!</p> <p><a href="http://svnbook.org/" ><img src="/images/svnbook-cover.jpg" alt="Version Control With Subversion"/></a></p> </div> <!-- #site-svnbook-block --> <div id="copyright"> <p>Copyright © 2018 <a href="https://www.apache.org/">The Apache Software Foundation</a>, Licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0" >Apache License, Version 2.0</a>. Apache, Apache Subversion, and the Apache feather logo are trademarks of The Apache Software Foundation. Subversion and the Apache Subversion logo are registered trademarks of The Apache Software Foundation.</p> </div> <!-- #copyright --> </div> <!-- #site-nav --> <div id="site-content"> <div id="site-notice"> <!-- PUT SITE-WIDE NOTICES HERE AS NECESSARY --> </div> <!-- #site-notice --> <!-- **************** BEGIN CONTENT ***************** --> <!-- ************************************************ --> <!-- Sections start with "###" are either templates --> <!-- or TODOs. Remove them before release. --> <!-- ************************************************ --> <h1 style="text-align: center">Apache Subversion 1.12 Release Notes</h1> <div class="notice"> <p>Subversion 1.12 is a 6-month regular release. See <a href="#non-lts-release">Subversion 1.12 is a Regular Release</a> below.</p> </div> <div class="h2" id="news"> <h2>What's New in Apache Subversion 1.12 <a class="sectionlink" href="#news" title="Link to this section">¶</a> </h2> <ul> <li><a href="#shelving" >Improved Shelving (experimental)</a></li> <li><a href="#checkpointing" >Improved Commit Checkpointing (experimental)</a></li> <li><a href="#conflict-resolver" >Improvements to the Conflict Resolver</a></li> <li><a href="#enhancements" >Many enhancements and bug fixes</a></li> <li><a href="#issues" >Known issues in the release</a></li> <!-- <li><a href="#troubleshooting" >Troubleshooting issues specific to this release</a></li> --> </ul> <p>Apache Subversion 1.12 is a superset of all previous Subversion releases, and is as of the time of its release considered the current "best" release. Any feature or bugfix in 1.0.x through 1.11.x is also in 1.12, but 1.12 contains features and bugfixes not present in any earlier release. The new features will eventually be documented in a 1.12 version of the free Subversion book (<a href="http://svnbook.red-bean.com/" >svnbook.red-bean.com</a>).</p> <p>This page describes only major changes. For a complete list of changes, see the 1.12 section of the <a href="https://svn.apache.org/repos/asf/subversion/trunk/CHANGES" >CHANGES</a> file.</p> </div> <!-- news --> <div class="h2" id="compatibility"> <h2>Compatibility Concerns <a class="sectionlink" href="#compatibility" title="Link to this section">¶</a> </h2> <p>Older clients and servers interoperate transparently with 1.12 servers and clients. However, some of the new 1.12 features may not be available unless both client and server are the latest version. There are also cases where a new feature will work but will run less efficiently if the client is new and the server old.</p> <p>There is <strong>no need</strong> to <a href="http://svnbook.red-bean.com/en/1.8/svn.reposadmin.maint.html#svn.reposadmin.maint.migrate.svnadmin" >dump and reload</a> your repositories. Subversion 1.12 servers can read and write to repositories created by earlier versions. To upgrade an existing server installation, just install the newest libraries and binaries on top of the older ones.</p> <p>Subversion 1.12 maintains API/ABI compatibility with earlier releases, by only adding new functions, never removing old ones. A program written to any previous 1.x API can both compile and run using 1.12 libraries. However, a program written for 1.12 cannot necessarily compile or run against older libraries.</p> <p>There may be limited cases where the behavior of old APIs has been slightly modified from previous releases. These are cases where edge cases of the functionality has been deemed buggy, and therefore improved or removed. Please consult the <a href="https://svn.apache.org/repos/asf/subversion/trunk/notes/api-errata/1.12/" >API errata</a> for more detailed information on what these APIs are and what impact these changes may have.</p> <div class="h3" id="new-feature-compatibility-table"> <h3>New Feature Compatibility Table <a class="sectionlink" href="#new-feature-compatibility-table" title="Link to this section">¶</a> </h3> <table border="1"> <tr> <th>New Feature</th> <th>Minimum Client<sup>1</sup></th> <th>Minimum Server</th> <th>Minimum Repository</th> <th>Notes</th></tr> <tr> <td> <a href="#shelving">Shelving (experimental)</a> </td> <td>1.12</td> <td>any</td> <td>any</td> <td>shelves created by 1.10 are not compatible—see <a href="1.11#shelving-transition">the 1.11 transition notes</a></td></tr> <tr> <td> <a href="#checkpointing">Commit checkpointing (experimental)</a> </td> <td>1.12</td> <td>any</td> <td>any</td> <td></td></tr> <tr> <td colspan="5"><sup>1</sup>Reminder: when using the <tt>file://</tt> repository access method, the Subversion program is both the client <em>and</em> the server.</td></tr> </table> </div> <!-- new-feature-compatibility-table --> <div class="h3" id="wc-upgrade"> <h3>Upgrading the Working Copy <a class="sectionlink" href="#wc-upgrade" title="Link to this section">¶</a> </h3> <p>Subversion 1.12 uses the same working copy format as Subversion 1.8 through 1.11.</p> <p>Before using Subversion 1.12 with an existing Subversion 1.7 or older working copy, users will be required to run the <tt>svn upgrade</tt> command to upgrade working copy metadata to the new format. This command may take a while in some cases, and for some users, it may be more practical to simply checkout a new working copy.</p> <p><strong>Note:</strong> Subversion 1.12 cannot upgrade working copies that a 1.6 client would have refused to operate upon before an <tt>svn cleanup</tt> was run (with a 1.6 client). In other words, before upgrading to 1.8 or newer, a 1.6 or older client must be used to run <tt>svn cleanup</tt> on all 1.6 or older working copies that require cleanup. Likewise, Subversion 1.12 cannot upgrade corrupt working copies. Unfixable problems can arise from missing or corrupt meta-data inside <tt>.svn</tt> directories. Such damage to the working copy is permanent, and cannot be fixed even if <tt>svn cleanup</tt> is run prior to the upgrade.</p> <p>If your working copy does not upgrade cleanly, please check out a new one. </p> </div> <!-- wc-upgrade --> <!-- <div class="h3" id="compat-misc"> <h3>Miscellaneous Compatibility Notes <a class="sectionlink" href="#compat-misc" title="Link to this section">¶</a> </h3> <p>There are some additional specific areas where changes made in this release might necessitate further adjustment by administrators or users. We'll cover those in this section.</p> </div> --> <!-- compat-misc --> </div> <!-- compatibility --> <div class="h2" id="new-features"> <h2>New Features <a class="sectionlink" href="#new-features" title="Link to this section">¶</a> </h2> </div> <!-- new-features --> <div class="h2" id="enhancements"> <h2>Enhancements and Bugfixes <a class="sectionlink" href="#enhancements" title="Link to this section">¶</a> </h2> <!-- Don't need to highlight every bugfix, just major ones which aren't in any patch release. --> <div class="h3" id="cmdline"> <h3>Command-line client improvements (<em>client</em>) <a class="sectionlink" href="#cmdline" title="Link to this section">¶</a> </h3> <div class="h4 experimental-feature" id="shelving"> <h4>Improved Shelving (experimental) <a class="sectionlink" href="#shelving" title="Link to this section">¶</a> </h4> <p>Shelving (<a href="https://issues.apache.org/jira/browse/SVN-3625">issue #3625</a>), first introduced in Subversion 1.10, is improved in 1.12 to handle more kinds of changes more robustly.</p> <div class="notice"> <p><span style="color: red"><b>WARNING:</b></span> This feature is designated "EXPERIMENTAL" in 1.12. It is being released in an early form while development continues. It is expected to change significantly during and after the 1.12.x series. There is no promise of backward compatibility while it remains experimental.</p> </div> <!-- ... --> </div> <!-- shelving --> <div class="h4 experimental-feature" id="checkpointing"> <h4>Commit checkpointing (experimental) <a class="sectionlink" href="#checkpointing" title="Link to this section">¶</a> </h4> <p>Commit checkpointing (<a href="https://issues.apache.org/jira/browse/SVN-3626">issue #3626</a>), first introduced in Subversion 1.11, is improved in 1.12 to handle more kinds of changes more robustly.</p> <div class="notice"> <p><span style="color: red"><b>WARNING:</b></span> This feature is designated "EXPERIMENTAL" in 1.12. It is being released in an early form while development continues. It is expected to change significantly during and after the 1.12.x series. There is no promise of backward compatibility while it remains experimental.</p> </div> <!-- ... --> </div> <!-- checkpointing --> <div class="h4" id="conflict-resolver"> <h4>Improvements to the interactive conflict resolver <a class="sectionlink" href="#conflict-resolver" title="Link to this section">¶</a> </h4> <p>The interactive conflict resolver now supports some cases where items were moved to disparate locations. Support for unversioned items in the working copy has been improved as well. The table below lists the newly supported cases and available resolution options for each.</p> <table border="1"> <tr> <th>local change</th> <th>incoming change</th> <th>operation</th> <th>resolution options</th> </tr> <tr> <td><ul> <li>move file</li> </ul></td> <td><ul> <li>move file</li> </ul></td> <td>update, merge</td> <td><ul> <li>merge<br>(applies textual changes only and leaves the tree structure of the working copy as it is) <li>move and merge<br>(changes the file's location in the working copy to match that of the merge source before merging changes) </ul></td> </tr> <tr> <td><ul> <li>move directory</li> </ul></td> <td><ul> <li>move directory</li> </ul></td> <td>merge</td> <td><ul> <li>merge<br>(applies changes to the corresponding directory and leaves the tree structure of the working copy as it is) <li>move and merge<br>(changes the directory's location in the working copy to match that of the merge source before merging changes) </ul></td> <tr> <td><ul> <li>unversioned file</li> </ul></td> <td><ul> <li>add file</li> </ul></td> <td>update, switch </td> <td><ul> <li>merge<br>(merges the unversioned file with the incoming file) </ul></td> </tr> <tr> <td><ul> <li>unversioned directory</li> </ul></td> <td><ul> <li>add directory</li> </ul></td> <td>update, switch </td> <td><ul> <li>merge<br>(re-adds directory to working copy but leaves any on-disk files as they were) </ul></td> </tr> </table> <p>During <tt>svn update</tt>, the deletion of a directory which contains unversioned items but is otherwise unmodified no longer causes a tree conflict. This avoids tree conflicts caused by software build artifacts in the working copy, for example.</p> <p>Several bugs have been fixed in the conflict resolver, including a case where text conflicts were created with the incoming changes (theirs) and local changes (mine) swapped within text conflict markers. Which caused unexpected results when the <tt>svn resolve</tt> command was used with the <tt>--accept theirs</tt> or <tt>--accept mine</tt> options.</p> <p>Support for unversioned items and fixes for conflict resolver bugs found during the development of Subversion 1.12 have been backported to the <a href="1.10.html">Subversion 1.10</a> and <a href="1.11.html">Subversion 1.11</a> release series as well.</p> </div> <!-- conflict-resolver --> </div> <!-- cmdline --> <div class="h3" id="server-side-improvements"> <h3>Server-side improvements <a class="sectionlink" href="#server-side-improvements" title="Link to this section">¶</a> </h3> <div class="h4" id="authz-groups"> <p>Subversion servers will now ignore empty group definitions in their path-based authorization rules. The <tt>svnauthz</tt> command will print a warning if it detects empty group definitions.</p> </div> <!-- authz-groups --> </div> <!-- server-side-improvements --> <div class="h3" id="client-server-improvements"> <h3>Client- and server-side improvements <a class="sectionlink" href="#client-server-improvements" title="Link to this section">¶</a> </h3> <div class="h4" id="plaintext-passwords-disabled"> <p>On Unix-like systems, client-side storage of passwords in plaintext on disk is now disabled by default <em>at compile-time</em>. Password caching mechanisms based on Gnome Keyring, Kwallet, or GPG-Agent, are recommended instead.</p> <p>This change does not affect Windows or Mac OS platforms, where passwords have always been stored in an encrypted representation.</p> </div> <!-- plaintext-passwords-disabled --> <div class="h4" id="repos-wc-copy"> <p>Behaviour of copy operations with a repository source and a working copy target has been improved:</p> <ul> <li>Existing parent directories are now handled correctly.</li> <li>Peg and operative revisions are now handled correctly (see <a href="https://issues.apache.org/jira/browse/SVN-4785">issue #4785</a> for details).</li> </ul> </div> <!-- repos-wc-copy --> <div class="h4" id="svn-list"> <p>The <tt>svn list</tt> command now avoids truncation of long author names by dynamically adjusting the width of columns displayed.</p> <p>The <tt>svn list</tt> command now supports a <tt>--human-readable</tt> (<tt>-H</tt>) option which will display sizes in human-readable units (Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes and Petabytes).</p> </div> <!-- svn-list --> <div class="h4" id="svn-info"> <p>The <tt>svn info</tt> command can now display the size of files in the repository. The file size is only displayed if the target of <tt>svn info</tt> is a file URL.</p> </div> <!-- svn-info --> <div class="h4" id="svn-cleanup"> <p>The <tt>svn cleanup</tt> command, when asked to remove unversioned or ignored items, will now remove directories even if they are write-protected.</p> </div> <!-- svn-cleanup --> </div> <!-- client-server-improvements --> <div class="h3" id="apis"> <h3>API changes, improvements and language bindings (<em>client and server</em>) <a class="sectionlink" href="#apis" title="Link to this section">¶</a> </h3> </div> <!-- apis --> </div> <!-- enhancements --> <div class="h2" id="issues"> <h2>Known issues in the release <a class="sectionlink" href="#issues" title="Link to this section">¶</a> </h2> <!-- <p>There are no known issues specific to this release at the moment.</p> --> <p>There are some known issues in the Subversion 1.12 releases. These may be fixed in later 1.12.x releases.</p> <div class="h3" id="ruby-swig-issue-602"> <h3>Ruby bindings require swig 3.0.9 <a class="sectionlink" href="#ruby-swig-issue-602" title="Link to this section">¶</a> </h3> <p><em>This section only affects those who build Subversion from a working copy. If you build Subversion from a tarball or zip file, you may skip this section.</em></p> <p>The Ruby bindings are known not to build with swig version 3.0.8 (and only that version) due to <a href="https://github.com/swig/swig/issues/602">swig issue #602</a>. We recommend to use swig 3.0.9 or newer.</p> <p>The failure is detected by the test suite. To test whether your version of swig is affected, run <tt>make check-swig-rb</tt>. (Some distros might have backported the swig patch into their swig-3.0.8 packages.)</p> <p>The Perl and Python bindings are not affected.</p> </div> <!-- ruby-swig-issue-602 --> <div class="h3" id="apr-1-7"> <h3>Subversion 1.12.0 fails to compile against APR 1.7.0 <a class="sectionlink" href="#apr-1-7" title="Link to this section">¶</a> </h3> <p>Subversion 1.12.0 and older cannot be built out of the box with APR-1.7.0. We expect to fix this problem in Subversion 1.12.1. This problem affects the <a href="1.10.html">Subversion 1.10</a> and <a href="1.11.html">Subversion 1.11</a> release series as well.</p> </p> </div> <!-- apr-1-7 --> </div> <!-- issues --> <!-- (This section only makes sense when there are some issues listed in it.) <div class="h2" id="troubleshooting"> <h2>Troubleshooting issues specific to this release <a class="sectionlink" href="#troubleshooting" title="Link to this section">¶</a> </h2> <p>Subversion 1.12 introduces new features and makes use of new techniques which can trigger problems not encountered in previous versions. In contrast to known issues, things listed here are not due to some bug or issue in Subversion itself and therefore cannot be fixed with a new patch release. This section lists all known problems and provides instructions to solve them, if they occur.</p> <p>There are no known issues specific to this release at the moment.</p> </div> < ! - - troubleshooting - - > --> <div class="h2" id="non-lts-release"> <h2>Subversion 1.12 is a Regular Release <a class="sectionlink" href="#non-lts-release" title="Link to this section">¶</a> </h2> <p>Subversion 1.12 is one of the new 6-month regular releases with an emphasis on introducing new features more quickly and a shorter support period. It will be supported for 6 months, and then will be superseded by the next regular release.</p> <p>Subversion 1.11, the previous regular release, is no longer supported.</p> <p>Subversion 1.9 and 1.10 are still supported, now being regarded as long-term support (LTS) releases. The next LTS release is expected to be numbered 1.14, to be released two years after 1.10.</p> <p>For further details see <a href="/roadmap.html#release-planning">How We Plan Releases</a>.</p> </div> <!-- non-lts-release --> <!-- ***************** END CONTENT ****************** --> </div> <!-- #site-content --> </body> </html>