To whom it may concern: I'm writing to ask for your professional suggestions on the performance of a bug localization model. I notice that you have been working for GROOVY maintenance for a while, including report bugs and commit modifications. Now, I'm working on model design to recommend K potential buggy files with descriptions in a bug report. For bugs still open, I want to know whether the potential buggy files recommended by the model could help developers. To be more specific, 1) whether the recommended files cover at least one of the buggy files? 2) If the recommended correctly, does the truely buggy file have a higher ranking than miss recommended? 3) Compared to analyzing manually, can the model save time for bug localization?
It will be appreciated if you could answer my questions. I am looking forward to hearing from you. Here are the potential buggy files predicted for 10 open bugs (the model recommend 5 potential buggy files for each bug): ======== GROOVY-9113 ======== src/main/java/org/codehaus/groovy/ast/stmt/WhileStatement.java src/main/java/org/codehaus/groovy/classgen/asm/WriterController.java src/main/java/org/codehaus/groovy/control/CompilerConfiguration.java src/main/java/org/codehaus/groovy/ast/stmt/CaseStatement.java src/main/java/org/codehaus/groovy/ast/stmt/ForStatement.java ======== GROOVY-9160 ======== src/main/java/org/codehaus/groovy/transform/ToStringASTTransformation.java src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java src/main/java/org/codehaus/groovy/classgen/Verifier.java src/main/java/groovy/lang/GrabExclude.java src/main/java/groovy/grape/GrabAnnotationTransformation.java ======== GROOVY-9187 ======== src/main/java/org/codehaus/groovy/runtime/metaclass/MetaMethodIndex.java src/main/java/org/codehaus/groovy/tools/FileSystemCompiler.java src/main/java/groovy/lang/MetaClassImpl.java src/main/java/org/codehaus/groovy/tools/gse/StringSetMap.java src/main/java/org/codehaus/groovy/reflection/stdclasses/DoubleCachedClass.java ======== GROOVY-9205 ======== src/main/java/org/codehaus/groovy/classgen/ExtendedVerifier.java src/main/java/org/codehaus/groovy/vmplugin/v5/Java5.java src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java src/main/java/org/codehaus/groovy/transform/trait/TraitASTTransformation.java src/main/java/org/codehaus/groovy/ast/AnnotationNode.java ======== GROOVY-9206 ======== src/main/java/org/codehaus/groovy/classgen/ExtendedVerifier.java src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java src/main/java/org/codehaus/groovy/classgen/AnnotationVisitor.java src/main/java/org/codehaus/groovy/control/AnnotationConstantsVisitor.java src/main/java/org/codehaus/groovy/ast/AnnotationNode.java ======== GROOVY-9209 ======== src/main/java/org/codehaus/groovy/transform/DelegateASTTransformation.java src/main/java/org/codehaus/groovy/vmplugin/v5/Java5.java src/main/java/org/codehaus/groovy/ast/ClassNode.java src/main/java/groovy/transform/builder/DefaultStrategy.java src/main/java/org/codehaus/groovy/control/ResolveVisitor.java ======== GROOVY-9213 ======== subprojects/parser-antlr4/src/main/java/org/apache/groovy/parser/antlr4/GroovyLangParser.java src/main/java/org/codehaus/groovy/tools/FileSystemCompiler.java src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java src/main/java/org/codehaus/groovy/classgen/Verifier.java src/main/java/org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl.java ======== GROOVY-9253 ======== src/main/java/org/codehaus/groovy/transform/sc/transformers/BinaryExpressionTransformer.java src/main/java/org/codehaus/groovy/classgen/asm/BytecodeHelper.java src/main/java/org/codehaus/groovy/classgen/Verifier.java src/main/java/org/codehaus/groovy/antlr/AntlrParserPlugin.java src/main/java/org/codehaus/groovy/transform/trait/TraitReceiverTransformer.java ======== GROOVY-9255 ======== src/main/java/org/codehaus/groovy/transform/DelegateASTTransformation.java src/main/java/org/codehaus/groovy/transform/trait/SuperCallTraitTransformer.java src/main/java/org/codehaus/groovy/vmplugin/v7/Selector.java src/main/java/org/codehaus/groovy/transform/sc/StaticCompilationVisitor.java src/main/java/org/codehaus/groovy/runtime/callsite/AbstractCallSite.java ======== GROOVY-9256 ======== src/main/java/org/codehaus/groovy/transform/trait/SuperCallTraitTransformer.java src/main/java/org/codehaus/groovy/transform/sc/StaticCompilationVisitor.java src/main/java/groovy/lang/Closure.java src/main/java/org/codehaus/groovy/transform/trait/TraitReceiverTransformer.java src/main/java/org/codehaus/groovy/transform/trait/TraitASTTransformation.java Best regards. Zexuan Li(李泽萱) Department of Computer Science and Engineering Shanghai Jiao Tong University Email:lizx...@sjtu.edu.cn