[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

RE: 1.9 issues

From: Bert Huijben <bert_at_qqmail.nl>
Date: Fri, 24 Jan 2014 22:17:05 +0100

 

I’m not sure if I can call this ‘mtcc library’ / ‘mtcc feature set’ a
layering violation.

 

It uses both libsvn_client and libsvn_wc in its implementation, which no
other existing libraries currently uses.

And in many discussions the result is that we should have never introduced
libsvn_wc and libsvn_client as separate libraries. (If we hadn’t split those
up it would be far easier to change the pristine requirements. We currently
can’t contact the repository from libsvn_wc, so there is no way we can call
into the ra layers from there without revving +- every api.)

 

I don’t see a problem with adding yet another library, but I don’t like
that we move to adding more and more private functions for communicating
between libraries. Many of these functions (especially those in libsvn_wc
and libsvn_client) would be interesting for other library users to use.
Making the mtcc api experimental would in my eyes require moving ‘svnmucc’
back to experimental too (except for the reason that this would be
impossible without a time machine).

 

+1 on moving it to another header file, but I’m not sure about the
requirement for yet another library… especially with a name that tells the
user nothing… Every library is a ‘tool’.

 

‘svn_tool.h’

 

No, I don’t like that name either as it wouldn’t add anything above just
‘svn.h’.

 

And I don’t think the mtcc api is big enough to call it svn_mtcc.h. (And I
don’t expect much growth of the api in future versions). Suggestions?

 

                Bert

 

 

From: Branko Čibej [mailto:brane_at_wandisco.com]
Sent: vrijdag 24 januari 2014 21:29
To: dev_at_subversion.apache.org
Subject: Re: 1.9 issues

 

On 24.01.2014 18:20, Ben Reser wrote:

2) libsvn_client_mtcc_*: Should these exist at all or be moved to another
library? This conversation died out.

I asked for this API to be marked experimental, and was ignored. I'm not at
all happy about that.

I'm going to take this opportunity to say -1 to having this in
libsvn_client. It's a layering violation. Instead, I propose we introduce a
new API module and library, svn_tools, that contains all the various APIfied
functionality from our command-line utilities (apart from the svn client
itself, of course). The MTCC API should be moved to svn_tools. If we have
APIs for svnversion, svnadmin, etc., that are not already covered by the
existing librararies, we should move them, too.

-- Brane

-- 
Branko Čibej | Director of Subversion 
WANdisco // Non-Stop Data 
e. brane_at_wandisco.com <mailto:brane_at_wandisco.com> 

Received on 2014-01-24 22:17:52 CET

This is an archived mail posted to the Subversion Dev mailing list.