> I think this branch is now ready to merge to trunk.

I am now asking for review.

To help, here is an overview of the branch changes, compiled from its
log messages:

------------------------------------------------------------------------
Instead of supporting just one format, introduce a current format
(the default for new working copies) and a lowest supported format.

Change the way new working copies are created: instead of the base
schema defining the current format, it defines the lowest supporting
format and a series of format updates are performed to bring it to the
current shape.

Add the --compatible-version option to the checkout and upgrade
commands.

Guess the format of dependent working copies (e.g., for externals) from
the current working copy context.

Add a line to the 'svn --version' output that shows supported WC versions.

Include a place-holder format bump. This makes it easier to merge with a
branch that includes a format bump (such as the 'pristines-on-demand'
branch).

Add test suite option '--wc-format-version'. This accepts a version
string like '1.14.0' and is used for all WC creation, e.g. 'svn
checkout/upgrade --compatible-version=X'.

------------------------------------------------------------------------
Highlights of API-like additions and changes:

* subversion/include/svn_client.h
  (svn_client_checkout4,
   svn_client_upgrade2): New versions.
  (svn_client_supported_wc_version): New.

* subversion/include/svn_wc.h
  (svn_wc_info_t): Add new fields: wc_format, wc_format_min, wc_format_max.

* subversion/include/private/svn_wc_private.h
  (svn_wc__format_from_version
   svn_wc__is_supported_format
   svn_wc__max_supported_format
   svn_wc__min_supported_format
   svn_wc__is_supported_format_version
   svn_wc__max_supported_format_version
   svn_wc__min_supported_format_version
   svn_wc__format_from_context): New.
  (svn_wc__ensure_adm): New, replaces svn_wc_ensure_adm4.
  (svn_wc__upgrade): New.

* subversion/libsvn_wc/wc-metadata.sql
  (STMT_CREATE_SCHEMA): Set 'user_version' to the minimum supported
    version (SVN_WC__SUPPORTED_VERSION), not the latest current version.

------------------------------------------------------------------------

- Julian

Reply via email to