RFR JDK-8164836: fix jdeprscan violations of tools/all/RunCodingRules.java
Jonathan Gibbons
jonathan.gibbons at oracle.com
Fri Aug 26 19:02:46 UTC 2016
Arguably, we should only check @DefinedBy in java.compiler and
jdk.compiler modules.
-- Jon
On 08/26/2016 08:36 AM, Stuart Marks wrote:
> Hi Jan,
>
> Thanks for picking this up.
>
> As you point out, the API usage in jdeprscan, and its containing
> module jdk.jdeps, really isn't the target of @DefinedBy. It's
> "implementing" the APIs, but for the purpose of getting callbacks from
> the annotation processing framework, not for the purpose of providing
> an implementation of the API to the general public. In that sense
> @DefinedBy doesn't really apply, so it makes sense to adjust the
> DefinedByAnalyzer to be more specific in what it's checking.
>
> But does special-casing jdk.jdeps make sense? Or should there be some
> kind of finer-grained logic to determine when @DefinedBy should and
> shouldn't apply? I wouldn't be surprised if there are other usages of
> @DefinedBy outside of jdk.jdeps that are in a similar situation. See
> jdk.jshell for instance.
>
> I've prepared a patch -- not yet posted anywhere -- that simply adds
> the right @DefinedBy annotations in jdeprscan. This is simple enough
> to do, even though it might not be the right thing.
>
>
>
> s'marks
>
>
>
>
> On 8/26/16 5:00 AM, Jan Lahoda wrote:
>> Hi,
>>
>> The RunCodingRules test is broken after 871b60b0c091, and has been
>> disabled. My
>> proposal to fix this is to disable the DefinedByAnalyzer for classes
>> from the
>> jdk.jdeps module. This module is not AFAIK implementing the APIs, and
>> so is not
>> a primary target of the analyzer/@DefinedBy annotation. One notable
>> alternative
>> would be to disable the crules completely for jdk.jdeps, but I opted
>> rather for
>> a more limited change. (Another alternative would be to add the
>> @DefinedBy
>> annotations to classes jdk.jdeps, but that does not seem quite right
>> to me.)
>>
>> Bug:
>> https://bugs.openjdk.java.net/browse/JDK-8164836
>> Webrev:
>> http://cr.openjdk.java.net/~jlahoda/8164836/webrev.00/
>>
>> Jan
More information about the compiler-dev
mailing list