[prev in list] [next in list] [prev in thread] [next in thread] 

List:       subversion-commits
Subject:    svn commit: r1829347 [1/7] - in /subversion/branches/better-pristines: ./ build/ build/ac-macros/ co
From:       brane () apache ! org
Date:       2018-04-17 9:19:06
Message-ID: 20180417091910.BFA723A00B7 () svn01-us-west ! apache ! org
[Download RAW message or body]

Author: brane
Date: Tue Apr 17 09:19:05 2018
New Revision: 1829347

URL: http://svn.apache.org/viewvc?rev=1829347&view=rev
Log:
On the better-pristines branch: Sync with trunk up to r1829346.

Added:
    subversion/branches/better-pristines/subversion/libsvn_client/layout.c
      - copied unchanged from r1829346, \
subversion/trunk/subversion/libsvn_client/layout.c  \
subversion/branches/better-pristines/subversion/tests/libsvn_delta/svndiff-stream-test.c
                
      - copied unchanged from r1829346, \
subversion/trunk/subversion/tests/libsvn_delta/svndiff-stream-test.c  \
                subversion/branches/better-pristines/tools/client-side/svnviewspec_test.py
                
      - copied unchanged from r1829346, \
subversion/trunk/tools/client-side/svnviewspec_test.py Modified:
    subversion/branches/better-pristines/   (props changed)
    subversion/branches/better-pristines/CHANGES
    subversion/branches/better-pristines/INSTALL
    subversion/branches/better-pristines/build.conf
    subversion/branches/better-pristines/build/ac-macros/lz4.m4
    subversion/branches/better-pristines/build/ac-macros/swig.m4
    subversion/branches/better-pristines/build/ac-macros/utf8proc.m4
    subversion/branches/better-pristines/build/transform_sql.py
    subversion/branches/better-pristines/configure.ac
    subversion/branches/better-pristines/contrib/client-side/svn_update.pl
    subversion/branches/better-pristines/contrib/client-side/svnmerge/svnmerge-migrate-history.py
  subversion/branches/better-pristines/contrib/client-side/svnmerge/svnmerge.py
    subversion/branches/better-pristines/contrib/hook-scripts/remove-zombie-locks.py
    subversion/branches/better-pristines/notes/EuroOSCON-2005-vc-bof.txt
    subversion/branches/better-pristines/notes/client-configuration
    subversion/branches/better-pristines/notes/diff-optimizations.txt
    subversion/branches/better-pristines/notes/http-and-webdav/webdav-protocol
    subversion/branches/better-pristines/notes/merge-tracking/func-spec.html
    subversion/branches/better-pristines/notes/merge-tracking/requirements.html
    subversion/branches/better-pristines/notes/merge-tracking/summit.html
    subversion/branches/better-pristines/notes/obliterate/obliterate-functional-spec.txt
  subversion/branches/better-pristines/notes/tree-conflicts/design-overview.txt
    subversion/branches/better-pristines/notes/tree-conflicts/detection.txt
    subversion/branches/better-pristines/notes/tree-conflicts/use-cases.txt
    subversion/branches/better-pristines/subversion/bindings/javahl/native/jniwrapper/jni_list.hpp
  subversion/branches/better-pristines/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java
  subversion/branches/better-pristines/subversion/bindings/javahl/tests/org/tigris/subversion/javahl/BasicTests.java
  subversion/branches/better-pristines/subversion/bindings/swig/ruby/test/test_client.rb
  subversion/branches/better-pristines/subversion/include/private/svn_sorts_private.h
    subversion/branches/better-pristines/subversion/include/private/svn_subr_private.h
  subversion/branches/better-pristines/subversion/include/private/svn_wc_private.h
    subversion/branches/better-pristines/subversion/include/svn_client.h
    subversion/branches/better-pristines/subversion/include/svn_fs.h
    subversion/branches/better-pristines/subversion/include/svn_opt.h
    subversion/branches/better-pristines/subversion/include/svn_props.h
    subversion/branches/better-pristines/subversion/include/svn_ra.h
    subversion/branches/better-pristines/subversion/include/svn_ra_svn.h
    subversion/branches/better-pristines/subversion/include/svn_repos.h
    subversion/branches/better-pristines/subversion/include/svn_utf.h
    subversion/branches/better-pristines/subversion/libsvn_client/conflicts.c
    subversion/branches/better-pristines/subversion/libsvn_client/deprecated.c
    subversion/branches/better-pristines/subversion/libsvn_client/diff.c
    subversion/branches/better-pristines/subversion/libsvn_client/merge.c
    subversion/branches/better-pristines/subversion/libsvn_client/patch.c
    subversion/branches/better-pristines/subversion/libsvn_client/repos_diff.c
    subversion/branches/better-pristines/subversion/libsvn_client/shelf.c
    subversion/branches/better-pristines/subversion/libsvn_client/update.c
    subversion/branches/better-pristines/subversion/libsvn_delta/svndiff.c
    subversion/branches/better-pristines/subversion/libsvn_fs_fs/cached_data.c
    subversion/branches/better-pristines/subversion/libsvn_fs_fs/dag.c
    subversion/branches/better-pristines/subversion/libsvn_fs_fs/index.c
    subversion/branches/better-pristines/subversion/libsvn_fs_fs/load-index.c
    subversion/branches/better-pristines/subversion/libsvn_fs_fs/temp_serializer.h
    subversion/branches/better-pristines/subversion/libsvn_ra_serf/commit.c
    subversion/branches/better-pristines/subversion/libsvn_ra_serf/replay.c
    subversion/branches/better-pristines/subversion/libsvn_ra_serf/update.c
    subversion/branches/better-pristines/subversion/libsvn_repos/load-fs-vtable.c
    subversion/branches/better-pristines/subversion/libsvn_repos/log.c
    subversion/branches/better-pristines/subversion/libsvn_repos/repos.c
    subversion/branches/better-pristines/subversion/libsvn_subr/config_win.c
    subversion/branches/better-pristines/subversion/libsvn_subr/deprecated.c
    subversion/branches/better-pristines/subversion/libsvn_subr/io.c
    subversion/branches/better-pristines/subversion/libsvn_subr/opt.c
    subversion/branches/better-pristines/subversion/libsvn_subr/utf.c
    subversion/branches/better-pristines/subversion/libsvn_subr/x509info.c
    subversion/branches/better-pristines/subversion/libsvn_wc/props.c
    subversion/branches/better-pristines/subversion/mod_dav_svn/reports/replay.c
    subversion/branches/better-pristines/subversion/po/de.po
    subversion/branches/better-pristines/subversion/po/sv.po
    subversion/branches/better-pristines/subversion/svn/auth-cmd.c
    subversion/branches/better-pristines/subversion/svn/cl.h
    subversion/branches/better-pristines/subversion/svn/help-cmd.c
    subversion/branches/better-pristines/subversion/svn/info-cmd.c
    subversion/branches/better-pristines/subversion/svn/log-cmd.c
    subversion/branches/better-pristines/subversion/svn/propset-cmd.c
    subversion/branches/better-pristines/subversion/svn/shelf-cmd.c
    subversion/branches/better-pristines/subversion/svn/svn.c
    subversion/branches/better-pristines/subversion/svnadmin/svnadmin.c
    subversion/branches/better-pristines/subversion/svnmucc/svnmucc.c
    subversion/branches/better-pristines/subversion/svnrdump/load_editor.c
    subversion/branches/better-pristines/subversion/svnrdump/svnrdump.c
    subversion/branches/better-pristines/subversion/svnserve/serve.c
    subversion/branches/better-pristines/subversion/svnserve/svnserve.c
    subversion/branches/better-pristines/subversion/svnversion/svnversion.c
    subversion/branches/better-pristines/subversion/tests/cmdline/authz_tests.py
    subversion/branches/better-pristines/subversion/tests/cmdline/commit_tests.py
    subversion/branches/better-pristines/subversion/tests/cmdline/copy_tests.py
    subversion/branches/better-pristines/subversion/tests/cmdline/dav-mirror-autocheck.sh
  subversion/branches/better-pristines/subversion/tests/cmdline/davautocheck.sh
    subversion/branches/better-pristines/subversion/tests/cmdline/depth_tests.py
    subversion/branches/better-pristines/subversion/tests/cmdline/export_tests.py
    subversion/branches/better-pristines/subversion/tests/cmdline/externals_tests.py
    subversion/branches/better-pristines/subversion/tests/cmdline/getopt_tests_data/svn--help_stdout
  subversion/branches/better-pristines/subversion/tests/cmdline/getopt_tests_data/svn_help_stdout
  subversion/branches/better-pristines/subversion/tests/cmdline/log_tests.py
    subversion/branches/better-pristines/subversion/tests/cmdline/merge_authz_tests.py
  subversion/branches/better-pristines/subversion/tests/cmdline/merge_automatic_tests.py
  subversion/branches/better-pristines/subversion/tests/cmdline/merge_reintegrate_tests.py
  subversion/branches/better-pristines/subversion/tests/cmdline/merge_tests.py
    subversion/branches/better-pristines/subversion/tests/cmdline/merge_tree_conflict_tests.py
  subversion/branches/better-pristines/subversion/tests/cmdline/mergeinfo_tests.py
    subversion/branches/better-pristines/subversion/tests/cmdline/mod_dav_svn_tests.py \
(props changed)  subversion/branches/better-pristines/subversion/tests/cmdline/shelf_tests.py
  subversion/branches/better-pristines/subversion/tests/cmdline/svnadmin_tests.py
    subversion/branches/better-pristines/subversion/tests/cmdline/svnauthz_tests.py
    subversion/branches/better-pristines/subversion/tests/cmdline/svndumpfilter_tests.py
  subversion/branches/better-pristines/subversion/tests/cmdline/svnrdump_tests.py
    subversion/branches/better-pristines/subversion/tests/cmdline/svnserveautocheck.sh
  subversion/branches/better-pristines/subversion/tests/cmdline/svntest/mergetrees.py \
(props changed)  subversion/branches/better-pristines/subversion/tests/cmdline/svntest/verify.py
  subversion/branches/better-pristines/subversion/tests/cmdline/svnversion_tests.py
    subversion/branches/better-pristines/subversion/tests/cmdline/update_tests.py
    subversion/branches/better-pristines/subversion/tests/libsvn_delta/   (props \
changed)  subversion/branches/better-pristines/tools/client-side/svn-mergeinfo-normalizer/help-cmd.c
  subversion/branches/better-pristines/tools/client-side/svn-mergeinfo-normalizer/wc_mergeinfo.c
  subversion/branches/better-pristines/tools/client-side/svn-viewspec.py
    subversion/branches/better-pristines/tools/dev/svnmover/svnmover.c
    subversion/branches/better-pristines/tools/dev/svnraisetreeconflict/svnraisetreeconflict.c
  subversion/branches/better-pristines/tools/dev/unix-build/Makefile.svn
    subversion/branches/better-pristines/tools/dev/wc-ng/svn-wc-db-tester.c
    subversion/branches/better-pristines/tools/dist/backport.pl
    subversion/branches/better-pristines/tools/dist/release.py
    subversion/branches/better-pristines/tools/dist/templates/rc-news.ezt
    subversion/branches/better-pristines/tools/dist/templates/rc-release-ann.ezt
    subversion/branches/better-pristines/tools/dist/templates/stable-news.ezt
    subversion/branches/better-pristines/tools/dist/templates/stable-release-ann.ezt

Propchange: subversion/branches/better-pristines/
            ('bugtraq:logregex' removed)

Propchange: subversion/branches/better-pristines/
            ('bugtraq:url' removed)

