repairnator
repairnator copied to clipboard
repairnator: integrate a repair system for C#
C# is a major language in industry. It would be great to have a repair system for repairing C# programs integrated in Repairnator.
Interested people: James Huang
@mallamanis may have inputs.
It would be interesting indeed :) Unfortunately, I am not aware/do not have any experience with such tools for C#/DotNet. Probably Roslyn can be used to create such tools.
I would like to contribute on this as I have some experience with C#. I would need some pointers on where to plug the c# repair system into the repairnator.
Hi @apollo2030, welcome!
That would be awesome to make progress on repairnator for C#.
There would be two categories of tasks.
The repair tool:
- implement a program repair tool for C# based on a known repair algorithm (I can provide advice to choose it)
- implement a simple command line interface with
./your-tool --build 1234
(the number represents a valid Travis CI build number, eg 348887356 for https://api.travis-ci.org/v3/build/348887356) - package it into a docker image, that could be run as follows
apollo2030/your-tool --build 1234
(with some volume tricks to get the output back in repairnator)
Inside Repairnator:
- un-hardwire the need for Java builds to support other languages https://github.com/Spirals-Team/repairnator/blob/master/repairnator/repairnator-realtime/src/main/java/fr/inria/spirals/repairnator/realtime/RTScanner.java#L259
- write a new log parser to parse the Travis console output coming from C# build systems and test frameworks (for Java it is https://github.com/Spirals-Team/jtravis/blob/master/src/main/java/fr/inria/jtravis/parsers/LogParser.java)
Hi @monperrus, thanks for the reply, I will take some time to get it working. One question - "implement a program repair tool for Java ..." you meant C# ?
of course :) (updated my comment)