The Emergence of Software Diversity in Maven Central
Maven artifacts are immutable: an artifact that is uploaded on Maven Central cannot be removed nor modified. The only way for developers to upgrade their library is to release a new version. Consequently, Maven Central accumulates all the versions of all the libraries that are published there, and applications that declare a dependency towards a library can pick any version. In this work, we hypothesize that the immutability of Maven artifacts and the ability to choose any version naturally support the emergence of software diversity within Maven Central. We analyze 1,487,956 artifacts that represent all the versions of 73,653 libraries. We observe that more than 30% of libraries have multiple versions that are actively used by latest artifacts. In the case of popular libraries, more than 50% of their versions are used. We also observe that more than 17% of libraries have several versions that are significantly more used than the other versions. Our results indicate that the immutability of artifacts in Maven Central does support a sustained level of diversity among versions of libraries in the repository.
Mon 27 MayDisplayed time zone: Eastern Time (US & Canada) change
09:40 - 10:30 | Session III: APIs & Dependencies (Part 2)MSR 2019 Data Showcase / MSR 2019 Technical Papers at Place du Canada Chair(s): Georgios Gousios TU Delft | ||
09:40 6mTalk | The Maven Dependency Graph: a Temporal Graph-based Representation of Maven Centra MSR 2019 Data Showcase Amine Benelallam , Nicolas Harrand , César Soto-Valero KTH Royal Institute of Technology, Benoit Baudry KTH Royal Institute of Technology, Sweden, Olivier Barais Pre-print | ||
09:46 15mFull-paper | The Emergence of Software Diversity in Maven Central MSR 2019 Technical Papers César Soto-Valero KTH Royal Institute of Technology, Amine Benelallam , Nicolas Harrand , Olivier Barais , Benoit Baudry KTH Royal Institute of Technology, Sweden Pre-print | ||
10:01 15mFull-paper | Dependency Versioning in the Wild MSR 2019 Technical Papers Jens Dietrich Victoria University of Wellington, David J. Pearce Victoria University of Wellington, New Zealand, Jacob Stringer , Amjed Tahir Massey University, Kelly Blincoe University of Auckland Pre-print | ||
10:16 15mFull-paper | Splitting APIs: An Exploratory Study of Software Unbundling MSR 2019 Technical Papers |