Skip to content

Instantly share code, notes, and snippets.

View gaurabdg's full-sized avatar
🎯
Focusing

Gaurab Dasgupta gaurabdg

🎯
Focusing
View GitHub Profile
@gaurabdg
gaurabdg / GSoC20-FinalReport-GaurabDasgupta.md
Last active September 1, 2020 21:17
GSoC '20 Final Report for the Project - Generation of Metadata for all Modules at Checkstyle - Gaurab Dasgupta

Google Summer of Code '20 Final Report

Project - Metadata Files for all Modules

Student - Gaurab Dasgupta

Organisation - Checkstyle


Various projects need to use Checkstyle module(check/filter) metadata(e.g. module description/parent, properties default value, type, etc.) for their functioning. But as of now they have to maintain their own metadata which becomes time consuming and the onboarding process becomes cumbersome.

/usr/java/jdk1.8.0_241/bin/java -ea -Didea.test.cyclic.buffer.size=1048576 -javaagent:/home/gaurabdg/Apps/idea-IU-193.6015.39/lib/idea_rt.jar=46427:/home/gaurabdg/Apps/idea-IU-193.6015.39/bin -Dfile.encoding=UTF-8 -classpath /home/gaurabdg/Apps/idea-IU-193.6015.39/lib/idea_rt.jar:/home/gaurabdg/.m2/repository/org/junit/platform/junit-platform-launcher/1.6.2/junit-platform-launcher-1.6.2.jar:/home/gaurabdg/.m2/repository/org/junit/vintage/junit-vintage-engine/5.6.2/junit-vintage-engine-5.6.2.jar:/home/gaurabdg/.m2/repository/junit/junit/4.13/junit-4.13.jar:/home/gaurabdg/Apps/idea-IU-193.6015.39/plugins/junit/lib/junit5-rt.jar:/home/gaurabdg/Apps/idea-IU-193.6015.39/plugins/junit/lib/junit-rt.jar:/usr/java/jdk1.8.0_241/jre/lib/charsets.jar:/usr/java/jdk1.8.0_241/jre/lib/deploy.jar:/usr/java/jdk1.8.0_241/jre/lib/ext/cldrdata.jar:/usr/java/jdk1.8.0_241/jre/lib/ext/dnsns.jar:/usr/java/jdk1.8.0_241/jre/lib/ext/jaccess.jar:/usr/java/jdk1.8.0_241/jre/lib/ext/jfxrt.jar:/usr/java/jdk1.8.0_241/jre/lib/ext/localedata.ja
<?xml version="1.0" encoding="UTF-8"?>
<checkstyle-metadata>
<module>
<check name="EmptyBlock" fullyQualifiedName="com.puppycrawl.tools.checkstyle.checks.blocks.EmptyBlockCheck"
parent="TreeWalker">
<description><![CDATA[<p>Checks for empty blocks. This check does not validate sequential blocks.</p>
<p>Sequential blocks won't be checked. Also, no violations for fallthrough:</p>
<pre>switch (a) {
case 1: // no violation
case 2: // no violation