You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by ju...@apache.org on 2022/02/09 21:20:01 UTC

svn commit: r1897920 - in /subversion/branches/multi-wc-format/subversion/tests: cmdline/basic_tests.py cmdline/svntest/main.py libsvn_wc/entries-compat.c libsvn_wc/utils.c libsvn_wc/wc-queries-test.c

Author: julianfoad
Date: Wed Feb  9 21:20:00 2022
New Revision: 1897920

URL: http://svn.apache.org/viewvc?rev=1897920&view=rev
Log:
On the 'multi-wc-format' branch: no default for '--wc-format-version'.

This patch avoids defaulting the '--wc-format-version' option value, and
instead when omitted will let the called 'svn' programs or APIs use their
own defaults.

* subversion/tests/cmdline/basic_tests.py
  (basic_auth_test): Use no '--compatible-version' if not specified.

* subversion/tests/cmdline/svntest/main.py
  (_with_wc_format_version): Use no '--compatible-version' if not specified.
  (wc_format): Return current format if not specified.
  (_create_parser): Remove default value.
  (parse_options): Don't check value if no value specified.

* subversion/tests/libsvn_wc/entries-compat.c
  (test_access_baton_like_locking): Use current format if not specified.

* subversion/tests/libsvn_wc/utils.c
  (svn_test__create_fake_wc): Use current format if not specified.

* subversion/tests/libsvn_wc/wc-queries-test.c
  (create_memory_db): Use current format if not specified.

Modified:
    subversion/branches/multi-wc-format/subversion/tests/cmdline/basic_tests.py
    subversion/branches/multi-wc-format/subversion/tests/cmdline/svntest/main.py
    subversion/branches/multi-wc-format/subversion/tests/libsvn_wc/entries-compat.c
    subversion/branches/multi-wc-format/subversion/tests/libsvn_wc/utils.c
    subversion/branches/multi-wc-format/subversion/tests/libsvn_wc/wc-queries-test.c

Modified: subversion/branches/multi-wc-format/subversion/tests/cmdline/basic_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/multi-wc-format/subversion/tests/cmdline/basic_tests.py?rev=1897920&r1=1897919&r2=1897920&view=diff
==============================================================================
--- subversion/branches/multi-wc-format/subversion/tests/cmdline/basic_tests.py (original)
+++ subversion/branches/multi-wc-format/subversion/tests/cmdline/basic_tests.py Wed Feb  9 21:20:00 2022
@@ -2541,8 +2541,10 @@ def basic_auth_test(sbox):
   # Set up a custom config directory
   config_dir = sbox.create_config_dir()
 
