-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Module Extract File #29
Comments
I haven't found out other information we need by now. LGTM. I was wondering if we could use json instead of xml? I don't have much experience on xml serialization/deserialization in java, IMO, that is much harder than json serialization/deserialization. There could be simple one line serialization/deserialization of json by using some 3rd libraries(i.e. Google's Gson). I have searched on Google but fail to find such developer-friendly library for xml. :( I wrote the serialization of config xml in previous PR: https://github.com/Luolc/regression-tool/blob/master/src/main/java/com/github/checkstyle/regression/generator/AbstractConfigGenerator.java, and thought it really ugly. :( |
I'm not fully against it, it is just more common for non-web applications to pass XML instead of JSON. eclipse-cs and sonar plugins currently work fully with XML files. |
If there is a good XML serialization/deserialization library, I am fine with it. I am just not very familiar with XML before.
Are they serialization/deserialization libraries? I would have a look. :) |
I have just created #33 , the hardcode info in that PR was created by running a UT in |
If Checkstyle takes over the process, I would prefer it be a physical file in |
@rnveach ,
do we really need this info ?
just a historical reason, such decisions were done, when XML was the only solution for that, and it was a standard.
|
Me and romani had some discussion offline.
As discussed, regression needs this. None of the other 3rd party plugins do.
We have decided that this file will only be created and used by regression tool. We can do this however we see fit. The main reason for not doing this in Checkstyle is we need to include @Luolc |
At the request of @romani ,
This is broken off from #19 (comment) to discuss producing and maintaining a physical file for regression-tool to use to determine what are modules, properties, etc.
This can also be used to discuss who should own this file creator, Checkstyle or regression-tool.
What items we need:
-- Module Information
Package
Class Name
Class hierarchy: Can contain multiple classes. If
AbstractSuperCheck
is modified, we need to determine thatSuperCloneCheck
andSuperFinalizeCheck
need regression. Must contain full class path.Interfaces: Same reason as class heirarchy.
Parent Module:
Checker
orTreeWalker
List of properties
List of messages
-- Property Information
Name
Type
Default Value
Acceptable Tokens (only for Java and Javadoc checks)
-- Message Information
Key name
Layout of XML file:
Example Check,
FinalLocalVariableCheck
: (http://checkstyle.sourceforge.net/config_coding.html#FinalLocalVariable)@Luolc Let me know if you agree or think we need anything else.
The text was updated successfully, but these errors were encountered: