RefactorInsight: Enhancing IDE Representation of Changes in Git with Refactorings Information
Zarina Kurbatova, Vladimir Kovalenko, Ioana Savu, Bob Brockbernd, Dan, Andreescu, Matei Anton, Roman Venediktov, Elena Tikhomirova, Timofey Bryksin

TL;DR
RefactorInsight is an IntelliJ IDEA plugin that enhances code change inspection by automatically folding refactorings with descriptions, helping developers focus on behavioral changes and improving workflow efficiency.
Contribution
It introduces a smart diff tool that auto-folds refactorings and provides descriptions, improving code change understanding within IDEs for Java and Kotlin.
Findings
Median commit processing time is less than 0.2 seconds.
RefactorInsight supports multiple usage scenarios including pull requests and history exploration.
The plugin improves developer workflow by highlighting semantic code changes.
Abstract
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 in any specific commit in the project change history, and exploring the refactoring history of…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Software System Performance and Reliability · Security and Verification in Computing
