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

Warnings for experimental functions [was: svn commit: r1826864 ...]

From: Julian Foad <julianfoad_at_apache.org>
Date: Fri, 16 Mar 2018 10:12:18 +0000

Daniel Shahaf wrote:
>> URL: http://svn.apache.org/viewvc?rev=1826864&view=rev
> ./subversion/include/svn_error.h:371:32: warning: call to ‘svn_client_layout_list’ declared with attribute warning: experimental function used
> I appreciate that you said on IRC that the code intentionally calls an
> experimental function. However, leaving the bot yellow would make it
> useless, as future warnings would not be as visibly reported. Moreover,
> the build should be warning-free (so developers can catch new warnings).

Ah, yes.

In my personal builds I also have "casting away 'const'" warnings
enabled, and so in my builds I see a bunch of these warnings that we
can't easily avoid, and I try to manually spot if I introduced a new one
that could be avoided.

For a moment, I assumed the bot must cache the previous list of warnings
and only notify when a new one is added, but no, it assumes there should
be no warnings at all.

> Can we find a way to both call the new function and have the build (on
> the bot and on developer machines) warning-free?

We could:

* remove or comment out the SVN_EXPERIMENTAL tag in the API declaration
* ditto, plus move/rename the function to a private API
* define SVN_EXPERIMENTAL in the source file (info-cmd.c)
* make the warnings bot allow "experimental function called" warnings
* make the warnings bot cache the previous set of warnings and only
notify when there are new ones added

I'll comment out the SVN_EXPERIMENTAL tag, as that's easy and not
necessary during development as we would expect to review new API
functions before releasing 1.11, and also expect to change this before
then anyway.

- Julian
Received on 2018-03-16 11:12:21 CET

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.