432 citations · 2k across the 40 of their papers we have counts for
44 papers
Unveiling Practical Shortcomings of Patch Overfitting Detection Techniques
David Williams, Ioakim Avraam, Aldeida Aleti +3
Automated Program Repair (APR) can reduce the time developers spend debugging, allowing them to focus on other aspects of software development. Automatically generated bug patches…
The Hitchhiker's Guide to Malicious Third-Party Dependencies
Piergiorgio Ladisa, Merve Sahin, Serena Elisa Ponta +3
The increasing popularity of certain programming languages has spurred the creation of ecosystem-specific package repositories and package managers. Such repositories (e.g., npm, P…
Energy Consumption of Automated Program Repair
Matias Martinez, Silverio Martínez-Fernández, Xavier Franch
Automated program repair (APR) aims to automatize the process of repairing software bugs in order to reduce the cost of maintaining software programs. Moreover, the success (given…
Towards the Detection of Malicious Java Packages
Piergiorgio Ladisa, Henrik Plate, Matias Martinez +2
Open-source software supply chain attacks aim at infecting downstream users by poisoning open-source packages. The common way of consuming such artifacts is through package reposit…
Test-based Patch Clustering for Automatically-Generated Patches Assessment
Matias Martinez, Maria Kechagia, Anjana Perera +3
Previous studies have shown that Automated Program Repair (APR) techniques suffer from the overfitting problem. Overfitting happens when a patch is run and the test suite does not…
Taxonomy of Attacks on Open-Source Software Supply Chains
Piergiorgio Ladisa, Henrik Plate, Matias Martinez +1
The widespread dependency on open-source software makes it a fruitful target for malicious actors, as demonstrated by recurring attacks. The complexity of today's open-source suppl…
SelfAPR: Self-supervised Program Repair with Test Execution Diagnostics
He Ye, Matias Martinez, Xiapu Luo +2
Learning-based program repair has achieved good results in a recent series of papers. Yet, we observe that the related work fails to repair some bugs because of a lack of knowledge…
FLACOCO: Fault Localization for Java based on Industry-grade Coverage
André Silva, Matias Martinez, Benjamin Danglot +2
Fault localization is an essential step in the debugging process. Spectrum-Based Fault Localization (SBFL) is a popular fault localization family of techniques, utilizing code-cove…
Neural Program Repair with Execution-based Backpropagation
He Ye, Matias Martinez, Martin Monperrus
Neural machine translation (NMT) architectures have achieved promising results for automatic program repair. Yet, they have the limitation of generating low-quality patches (e.g.,…
Learning migration models for supporting incremental language migrations of software applications
Bruno Góis Mateus, Matias Martinez, Christophe Kolski
Context: A Legacy system can be defined as a system that significantly resists modification and evolution. According to the literature, there are two main strategies to migrate a l…
A Software-Repair Robot based on Continual Learning
Benoit Baudry, Zimin Chen, Khashayar Etemadi +8
Software bugs are common and correcting them accounts for a significant part of costs in the software development and maintenance process. This calls for automatic techniques to de…
A Comprehensive Study of Code-removal Patches in Automated Program Repair
Davide Ginelli, Matias Martinez, Leonardo Mariani +1
Automatic Program Repair (APR) techniques can promisingly help reducing the cost of debugging. Many relevant APR techniques follow the generate-and-validate approach, that is, the…
Hyperparameter Optimization for AST Differencing
Matias Martinez, Jean-Rémy Falleri, Martin Monperrus
Computing the differences between two versions of the same program is an essential task for software development and software evolution research. AST differencing is the most advan…
Estimating the Potential of Program Repair Search Spaces with Commit Analysis
Khashayar Etemadi, Niloofar Tarighat, Siddharth Yadav +2
The most natural method for evaluating program repair systems is to run them on bug datasets, such as Defects4J. Yet, using this evaluation technique on arbitrary real-world progra…
Why did developers migrate Android applications from Java to Kotlin?
Matias Martinez, Bruno Gois Mateus
Currently, the majority of apps running on mobile devices are Android apps developed in Java. However, developers can now write Android applications using a new programming languag…
E-APR: Mapping the Effectiveness of Automated Program Repair
Aldeida Aleti, Matias Martinez
Automated Program Repair (APR) is a fast growing area with numerous new techniques being developed to tackle one of the most challenging software engineering problems. APR techniqu…
RTj: a Java framework for detecting and refactoring rotten green test cases
Matias Martinez, Anne Etien, Stéphane Ducasse +1
Rotten green tests are passing tests which have, at least, one assertion not executed. They give developers a false confidence. In this paper, we present, RTj, a framework that ana…
Automated Classification of Overfitting Patches with Statically Extracted Code Features
He Ye, Jian Gu, Matias Martinez +2
Automatic program repair (APR) aims to reduce the cost of manually fixing software defects. However, APR suffers from generating a multitude of overfitting patches, those patches t…
Repairnator patches programs automatically
Martin Monperrus, Simon Urli, Thomas Durieux +3
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 in s…
Automated Patch Assessment for Program Repair at Scale
He Ye, Matias Martinez, Martin Monperrus
In this paper, we do automatic correctness assessment for patches generated by program repair systems. We consider the human-written patch as ground truth oracle and randomly gener…
Learning the Relation between Code Features and Code Transforms with Structured Prediction
Zhongxing Yu, Matias Martinez, Zimin Chen +2
To effectively guide the exploration of the code transform space for automated code evolution techniques, we present in this paper the first approach for structurally predicting co…
On the adoption, usage and evolution of Kotlin Features on Android development
Bruno Góis Mateus, Matias Martinez
Background: Google announced Kotlin as an Android official programming language in 2017, giving developers an option of writing applications using a language that combines object-o…
Empirical Review of Java Program Repair Tools: A Large-Scale Experiment on 2,141 Bugs and 23,551 Repair Attempts
Thomas Durieux, Fernanda Madeiral, Matias Martinez +1
In the past decade, research on test-suite-based automatic program repair has grown significantly. Each year, new approaches and implementations are featured in major software engi…
Nopol: Automatic Repair of Conditional Statement Bugs in Java Programs
Jifeng Xuan, Matias Martinez, Favio Demarco +5
We propose NOPOL, an approach to automatic repair of buggy conditional statements (i.e., if-then-else statements). This approach takes a buggy program as well as a test suite as in…