On Thu, Apr 08, 2004 at 07:41:54PM -0500, C. Michael Pilato wrote:
>
> > This would be the top level abstraction, i.e. implementing a tree
> > structured filesystem on top of the DAG. There would still be a
> > need for another abstraction for different database backends.
>
> Have we reached consensus on whether the top-most FS abstraction would
> be immediately below svn_fs.h or immediately above dag.h? If the
> answer is, "Yes, immediately above dag.h", then the answer is false,
> because I think that the svn_fs.h should be converted to mostly one
> (or two) big fat vtables and some init functions. If people want to
> rewrite filesystem libraries, let 'em rewrite the whole thing, because
> next week someone else is going to come along and want the abstraction
> moved up a little higher.
If you put a vtable right at the svn_fs.h level, then every single
filesystem would have to re-implement tree.c. That's a big hunk of
code that is very error prone.
> > So my proposal is to create a branch, say called
> > 'libsvn_fs_fs_abstraction' where this prototype implementation of
> > libsvn_fs_fs can live. Once we have it (or during the process of
> > creating it), we decide on a good abstraction layer, then
> > libsvn_fs_fs can be re-implemented to meet that abstraction.
>
> As Karl noted in his reply, there's no reason to branch unless you
> know you'll be conflicting with other libsvn_fs_fs work.
Ok, that seems to be the consensus, so that's the route I will go.
> If I'm understanding your proposal correctly, none of this involves
> changing a single line of code in libsvn_fs, right?
Correct.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Fri Apr 9 02:56:32 2004