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

Re: libsvn_repos logging -- rethunk

From: Brian Holmes <svndev_at_gmail.com>
Date: 2005-07-20 04:04:35 CEST

On 7/16/05, Ben Collins-Sussman <sussman@collab.net> wrote:
> How is that different than my proposal, whereby the "svn_repos_t"
> object contains all the information to output to the log? I see no
> difference between
> svn_log_error(logobject, level, "message")
> and
> svn_log_error(reposobject, level, "message")

There is a difference in function names.

I think that if you do plan on using a repository specific object as a
parameter in the function call, that you also rename the function to be
"repos" specific, such as

svn_repos_log_error(reposobject, level, "message")

so that the generic svn_log_error function can still exist. Perhaps this was
implicit to some but it should be stated.

On the same note, I strongly support a standard svn_log_* set of functions
that define our core logging APIs. Other module specific functions such as
those in svn_repos, etc. can then simply wrap the main svn_log_* APIs as was
suggested. Several people have alluded to this and Ben has directly stated
it here:

I don't think these are contradictory goals. For example, we could
> implement your generic "logger" object, have it output to an
> svn_stream_t, and make it available to all libraries/processes in
> libsvn_subr. Meanwhile, my repos-centric logging API could use
> "logger" objects under the hood. (In other words, an svn_repos_t
> would contain private logger objects for each of its errorlog and
> accesslog.) Both goals are now achieved.

- Brian Holmes
Received on Wed Jul 20 04:06:14 2005

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.