MaRCo

Compatible Version Ranges in Maven

Conference Paper (2025)
Author(s)

Cathrine Paulsen (TU Delft - Electrical Engineering, Mathematics and Computer Science)

Sebastian Proksch (TU Delft - Electrical Engineering, Mathematics and Computer Science)

Research Group
Software Engineering
DOI related publication
https://doi.org/10.1109/ICSME64153.2025.00105 Final published version
More Info
expand_more
Publication Year
2025
Language
English
Research Group
Software Engineering
Pages (from-to)
910-914
Publisher
IEEE
ISBN (electronic)
9798331595876
Event
41st IEEE International Conference on Software Maintenance and Evolution, ICSME 2025 (2025-09-07 - 2025-09-12), Auckland, New Zealand
Downloads counter
56
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

Managing dependencies in Java projects is challenging: undeclared, implicit dependencies and conflicting version declarations can lead to breaking changes and unpredictable resolution. We present MARCO, a tool to improve resolution reliability in Maven. It injects missing direct dependencies and replaces pinned versions with client-agnostic compatible version ranges, which can be safely reused across clients. The ranges are obtained by combining bytecode differencing and cross-version testing to detect API and behaviorally compatible dependency versions. We demonstrate how MARCO can be used to retrieve compatible versions for specific dependencies, replace pinned versions using compatibility mappings, and execute the full pipeline to enable compatibility-aware resolution. Our preliminary evaluation shows MARCo recovers all missing dependencies for 91% of affected projects, and replaces pinned versions with stable, compatible version ranges for 13 % of dependencies on average across 78 % of projects. MARCO demonstrates the feasibility of scalable, compatibility-driven dependency management. The demo is available at https://youtu.be/2faDG8Cmmh0.

Files

MaRCo_Compatible_Version_Range... (pdf)
(pdf | 0.498 Mb)
- Embargo expired in 05-05-2026
License info not available