SpoonLabs / coming

A tool for mining commits from Git repositories and diffs to automatically extract code change pattern instances and features with ast analysis
https://hal.inria.fr/hal-00861883/file/paper-short.pdf
MIT License
93 stars 33 forks source link

Feature/removing useless repair features #199

Closed khaes-kth closed 4 years ago

khaes-kth commented 4 years ago

Hi @martinezmatias, @monperrus

Since Coming used to print PatternInstanceAnalyzer results whenever repairability mode was used, I added print_only_repair_results option to enable it to print the the RepairabilityInstanceAnalyzer results instead. Now after working on the project for several months, I think that printing RepairabilityInstanceAnalyzer should be the only option when the repairability mode is used. So I removed the print_only_repair_results option in this PR and made RepairabilityInstanceAnalyzer results the default output.

martinezmatias commented 4 years ago

Hi @khaes-kth

Thanks for the PR. W.r.t that issue, one idea we have from a while (maybe we have already discussed it) is to associate an Output processor with an analyzer. (The Analyzer interface can have a new method generateOutput) Thus, each analyzer would be responsible of generating the output corresponding to it. WDYT?

khaes-kth commented 4 years ago

Hi @martinezmatias ,

Thanks for the merge.

About the implementation idea you mentioned, it seems to be fine. However, some of the output processors are long and complex. Maybe, adding their functionality to the already complex analyzers makes the analyzers too complex.