Propchange: subversion/branches/better-pristines/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Apr 17 09:19:05 2018
@@ -76,7 +76,7 @@
 /subversion/branches/revprop-caching-ng:1620597,1620599
 /subversion/branches/revprop-packing:1143907,1143971,1143997,1144017,1144499,1144568,1146145
  /subversion/branches/shelve:1802592-1815226
-/subversion/branches/shelve-checkpoint:1801593-1801923,1801970,1817320
+/subversion/branches/shelve-checkpoint:1801593-1801923,1801970,1817320,1828508,1828521
  /subversion/branches/subtree-mergeinfo:876734-878766
 /subversion/branches/svn-auth-x509:1603509-1655900
 /subversion/branches/svn-info-detail:1660035-1662618
@@ -99,4 +99,4 @@
 /subversion/branches/verify-at-commit:1462039-1462408
 /subversion/branches/verify-keep-going:1439280-1546110
 /subversion/branches/wc-collate-path:1402685-1480384
-/subversion/trunk:1807118-1826405
+/subversion/trunk:1807118-1829346

Propchange: subversion/branches/better-pristines/
            ('tsvn:logwidthmarker' removed)

Propchange: subversion/branches/better-pristines/
            ('tsvn:projectlanguage' removed)

Propchange: subversion/branches/better-pristines/
            ('webviewer:revision' removed)

Modified: subversion/branches/better-pristines/CHANGES
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/CHANGES?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/CHANGES (original)
+++ subversion/branches/better-pristines/CHANGES Tue Apr 17 09:19:05 2018
@@ -4,7 +4,7 @@ http://svn.apache.org/repos/asf/subversi
 
 
 Version 1.10.0
-(?? ??? 2018, from /branches/1.10.x)
+(13 Apr 2018, from /branches/1.10.x)
 http://svn.apache.org/repos/asf/subversion/tags/1.10.0
 
 See the 1.10 release notes for a more verbose overview of the changes since
@@ -100,6 +100,7 @@ the 1.9 release:  https://subversion.apa
     * Add 'http-compression=auto' client config option as default (r1803899 et al)
     * Speed up processing of mergeinfo (r1802470 et al)
     * Check for invalid 'xt' fields in x509 certs (r1809290)
+    * New '--password-from-stdin' option for 'svn' (r1819093)
   - Client-side bugfixes:
     * svnbench: Honour the '--with-no-revprops' option (r1709593)
     * ra_serf: Fix segfault when running over HTTP v1 (r1766089)
@@ -5724,7 +5725,7 @@ http://svn.apache.org/repos/asf/subversi
       twice as slow and lose all concurrent-client scalability.
 
       This is a temporary fix for a larger design problem.  See issue
-      http://subversion.tigris.org/issues/show_bug.cgi?id=1499
+      https://issues.apache.org/jira/browse/SVN-1499
 
 
 Version 0.28.1

Modified: subversion/branches/better-pristines/INSTALL
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/INSTALL?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/INSTALL (original)
+++ subversion/branches/better-pristines/INSTALL Tue Apr 17 09:19:05 2018
@@ -147,10 +147,11 @@ I.    INTRODUCTION
          for other languages, you need to have those languages
          available at build time.
 
-      * KDELibs, GNOME Keyring  (OPTIONAL for client)
+      * KDE Framework 5, libsecret, GNOME Keyring (OPTIONAL for client)
 
          Subversion contains optional support for storing passwords in
-         KWallet (KDE 4) or GNOME Keyring.
+         KWallet via KDE Framework 5 libraries (preferred) or kdelibs4,
+         and GNOME Keyring via libsecret (preferred) or GNOME APIs.
 
       * libmagic (OPTIONAL)
 
@@ -456,19 +457,22 @@ I.    INTRODUCTION
       and GNOME Keyring. pkg-config is needed to find D-Bus headers and library.
 
 
-      15. Qt 4  (Unix only, OPTIONAL)
+      15. Qt 5 or Qt 4  (Unix only, OPTIONAL)
 
       Qt is a cross-platform application framework. QtCore, QtDBus and QtGui
       modules are required for support for KWallet. pkg-config is needed
       to find Qt headers and libraries.
 
 
-      16. KDELibs 4  (Unix only, OPTIONAL)
+      16. KDE 5 Framework libraries or KDELibs 4  (Unix only, OPTIONAL)
 
       Subversion contains optional support for storing passwords in KWallet.
+      Subversion will look for KF5Wallet, KF5CoreAddons, KF5I18n APIs by default,
+      and needs kf5-config to find them. The KDELibs 4 api is also supported.
       KDELibs contains core KDE libraries. Subversion uses libkdecore and libkdeui
       libraries when support for KWallet is enabled. kde4-config is used to get
       some necessary options. pkg-config, D-Bus and Qt 4 are also required.
+
       If you want to build support for KWallet, then pass the '--with-kwallet'
       option to `configure`. If KDE is installed in a non-standard prefix, then
       use:

Modified: subversion/branches/better-pristines/build.conf
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/build.conf?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/build.conf (original)
+++ subversion/branches/better-pristines/build.conf Tue Apr 17 09:19:05 2018
@@ -1207,6 +1207,14 @@ sources = window-test.c
 install = test
 libs = libsvn_test libsvn_delta libsvn_subr apriconv apr
 
+[svndiff-stream-test]
+description = Test svndiff streams
+type = exe
+path = subversion/tests/libsvn_delta
+sources = svndiff-stream-test.c
+install = test
+libs = libsvn_test libsvn_delta libsvn_subr apriconv apr
+
 # ----------------------------------------------------------------------------
 # Tests for libsvn_client
 
@@ -1580,6 +1588,7 @@ libs = __ALL__
        op-depth-test dirent_uri-test wc-queries-test wc-test
        auth-test
        parse-diff-test x509-test xml-test afl-x509 compress-test
+       svndiff-stream-test
 
 [__MORE__]
 type = project

Modified: subversion/branches/better-pristines/build/ac-macros/lz4.m4
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/build/ac-macros/lz4.m4?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/build/ac-macros/lz4.m4 (original)
+++ subversion/branches/better-pristines/build/ac-macros/lz4.m4 Tue Apr 17 09:19:05 \
2018 @@ -39,6 +39,10 @@ AC_DEFUN(SVN_LZ4,
     ],
     [lz4_prefix=std])
 
