On Thu, Nov 6, 2014 at 8:55 PM, Ben Reser <ben_at_reser.org> wrote:
> On 11/6/14 5:10 AM, Nico Kadel-Garcia wrote:
> > Out of curiosity, do the same issues occur with gcc on a modern box?
> > Ther'e's a lot to like about MacPorts, but I don't think it's the
> > primary build and testing platform for Subversion.
> Yes gcc is going to have the same issues because the declarations he needs
> been removed from svn_sorts.h These declarations have been there since
> Prior to 1.0 they had names in the APR namespace, since it was expected
> functionality would be moved to APR. Before 1.0 we cleaned up that
> problem and marked them private (by documentation and by using __ in the
> names). Of course since they were still in a public header they are
> effectively public APIs. Bert noticed that there were a lot of these
> APIs added to the svn_sorts.h header since 1.8 on trunk and so he moved
> all of
> them into a private header that isn't installed. This meant he moved the
> that had been there since 1.0, thus breaking any 3rd party code that
> on them.
> Ideally we would have never exposed these. Ideally 3rd parties would have
> observed the private markers and not used them.
> I suggested that we resolve this by restoring the long standing private
> that had been exposed. While not adding any new APIs. If nobody objects
> that suggestion soon I'm going to just do it.
I've been scanning the public headers for more such instances
and found the following, including the sort API ones:
Only svn_sort__hash() seems to be critical. We might want to
restore the sorted array functions as well but I'm -0 on that.
I think we should list all these changes in our release notes,
also mentioning that the svn__apr_hash_index_* functions
have been removed entirely. SVN_ERR__TRACED doesn't
even have to be mentioned, IMO.
Received on 2014-11-06 22:50:27 CET