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