Human-competitive Patches in Automatic Program Repair with Repairnator

10/13/2018 ∙ by Martin Monperrus, et al. ∙ 0

Repairnator is a bot. It constantly monitors software bugs discovered during continuous integration of open-source software and tries to fix them automatically. If it succeeds to synthesize a valid patch, Repairnator proposes the patch to the human developers, disguised under a fake human identity. To date, Repairnator has been able to produce 5 patches that were accepted by the human developers and permanently merged in the code base. This is a milestone for human-competitiveness in software engineering research on automatic program repair.

READ FULL TEXT VIEW PDF
POST COMMENT

Comments

There are no comments yet.

Authors

page 1

page 2

page 3

Code Repositories

repairnator

Software development bot that automatically repairs build failures on Travis Continuous Integration. Join the bot revolution! :star2::robot::star2::revolving_hearts:


view repo
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

References

  • [1] J. R. Koza.

    Human-competitive Results Produced by Genetic Programming.

    Genetic Programming and Evolvable Machines, 11(3-4):251–284, 2010.
  • [2] C. Lebeuf, M. D. Storey, and A. Zagalsky. Software bots. IEEE Software, 35:18–23, 2018.
  • [3] M. Martinez, T. Durieux, R. Sommerard, J. Xuan, and M. Monperrus. Automatic Repair of Real Bugs in Java: a Large-scale Experiment on the Defects4j Dataset. Empirical Software Engineering, pages 1–29, 2016.
  • [4] M. Monperrus. Automatic Software Repair : a Bibliography. ACM Computing Surveys, 2017.
  • [5] A. Murgia, D. Janssens, S. Demeyer, and B. Vasilescu. Among the machines: Human-bot interaction on social q&a websites. In Proceedings of the 2016 CHI Conference Extended Abstracts on Human Factors in Computing Systems, pages 1272–1279. ACM, 2016.
  • [6] E. K. Smith, E. T. Barr, C. Le Goues, and Y. Brun. Is the cure worse than the disease? overfitting in automated program repair. In Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering, pages 532–543, 2015.
  • [7] S. Urli, Z. Yu, L. Seinturier, and M. Monperrus. How to Design a Program Repair Bot? Insights from the Repairnator Project. In ICSE 2018 - 40th International Conference on Software Engineering, Track Software Engineering in Practice, 2018.
  • [8] C. Vassallo, G. Schermann, F. Zampetti, D. Romano, P. Leitner, A. Zaidman, M. Di Penta, and S. Panichella. A Tale of CI Build Failures: An Open-source and a Financial Organization Perspective. In International Conference on Software Maintenance and Evolution, 2017.