-  common_opts = ('--config-dir', config_dir,
-                 '--compatible-version', svntest.main.options.wc_format_version)
+  common_opts = ('--config-dir', config_dir)
+  if svntest.main.options.wc_format_version:
+    common_opts += ('--compatible-version',
+                    svntest.main.options.wc_format_version)
 
   # Checkout with jrandom
   exit_code, output, errput = svntest.main.run_command(

Modified: subversion/branches/multi-wc-format/subversion/tests/cmdline/svntest/main.py
URL: http://svn.apache.org/viewvc/subversion/branches/multi-wc-format/subversion/tests/cmdline/svntest/main.py?rev=1897920&r1=1897919&r2=1897920&view=diff
==============================================================================
--- subversion/branches/multi-wc-format/subversion/tests/cmdline/svntest/main.py (original)
+++ subversion/branches/multi-wc-format/subversion/tests/cmdline/svntest/main.py Wed Feb  9 21:20:00 2022
@@ -794,7 +794,7 @@ def copy_trust(dst_cfgdir, src_cfgdir):
     shutil.copy(os.path.join(src_ssl_dir, f), os.path.join(dst_ssl_dir, f))
 
 def _with_wc_format_version(args):
-  if '--wc-format-version' in args:
+  if '--wc-format-version' in args or options.wc_format_version is None:
     return args
   non_opt_args = [a for a in args if not str(a).startswith('-')]
   if non_opt_args:
@@ -1740,9 +1740,13 @@ def is_remote_http_connection_allowed():
   return options.allow_remote_http_connection
 
 def wc_format():
-  minor = int(options.wc_format_version.split('.')[1])
-  if minor >= 15 and minor <= SVN_VER_MINOR: return 32
-  if minor >= 8 and minor <= 14: return 31
+  minor = (int(options.wc_format_version.split('.')[1])
+           if options.wc_format_version
+           else SVN_VER_MINOR)
+  if minor >= 15 and minor <= SVN_VER_MINOR:
+    return 32
+  if minor >= 8 and minor <= 14:
+    return 31
   raise Exception("Unrecognized wc_format_version '%s'" %
                   options.wc_format_version)
 
@@ -2276,7 +2280,6 @@ def _create_parser(usage=None):
   # most of the defaults are None, but some are other values, set them here
   parser.set_defaults(
         server_minor_version=SVN_VER_MINOR,
-        wc_format_version=svn_wc__max_supported_format_version(),
         url=file_scheme_prefix + \
                         svntest.wc.svn_uri_quote(
                            os.path.abspath(
@@ -2345,7 +2348,8 @@ def parse_options(arglist=sys.argv[1:],
     parser.error("test harness only supports server minor versions 3-%d"
                  % SVN_VER_MINOR)
 
-  if not svn_wc__is_supported_format_version(options.wc_format_version):
+  if not (options.wc_format_version is None or
+          svn_wc__is_supported_format_version(options.wc_format_version)):
     parser.error("test harness only supports WC formats %s to %s, not '%s'"
                  % (svn_wc__min_supported_format_version(),
                     svn_wc__max_supported_format_version(),

Modified: subversion/branches/multi-wc-format/subversion/tests/libsvn_wc/entries-compat.c
URL: http://svn.apache.org/viewvc/subversion/branches/multi-wc-format/subversion/tests/libsvn_wc/entries-compat.c?rev=1897920&r1=1897919&r2=1897920&view=diff
==============================================================================
--- subversion/branches/multi-wc-format/subversion/tests/libsvn_wc/entries-compat.c (original)
+++ subversion/branches/multi-wc-format/subversion/tests/libsvn_wc/entries-compat.c Wed Feb  9 21:20:00 2022
@@ -602,7 +602,7 @@ test_access_baton_like_locking(const svn
   {
     const char *url, *repos_root_url, *repos_uuid;
     const char *subdir = svn_dirent_join(local_abspath, "sub-wc", pool);
-    int target_format;
+    int target_format = SVN_WC__VERSION;
     const char *repos_relpath;
 
     svn_boolean_t is_root;
@@ -613,8 +613,9 @@ test_access_baton_like_locking(const svn
     url = svn_path_url_add_component2(repos_root_url, repos_relpath, pool);
 
     SVN_ERR(svn_io_make_dir_recursively(subdir, pool));
-    SVN_ERR(svn_wc__format_from_version(&target_format, opts->wc_format_version,
-                                        pool));
+    if (opts->wc_format_version)
+      SVN_ERR(svn_wc__format_from_version(&target_format, opts->wc_format_version,
+                                          pool));
     SVN_ERR(svn_wc__ensure_adm(wc_ctx, target_format,
                                subdir,
                                svn_path_url_add_component2(url, "sub-wc", pool),

Modified: subversion/branches/multi-wc-format/subversion/tests/libsvn_wc/utils.c
URL: http://svn.apache.org/viewvc/subversion/branches/multi-wc-format/subversion/tests/libsvn_wc/utils.c?rev=1897920&r1=1897919&r2=1897920&view=diff
==============================================================================
--- subversion/branches/multi-wc-format/subversion/tests/libsvn_wc/utils.c (original)
+++ subversion/branches/multi-wc-format/subversion/tests/libsvn_wc/utils.c Wed Feb  9 21:20:00 2022
@@ -135,10 +135,11 @@ svn_test__create_fake_wc(const char *wc_
   int i;
   svn_sqlite__stmt_t *stmt;
   const apr_int64_t wc_id = 1;
-  int target_format;
+  int target_format = SVN_WC__VERSION;
 
-  SVN_ERR(svn_wc__format_from_version(&target_format, wc_format_version,
-                                      scratch_pool));
+  if (wc_format_version)
+    SVN_ERR(svn_wc__format_from_version(&target_format, wc_format_version,
+                                        scratch_pool));
 
   /* Allocate MY_STATEMENTS in RESULT_POOL because the SDB will continue to
    * refer to it over its lifetime. */

Modified: subversion/branches/multi-wc-format/subversion/tests/libsvn_wc/wc-queries-test.c
URL: http://svn.apache.org/viewvc/subversion/branches/multi-wc-format/subversion/tests/libsvn_wc/wc-queries-test.c?rev=1897920&r1=1897919&r2=1897920&view=diff
==============================================================================
--- subversion/branches/multi-wc-format/subversion/tests/libsvn_wc/wc-queries-test.c (original)
+++ subversion/branches/multi-wc-format/subversion/tests/libsvn_wc/wc-queries-test.c Wed Feb  9 21:20:00 2022
@@ -26,6 +26,7 @@
 #include "svn_ctype.h"
 #include "private/svn_dep_compat.h"
 #include "private/svn_wc_private.h"
+#include "../../libsvn_wc/wc.h"
 
 #include "svn_private_config.h"
 
@@ -157,10 +158,11 @@ create_memory_db(sqlite3 **db,
 {
   sqlite3 *sdb;
   int i;
-  int target_format;
+  int target_format = SVN_WC__VERSION;
 
-  SVN_ERR(svn_wc__format_from_version(&target_format, opts->wc_format_version,
-                                      pool));
+  if (opts->wc_format_version)
+    SVN_ERR(svn_wc__format_from_version(&target_format, opts->wc_format_version,
+                                        pool));
 
   /* Create an in-memory raw database */
   SVN_TEST_ASSERT(sqlite3_initialize() == SQLITE_OK);