struts-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Yasser Zamani <yasserzam...@apache.org>
Subject Re: @PMC, a few INFRA request?
Date Tue, 05 Dec 2017 10:47:03 GMT


On 12/4/2017 10:31 PM, Lukasz Lenart wrote:
> I'm not sure if JDepend would be the same

You're right that it's not same and as popular as. However it's listed 
in `External Analysers` of official documentation [1] so I hope it 
should work.

I mentioned it because it seems with GitHub plugin can comment on PRs 
nice warnings.

For example it seems we can set "Maximum distance of a package allowed" 
and it may can comment a warning on a PR which exceeds this maximum ("A 
package squarely on the main sequence is optimally balanced with respect 
to its abstractness and stability. Ideal packages are either completely 
abstract and stable (x=0, y=1) or completely concrete and instable (x=1, 
y=0)").

Or for example "Maximum instability of a package allowed" [3] could be 
set ("This metric is an indicator of the package's resilience to change").

There are other nice metrics present [4] e.g. "Maximum number of other 
packages allowed to depend upon classes within the package" or "Maximum 
number of other packages that the classes in the package are allowed to 
depend upon".


The only bad thing (maybe, I'm not sure) that I found is every package 
has to have `package-info.java` elsewhere Sonar is not able to assign 
issues. In other side maybe it's nice to have these and tune each 
package to keep them healthy during our daily development via several 
pull requests. I think it will make reviewing easier also.

Anyway we can also do these without Sonar and `package-info.java` but 
needs time to script.

I don't know if we don't or do like `package-info.java` for each 
package. But if we don't have issue (I don't have), and if JDepend 
plugin can work with GitHub plugin to comment issues on PR (I think it 
can) then I really down with it :)

Thank you so much for your attention,
Yasser.

[1] https://docs.sonarqube.org/display/PLUG/Plugin+Library
[2] 
https://github.com/willemsrb/sonar-jdepend-plugin/blob/master/src/main/java/nl/futureedge/sonar/plugin/jdepend/rules/DistanceFromMainSequenceRule.java#L50
[3] 
https://github.com/willemsrb/sonar-jdepend-plugin/blob/master/src/main/java/nl/futureedge/sonar/plugin/jdepend/rules/InstabilityRule.java#L50
[4] 
https://github.com/willemsrb/sonar-jdepend-plugin/blob/master/src/main/java/nl/futureedge/sonar/plugin/jdepend/rules
Mime
View raw message