RefactorInsight: Enhancing IDE Representation of Changes in Git with Refactorings Information
Inspection of code changes is a time-consuming task that constitutes a big part of everyday work of software engineers. Existing IDEs provide little information about the semantics of code changes within the file editor view. Therefore developers have to track changes across multiple files, which is a hard task with large codebases.
In this paper, we present RefactorInsight, a plugin for IntelliJ IDEA that introduces a smart diff for code changes in Java and Kotlin where refactorings are auto-folded and provided with their description, thus allowing users to focus on changes that modify the code behavior like bug fixes and new features. RefactorInsight supports three usage scenarios: viewing smart diffs with auto-folded refactorings and hints, inspecting refactorings in pull requests and at any specific commit in the project change history, and exploring the refactoring history of methods and classes. The evaluation shows that commit processing time is acceptable: on median it is less than 0.2 seconds, which delay does not disrupt developers’ IDE workflows.
RefactorInsight is available at https://github.com/JetBrains-Research/RefactorInsight. The demonstration video is available at https://youtu.be/-6L2AKQ66nA.
Tue 16 NovDisplayed time zone: Hobart change
22:00 - 23:00
|EvoMe: A Software Evolution Management Engine Based on Differential Factbase|
Xiuheng Wu Nanyang Technological University, Mengyang Li Nanyang Technological University, Yi Li Nanyang Technological University, SingaporePre-print
|Revizor: A Data-Driven Approach to Automate Frequent Code Changes Based on Graph Matching|
Oleg Smirnov JetBrains Research, Saint Petersburg State University, Artyom Lobanov JetBrains Research, Yaroslav Golubev JetBrains Research, Elena Tikhomirova JetBrains Research, Timofey Bryksin JetBrains Research; HSE UniversityPre-print
|SoManyConflicts: Resolve Many Merge Conflicts Interactively and Systematically|
|Automated Code Refactoring upon Database-Schema Changes in Web Applications|
|BeAFix: An Automated Repair Tool for Faulty Alloy Models|
Simón Gutiérrez Brida University of Rio Cuarto and CONICET, Argentina, Germán Regis Universidad Nacional de Río Cuarto, Guolong Zheng University of Nebraska Lincoln, Hamid Bagheri University of Nebraska-Lincoln, ThanhVu Nguyen George Mason University, Nazareno Aguirre University of Rio Cuarto and CONICET, Argentina, Marcelo F. Frias Dept. of Software Engineering Instituto Tecnológico de Buenos Aires
|RefactorInsight: Enhancing IDE Representation of Changes in Git with Refactorings Information|
Zarina Kurbatova JetBrains Research, Vladimir Kovalenko JetBrains Research, Ioana Savu Delft University of Technology, Bob Brockbernd Delft University of Technology, Dan Andreescu Delft University of Technology, Matei Anton Delft University of Technology, Roman Venediktov Higher School of Economics, Elena Tikhomirova JetBrains Research, Timofey Bryksin JetBrains Research; HSE UniversityPre-print