This experimental branch is intended to explore the idea of introducing a svn_fs_node_t abstraction in the FS API. The branch should be maintained with catch-up merges from trunk. The branch is NOT going to be merged to trunk; I'm going to re-implement everything in trunk in case we find the svn_fs_node_t API useful. STATUS ====== - Define svn_fs_node_t abstraction - Implement compatibility shim implementation for svn_node_t - Switch libsvn_repos code to the new API - Natively implement svn_fs_node_t in FSFS PROBLEM ======= Currently, all FS API functions accept an svn_fs_root_t and a PATH as their arguments. In order to find the actual node and to retrieve the requested information from these arguments, the FS implementation has to perform a DAG walk. PROPOSED SOLUTION ================= The idea is to introduce a svn_fs_node_t abstraction and use it in FS API to access certain information about the nodes. Relevant FS functions will be revved and will start returning svn_fs_node_t instances instead of node paths. This should help to avoid DAG walks.