+  if test "$lz4_prefix" = "no"; then
+    dnl The user has tried to disable LZ4
+    AC_MSG_ERROR([Subversion requires LZ4])
+  fi
   if test "$lz4_prefix" = "internal"; then
     AC_MSG_NOTICE([using internal lz4])
     AC_DEFINE([SVN_INTERNAL_LZ4], [1],

Modified: subversion/branches/better-pristines/build/ac-macros/swig.m4
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/build/ac-macros/swig.m4?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/build/ac-macros/swig.m4 (original)
+++ subversion/branches/better-pristines/build/ac-macros/swig.m4 Tue Apr 17 09:19:05 \
2018 @@ -98,202 +98,202 @@ AC_DEFUN(SVN_FIND_SWIG,
       AC_MSG_WARN([Detected SWIG version $SWIG_VERSION_RAW])
       AC_MSG_WARN([Subversion requires SWIG >= 1.3.24])
     fi
+  fi
+ 
+  SWIG_PY_COMPILE="none"
+  SWIG_PY_LINK="none"
+  if test "$PYTHON" != "none"; then
+    AC_MSG_NOTICE([Configuring python swig binding])
+
+    AC_CACHE_CHECK([for Python includes], [ac_cv_python_includes],[
+      ac_cv_python_includes="`$PYTHON ${abs_srcdir}/build/get-py-info.py \
--includes`" +    ])
+    SWIG_PY_INCLUDES="\$(SWIG_INCLUDES) $ac_cv_python_includes"
 
-    SWIG_PY_COMPILE="none"
-    SWIG_PY_LINK="none"
-    if test "$PYTHON" != "none"; then
-      AC_MSG_NOTICE([Configuring python swig binding])
-
-      AC_CACHE_CHECK([for Python includes], [ac_cv_python_includes],[
-        ac_cv_python_includes="`$PYTHON ${abs_srcdir}/build/get-py-info.py \
                --includes`"
-      ])
-      SWIG_PY_INCLUDES="\$(SWIG_INCLUDES) $ac_cv_python_includes"
+    if test "$ac_cv_python_includes" = "none"; then
+      AC_MSG_WARN([python bindings cannot be built without distutils module])
+    fi
 
-      if test "$ac_cv_python_includes" = "none"; then
-        AC_MSG_WARN([python bindings cannot be built without distutils module])
+    AC_CACHE_CHECK([for compiling Python extensions], [ac_cv_python_compile],[
+      ac_cv_python_compile="`$PYTHON ${abs_srcdir}/build/get-py-info.py --compile`"
+    ])
+    SWIG_PY_COMPILE="$ac_cv_python_compile $CFLAGS"
+
+    AC_CACHE_CHECK([for linking Python extensions], [ac_cv_python_link],[
+      ac_cv_python_link="`$PYTHON ${abs_srcdir}/build/get-py-info.py --link`"
+    ])
+    SWIG_PY_LINK="$ac_cv_python_link"
+
+    AC_CACHE_CHECK([for linking Python libraries], [ac_cv_python_libs],[
+      ac_cv_python_libs="`$PYTHON ${abs_srcdir}/build/get-py-info.py --libs`"
+    ])
+    SWIG_PY_LIBS="`SVN_REMOVE_STANDARD_LIB_DIRS($ac_cv_python_libs)`"
+
+    dnl Sun Forte adds an extra space before substituting APR_INT64_T_FMT
+    dnl gcc-2.95 adds an extra space after substituting APR_INT64_T_FMT
+    dnl thus the egrep patterns have a + in them.
+    SVN_PYCFMT_SAVE_CPPFLAGS="$CPPFLAGS"
+    CPPFLAGS="$CPPFLAGS $SVN_APR_INCLUDES"
+    AC_CACHE_CHECK([for apr_int64_t Python/C API format string],
+                   [svn_cv_pycfmt_apr_int64_t], [
+      if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then
+        AC_EGREP_CPP([MaTcHtHiS +\"lld\" +EnDeNd],
+                     [#include <apr.h>
+                      MaTcHtHiS APR_INT64_T_FMT EnDeNd],
+                     [svn_cv_pycfmt_apr_int64_t="L"])
       fi
-
-      AC_CACHE_CHECK([for compiling Python extensions], [ac_cv_python_compile],[
-        ac_cv_python_compile="`$PYTHON ${abs_srcdir}/build/get-py-info.py \
                --compile`"
-      ])
-      SWIG_PY_COMPILE="$ac_cv_python_compile $CFLAGS"
-
-      AC_CACHE_CHECK([for linking Python extensions], [ac_cv_python_link],[
-        ac_cv_python_link="`$PYTHON ${abs_srcdir}/build/get-py-info.py --link`"
-      ])
-      SWIG_PY_LINK="$ac_cv_python_link"
-
-      AC_CACHE_CHECK([for linking Python libraries], [ac_cv_python_libs],[
-        ac_cv_python_libs="`$PYTHON ${abs_srcdir}/build/get-py-info.py --libs`"
-      ])
-      SWIG_PY_LIBS="`SVN_REMOVE_STANDARD_LIB_DIRS($ac_cv_python_libs)`"
-
-      dnl Sun Forte adds an extra space before substituting APR_INT64_T_FMT
-      dnl gcc-2.95 adds an extra space after substituting APR_INT64_T_FMT
-      dnl thus the egrep patterns have a + in them.
-      SVN_PYCFMT_SAVE_CPPFLAGS="$CPPFLAGS"
-      CPPFLAGS="$CPPFLAGS $SVN_APR_INCLUDES"
-      AC_CACHE_CHECK([for apr_int64_t Python/C API format string],
-                     [svn_cv_pycfmt_apr_int64_t], [
-        if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then
-          AC_EGREP_CPP([MaTcHtHiS +\"lld\" +EnDeNd],
-                       [#include <apr.h>
-                        MaTcHtHiS APR_INT64_T_FMT EnDeNd],
-                       [svn_cv_pycfmt_apr_int64_t="L"])
-        fi
-        if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then
-          AC_EGREP_CPP([MaTcHtHiS +\"ld\" +EnDeNd],r
-                       [#include <apr.h>
-                        MaTcHtHiS APR_INT64_T_FMT EnDeNd],
-                       [svn_cv_pycfmt_apr_int64_t="l"])
-        fi
-        if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then
-          AC_EGREP_CPP([MaTcHtHiS +\"d\" +EnDeNd],
-                       [#include <apr.h>
-                        MaTcHtHiS APR_INT64_T_FMT EnDeNd],
-                       [svn_cv_pycfmt_apr_int64_t="i"])
-        fi
-      ])
-      CPPFLAGS="$SVN_PYCFMT_SAVE_CPPFLAGS"
       if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then
-        AC_MSG_ERROR([failed to recognize APR_INT64_T_FMT on this platform])
+        AC_EGREP_CPP([MaTcHtHiS +\"ld\" +EnDeNd],r
+                     [#include <apr.h>
+                      MaTcHtHiS APR_INT64_T_FMT EnDeNd],
+                     [svn_cv_pycfmt_apr_int64_t="l"])
       fi
-      AC_DEFINE_UNQUOTED([SVN_APR_INT64_T_PYCFMT],
-                         ["$svn_cv_pycfmt_apr_int64_t"],
-                         [Define to the Python/C API format character suitable]
-                         [ for apr_int64_t])
-    fi
-
-    if test "$PERL" != "none"; then
-      AC_MSG_CHECKING([perl version])
-      dnl Note that the q() bit is there to avoid unbalanced brackets
-      dnl which m4 really doesn't like.
-      PERL_VERSION="`$PERL -e 'q([[); print $]] * 1000000,$/;'`"
-      AC_MSG_RESULT([$PERL_VERSION])
-      if test "$PERL_VERSION" -ge "5008000"; then
-        SWIG_PL_INCLUDES="\$(SWIG_INCLUDES) `$PERL -MExtUtils::Embed -e ccopts`"
-        SWIG_PL_LINK="`$PERL -MExtUtils::Embed -e ldopts`"
-        SWIG_PL_LINK="`SVN_REMOVE_STANDARD_LIB_DIRS($SWIG_PL_LINK)`"
-      else
-        AC_MSG_WARN([perl bindings require perl 5.8.0 or newer.])
+      if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then
+        AC_EGREP_CPP([MaTcHtHiS +\"d\" +EnDeNd],
+                     [#include <apr.h>
+                      MaTcHtHiS APR_INT64_T_FMT EnDeNd],
+                     [svn_cv_pycfmt_apr_int64_t="i"])
       fi
+    ])
+    CPPFLAGS="$SVN_PYCFMT_SAVE_CPPFLAGS"
+    if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then
+      AC_MSG_ERROR([failed to recognize APR_INT64_T_FMT on this platform])
     fi
+    AC_DEFINE_UNQUOTED([SVN_APR_INT64_T_PYCFMT],
+                       ["$svn_cv_pycfmt_apr_int64_t"],
+                       [Define to the Python/C API format character suitable]
+                       [ for apr_int64_t])
+  fi
 
-    SWIG_RB_COMPILE="none"
-    SWIG_RB_LINK="none"
-    if test "$RUBY" != "none"; then
-      rbconfig="$RUBY -rrbconfig -e "
-
-      for var_name in arch archdir CC LDSHARED DLEXT LIBS LIBRUBYARG \
-                      rubyhdrdir rubyarchhdrdir sitedir sitelibdir sitearchdir \
                libdir
-      do
-        rbconfig_tmp=`$rbconfig "print RbConfig::CONFIG@<:@'$var_name'@:>@"`
-        eval "rbconfig_$var_name=\"$rbconfig_tmp\""
-      done
-
-      AC_MSG_NOTICE([Configuring Ruby SWIG binding])
-
-      AC_CACHE_CHECK([for Ruby include path], [svn_cv_ruby_includes],[
-      if test -d "$rbconfig_rubyhdrdir"; then
-        dnl Ruby >=1.9
-        svn_cv_ruby_includes="-I. -I$rbconfig_rubyhdrdir -I$rbconfig_rubyhdrdir/ruby \
                -I$rbconfig_rubyhdrdir/ruby/backward"
-        if test -d "$rbconfig_rubyarchhdrdir"; then
-          dnl Ruby >=2.0
-          svn_cv_ruby_includes="$svn_cv_ruby_includes -I$rbconfig_rubyarchhdrdir"
-        else
-          svn_cv_ruby_includes="$svn_cv_ruby_includes \
                -I$rbconfig_rubyhdrdir/$rbconfig_arch"
-        fi
+  if test "$PERL" != "none"; then
+    AC_MSG_CHECKING([perl version])
+    dnl Note that the q() bit is there to avoid unbalanced brackets
+    dnl which m4 really doesn't like.
+    PERL_VERSION="`$PERL -e 'q([[); print $]] * 1000000,$/;'`"
+    AC_MSG_RESULT([$PERL_VERSION])
+    if test "$PERL_VERSION" -ge "5008000"; then
+      SWIG_PL_INCLUDES="\$(SWIG_INCLUDES) `$PERL -MExtUtils::Embed -e ccopts`"
+      SWIG_PL_LINK="`$PERL -MExtUtils::Embed -e ldopts`"
+      SWIG_PL_LINK="`SVN_REMOVE_STANDARD_LIB_DIRS($SWIG_PL_LINK)`"
+    else
+      AC_MSG_WARN([perl bindings require perl 5.8.0 or newer.])
+    fi
+  fi
+
+  SWIG_RB_COMPILE="none"
+  SWIG_RB_LINK="none"
+  if test "$RUBY" != "none"; then
+    rbconfig="$RUBY -rrbconfig -e "
+
+    for var_name in arch archdir CC LDSHARED DLEXT LIBS LIBRUBYARG \
+                    rubyhdrdir rubyarchhdrdir sitedir sitelibdir sitearchdir libdir
+    do
+      rbconfig_tmp=`$rbconfig "print RbConfig::CONFIG@<:@'$var_name'@:>@"`
+      eval "rbconfig_$var_name=\"$rbconfig_tmp\""
+    done
+
+    AC_MSG_NOTICE([Configuring Ruby SWIG binding])
+
+    AC_CACHE_CHECK([for Ruby include path], [svn_cv_ruby_includes],[
+    if test -d "$rbconfig_rubyhdrdir"; then
+      dnl Ruby >=1.9
+      svn_cv_ruby_includes="-I. -I$rbconfig_rubyhdrdir -I$rbconfig_rubyhdrdir/ruby \
-I$rbconfig_rubyhdrdir/ruby/backward" +      if test -d "$rbconfig_rubyarchhdrdir"; \
then +        dnl Ruby >=2.0
+        svn_cv_ruby_includes="$svn_cv_ruby_includes -I$rbconfig_rubyarchhdrdir"
       else
-        dnl Ruby 1.8
-        svn_cv_ruby_includes="-I. -I$rbconfig_archdir"
+        svn_cv_ruby_includes="$svn_cv_ruby_includes \
-I$rbconfig_rubyhdrdir/$rbconfig_arch"  fi
-      ])
-      SWIG_RB_INCLUDES="\$(SWIG_INCLUDES) $svn_cv_ruby_includes"
+    else
+      dnl Ruby 1.8
+      svn_cv_ruby_includes="-I. -I$rbconfig_archdir"
+    fi
+    ])
+    SWIG_RB_INCLUDES="\$(SWIG_INCLUDES) $svn_cv_ruby_includes"
 
-      AC_CACHE_CHECK([how to compile Ruby extensions], [svn_cv_ruby_compile],[
-        svn_cv_ruby_compile="$rbconfig_CC $CFLAGS"
-      ])
-      SWIG_RB_COMPILE="$svn_cv_ruby_compile"
-      SVN_STRIP_FLAG([SWIG_RB_COMPILE], [-ansi])
-      SVN_STRIP_FLAG([SWIG_RB_COMPILE], [-std=c89])
-      SVN_STRIP_FLAG([SWIG_RB_COMPILE], [-std=c90])
-      dnl FIXME: Check that the compiler for Ruby actually supports this flag
-      SWIG_RB_COMPILE="$SWIG_RB_COMPILE -Wno-int-to-pointer-cast"
-
-      AC_CACHE_CHECK([how to link Ruby extensions], [svn_cv_ruby_link],[
-        svn_cv_ruby_link="`$RUBY -e 'ARGV.shift; print ARGV.join(%q( ))' \
-                             $rbconfig_LDSHARED`"
-        svn_cv_ruby_link="$rbconfig_CC $svn_cv_ruby_link"
-        svn_cv_ruby_link="$svn_cv_ruby_link -shrext .$rbconfig_DLEXT"
-      ])
-      SWIG_RB_LINK="$svn_cv_ruby_link"
-
-      AC_CACHE_CHECK([how to link Ruby libraries], [ac_cv_ruby_libs], [
-        ac_cv_ruby_libs="$rbconfig_LIBRUBYARG $rbconfig_LIBS"
-      ])
-      SWIG_RB_LIBS="`SVN_REMOVE_STANDARD_LIB_DIRS($ac_cv_ruby_libs)`"
-
-      AC_MSG_CHECKING([for rb_errinfo])
-      old_CFLAGS="$CFLAGS"
-      old_LIBS="$LIBS"
-      CFLAGS="$CFLAGS $svn_cv_ruby_includes"
-      SVN_STRIP_FLAG([CFLAGS], [-ansi])
-      SVN_STRIP_FLAG([CFLAGS], [-std=c89])
-      SVN_STRIP_FLAG([CFLAGS], [-std=c90])
-      LIBS="$SWIG_RB_LIBS"
-      AC_LINK_IFELSE([AC_LANG_SOURCE([[
+    AC_CACHE_CHECK([how to compile Ruby extensions], [svn_cv_ruby_compile],[
+      svn_cv_ruby_compile="$rbconfig_CC $CFLAGS"
+    ])
+    SWIG_RB_COMPILE="$svn_cv_ruby_compile"
+    SVN_STRIP_FLAG([SWIG_RB_COMPILE], [-ansi])
+    SVN_STRIP_FLAG([SWIG_RB_COMPILE], [-std=c89])
+    SVN_STRIP_FLAG([SWIG_RB_COMPILE], [-std=c90])
+    dnl FIXME: Check that the compiler for Ruby actually supports this flag
+    SWIG_RB_COMPILE="$SWIG_RB_COMPILE -Wno-int-to-pointer-cast"
+
+    AC_CACHE_CHECK([how to link Ruby extensions], [svn_cv_ruby_link],[
+      svn_cv_ruby_link="`$RUBY -e 'ARGV.shift; print ARGV.join(%q( ))' \
+                           $rbconfig_LDSHARED`"
+      svn_cv_ruby_link="$rbconfig_CC $svn_cv_ruby_link"
+      svn_cv_ruby_link="$svn_cv_ruby_link -shrext .$rbconfig_DLEXT"
+    ])
+    SWIG_RB_LINK="$svn_cv_ruby_link"
+
+    AC_CACHE_CHECK([how to link Ruby libraries], [ac_cv_ruby_libs], [
+      ac_cv_ruby_libs="$rbconfig_LIBRUBYARG $rbconfig_LIBS"
+    ])
+    SWIG_RB_LIBS="`SVN_REMOVE_STANDARD_LIB_DIRS($ac_cv_ruby_libs)`"
+
+    AC_MSG_CHECKING([for rb_errinfo])
+    old_CFLAGS="$CFLAGS"
+    old_LIBS="$LIBS"
+    CFLAGS="$CFLAGS $svn_cv_ruby_includes"
+    SVN_STRIP_FLAG([CFLAGS], [-ansi])
+    SVN_STRIP_FLAG([CFLAGS], [-std=c89])
+    SVN_STRIP_FLAG([CFLAGS], [-std=c90])
+    LIBS="$SWIG_RB_LIBS"
+    AC_LINK_IFELSE([AC_LANG_SOURCE([[
 #include <ruby.h>
 int main()
 {rb_errinfo();}]])], have_rb_errinfo="yes", have_rb_errinfo="no")
-      if test "$have_rb_errinfo" = "yes"; then
-        AC_MSG_RESULT([yes])
-        AC_DEFINE([HAVE_RB_ERRINFO], [1],
-                  [Define to 1 if you have the `rb_errinfo' function.])
-      else
-        AC_MSG_RESULT([no])
-      fi
-      CFLAGS="$old_CFLAGS"
-      LIBS="$old_LIBS"
-
-      AC_CACHE_VAL([svn_cv_ruby_sitedir],[
-        svn_cv_ruby_sitedir="$rbconfig_sitedir"
-      ])
-      AC_ARG_WITH([ruby-sitedir],
-      AS_HELP_STRING([--with-ruby-sitedir=SITEDIR],
-                                 [install Ruby bindings in SITEDIR
-                                  (default is same as ruby's one)]),
-      [svn_ruby_installdir="$withval"],
-      [svn_ruby_installdir="$svn_cv_ruby_sitedir"])
-
-      AC_MSG_CHECKING([where to install Ruby scripts])
-      AC_CACHE_VAL([svn_cv_ruby_sitedir_libsuffix],[
-        svn_cv_ruby_sitedir_libsuffix="`echo "$rbconfig_sitelibdir" | \
-                                          $SED -e "s,^$rbconfig_sitedir,,"`"
-      ])
-      SWIG_RB_SITE_LIB_DIR="${svn_ruby_installdir}${svn_cv_ruby_sitedir_libsuffix}"
-      AC_MSG_RESULT([$SWIG_RB_SITE_LIB_DIR])
-
-      AC_MSG_CHECKING([where to install Ruby extensions])
-      AC_CACHE_VAL([svn_cv_ruby_sitedir_archsuffix],[
-        svn_cv_ruby_sitedir_archsuffix="`echo "$rbconfig_sitearchdir" | \
-                                          $SED -e "s,^$rbconfig_sitedir,,"`"
-      ])
-      SWIG_RB_SITE_ARCH_DIR="${svn_ruby_installdir}${svn_cv_ruby_sitedir_archsuffix}"
                
-      AC_MSG_RESULT([$SWIG_RB_SITE_ARCH_DIR])
-
-      AC_MSG_CHECKING([how to use output level for Ruby bindings tests])
-      AC_CACHE_VAL([svn_cv_ruby_test_verbose],[
-        svn_cv_ruby_test_verbose="normal"
-      ])
-      AC_ARG_WITH([ruby-test-verbose],
-      AS_HELP_STRING([--with-ruby-test-verbose=LEVEL],
-                                 [how to use output level for Ruby bindings tests
-                                  (default is normal)]),
-      [svn_ruby_test_verbose="$withval"],
-                    [svn_ruby_test_verbose="$svn_cv_ruby_test_verbose"])
-        SWIG_RB_TEST_VERBOSE="$svn_ruby_test_verbose"
-        AC_MSG_RESULT([$SWIG_RB_TEST_VERBOSE])
+    if test "$have_rb_errinfo" = "yes"; then
+      AC_MSG_RESULT([yes])
+      AC_DEFINE([HAVE_RB_ERRINFO], [1],
+                [Define to 1 if you have the `rb_errinfo' function.])
+    else
+      AC_MSG_RESULT([no])
     fi
+    CFLAGS="$old_CFLAGS"
+    LIBS="$old_LIBS"
+
+    AC_CACHE_VAL([svn_cv_ruby_sitedir],[
+      svn_cv_ruby_sitedir="$rbconfig_sitedir"
+    ])
+    AC_ARG_WITH([ruby-sitedir],
+    AS_HELP_STRING([--with-ruby-sitedir=SITEDIR],
+                               [install Ruby bindings in SITEDIR
+                                (default is same as ruby's one)]),
+    [svn_ruby_installdir="$withval"],
+    [svn_ruby_installdir="$svn_cv_ruby_sitedir"])
+
+    AC_MSG_CHECKING([where to install Ruby scripts])
+    AC_CACHE_VAL([svn_cv_ruby_sitedir_libsuffix],[
+      svn_cv_ruby_sitedir_libsuffix="`echo "$rbconfig_sitelibdir" | \
+                                        $SED -e "s,^$rbconfig_sitedir,,"`"
+    ])
+    SWIG_RB_SITE_LIB_DIR="${svn_ruby_installdir}${svn_cv_ruby_sitedir_libsuffix}"
+    AC_MSG_RESULT([$SWIG_RB_SITE_LIB_DIR])
+
+    AC_MSG_CHECKING([where to install Ruby extensions])
+    AC_CACHE_VAL([svn_cv_ruby_sitedir_archsuffix],[
+      svn_cv_ruby_sitedir_archsuffix="`echo "$rbconfig_sitearchdir" | \
+                                        $SED -e "s,^$rbconfig_sitedir,,"`"
+    ])
+    SWIG_RB_SITE_ARCH_DIR="${svn_ruby_installdir}${svn_cv_ruby_sitedir_archsuffix}"
+    AC_MSG_RESULT([$SWIG_RB_SITE_ARCH_DIR])
+
+    AC_MSG_CHECKING([how to use output level for Ruby bindings tests])
+    AC_CACHE_VAL([svn_cv_ruby_test_verbose],[
+      svn_cv_ruby_test_verbose="normal"
+    ])
+    AC_ARG_WITH([ruby-test-verbose],
+    AS_HELP_STRING([--with-ruby-test-verbose=LEVEL],
+                               [how to use output level for Ruby bindings tests
+                                (default is normal)]),
+    [svn_ruby_test_verbose="$withval"],
+                  [svn_ruby_test_verbose="$svn_cv_ruby_test_verbose"])
+      SWIG_RB_TEST_VERBOSE="$svn_ruby_test_verbose"
+      AC_MSG_RESULT([$SWIG_RB_TEST_VERBOSE])
   fi
   AC_SUBST(SWIG)
   AC_SUBST(SWIG_PY_INCLUDES)

Modified: subversion/branches/better-pristines/build/ac-macros/utf8proc.m4
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/build/ac-macros/utf8proc.m4?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/build/ac-macros/utf8proc.m4 (original)
+++ subversion/branches/better-pristines/build/ac-macros/utf8proc.m4 Tue Apr 17 \
09:19:05 2018 @@ -39,6 +39,10 @@ AC_DEFUN(SVN_UTF8PROC,
     ],
     [utf8proc_prefix=std])
 
+  if test "$utf8proc_prefix" = "no"; then
+    dnl The user has tried to disable UTF8PROC
+    AC_MSG_ERROR([Subversion requires UTF8PROC])
+  fi
   if test "$utf8proc_prefix" = "internal"; then
     AC_MSG_NOTICE([using internal utf8proc])
     AC_DEFINE([SVN_INTERNAL_UTF8PROC], [1],

Modified: subversion/branches/better-pristines/build/transform_sql.py
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/build/transform_sql.py?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/build/transform_sql.py (original)
+++ subversion/branches/better-pristines/build/transform_sql.py Tue Apr 17 09:19:05 \
2018 @@ -274,7 +274,7 @@ def main(input_filepath, output):
     '/* This file is automatically generated from %s and %s.\n'
     ' * Do not edit this file -- edit the source and rerun gen-make.py */\n'
     '\n'
-    % (filename, token_map_filename))
+    % (filename, os.path.basename(token_map_filename)))
 
   proc = Processor(os.path.dirname(input_filepath), output, var_name, token_map)
   proc.process_file(input)

Modified: subversion/branches/better-pristines/configure.ac
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/configure.ac?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/configure.ac (original)
+++ subversion/branches/better-pristines/configure.ac Tue Apr 17 09:19:05 2018
@@ -1323,7 +1323,7 @@ if test "$RUBY" != "none"; then
     if test -n "$RDOC"; then
       AC_PATH_PROG(RDOC, "$RDOC", none)
     else
-      AC_PATH_PROGS(RUBY, rdoc rdoc1 rdoc1.8 rdoc18 rdoc1.9 rdoc19 rdoc1.9.3 rdoc193 \
rdoc2 rdoc2.0 rdoc20 rdoc2.1 rdoc21 rdoc2.2 rdoc22 rdoc2.3 rdoc23 rdoc2.4 rdoc24, \
none) +      AC_PATH_PROGS(RDOC, rdoc rdoc1 rdoc1.8 rdoc18 rdoc1.9 rdoc19 rdoc1.9.3 \
rdoc193 rdoc2 rdoc2.0 rdoc20 rdoc2.1 rdoc21 rdoc2.2 rdoc22 rdoc2.3 rdoc23 rdoc2.4 \
rdoc24, none)  fi
     AC_CACHE_CHECK([for Ruby major version], [svn_cv_ruby_major],[
     svn_cv_ruby_major="`$RUBY -rrbconfig -e 'print \
RbConfig::CONFIG.fetch(%q(MAJOR))'`"

Modified: subversion/branches/better-pristines/contrib/client-side/svn_update.pl
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/contrib/client-side/svn_update.pl?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/contrib/client-side/svn_update.pl (original)
+++ subversion/branches/better-pristines/contrib/client-side/svn_update.pl Tue Apr 17 \
09:19:05 2018 @@ -31,7 +31,7 @@
 # given file(s) that would require >n minutes, where n is the
 # server's magic timeout (5 min.??), the server will timeout.  This
 # leaves the client/user in an unswell state.  See issue #2048 for
-# details http://subversion.tigris.org/issues/show_bug.cgi?id=2048.
+# details https://issues.apache.org/jira/browse/SVN-2048.
 #
 # One solution is to wrap the 'svn update' command in a script that
 # will perform the update one file at a time.  The problem with

Modified: subversion/branches/better-pristines/contrib/client-side/svnmerge/svnmerge-migrate-history.py
                
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/contrib/client- \
side/svnmerge/svnmerge-migrate-history.py?rev=1829347&r1=1829346&r2=1829347&view=diff \
                ==============================================================================
                
--- subversion/branches/better-pristines/contrib/client-side/svnmerge/svnmerge-migrate-history.py \
                (original)
+++ subversion/branches/better-pristines/contrib/client-side/svnmerge/svnmerge-migrate-history.py \
Tue Apr 17 09:19:05 2018 @@ -259,7 +259,7 @@ class Migrator:
         # Run the final version of the new svn:mergeinfo through the
         # parser to ensure it is in canonical form, e.g. no overlapping
         # or unordered rangelists, see
-        # http://subversion.tigris.org/issues/show_bug.cgi?id=3302.
+        # https://issues.apache.org/jira/browse/SVN-3302.
         mergeinfo = svn.core.svn_mergeinfo_parse(new_mergeinfo_prop_val)
         new_mergeinfo_prop_val = mergeinfo2str(mergeinfo)
 

Modified: subversion/branches/better-pristines/contrib/client-side/svnmerge/svnmerge.py
                
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/contrib/client-side/svnmerge/svnmerge.py?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/contrib/client-side/svnmerge/svnmerge.py \
                (original)
+++ subversion/branches/better-pristines/contrib/client-side/svnmerge/svnmerge.py Tue \
Apr 17 09:19:05 2018 @@ -1367,7 +1367,7 @@ def action_init(target_dir, target_props
         # the copy target is the merge target, then we want to mark as
         # integrated up to the specific rev of the merge target from
         # which the merge source was copied.  (Longer discussion at:
-        # http://subversion.tigris.org/issues/show_bug.cgi?id=2810  )
+        # https://issues.apache.org/jira/browse/SVN-2810  )
         cf_source, cf_rev, copy_committed_in_rev = get_copyfrom(target_dir)
 
         cf_pathid = None

Modified: subversion/branches/better-pristines/contrib/hook-scripts/remove-zombie-locks.py
                
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/contrib/hook-scripts/remove-zombie-locks.py?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/contrib/hook-scripts/remove-zombie-locks.py \
                (original)
+++ subversion/branches/better-pristines/contrib/hook-scripts/remove-zombie-locks.py \
Tue Apr 17 09:19:05 2018 @@ -28,7 +28,7 @@ Usage: remove-zombie-locks.py REPOS-PATH
   locks on files that don't exist in the HEAD revision, removing any found.
 
   This script is a workaround for Subversion issue #2507
-  http://subversion.tigris.org/issues/show_bug.cgi?id=2507
+  https://issues.apache.org/jira/browse/SVN-2507
 
 Examples:
 

Modified: subversion/branches/better-pristines/notes/EuroOSCON-2005-vc-bof.txt
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/notes/EuroOSCON-2005-vc-bof.txt?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/notes/EuroOSCON-2005-vc-bof.txt (original)
+++ subversion/branches/better-pristines/notes/EuroOSCON-2005-vc-bof.txt Tue Apr 17 \
09:19:05 2018 @@ -151,7 +151,7 @@ Comments from projects that switched fro
 
 * The w.c. space penalty is a real issue for large projects.  Disk
   space is not as cheap as we thought, those .svn/text-base/* files
-  hurt.  See http://subversion.tigris.org/issues/show_bug.cgi?id=525.
+  hurt.  See https://issues.apache.org/jira/browse/SVN-525.
   
   [gerv: Random thought - if you can't easily do copy-on-write, could
   you perhaps share text-base files by hard-linking between multiple

Modified: subversion/branches/better-pristines/notes/client-configuration
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/notes/client-configuration?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/notes/client-configuration (original)
+++ subversion/branches/better-pristines/notes/client-configuration Tue Apr 17 \
09:19:05 2018 @@ -59,8 +59,8 @@ dev@s.a.o: "Bikeshed: configuration over
 dev@s.a.o: "Default commandline args";
     http://svn.haxx.se/dev/archive-2010-12/0449.shtml
 Issue 1974: "server-side config which 'broadcasts' to clients";
-    http://subversion.tigris.org/issues/show_bug.cgi?id=1974
+    https://issues.apache.org/jira/browse/SVN-1974
 Issue 3765: "client-configurable default args";
-    http://subversion.tigris.org/issues/show_bug.cgi?id=3765
+    https://issues.apache.org/jira/browse/SVN-3765
 Issue 3769: "Add APIs which allow library consumers to specify configuration \
                options"
-    http://subversion.tigris.org/issues/show_bug.cgi?id=3769
+    https://issues.apache.org/jira/browse/SVN-3769

Modified: subversion/branches/better-pristines/notes/diff-optimizations.txt
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/notes/diff-optimizations.txt?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/notes/diff-optimizations.txt (original)
+++ subversion/branches/better-pristines/notes/diff-optimizations.txt Tue Apr 17 \
09:19:05 2018 @@ -80,7 +80,7 @@ See also issue #1966 (libsvn_diff needs
 References
 ----------
 
-[1] http://subversion.tigris.org/issues/show_bug.cgi?id=1966 (libsvn_diff
+[1] https://issues.apache.org/jira/browse/SVN-1966 (libsvn_diff
 needs 'non-minimal-diff' mode)
 [2] Miller, W., and Myers, E.W. "A File Comparison Program.", Software -
     Practice & Experience 15 (1985), pp. 1025-1040.

Modified: subversion/branches/better-pristines/notes/http-and-webdav/webdav-protocol
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/notes/http-and-webdav/webdav-protocol?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/notes/http-and-webdav/webdav-protocol \
                (original)
+++ subversion/branches/better-pristines/notes/http-and-webdav/webdav-protocol Tue \
Apr 17 09:19:05 2018 @@ -425,7 +425,7 @@ Purpose: Retrieve a record of the change
 
 Target URL: Prior to Subversion 1.8, the target URL was the public
             resource URL of the aforementioned subtree.  Per issue #4287
-            (http://subversion.tigris.org/issues/show_bug.cgi?id=4287),
+            (https://issues.apache.org/jira/browse/SVN-4287),
             it was discovered that this was an incorrect approach, so
             in Subversion 1.8, mod_dav_svn allowed clients to submit
             this report (with a slightly different Request syntax)

Modified: subversion/branches/better-pristines/notes/merge-tracking/func-spec.html
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/notes/merge-tracking/func-spec.html?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/notes/merge-tracking/func-spec.html \
                (original)
+++ subversion/branches/better-pristines/notes/merge-tracking/func-spec.html Tue Apr \
17 09:19:05 2018 @@ -166,7 +166,7 @@ mergeinfo for the merge is set on the de
   was present in the WC despite being outside its parent's 'depth'
   attribute) and could not then re-add a node of the same name in order to
   perform both halves of an incoming replacement.  <a
-  href="http://subversion.tigris.org/issues/show_bug.cgi?id=4164" >Issue
+  href="https://issues.apache.org/jira/browse/SVN-4164" >Issue
   #4164 "inconsistencies in merge handling of adds vs. edits in shallow
   targets"</a> is related.</em></p>
 
@@ -264,7 +264,7 @@ SSRP - Switched subtree's repository par
 
 <h3>Delete</h3>
 
-<p><a href="http://subversion.tigris.org/issues/show_bug.cgi?id=4163"
+<p><a href="https://issues.apache.org/jira/browse/SVN-4163"
   >Issue #4163 "merged deletion of switched subtrees records non-inheritable
   mergeinfo"</a>: If a merge deletes the path SS, the desired behaviour
   is currently undefined and the actual behaviour is that a commit will
@@ -473,7 +473,7 @@ command-line could also produce an outpu
 <p>Recent discussion can be found <a
 href="http://subversion.tigris.org/servlets/ReadMsg?listName=dev&amp;msgNo=128233"
 >here</a>.  Development is tracked <a
-href="http://subversion.tigris.org/issues/show_bug.cgi?id=2820">here</a>.</p>
+href="https://issues.apache.org/jira/browse/SVN-2820">here</a>.</p>
 
 <p>The <a href="requirements.html#change-set-availability">Show
 Changesets Blocked from Merging</a> portion of this feature is
@@ -493,7 +493,7 @@ allow for XML-formatted output (for mach
 <p>Recent discussion can be found <a
 href="http://subversion.tigris.org/servlets/ReadMsg?listName=dev&amp;msgNo=128233"
 >here</a>.  Development is tracked <a
-href="http://subversion.tigris.org/issues/show_bug.cgi?id=2835">here</a>.</p>
+href="https://issues.apache.org/jira/browse/SVN-2835">here</a>.</p>
 
 <p>The <a href="requirements.html#find-changeset">Find Paths
 containing Specific Incarnation of Versioned Resource</a> portion of
@@ -951,7 +951,7 @@ here:</p>
   >Original API proposal</a></li>
 </ul>
 
-<p><a href="http://subversion.tigris.org/issues/show_bug.cgi?id=2022"
+<p><a href="https://issues.apache.org/jira/browse/SVN-2022"
 >Issue #2022</a> is loosely related.</p>
 
 <div class="h3" id="distributable-resolution">

Modified: subversion/branches/better-pristines/notes/merge-tracking/requirements.html
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/notes/merge-tracking/requirements.html?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/notes/merge-tracking/requirements.html \
                (original)
+++ subversion/branches/better-pristines/notes/merge-tracking/requirements.html Tue \
Apr 17 09:19:05 2018 @@ -122,7 +122,7 @@ section).</p>
 
 <p><code>svn merge</code> needs to handle renames better.  This
 requires <a
-href="http://subversion.tigris.org/issues/show_bug.cgi?id=898">true
+href="https://issues.apache.org/jira/browse/SVN-898">true
 rename support</a>.</p>
 
 <p>Edit foo.c on branch A.  Rename foo.c to bar.c on branch B.</p>
@@ -138,7 +138,7 @@ rename support</a>.</p>
 </ol>
 
 <p>Problem #2 stems from the fact that we don't have <a
-href="http://subversion.tigris.org/issues/show_bug.cgi?id=898">true
+href="https://issues.apache.org/jira/browse/SVN-898">true
 renames</a>, just copies (with history) and deletes.  That's not
 fixable without a FS schema change, and (probably) a libsvn_wc
 rewrite.</p>
@@ -372,7 +372,7 @@ some filesystem backend implementation d
 items in the dump as a sort of "soft data" (which would allow them to
 be used for "translating" the merge tracking data at load time, where
 those IDs would be otherwise irrelevant).  See <a
-href="http://subversion.tigris.org/issues/show_bug.cgi?id=1525">issue
+href="https://issues.apache.org/jira/browse/SVN-1525">issue
 1525</a> about user-visible entity IDs.</p>
 
 </div>  <!-- dump-load -->

Modified: subversion/branches/better-pristines/notes/merge-tracking/summit.html
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/notes/merge-tracking/summit.html?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/notes/merge-tracking/summit.html (original)
+++ subversion/branches/better-pristines/notes/merge-tracking/summit.html Tue Apr 17 \
09:19:05 2018 @@ -166,7 +166,7 @@ the average user needs.</p>
   resources in the first place?  Can this be achieved with a
   finer-grained <code>svn switch</code>?  Note: This is related to the
   shared file storage issue in Subversion's own issue tracker,
-  <a href="http://subversion.tigris.org/issues/show_bug.cgi?id=2286"
+  <a href="https://issues.apache.org/jira/browse/SVN-2286"
       >issue&nbsp;#2286</a>.  It was also expressed at the
   <a
   href="http://svn.apache.org/repos/asf/subversion/trunk/notes/EuroOSCON-2005-vc-bof.txt"


Modified: subversion/branches/better-pristines/notes/obliterate/obliterate-functional-spec.txt
                
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/notes/obliterate/obliterate-functional-spec.txt?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/notes/obliterate/obliterate-functional-spec.txt \
                (original)
+++ subversion/branches/better-pristines/notes/obliterate/obliterate-functional-spec.txt \
Tue Apr 17 09:19:05 2018 @@ -1021,7 +1021,7 @@ VII. Appendix
 
     1. Link to external documentation
 
-    [1] Issue 516: http://subversion.tigris.org/issues/show_bug.cgi?id=516
+    [1] Issue 516: https://issues.apache.org/jira/browse/SVN-516
     [2] Karl Fogel's proposal to use the replay API and filters:
         http://svn.haxx.se/dev/archive-2008-04/0687.shtml
     [3] Bob Jenkins's thread about "Auditability": keep log of what has been

Modified: subversion/branches/better-pristines/notes/tree-conflicts/design-overview.txt
                
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/notes/tree-conflicts/design-overview.txt?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/notes/tree-conflicts/design-overview.txt \
                (original)
+++ subversion/branches/better-pristines/notes/tree-conflicts/design-overview.txt Tue \
Apr 17 09:19:05 2018 @@ -246,10 +246,10 @@ Status: incomplete
 
   * Mark as resolved, by command: the basic "svn resolved PARENT" works to some
     extent, but needs attention.
-    Issue #3145 <http://subversion.tigris.org/issues/show_bug.cgi?id=3145>
+    Issue #3145 <https://issues.apache.org/jira/browse/SVN-3145>
 
   * Mark as resolved, interactively: not started.
-    Issue #3144 <http://subversion.tigris.org/issues/show_bug.cgi?id=3144>
+    Issue #3144 <https://issues.apache.org/jira/browse/SVN-3144>
 
 To do:
 

Modified: subversion/branches/better-pristines/notes/tree-conflicts/detection.txt
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/notes/tree-conflicts/detection.txt?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/notes/tree-conflicts/detection.txt \
                (original)
+++ subversion/branches/better-pristines/notes/tree-conflicts/detection.txt Tue Apr \
17 09:19:05 2018 @@ -8,7 +8,7 @@ in use-cases.txt, for both files and dir
 
 Issue reference:
 
-  http://subversion.tigris.org/issues/show_bug.cgi?id=2282
+  https://issues.apache.org/jira/browse/SVN-2282
 
 ==========
 USE CASE 1

Modified: subversion/branches/better-pristines/notes/tree-conflicts/use-cases.txt
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/notes/tree-conflicts/use-cases.txt?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/notes/tree-conflicts/use-cases.txt \
                (original)
+++ subversion/branches/better-pristines/notes/tree-conflicts/use-cases.txt Tue Apr \
17 09:19:05 2018 @@ -3,8 +3,8 @@
               TREE CONFLICTS USE CASES AND DESIRED BEHAVIOURS
 
 
-Issue reference:  http://subversion.tigris.org/issues/show_bug.cgi?id=2282
-                  http://subversion.tigris.org/issues/show_bug.cgi?id=3630
+Issue reference:  https://issues.apache.org/jira/browse/SVN-2282
+                  https://issues.apache.org/jira/browse/SVN-3630
 
 These use cases are based on a scenario paper "SVN move/rename
 problems & suggested improvements" submitted by a corporate Subversion

Modified: subversion/branches/better-pristines/subversion/bindings/javahl/native/jniwrapper/jni_list.hpp
                
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/bind \
ings/javahl/native/jniwrapper/jni_list.hpp?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/subversion/bindings/javahl/native/jniwrapper/jni_list.hpp \
                (original)
+++ subversion/branches/better-pristines/subversion/bindings/javahl/native/jniwrapper/jni_list.hpp \
Tue Apr 17 09:19:05 2018 @@ -173,7 +173,10 @@ public:
     {
       Iterator iter(get_iterator());
       while (iter.has_next())
-        function(T(m_env, NativeT(iter.next())));
+        {
+          ::Java::LocalFrame frame(m_env);
+          function(T(m_env, NativeT(iter.next())));
+        }
       return function;
     }
 };

Modified: subversion/branches/better-pristines/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java
                
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/bind \
ings/javahl/tests/org/apache/subversion/javahl/BasicTests.java?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java \
                (original)
+++ subversion/branches/better-pristines/subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java \
Tue Apr 17 09:19:05 2018 @@ -3930,7 +3930,7 @@ public class BasicTests extends \
SVNTests  /*
       This is currently commented out, because we don't have an XFail method
       for JavaHL.  The resolution is pending the result of issue #3680:
-      http://subversion.tigris.org/issues/show_bug.cgi?id=3680
+      https://issues.apache.org/jira/browse/SVN-3680
 
     public void testObstructionTolerance()
             throws SubversionException, IOException

Modified: subversion/branches/better-pristines/subversion/bindings/javahl/tests/org/tigris/subversion/javahl/BasicTests.java
                
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/bind \
ings/javahl/tests/org/tigris/subversion/javahl/BasicTests.java?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/subversion/bindings/javahl/tests/org/tigris/subversion/javahl/BasicTests.java \
                (original)
+++ subversion/branches/better-pristines/subversion/bindings/javahl/tests/org/tigris/subversion/javahl/BasicTests.java \
Tue Apr 17 09:19:05 2018 @@ -3066,7 +3066,7 @@ public class BasicTests extends \
SVNTests  /*
       This is currently commented out, because we don't have an XFail method
       for JavaHL.  The resolution is pending the result of issue #3680:
-      http://subversion.tigris.org/issues/show_bug.cgi?id=3680
+      https://issues.apache.org/jira/browse/SVN-3680
     public void testObstructionTolerance()
             throws SubversionException, IOException
     {

Modified: subversion/branches/better-pristines/subversion/bindings/swig/ruby/test/test_client.rb
                
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/bindings/swig/ruby/test/test_client.rb?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/subversion/bindings/swig/ruby/test/test_client.rb \
                (original)
+++ subversion/branches/better-pristines/subversion/bindings/swig/ruby/test/test_client.rb \
Tue Apr 17 09:19:05 2018 @@ -1087,7 +1087,7 @@ class SvnClientTest < \
Test::Unit::TestCa  We haven't yet figured out what to expect in the case of an \
obstruction,  but it is no longer an error.  Commenting out this test until that
   decision is made (see issue #3680:
-  http://subversion.tigris.org/issues/show_bug.cgi?id=3680)
+  https://issues.apache.org/jira/browse/SVN-3680)
 
   def test_cleanup
     log = "sample log"

Modified: subversion/branches/better-pristines/subversion/include/private/svn_sorts_private.h
                
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/private/svn_sorts_private.h?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/subversion/include/private/svn_sorts_private.h \
                (original)
+++ subversion/branches/better-pristines/subversion/include/private/svn_sorts_private.h \
Tue Apr 17 09:19:05 2018 @@ -190,7 +190,7 @@ svn_priority_queue__size(svn_priority_qu
 
 /**
  * Returns a reference to the first element in the @a queue.  The queue
- * contents remains unchanged.  If the @a queue is empty, #NULL will be
+ * contents remains unchanged.  If the @a queue is empty, NULL will be
  * returned.
  */
 void *
@@ -212,7 +212,7 @@ svn_priority_queue__pop(svn_priority_que
 
 /**
  * Append the new @a element to the @a queue.  @a element must neither be
- * #NULL nor the first element as returned by #svn_priority_queue__peek.
+ * NULL nor the first element as returned by #svn_priority_queue__peek.
  */
 void
 svn_priority_queue__push(svn_priority_queue__t *queue, const void *element);

Modified: subversion/branches/better-pristines/subversion/include/private/svn_subr_private.h
                
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/private/svn_subr_private.h?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/subversion/include/private/svn_subr_private.h \
                (original)
+++ subversion/branches/better-pristines/subversion/include/private/svn_subr_private.h \
Tue Apr 17 09:19:05 2018 @@ -389,27 +389,27 @@ svn_hash__make(apr_pool_t *pool);
 
 /** Struct that represents a key value pair read from a serialized hash
  * representation.  There are special cases that can also be represented:
- * a #NULL @a key signifies the end of the hash, a #NULL @a val for non-
+ * a NULL @a key signifies the end of the hash, a NULL @a val for non-
  * NULL keys is only possible in incremental mode describes a deletion.
  *
  * @since New in 1.9.
  */
 typedef struct svn_hash__entry_t
 {
-  /** 0-terminated Key.  #NULL if this contains no data at all because we
+  /** 0-terminated Key.  NULL if this contains no data at all because we
    * encountered the end of the hash. */
   char *key;
 
-  /** Length of @a key.  Must be 0 if @a key is #NULL. */
+  /** Length of @a key.  Must be 0 if @a key is NULL. */
   apr_size_t keylen;
 
-  /** 0-terminated value stored with the key.  If this is #NULL for a
+  /** 0-terminated value stored with the key.  If this is NULL for a
    * non-NULL @a key, then this means that the key shall be removed from
-   * the hash (only used in incremental mode).  Must be #NULL if @a key is
-   * #NULL. */
+   * the hash (only used in incremental mode).  Must be NULL if @a key is
+   * NULL. */
   char *val;
 
-  /** Length of @a val.  Must be 0 if @a val is #NULL. */
+  /** Length of @a val.  Must be 0 if @a val is NULL. */
   apr_size_t vallen;
 } svn_hash__entry_t;
 

Modified: subversion/branches/better-pristines/subversion/include/private/svn_wc_private.h
                
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/private/svn_wc_private.h?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/subversion/include/private/svn_wc_private.h \
                (original)
+++ subversion/branches/better-pristines/subversion/include/private/svn_wc_private.h \
Tue Apr 17 09:19:05 2018 @@ -537,7 +537,7 @@ svn_wc__node_get_origin(svn_boolean_t *i
  * If @a base_only is TRUE then only the base node will be examined,
  * otherwise the current base or working node will be examined.
  *
- * If a value is not interesting you can pass #NULL.
+ * If a value is not interesting you can pass NULL.
  *
  * If @a local_abspath is not in the working copy, return
  * @c SVN_ERR_WC_PATH_NOT_FOUND.  Use @a scratch_pool for all temporary

Modified: subversion/branches/better-pristines/subversion/include/svn_client.h
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/svn_client.h?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/subversion/include/svn_client.h (original)
+++ subversion/branches/better-pristines/subversion/include/svn_client.h Tue Apr 17 \
09:19:05 2018 @@ -500,7 +500,7 @@ typedef struct svn_client_commit_item3_t
    * contents in @c incoming_prop_changes->pool, so that it has the
    * same lifetime as this data structure.
    *
-   * See http://subversion.tigris.org/issues/show_bug.cgi?id=806 for a
+   * See https://issues.apache.org/jira/browse/SVN-806 for a
    * description of what would happen if the post-commit process
    * didn't group these changes together with all other changes to the
    * item.
@@ -520,7 +520,7 @@ typedef struct svn_client_commit_item3_t
 
   /**
    * When processing the commit this contains the relative path for
-   * the commit session. #NULL until the commit item is preprocessed.
+   * the commit session. NULL until the commit item is preprocessed.
    * @since New in 1.7.
    */
   const char *session_relpath;
@@ -1572,6 +1572,38 @@ svn_client_switch(svn_revnum_t *result_r
 
 /** @} */
 
+/** Callback for svn_client_layout_list()
+ *
+ * @warning EXPERIMENTAL.
+ */
+typedef svn_error_t * (*svn_client_layout_func_t)(
+                            void *layout_baton,
+                            const char *local_abspath,
+                            const char *repos_root_url,
+                            svn_boolean_t not_present,
+                            svn_boolean_t url_changed,
+                            const char *url,
+                            svn_boolean_t revision_changed,
+                            svn_revnum_t revision,
+                            svn_boolean_t depth_changed,
+                            svn_depth_t depth,
+                            apr_pool_t *scratch_pool);
+
+/**
+ * Describe the layout of the working copy below @a local_abspath to
+ * the callback @a layout.
+ *
+ * @warning EXPERIMENTAL.
+ */
+/*SVN_EXPERIMENTAL*/ /*commented out during development to avoid a warning*/
+svn_error_t *
+svn_client_layout_list(const char *local_abspath,
+                       svn_client_layout_func_t layout,
+                       void *layout_baton,
+                       svn_client_ctx_t *ctx,
+                       apr_pool_t *scratch_pool);
+
+
 /**
  * @defgroup Add Begin versioning files/directories in a working copy.
  *
@@ -3092,9 +3124,10 @@ svn_client_blame(const char *path_or_url
  *
  * Generated headers are encoded using @a header_encoding.
  *
- * Diff output will not be generated for binary files, unless @a
- * ignore_content_type is TRUE, in which case diffs will be shown
- * regardless of the content types.
+ * If either side has an svn:mime-type property that indicates 'binary'
+ * content, then if @a ignore_content_type is set, attempt to produce the
+ * diff in the usual way, otherwise produce a 'GIT binary diff' in git mode
+ * or print a warning message in non-git mode.
  *
  * @a diff_options (an array of <tt>const char *</tt>) is used to pass
  * additional command line options to the diff processes invoked to compare
@@ -4438,7 +4471,7 @@ svn_client_relocate(const char *dir,
  * then do not error, just invoke @a ctx->notify_func2 with @a
  * ctx->notify_baton2, using notification code #svn_wc_notify_skip.
  *
- * @warn The 'revert' command intentionally and permanently loses
+ * @warning The 'revert' command intentionally and permanently loses
  * local modifications.
  *
  * @since New in 1.11.
@@ -4733,7 +4766,7 @@ typedef svn_error_t *(*svn_client_confli
 
 /**
  * Walk all conflicts within the specified @a depth of @a local_abspath.
- * Pass each conflict found during the walk to the @conflict_walk_func
+ * Pass each conflict found during the walk to the @a conflict_walk_func
  * callback, along with @a conflict_walk_func_baton.
  * Use cancellation and notification support provided by client context @a ctx.
  * 
@@ -5031,7 +5064,7 @@ svn_client_conflict_get_repos_info(const
  * Any output parameter may be set to @c NULL by the caller to indicate that
  * a particular piece of information should not be returned.
  *
- * In case of tree conflicts, this path@revision does not necessarily exist
+ * In case of tree conflicts, this "path@revision" does not necessarily exist
  * in the repository, and it does not necessarily represent the incoming
  * change which is responsible for the occurance of the tree conflict.
  * The responsible incoming change is generally located somewhere between
@@ -6880,7 +6913,7 @@ typedef struct svn_client_shelf_t
 {
     /* Public fields (read-only for public use) */
     const char *name;
-    int max_version;
+    int max_version;  /** @deprecated */
 
     /* Private fields */
     const char *wc_root_abspath;
@@ -6901,8 +6934,9 @@ typedef struct svn_client_shelf_version_
   svn_client_shelf_t *shelf;
   apr_time_t mtime;  /** time-stamp of this version */
 
-  /* TODO: these should be Private fields */
+  /* Private fields */
   const char *patch_abspath;  /** abspath of the patch file */
+  int version_number;  /** version number starting from 1 */
 } svn_client_shelf_version_t;
 
 /** Open an existing shelf or create a new shelf.
@@ -6972,37 +7006,72 @@ svn_client_shelf_delete(const char *name
 /** Save the local modifications found by @a paths, @a depth,
  * @a changelists as a new version of @a shelf.
  *
+ * Return the new shelf-version in @a *new_version_p.
+ *
  * @a paths are relative to the CWD, or absolute.
  *
  * If there are no local modifications in the specified locations, do not
- * create a new version of @a shelf, and return SVN_NO_ERROR. In this case
- * @a shelf->max_version after the call is the same as before the call.
+ * create a new version of @a shelf; set @a *new_version_p to null and
+ * return SVN_NO_ERROR. In this case @a shelf->max_version after the call
+ * is the same as before the call.
+ *
+ * @a *new_version_p may be null if that output is not wanted.
  *
  * @since New in 1.X.
  * @warning EXPERIMENTAL.
  */
 SVN_EXPERIMENTAL
 svn_error_t *
+svn_client_shelf_save_new_version2(svn_client_shelf_version_t **new_version_p,
+                                   svn_client_shelf_t *shelf,
+                                   const apr_array_header_t *paths,
+                                   svn_depth_t depth,
+                                   const apr_array_header_t *changelists,
+                                   apr_pool_t *scratch_pool);
+
+/** @deprecated Use svn_client_shelf_save_new_version2() instead.
+ * @warning EXPERIMENTAL.
+ */
+SVN_DEPRECATED
+svn_error_t *
 svn_client_shelf_save_new_version(svn_client_shelf_t *shelf,
                                   const apr_array_header_t *paths,
                                   svn_depth_t depth,
                                   const apr_array_header_t *changelists,
                                   apr_pool_t *scratch_pool);
 
-/** Set the newest version of @a shelf to @a version.
+/** Delete all newer versions of @a shelf newer than @a shelf_version.
+ *
+ * If @a shelf_version is null, delete all versions of @a shelf. (The
+ * shelf will still exist, with any log message and other revprops, but
+ * with no versions in it.)
  *
- * Delete all newer versions.
+ * Leave the shelf's log message and other revprops unchanged.
+ *
+ * Any #svn_client_shelf_version_t object that refers to a deleted version
+ * will become invalid: attempting to use it will give undefined behaviour.
+ * The given @a shelf_version will remain valid.
  *
  * @since New in 1.X.
  * @warning EXPERIMENTAL.
  */
 SVN_EXPERIMENTAL
 svn_error_t *
+svn_client_shelf_delete_newer_versions(svn_client_shelf_t *shelf,
+                                       svn_client_shelf_version_t *shelf_version,
+                                       apr_pool_t *scratch_pool);
+
+/** @deprecated Use svn_client_shelf_delete_newer_versions() instead.
+ * @warning EXPERIMENTAL.
+ */
+SVN_DEPRECATED
+svn_error_t *
 svn_client_shelf_set_current_version(svn_client_shelf_t *shelf,
-                                     int version,
+                                     int version_number,
                                      apr_pool_t *scratch_pool);
 
-/** Open an existing @a shelf_version, or error if it doesn't exist.
+/** Return in @a shelf_version an existing version of @a shelf, given its
+ * @a version_number. Error if that version doesn't exist.
  *
  * There is no need to "close" it after use.
  *
@@ -7013,12 +7082,45 @@ SVN_EXPERIMENTAL
 svn_error_t *
 svn_client_shelf_version_open(svn_client_shelf_version_t **shelf_version_p,
                               svn_client_shelf_t *shelf,
-                              int version,
+                              int version_number,
                               apr_pool_t *result_pool,
                               apr_pool_t *scratch_pool);
 
+/** Return in @a shelf_version the newest version of @a shelf.
+ *
+ * Set @a shelf_version to null if no versions exist.
+ *
+ * @since New in 1.X.
+ * @warning EXPERIMENTAL.
+ */
+SVN_EXPERIMENTAL
+svn_error_t *
+svn_client_shelf_get_newest_version(svn_client_shelf_version_t **shelf_version_p,
+                                    svn_client_shelf_t *shelf,
+                                    apr_pool_t *result_pool,
+                                    apr_pool_t *scratch_pool);
+
+/** Return in @a versions_p an array of (#svn_client_shelf_version_t *)
+ * containing all versions of @a shelf.
+ *
+ * The versions will be in chronological order, oldest to newest.
+ *
+ * @since New in 1.X.
+ * @warning EXPERIMENTAL.
+ */
+SVN_EXPERIMENTAL
+svn_error_t *
+svn_client_shelf_get_all_versions(apr_array_header_t **versions_p,
+                                  svn_client_shelf_t *shelf,
+                                  apr_pool_t *result_pool,
+                                  apr_pool_t *scratch_pool);
+
 /** Apply @a shelf_version to the WC.
  *
+ * If @a dry_run is true, try applying the shelf-version to the WC and
+ * report the full set of notifications about successes and conflicts,
+ * but leave the WC untouched.
+ *
  * @since New in 1.X.
  * @warning EXPERIMENTAL.
  */
@@ -7028,27 +7130,49 @@ svn_client_shelf_apply(svn_client_shelf_
                        svn_boolean_t dry_run,
                        apr_pool_t *scratch_pool);
 
-/** Reverse-apply @a shelf_version to the WC.
+/** Test whether we can successfully apply the patch for @a file_relpath
+ * in @a shelf_version to the WC.
+ *
+ * Try applying the shelf-version to the WC and set @a *conflict_p to
+ * true if any conflict occurs, else to false.
+ *
+ * If @a file_relpath is not found in @a shelf_version, set @a *conflict_p
+ * to FALSE.
+ *
+ * @a file_relpath is relative to the WC root.
+ *
+ * A conflict means the shelf cannot be applied successfully to the WC
+ * because the change to be applied is not compatible with the current
+ * working state of the WC file. Examples are a text conflict, or the
+ * file does not exist or is a directory, or the shelf is trying to add
+ * the file but it already exists, or trying to delete it but it does not
+ * exist.
+ *
+ * Return an error only if something is broken, e.g. unable to read data
+ * from the specified shelf-version.
+ *
+ * Leave the WC untouched.
  *
  * @since New in 1.X.
  * @warning EXPERIMENTAL.
  */
 SVN_EXPERIMENTAL
 svn_error_t *
-svn_client_shelf_unapply(svn_client_shelf_version_t *shelf_version,
-                         svn_boolean_t dry_run,
-                         apr_pool_t *scratch_pool);
+svn_client_shelf_test_apply_file(svn_boolean_t *conflict_p,
+                                 svn_client_shelf_version_t *shelf_version,
+                                 const char *file_relpath,
+                                 apr_pool_t *scratch_pool);
 
-/** Set @a *patch_abspath to the patch file path of @a shelf_version.
+/** Reverse-apply @a shelf_version to the WC.
  *
  * @since New in 1.X.
  * @warning EXPERIMENTAL.
  */
 SVN_EXPERIMENTAL
 svn_error_t *
-svn_client_shelf_get_patch_abspath(const char **patch_abspath,
-                                   svn_client_shelf_version_t *shelf_version,
-                                   apr_pool_t *scratch_pool);
+svn_client_shelf_unapply(svn_client_shelf_version_t *shelf_version,
+                         svn_boolean_t dry_run,
+                         apr_pool_t *scratch_pool);
 
 /** Output @a shelf_version as a patch to @a outstream.
  *

Modified: subversion/branches/better-pristines/subversion/include/svn_fs.h
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/svn_fs.h?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/subversion/include/svn_fs.h (original)
+++ subversion/branches/better-pristines/subversion/include/svn_fs.h Tue Apr 17 \
09:19:05 2018 @@ -1744,7 +1744,7 @@ svn_fs_paths_changed3(svn_fs_path_change
  *
  * Use @a pool for all allocations, including the hash and its values.
  *
- * @note Retrieving the #node_rev_id element of #svn_fs_path_change2_t may
+ * @note Retrieving the #svn_fs_path_change2_t.node_rev_id element may
  *       be expensive in some FS backends.
  *
  * @since New in 1.6.
@@ -2492,7 +2492,7 @@ svn_fs_file_md5_checksum(unsigned char d
  * svn_fs_file_contents().  In that case, the result of reading from
  * @a *contents is undefined.
  *
- * ### @todo kff: I am worried about lifetime issues with this pool vs
+ * @todo kff: I am worried about lifetime issues with this pool vs
  * the trail created farther down the call stack.  Trace this function
  * to investigate...
  */

Modified: subversion/branches/better-pristines/subversion/include/svn_opt.h
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/svn_opt.h?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/subversion/include/svn_opt.h (original)
+++ subversion/branches/better-pristines/subversion/include/svn_opt.h Tue Apr 17 \
09:19:05 2018 @@ -113,6 +113,7 @@ typedef struct svn_opt_subcommand_desc3_
 /** One element of a subcommand dispatch table.
  *
  * @since New in 1.4.
+ * @deprecated Provided for backward compatibility with the 1.10 API.
  */
 typedef struct svn_opt_subcommand_desc2_t
 {
@@ -186,7 +187,9 @@ svn_opt_get_canonical_subcommand3(const
  * version of the subcommand description table.
  *
  * @since New in 1.4.
+ * @deprecated Provided for backward compatibility with the 1.10 API.
  */
+SVN_DEPRECATED
 const svn_opt_subcommand_desc2_t *
 svn_opt_get_canonical_subcommand2(const svn_opt_subcommand_desc2_t *table,
                                   const char *cmd_name);
@@ -229,7 +232,9 @@ svn_opt_get_option_from_code3(int code,
  * version of the subcommand description table.
  *
  * @since New in 1.4.
+ * @deprecated Provided for backward compatibility with the 1.10 API.
  */
+SVN_DEPRECATED
 const apr_getopt_option_t *
 svn_opt_get_option_from_code2(int code,
                               const apr_getopt_option_t *option_table,
@@ -268,7 +273,9 @@ svn_opt_subcommand_takes_option4(const s
  * version of the subcommand description table.
  *
  * @since New in 1.5.
+ * @deprecated Provided for backward compatibility with the 1.10 API.
  */
+SVN_DEPRECATED
 svn_boolean_t
 svn_opt_subcommand_takes_option3(const svn_opt_subcommand_desc2_t *command,
                                  int option_code,
@@ -304,7 +311,7 @@ svn_opt_subcommand_takes_option(const sv
 /**
  * Print a generic (not command-specific) usage message to @a stream.
  *
- * ### @todo Why is @a stream a stdio file instead of an svn stream?
+ * @todo Why is @a stream a stdio file instead of an svn stream?
  *
  * If @a header is non-NULL, print @a header followed by a newline.  Then
  * loop over @a cmd_table printing the usage for each command (getting
@@ -328,7 +335,9 @@ svn_opt_print_generic_help3(const char *
  * version of the subcommand description table.
  *
  * @since New in 1.4.
+ * @deprecated Provided for backward compatibility with the 1.10 API.
  */
+SVN_DEPRECATED
 void
 svn_opt_print_generic_help2(const char *header,
                             const svn_opt_subcommand_desc2_t *cmd_table,
@@ -394,7 +403,9 @@ svn_opt_subcommand_help4(const char *sub
  * version of the subcommand description table.
  *
  * @since New in 1.5.
+ * @deprecated Provided for backward compatibility with the 1.10 API.
  */
+SVN_DEPRECATED
 void
 svn_opt_subcommand_help3(const char *subcommand,
                          const svn_opt_subcommand_desc2_t *table,
@@ -817,7 +828,9 @@ svn_opt_print_help5(apr_getopt_t *os,
  * version of the subcommand description table.
  *
  * @since New in 1.8.
+ * @deprecated Provided for backward compatibility with the 1.10 API.
  */
+SVN_DEPRECATED
 svn_error_t *
 svn_opt_print_help4(apr_getopt_t *os,
                     const char *pgm_name,

Modified: subversion/branches/better-pristines/subversion/include/svn_props.h
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/svn_props.h?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/subversion/include/svn_props.h (original)
+++ subversion/branches/better-pristines/subversion/include/svn_props.h Tue Apr 17 \
09:19:05 2018 @@ -415,19 +415,26 @@ svn_prop_name_is_valid(const char *prop_
 /** Describes external items to check out into this directory.
  *
  * The format is a series of lines, each in the following format:
- *   [-r REV] URL[@PEG] LOCALPATH
+ *
+ *     [-r REV] URL[@PEG] LOCALPATH
+ *
  * LOCALPATH is relative to the directory having this property.
  * REV pins the external to revision REV.
  * URL may be a full URL or a relative URL starting with one of:
- *   ../  to the parent directory of the extracted external
- *   ^/   to the repository root
- *   /    to the server root
- *   //   to the URL scheme
+ *
+ *     ../  to the parent directory of the extracted external
+ *     ^/   to the repository root
+ *     /    to the server root
+ *     //   to the URL scheme
+ *
  * The following format is supported for interoperability with
  * Subversion 1.4 and earlier clients:
- *   LOCALPATH [-r PEG] URL
+ *
+ *     LOCALPATH [-r PEG] URL
+ *
  * The ambiguous format 'relative_path relative_path' is taken as
  * 'relative_url relative_path' with peg revision support.
+ *
  * Lines starting with a '#' character are ignored.
  */
 #define SVN_PROP_EXTERNALS  SVN_PROP_PREFIX "externals"

Modified: subversion/branches/better-pristines/subversion/include/svn_ra.h
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/svn_ra.h?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/subversion/include/svn_ra.h (original)
+++ subversion/branches/better-pristines/subversion/include/svn_ra.h Tue Apr 17 \
09:19:05 2018 @@ -555,9 +555,9 @@ typedef struct svn_ra_callbacks2_t
 
   /** Fetch working copy properties.
    *
-   *<pre> ### we might have a problem if the RA layer ever wants a property
-   * ### that corresponds to a different revision of the file than
-   * ### what is in the WC. we'll cross that bridge one day...</pre>
+   * @note we might have a problem if the RA layer ever wants a property
+   *       that corresponds to a different revision of the file than
+   *       what is in the WC. we'll cross that bridge one day...
    */
   svn_ra_get_wc_prop_func_t get_wc_prop;
 
@@ -1857,7 +1857,7 @@ svn_ra_get_location_segments(svn_ra_sess
  * @note Prior to Subversion 1.9, this function may request delta handlers
  * from @a handler even for empty text deltas.  Starting with 1.9, the
  * delta handler / baton return arguments passed to @a handler will be
- * #NULL unless there is an actual difference in the file contents between
+ * NULL unless there is an actual difference in the file contents between
  * the current and the previous call.
  *
  * @since New in 1.5.

Modified: subversion/branches/better-pristines/subversion/include/svn_ra_svn.h
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/svn_ra_svn.h?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/subversion/include/svn_ra_svn.h (original)
+++ subversion/branches/better-pristines/subversion/include/svn_ra_svn.h Tue Apr 17 \
09:19:05 2018 @@ -179,7 +179,9 @@ typedef svn_error_t *(*svn_ra_svn_edit_c
  *
  * Either @a sock or @a in_stream/@a out_stream must be set, not both.
  * @a compression_level specifies the desired network data compression
- * level (zlib/lz4) from 0 (no compression) to 9 (best but slowest).
+ * level from 0 (no compression) to 9 (best but slowest). The effect
+ * of the parameter depends on the compression algorithm; for example,
+ * it is used verbatim by zlib/deflate but ignored by LZ4.
  *
  * If @a zero_copy_limit is not 0, cached file contents smaller than the
  * given limit may be sent directly to the network socket.  Otherwise,

Modified: subversion/branches/better-pristines/subversion/include/svn_repos.h
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/svn_repos.h?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/subversion/include/svn_repos.h (original)
+++ subversion/branches/better-pristines/subversion/include/svn_repos.h Tue Apr 17 \
09:19:05 2018 @@ -861,7 +861,7 @@ typedef svn_error_t *(*svn_repos_freeze_
  * @since New in 1.8.
  */
 svn_error_t *
-svn_repos_freeze(apr_array_header_t *paths,
+svn_repos_freeze(const apr_array_header_t *paths,
                  svn_repos_freeze_func_t freeze_func,
                  void *freeze_baton,
                  apr_pool_t *pool);
@@ -2404,7 +2404,7 @@ svn_repos_fs_get_mergeinfo(svn_mergeinfo
  * @note Prior to Subversion 1.9, this function may request delta handlers
  * from @a handler even for empty text deltas.  Starting with 1.9, the
  * delta handler / baton return arguments passed to @a handler will be
- * #NULL unless there is an actual difference in the file contents between
+ * NULL unless there is an actual difference in the file contents between
  * the current and the previous call.
  *
  * @since New in 1.5.
@@ -3803,7 +3803,7 @@ typedef struct svn_repos_parse_fns3_t
  *
  * @since New in 1.8.
 
- * @since Starting in 1.10, @a parse_fns may contain #NULL pointers for
+ * @since Starting in 1.10, @a parse_fns may contain NULL pointers for
  * those callbacks that the caller is not interested in.
  */
 svn_error_t *

Modified: subversion/branches/better-pristines/subversion/include/svn_utf.h
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/include/svn_utf.h?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/subversion/include/svn_utf.h (original)
+++ subversion/branches/better-pristines/subversion/include/svn_utf.h Tue Apr 17 \
09:19:05 2018 @@ -212,7 +212,7 @@ svn_utf_cstring_from_utf8_ex(const char
  * so when we can detect that at configure time, things will change.
  * Also, this should (?) be moved to apr/apu eventually.
  *
- * See http://subversion.tigris.org/issues/show_bug.cgi?id=807 for
+ * See https://issues.apache.org/jira/browse/SVN-807 for
  * details.
  */
 const char *

Modified: subversion/branches/better-pristines/subversion/libsvn_client/conflicts.c
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/libsvn_client/conflicts.c?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/subversion/libsvn_client/conflicts.c \
                (original)
+++ subversion/branches/better-pristines/subversion/libsvn_client/conflicts.c Tue Apr \
17 09:19:05 2018 @@ -255,7 +255,7 @@ struct repos_move_info {
   /* The revision in which this move was committed. */
   svn_revnum_t rev;
 
-  /* The author who commited the revision in which this move was committed. */
+  /* The author who committed the revision in which this move was committed. */
   const char *rev_author;
 
   /* The repository relpath the node was moved from in this revision. */
@@ -5944,8 +5944,11 @@ describe_incoming_edit_list_modified_rev
             {
               if (i == edits->nelts - (max_revs_to_display / 2))
                   s = apr_psprintf(result_pool,
-                                   _("%s\n [%d revisions omitted for "
-                                     "brevity],\n"),
+                                   Q_("%s\n [%d revision omitted for "
+                                      "brevity],\n",
+                                      "%s\n [%d revisions omitted for "
+                                      "brevity],\n",
+                                      num_revs_to_skip),
                                    s, num_revs_to_skip);
 
               s = apr_psprintf(result_pool, _("%s r%ld by %s%s"), s,

Modified: subversion/branches/better-pristines/subversion/libsvn_client/deprecated.c
URL: http://svn.apache.org/viewvc/subversion/branches/better-pristines/subversion/libsvn_client/deprecated.c?rev=1829347&r1=1829346&r2=1829347&view=diff
 ==============================================================================
--- subversion/branches/better-pristines/subversion/libsvn_client/deprecated.c \
                (original)
+++ subversion/branches/better-pristines/subversion/libsvn_client/deprecated.c Tue \
Apr 17 09:19:05 2018 @@ -1726,7 +1726,7 @@ svn_client_log(const apr_array_header_t
    * we just invoke the receiver manually on a hand-constructed log
    * message for revision 0.
    *
-   * See also http://subversion.tigris.org/issues/show_bug.cgi?id=692.
+   * See also https://issues.apache.org/jira/browse/SVN-692.
    */
   if (err && (err->apr_err == SVN_ERR_FS_NO_SUCH_REVISION)
       && (start->kind == svn_opt_revision_head)


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic