Author: julianfoad
Date: Thu Nov 16 10:32:27 2017
New Revision: 1815432

URL: http://svn.apache.org/viewvc?rev=1815432&view=rev
Log:
On the 'shelve-checkpoint' branch: catch up with 
^/subversion/branches/shelve@1815226.

Modified:
    subversion/branches/shelve-checkpoint/   (props changed)
    subversion/branches/shelve-checkpoint/BRANCH-README
    subversion/branches/shelve-checkpoint/Makefile.in
    subversion/branches/shelve-checkpoint/build.conf
    
subversion/branches/shelve-checkpoint/build/generator/gen_win_dependencies.py
    subversion/branches/shelve-checkpoint/build/run_tests.py
    
subversion/branches/shelve-checkpoint/subversion/include/private/svn_wc_private.h
    subversion/branches/shelve-checkpoint/subversion/include/svn_client.h
    subversion/branches/shelve-checkpoint/subversion/libsvn_client/shelve.c
    subversion/branches/shelve-checkpoint/subversion/libsvn_fs_fs/transaction.c
    subversion/branches/shelve-checkpoint/subversion/libsvn_repos/reporter.c
    subversion/branches/shelve-checkpoint/subversion/svn/shelve-cmd.c
    
subversion/branches/shelve-checkpoint/subversion/tests/cmdline/basic_tests.py
    
subversion/branches/shelve-checkpoint/subversion/tests/cmdline/svnadmin_tests.py
    
subversion/branches/shelve-checkpoint/subversion/tests/cmdline/svntest/main.py
    subversion/branches/shelve-checkpoint/tools/client-side/bash_completion
    subversion/branches/shelve-checkpoint/win-tests.py

Propchange: subversion/branches/shelve-checkpoint/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Nov 16 10:32:27 2017
@@ -75,7 +75,7 @@
 /subversion/branches/revprop-cache:1298521-1326293
 /subversion/branches/revprop-caching-ng:1620597,1620599
 
/subversion/branches/revprop-packing:1143907,1143971,1143997,1144017,1144499,1144568,1146145
-/subversion/branches/shelve:1802592-1813857
+/subversion/branches/shelve:1802592-1815226
 /subversion/branches/subtree-mergeinfo:876734-878766
 /subversion/branches/svn-auth-x509:1603509-1655900
 /subversion/branches/svn-info-detail:1660035-1662618
@@ -98,4 +98,4 @@
 /subversion/branches/verify-at-commit:1462039-1462408
 /subversion/branches/verify-keep-going:1439280-1546110
 /subversion/branches/wc-collate-path:1402685-1480384
-/subversion/trunk:1801593-1813856
+/subversion/trunk:1801593-1815224

Modified: subversion/branches/shelve-checkpoint/BRANCH-README
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/BRANCH-README?rev=1815432&r1=1815431&r2=1815432&view=diff
==============================================================================
--- subversion/branches/shelve-checkpoint/BRANCH-README (original)
+++ subversion/branches/shelve-checkpoint/BRANCH-README Thu Nov 16 10:32:27 2017
@@ -19,9 +19,8 @@ although the actual copy history of the
 
 Both of the Checkpointing branches therefore include Shelving functionality.
 
-Initially this is prototyping, to explore the general shape of the design and
-user interface. As such, it does not take care over details of APIs and error
-handling and so on.
+This branch is now at the point of being ready for user testing, and should
+be up to Subversion coding standards, in preparation for merging to trunk.
 
 References:
    [0] dev@ thread "[RFC] Shelving and Checkpointing", J Foad, 2017-07-10.

Modified: subversion/branches/shelve-checkpoint/Makefile.in
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/Makefile.in?rev=1815432&r1=1815431&r2=1815432&view=diff
==============================================================================
--- subversion/branches/shelve-checkpoint/Makefile.in (original)
+++ subversion/branches/shelve-checkpoint/Makefile.in Thu Nov 16 10:32:27 2017
@@ -595,6 +595,9 @@ check: bin @TRANSFORM_LIBTOOL_SCRIPTS@ $
          if test "$(FSFS_COMPRESSION)" != ""; then                          \
            flags="--fsfs-compression $(FSFS_COMPRESSION) $$flags";          \
          fi;                                                                \
