[ 
https://issues.apache.org/jira/browse/LOG4J2-3688?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17882916#comment-17882916
 ] 

Björn Kautler commented on LOG4J2-3688:
---------------------------------------

👌

> JSpecify uses wrong scope in module-info
> ----------------------------------------
>
>                 Key: LOG4J2-3688
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-3688
>             Project: Log4j 2
>          Issue Type: Bug
>    Affects Versions: 2.24.0
>            Reporter: Björn Kautler
>            Priority: Critical
>
> With 2.24.0 JSpecify annotations are used now.
> It is good that there is no hard dependency on it.
> Even though {{optional}} would probably more apply than {{{}provided{}}}, 
> because log4j does not require that the runtime provides it.
> But in the {{module-info}} file, it has the scope {{requires static 
> transitive}} which means that downstream projects that have 
> {{{}log4j-core{}}}} in their compile classpath also need to add JSpecify if 
> they compile with JPMS.
> {{requires static}} should be the more appropriate JPMS scope.
> I would have made a PR, but I do not see where the {{module-info}} is coming 
> from. I guess it is somehow generated. Maybe from the POM scope and fixing 
> that to {{optional}} would also fix the JPMS scope? Just guessing.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to