ASSERT-KTH / sorald

Automatic repair system for static analysis warnings from SonarQube's SonarJava, TDSC 2022 http://arxiv.org/pdf/2103.12033
MIT License
90 stars 27 forks source link

The sniper printer is what we want. #74

Open fermadeiral opened 4 years ago

fermadeiral commented 4 years ago

We have two pretty printing strategies, sniper and normal. We currently let the user choose which strategy she wants to use. However, the sniper strategy is very desired, and failure might happen using it, where no repair at all is produced. We should automatically do a second repair trial with the normal strategy in case of failure with the sniper strategy.

fermadeiral commented 4 years ago

After discussing with @monperrus and later with @henry-lp, we want now to only use the Sniper printer.

I suggest the following strategy:

1) Currently, Sorald accepts as input an argument for choosing the printer (normal or sniper), where the normal printer is the default. We should keep the normal printer in Sorald, because we might need to switch to the normal printer in some experiment, but the default will now be the sniper printer.

2) All test cases that pass with the sniper printer should call Sorald with no argument about the printer (since the sniper printer will become the default), and all test cases that fail should call Sorald with the argument about the printer, passing the normal printer (this is temporarily).

3) Each test case calling Sorald with the argument about the printer (the ones failing with the sniper printer) should be investigated, and issues should be created in https://github.com/INRIA/spoon/.