+         if test "$(FSFS_DIR_DELTIFICATION)" != ""; then                    \
+           flags="--fsfs-dir-deltification $(FSFS_DIR_DELTIFICATION) $$flags";\
+         fi;                                                                \
          LD_LIBRARY_PATH='$(auth_plugin_dirs):$(LD_LIBRARY_PATH)'           \
          $(PYTHON) $(top_srcdir)/build/run_tests.py                         \
                    --config-file $(top_srcdir)/subversion/tests/tests.conf  \

Modified: subversion/branches/shelve-checkpoint/build.conf
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/build.conf?rev=1815432&r1=1815431&r2=1815432&view=diff
==============================================================================
--- subversion/branches/shelve-checkpoint/build.conf (original)
+++ subversion/branches/shelve-checkpoint/build.conf Thu Nov 16 10:32:27 2017
@@ -1471,8 +1471,7 @@ external-lib = $(SVN_SASL_LIBS)
 
 [openssl]
 type = lib
-external-lib = $(SVN_OPENSSL_LIBS)
-msvc-libs = ssleay32.lib libeay32.lib
+external-lib = $(SVN_OPENSSL_LIBS) $(SVN_LIBCRYPTO_LIBS)
 
 [intl]
 type = lib

Modified: 
subversion/branches/shelve-checkpoint/build/generator/gen_win_dependencies.py
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/build/generator/gen_win_dependencies.py?rev=1815432&r1=1815431&r2=1815432&view=diff
==============================================================================
--- 
subversion/branches/shelve-checkpoint/build/generator/gen_win_dependencies.py 
(original)
+++ 
subversion/branches/shelve-checkpoint/build/generator/gen_win_dependencies.py 
Thu Nov 16 10:32:27 2017
@@ -878,16 +878,26 @@ class GenDependenciesBase(gen_base.Gener
                int(vermatch.group(4)))
     openssl_version = vermatch.group(1)
 
+    libcrypto = 'libcrypto'
+    libssl = 'libssl'
+    versuffix = '-%d_%d' % version[0:2]
+    if version < (1, 1, 0):
+      libcrypto = 'libeay32'
+      libssl = 'ssleay32'
+      versuffix = ''
+
     self._libraries['openssl'] = SVNCommonLibrary('openssl', inc_dir, lib_dir,
-                                                  'ssleay32.lib',
+                                                  '%s.lib' % (libssl,),
                                                   openssl_version,
-                                                  dll_name='ssleay32.dll',
+                                                  dll_name='%s%s.dll' %
+                                                      (libssl, versuffix),
                                                   dll_dir=bin_dir)
 
-    self._libraries['libeay32'] = SVNCommonLibrary('openssl', inc_dir, lib_dir,
-                                                    'libeay32.lib',
+    self._libraries['libcrypto'] = SVNCommonLibrary('openssl', inc_dir, 
lib_dir,
+                                                    '%s.lib' % (libcrypto,),
                                                     openssl_version,
-                                                    dll_name='libeay32.dll',
+                                                    dll_name='%s%s.dll' %
+                                                      (libcrypto, versuffix),
                                                     dll_dir=bin_dir)
 
   def _find_perl(self, show_warnings):

Modified: subversion/branches/shelve-checkpoint/build/run_tests.py
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/build/run_tests.py?rev=1815432&r1=1815431&r2=1815432&view=diff
==============================================================================
--- subversion/branches/shelve-checkpoint/build/run_tests.py (original)
+++ subversion/branches/shelve-checkpoint/build/run_tests.py Thu Nov 16 
10:32:27 2017
@@ -33,7 +33,7 @@
             [--httpd-version=<version>] [--httpd-whitelist=<version>]
             [--config-file=<file>] [--ssl-cert=<file>]
             [--exclusive-wc-locks] [--memcached-server=<url:port>]
-            [--fsfs-compression=<type>]
+            [--fsfs-compression=<type>] [--fsfs-dir-deltification=<true|false>]
             <abs_srcdir> <abs_builddir>
             <prog ...>
 
@@ -278,6 +278,8 @@ class TestHarness:
       cmdline.append('--memcached-server=%s' % self.opts.memcached_server)
     if self.opts.fsfs_compression is not None:
       cmdline.append('--fsfs-compression=%s' % self.opts.fsfs_compression)
+    if self.opts.fsfs_dir_deltification is not None:
+      cmdline.append('--fsfs-dir-deltification=%s' % 
self.opts.fsfs_dir_deltification)
 
     self.py_test_cmdline = cmdline
 
@@ -1028,6 +1030,8 @@ def create_parser():
                     help='Use memcached server at specified URL (FSFS only)')
   parser.add_option('--fsfs-compression', action='store', type='str',
                     help='Set compression type (for fsfs)')
