svnadmin.c has this code:

          /* We can't create repository with a version newer than what
             the running version of Subversion supports. */
          if (! svn_version__at_least(&latest,
                                      compatible_version->major,
                                      compatible_version->minor,
                                      compatible_version->patch))
            {
              err = svn_error_createf(SVN_ERR_UNSUPPORTED_FEATURE, NULL,
                                      _("Cannot guarantee compatibility "
                                        "beyond the current running version "
                                        "(%s)"),
                                      SVN_VER_NUM );
              return EXIT_ERROR(err);
            }

Should the condition be relaxed to (compatible_version->major != latest->major)?

After all, if someone passes "1.9.0", that's fine --- we'll just create
a 1.8.0-style repository, and our compatibility rules imply that 1.9.0
will know to read it.  Similarly, if someone passes "1.8.2", then
regardless of whether this svnadmin is 1.8.0 or 1.8.4, e can just go
ahead and create a 1.8-stlye repository; 1.8.2 will be able to read it.

In other words, the "is my version number at least X" behaviour might be
useful, but --compatible-version= doesn't seem to be the right place for it.

Reply via email to