On 05.09.2012 11:47, Daniel Shahaf wrote: > Greg Stein wrote on Tue, Sep 04, 2012 at 23:11:24 -0400: >> On Sep 4, 2012 5:47 PM, "Daniel Shahaf" <d...@daniel.shahaf.name> wrote: >>> Stefan Fuhrmann wrote on Tue, Sep 04, 2012 at 22:03:54 +0200: >>>> Hi there, >>>> >>>> While looking for the appropriate place to declare a few >>>> svn-private constants, I realized that libsvn_subr is the >>>> only lib that comes with multiple private headers. >>>> >>> Why is that a problem? >> Every other library has a single private header. With subr, you gotta go >> search every time to see if the declaration is in svn_subr_private.h, or >> some other random header. It's a scattered mess. >> > For me it's not a problem as I use ctags. > >> Unifying the APIs into a single library header would be a huge improvement. >> > Not necessarily, small files are better for some tasks (eg: > searching/greping) than large ones. [...] > How about splitting svn_subr_private.h to svn_spillbuf_private.h, > svn_checksum_private.h, svn_hash_private.h, and removing > svn_subr_private.h?
Our public API does not have one header per library, it has one header per module. I fail to see why the private API shouldn't have the same model. The argument that having one private header for libsvn_subr makes it easier to write code spills over to the public APIs, too, and one might as well argue that we should have a single "svn.h" instead of the dozen or so public headers that we have. Formally, only our compatibility guarantees prevent anyone from making such a suggestion, but I sure hope other considerations would come to mind, too. :) -- Brane -- Certified & Supported Apache Subversion Downloads: http://www.wandisco.com/subversion/download