+  parser.add_option('--fsfs-dir-deltification', action='store', type='str',
+                    help='Set directory deltification option (for fsfs)')
 
   parser.set_defaults(set_log_level=None)
   return parser

Modified: 
subversion/branches/shelve-checkpoint/subversion/include/private/svn_wc_private.h
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/subversion/include/private/svn_wc_private.h?rev=1815432&r1=1815431&r2=1815432&view=diff
==============================================================================
--- 
subversion/branches/shelve-checkpoint/subversion/include/private/svn_wc_private.h
 (original)
+++ 
subversion/branches/shelve-checkpoint/subversion/include/private/svn_wc_private.h
 Thu Nov 16 10:32:27 2017
@@ -348,7 +348,12 @@ svn_wc__get_wcroot(const char **wcroot_a
                    apr_pool_t *result_pool,
                    apr_pool_t *scratch_pool);
 
-/*  */
+/** Set @a *dir to the abspath of the directory in which shelved patches
+ * are stored, which is inside the WC's administrative directory, and ensure
+ * the directory exists.
+ *
+ * @a local_abspath is any path in the WC, and is used to find the WC root.
+ */
 svn_error_t *
 svn_wc__get_shelves_dir(char **dir,
                         svn_wc_context_t *wc_ctx,

Modified: subversion/branches/shelve-checkpoint/subversion/include/svn_client.h
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/subversion/include/svn_client.h?rev=1815432&r1=1815431&r2=1815432&view=diff
==============================================================================
--- subversion/branches/shelve-checkpoint/subversion/include/svn_client.h 
(original)
+++ subversion/branches/shelve-checkpoint/subversion/include/svn_client.h Thu 
Nov 16 10:32:27 2017
@@ -6786,7 +6786,13 @@ svn_client_checkpoint_list(apr_array_hea
  * @{
  */
 
-/**
+/** Shelve a change.
+ *
+ * Shelve as @a name the local modifications found by @a paths, @a depth,
+ * @a changelists. Revert the shelved change from the WC unless @a keep_local
+ * is true.
+ *
+ * If @a dry_run is true, don't actually do it.
  *
  * @since New in 1.11.
  */
@@ -6800,7 +6806,12 @@ svn_client_shelve(const char *name,
                   svn_client_ctx_t *ctx,
                   apr_pool_t *pool);
 
-/**
+/** Unshelve the shelved change @a name.
+ *
+ * @a local_abspath is any path in the WC and is used to find the WC root.
+ * Rename the shelved patch to add a '.bak' extension unless @a keep is true.
+ *
+ * If @a dry_run is true, don't actually do it.
  *
  * @since New in 1.11.
  */
@@ -6812,7 +6823,11 @@ svn_client_unshelve(const char *name,
                     svn_client_ctx_t *ctx,
                     apr_pool_t *pool);
 
-/**
+/** Delete the shelved patch @a name.
+ *
+ * @a local_abspath is any path in the WC and is used to find the WC root.
+ *
+ * If @a dry_run is true, don't actually do it.
  *
  * @since New in 1.11.
  */
@@ -6823,21 +6838,23 @@ svn_client_shelves_delete(const char *na
                           svn_client_ctx_t *ctx,
                           apr_pool_t *pool);
 
-/**
+/** Information about a shelved patch.
  *
  * @since New in 1.11.
  */
 typedef struct svn_client_shelved_patch_info_t
 {
-  const char *message;
-  const char *patch_path;
-  svn_io_dirent2_t *dirent;
-  apr_time_t mtime;
+  const char *message;  /* first line of log message */
+  const char *patch_path;  /* abspath of the patch file */
+  svn_io_dirent2_t *dirent;  /* info about the patch file */
+  apr_time_t mtime;  /* a copy of dirent->mtime */
 } svn_client_shelved_patch_info_t;
 
 /** Set *shelved_patches to a hash, keyed by patch name, of pointers to
  * @c svn_client_shelved_patch_info_t structures.
  *
+ * @a local_abspath is any path in the WC and is used to find the WC root.
+ *
  * @since New in 1.11.
  */
 svn_error_t *
@@ -6855,6 +6872,8 @@ svn_client_shelves_list(apr_hash_t **she
  * ### Initial implementation isn't O(1) fast -- it just calls
  *     svn_client_shelves_list().
  *
+ * @a local_abspath is any path in the WC and is used to find the WC root.
+ *
  * @since New in 1.11.
  */
 svn_error_t *
@@ -6863,8 +6882,9 @@ svn_client_shelves_any(svn_boolean_t *an
                        svn_client_ctx_t *ctx,
                        apr_pool_t *scratch_pool);
 
-/** Write local changes to a patch file at @a name.
+/** Write local changes to a patch file for shelved change @a name.
  *
+ * @a message: An optional log message.
  * @a wc_root_abspath: The WC root dir.
  * @a overwrite_existing: If a file at @a patch_abspath exists, overwrite it.
  * @a paths, @a depth, @a changelists: The selection of local paths to diff.
@@ -6880,7 +6900,7 @@ svn_client_shelf_write_patch(const char
                              svn_client_ctx_t *ctx,
                              apr_pool_t *scratch_pool);
 
-/** Apply the patch file at @a name to the WC.
+/** Apply the patch file for shelved change @a name to the WC.
  *
  * @a wc_root_abspath: The WC root dir.
  * @a reverse: Apply the patch in reverse.
@@ -6894,7 +6914,7 @@ svn_client_shelf_apply_patch(const char
                              svn_client_ctx_t *ctx,
                              apr_pool_t *scratch_pool);
 
-/** Delete the patch file at @a name.
+/** Delete the patch file for shelved change @a name.
  *
  * @a wc_root_abspath: The WC root dir.
  */

Modified: 
subversion/branches/shelve-checkpoint/subversion/libsvn_client/shelve.c
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/subversion/libsvn_client/shelve.c?rev=1815432&r1=1815431&r2=1815432&view=diff
==============================================================================
--- subversion/branches/shelve-checkpoint/subversion/libsvn_client/shelve.c 
(original)
+++ subversion/branches/shelve-checkpoint/subversion/libsvn_client/shelve.c Thu 
Nov 16 10:32:27 2017
@@ -40,7 +40,7 @@
 #include "svn_private_config.h"
 
 
-/*  */
+/* Throw an error if NAME does not conform to our naming rules. */
 static svn_error_t *
 validate_name(const char *name,
               apr_pool_t *scratch_pool)
@@ -52,7 +52,9 @@ validate_name(const char *name,
   return SVN_NO_ERROR;
 }
 
-/*  */
+/* Set *PATCH_ABSPATH to the abspath of the patch file for shelved change
+ * NAME, no matter whether it exists.
+ */
 static svn_error_t *
 get_patch_abspath(char **patch_abspath,
                   const char *name,
@@ -341,7 +343,9 @@ svn_client_shelves_delete(const char *na
   return SVN_NO_ERROR;
 }
 
-/* ### Currently just reads the first line.
+/* Set *LOGMSG to the log message stored in the file PATCH_ABSPATH.
+ *
+ * ### Currently just reads the first line.
  */
 static svn_error_t *
 read_logmsg_from_patch(const char **logmsg,

Modified: 
subversion/branches/shelve-checkpoint/subversion/libsvn_fs_fs/transaction.c
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/subversion/libsvn_fs_fs/transaction.c?rev=1815432&r1=1815431&r2=1815432&view=diff
==============================================================================
--- subversion/branches/shelve-checkpoint/subversion/libsvn_fs_fs/transaction.c 
(original)
+++ subversion/branches/shelve-checkpoint/subversion/libsvn_fs_fs/transaction.c 
Thu Nov 16 10:32:27 2017
@@ -2697,6 +2697,8 @@ svn_fs_fs__set_proplist(svn_fs_t *fs,
     {
       noderev->prop_rep = apr_pcalloc(pool, sizeof(*noderev->prop_rep));
       noderev->prop_rep->txn_id = *svn_fs_fs__id_txn_id(noderev->id);
+      SVN_ERR(set_uniquifier(fs, noderev->prop_rep, pool));
+      noderev->prop_rep->revision = SVN_INVALID_REVNUM;
       SVN_ERR(svn_fs_fs__put_node_revision(fs, noderev->id, noderev, FALSE,
                                            pool));
     }
@@ -3259,7 +3261,8 @@ write_final_rev(const svn_fs_id_t **new_
                              ? SVN_FS_FS__ITEM_TYPE_DIR_PROPS
                              : SVN_FS_FS__ITEM_TYPE_FILE_PROPS;
       SVN_ERR(svn_fs_fs__get_proplist(&proplist, fs, noderev, pool));
-
+      noderev->prop_rep->txn_id = *txn_id;
+      SVN_ERR(set_uniquifier(fs, noderev->prop_rep, pool));
       noderev->prop_rep->revision = rev;
 
       if (ffd->deltify_properties)
@@ -3328,14 +3331,11 @@ write_final_rev(const svn_fs_id_t **new_
         }
     }
 
-  /* don't serialize SHA1 for dirs to disk (waste of space) */
+  /* don't serialize SHA1 for dir content to disk (waste of space) */
+  /* ### Could clients record bogus last-changed-revisions (issue #4700)? */
   if (noderev->data_rep && noderev->kind == svn_node_dir)
     noderev->data_rep->has_sha1 = FALSE;
 
-  /* don't serialize SHA1 for props to disk (waste of space) */
-  if (noderev->prop_rep)
-    noderev->prop_rep->has_sha1 = FALSE;
-
   /* Workaround issue #4031: is-fresh-txn-root in revision files. */
   noderev->is_fresh_txn_root = FALSE;
 

Modified: 
subversion/branches/shelve-checkpoint/subversion/libsvn_repos/reporter.c
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/subversion/libsvn_repos/reporter.c?rev=1815432&r1=1815431&r2=1815432&view=diff
==============================================================================
--- subversion/branches/shelve-checkpoint/subversion/libsvn_repos/reporter.c 
(original)
+++ subversion/branches/shelve-checkpoint/subversion/libsvn_repos/reporter.c 
Thu Nov 16 10:32:27 2017
@@ -973,8 +973,8 @@ update_entry(report_baton_t *b, svn_revn
           if (s_root == NULL)
             SVN_ERR(get_source_root(b, &s_root, s_rev));
 
-          SVN_ERR(svn_fs_props_different(&changed, s_root, s_path,
-                                         b->t_root, t_path, pool));
+          SVN_ERR(svn_fs_props_changed(&changed, s_root, s_path,
+                                       b->t_root, t_path, pool));
           if (!changed)
             SVN_ERR(svn_fs_contents_changed(&changed, s_root, s_path,
                                             b->t_root, t_path, pool));

Modified: subversion/branches/shelve-checkpoint/subversion/svn/shelve-cmd.c
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/subversion/svn/shelve-cmd.c?rev=1815432&r1=1815431&r2=1815432&view=diff
==============================================================================
--- subversion/branches/shelve-checkpoint/subversion/svn/shelve-cmd.c (original)
+++ subversion/branches/shelve-checkpoint/subversion/svn/shelve-cmd.c Thu Nov 
16 10:32:27 2017
@@ -49,10 +49,11 @@ get_name(const char **name,
   return SVN_NO_ERROR;
 }
 
-/*  */
+/* A comparison function for svn_sort__hash(), comparing the mtime of two
+   svn_client_shelved_patch_info_t's. */
 static int
-compare_dirents_by_mtime(const svn_sort__item_t *a,
-                         const svn_sort__item_t *b)
+compare_shelved_patch_infos_by_mtime(const svn_sort__item_t *a,
+                                     const svn_sort__item_t *b)
 {
   svn_client_shelved_patch_info_t *a_val = a->value;
   svn_client_shelved_patch_info_t *b_val = b->value;
@@ -73,7 +74,8 @@ list_sorted_by_date(apr_array_header_t *
 
   SVN_ERR(svn_client_shelves_list(&shelved_patch_infos, local_abspath,
                                   ctx, scratch_pool, scratch_pool));
-  *list = svn_sort__hash(shelved_patch_infos, compare_dirents_by_mtime,
+  *list = svn_sort__hash(shelved_patch_infos,
+                         compare_shelved_patch_infos_by_mtime,
                          scratch_pool);
   return SVN_NO_ERROR;
 }

Modified: 
subversion/branches/shelve-checkpoint/subversion/tests/cmdline/basic_tests.py
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/subversion/tests/cmdline/basic_tests.py?rev=1815432&r1=1815431&r2=1815432&view=diff
==============================================================================
--- 
subversion/branches/shelve-checkpoint/subversion/tests/cmdline/basic_tests.py 
(original)
+++ 
subversion/branches/shelve-checkpoint/subversion/tests/cmdline/basic_tests.py 
Thu Nov 16 10:32:27 2017
@@ -3168,7 +3168,7 @@ def null_update_last_changed_revision(sb
                                      '--show-item', 'last-changed-revision')
 
 @Issue(4700)
-@XFail()
+@XFail(svntest.main.is_fs_type_bdb)
 def null_prop_update_last_changed_revision(sbox):
   "null 'property update' updates last changed rev"
 

Modified: 
subversion/branches/shelve-checkpoint/subversion/tests/cmdline/svnadmin_tests.py
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/subversion/tests/cmdline/svnadmin_tests.py?rev=1815432&r1=1815431&r2=1815432&view=diff
==============================================================================
--- 
subversion/branches/shelve-checkpoint/subversion/tests/cmdline/svnadmin_tests.py
 (original)
+++ 
subversion/branches/shelve-checkpoint/subversion/tests/cmdline/svnadmin_tests.py
 Thu Nov 16 10:32:27 2017
@@ -1676,12 +1676,12 @@ def verify_non_utf8_paths(sbox):
     if line == b"A\n":
       # replace 'A' with a latin1 character -- the new path is not valid UTF-8
       fp_new.write(b"\xE6\n")
-    elif line == b"text: 1 279 32 32 d63ecce65d8c428b86f4f8b0920921fe\n":
+    elif line == b"text: 1 340 32 32 a6be7b4cf075fd39e6a99eb69a31232b\n":
       # phys, PLAIN directories: fix up the representation checksum
-      fp_new.write(b"text: 1 279 32 32 b50b1d5ed64075b5f632f3b8c30cd6b2\n")
-    elif line == b"text: 1 292 44 32 a6be7b4cf075fd39e6a99eb69a31232b\n":
+      fp_new.write(b"text: 1 340 32 32 f2e93e73272cac0f18fccf16f224eb93\n")
+    elif line == b"text: 1 340 44 32 a6be7b4cf075fd39e6a99eb69a31232b\n":
       # phys, deltified directories: fix up the representation checksum
-      fp_new.write(b"text: 1 292 44 32 f2e93e73272cac0f18fccf16f224eb93\n")
+      fp_new.write(b"text: 1 340 44 32 f2e93e73272cac0f18fccf16f224eb93\n")
     elif line == b"text: 1 6 31 31 90f306aa9bfd72f456072076a2bd94f7\n":
       # log addressing: fix up the representation checksum
       fp_new.write(b"text: 1 6 31 31 db2d4a0bad5dff0aea9a288dec02f1fb\n")
@@ -3350,7 +3350,7 @@ def dump_no_op_change(sbox):
   svntest.actions.run_and_verify_svn(expected, [], 'log',  '-v',
                                      sbox2.repo_url + '/bar')
 
-@XFail() # This test will XPASS on FSFS if rep-caching is disabled.
+@XFail(svntest.main.is_fs_type_bdb)
 @Issue(4623)
 def dump_no_op_prop_change(sbox):
   "svnadmin dump with no-op property change"

Modified: 
subversion/branches/shelve-checkpoint/subversion/tests/cmdline/svntest/main.py
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/subversion/tests/cmdline/svntest/main.py?rev=1815432&r1=1815431&r2=1815432&view=diff
==============================================================================
--- 
subversion/branches/shelve-checkpoint/subversion/tests/cmdline/svntest/main.py 
(original)
+++ 
subversion/branches/shelve-checkpoint/subversion/tests/cmdline/svntest/main.py 
Thu Nov 16 10:32:27 2017
@@ -1043,7 +1043,8 @@ def _post_create_repos(path, minor_versi
         shutil.copy(options.config_file, confpath)
 
       if options.memcached_server is not None or \
-         options.fsfs_compression is not None and \
+         options.fsfs_compression is not None or \
+         options.fsfs_dir_deltification is not None and \
          os.path.exists(confpath):
         with open(confpath, 'r') as conffile:
           newlines = []
@@ -1051,6 +1052,10 @@ def _post_create_repos(path, minor_versi
             if line.startswith('# compression ') and \
                options.fsfs_compression is not None:
               line = 'compression = %s\n' % options.fsfs_compression
+            if line.startswith('# enable-dir-deltification ') and \
+               options.fsfs_dir_deltification is not None:
+              line = 'enable-dir-deltification = %s\n' % \
+                options.fsfs_dir_deltification
             newlines += line
             if options.memcached_server is not None and \
                line == '[memcached-servers]\n':
@@ -1739,6 +1744,8 @@ class TestSpawningThread(threading.Threa
       args.append('--dump-load-cross-check')
     if options.fsfs_compression:
       args.append('--fsfs-compression=' + options.fsfs_compression)
+    if options.fsfs_dir_deltification:
+      args.append('--fsfs-dir-deltification=' + options.fsfs_dir_deltification)
 
     result, stdout_lines, stderr_lines = spawn_process(command, 0, False, None,
                                                        *args)
@@ -2153,6 +2160,8 @@ def _create_parser(usage=None):
                     help='Use memcached server at specified URL (FSFS only)')
   parser.add_option('--fsfs-compression', action='store', type='str',
                     help='Set compression type (for fsfs)')
+  parser.add_option('--fsfs-dir-deltification', action='store', type='str',
+                    help='Set directory deltification option (for fsfs)')
 
   # most of the defaults are None, but some are other values, set them here
   parser.set_defaults(

Modified: 
subversion/branches/shelve-checkpoint/tools/client-side/bash_completion
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/tools/client-side/bash_completion?rev=1815432&r1=1815431&r2=1815432&view=diff
==============================================================================
--- subversion/branches/shelve-checkpoint/tools/client-side/bash_completion 
(original)
+++ subversion/branches/shelve-checkpoint/tools/client-side/bash_completion Thu 
Nov 16 10:32:27 2017
@@ -266,7 +266,6 @@ _svn()
        optsParam="$optsParam|--depth|--set-depth|--with-revprop"
        optsParam="$optsParam|--cl|--changelist|--accept|--show-revs"
        optsParam="$optsParam|--show-item"
-       optsParam="$optsParam|--name"
 
        # svn:* and other (env SVN_BASH_*_PROPS) properties
        local svnProps revProps allProps psCmds propCmds

Modified: subversion/branches/shelve-checkpoint/win-tests.py
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/win-tests.py?rev=1815432&r1=1815431&r2=1815432&view=diff
==============================================================================
--- subversion/branches/shelve-checkpoint/win-tests.py (original)
+++ subversion/branches/shelve-checkpoint/win-tests.py Thu Nov 16 10:32:27 2017
@@ -192,6 +192,7 @@ memcached_dir = None
 skip_c_tests = None
 dump_load_cross_check = None
 fsfs_compression = None
+fsfs_dir_deltification = None
 
 for opt, val in opts:
   if opt in ('-h', '--help'):
@@ -288,6 +289,8 @@ for opt, val in opts:
     run_memcached = 1
   elif opt == '--fsfs-compression':
     fsfs_compression = val
+  elif opt == '--fsfs-dir-deltification':
+    fsfs_dir_deltification = val
 
 # Calculate the source and test directory names
 abs_srcdir = os.path.abspath("")
@@ -1114,6 +1117,7 @@ if not test_javahl and not test_swig:
   opts.skip_c_tests = skip_c_tests
   opts.dump_load_cross_check = dump_load_cross_check
   opts.fsfs_compression = fsfs_compression
+  opts.fsfs_dir_deltification = fsfs_dir_deltification
   th = run_tests.TestHarness(abs_srcdir, abs_builddir,
                              log_file, fail_log_file, opts)
   old_cwd = os.getcwd()


Reply via email to