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 2012/11/07 16:39:15 UTC

svn commit: r1406677 - /subversion/branches/tree-read-api/BRANCH-README

Author: julianfoad
Date: Wed Nov  7 15:39:15 2012
New Revision: 1406677

URL: http://svn.apache.org/viewvc?rev=1406677&view=rev
Log:
On the 'tree-read-api' branch: add a BRANCH-README file.

Added:
    subversion/branches/tree-read-api/BRANCH-README   (with props)

Added: subversion/branches/tree-read-api/BRANCH-README
URL: http://svn.apache.org/viewvc/subversion/branches/tree-read-api/BRANCH-README?rev=1406677&view=auto
==============================================================================
--- subversion/branches/tree-read-api/BRANCH-README (added)
+++ subversion/branches/tree-read-api/BRANCH-README Wed Nov  7 15:39:15 2012
@@ -0,0 +1,29 @@
+This 'tree-read-api' branch is a feature branch to develop a new API.
+As a 'feature' branch, it is maintained by periodic 'catch-up' (aka
+'sync') merges from trunk, and may one day be reintegrated to trunk.
+
+The new API is an abstraction of a generic tree of (usually) versioned
+nodes -- where each node is a file or directory, with properties.  We
+already have a generic tree-editing API (svn_delta_editor_t,
+svn_editor_t).  It will be beneficial to have a generic tree-access API
+as well.
+
+The idea is that code can use the same interface to examine the WC base,
+the WC working state, revision X in a repository, or any other concrete
+or virtual tree that we may decide to implement.  Use of a common API
+can reduce code duplication, improving consistency of behaviour,
+simplifying maintenance and reducing bugs.
+
+It should be possible to write operations that combine generic trees,
+such as traversing two trees in parallel, diffing and patching trees.
+Then we could, for example, extend 'svn diff' to be able to compare any
+two arbitrary trees, related or not, such as the unversioned tree
+'/tmp/saved-tests' against the WC tree 'wc/subversion/tests'.  Instead
+of ng this by writing several more variants of the current three
+subroutines (WC/WC, WC/repos, repos/repos), in principle we would need
+just one diff subroutine that takes two Tree objects as input.
+
+Another goal here is to facilitate writing a three-way merge that fully
+supports moves and renames.
+
+- Julian Foad, November 2012

Propchange: subversion/branches/tree-read-api/BRANCH-README
------------------------------------------------------------------------------
    svn:eol-style = native