Intertwining Ecosystems: A Large Scale Empirical Study of Libraries that Cross Software Ecosystems

08/13/2022
by   Kanchanok Kannee, et al.
0

An increase in diverse technology stacks and third-party library usage has led developers to inevitably switch technologies. To assist these developers, maintainers have started to release their libraries to multiple technologies, i.e., a cross-ecosystem library. Our goal is to explore the extent to which these cross-ecosystem libraries are intertwined between ecosystems. We perform a large-scale empirical study of 1.1 million libraries from five different software ecosystems, i.e., PyPI for Python, CRAN for R, Maven for Java, RubyGems for Ruby, and NPM for JavaScript to identify 4,146 GitHub projects that release libraries to these five ecosystems. Analyzing their contributions, we first find that a significant majority (median of 37.5 these cross-ecosystem libraries come from a single ecosystem, while also receiving a significant portion of contributions (median of 24.06 outside their target ecosystems. We also find that a cross-ecosystem library is written using multiple programming languages. Specifically, three (i.e., PyPI, CRAN, RubyGems) out of the five ecosystems has the majority of source code is written using languages not specific to that ecosystem. As ecosystems become intertwined, this opens up new avenues for research, such as whether or not cross-ecosystem libraries will solve the search for replacement libraries, or how these libraries fit within each ecosystem just to name a few.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/16/2023

Intertwining Communities: Exploring Libraries that Cross Software Ecosystems

Using libraries in applications has helped developers reduce the costs o...
research
01/18/2022

Studying Popular Open Source Machine Learning Libraries and Their Cross-Ecosystem Bindings

Open source machine learning (ML) libraries allow developers to integrat...
research
05/26/2022

Giving Back: Contributions Congruent to Library Dependency Changes in a Software Ecosystem

Popular adoption of third-party libraries for contemporary software deve...
research
02/25/2020

An Empirical Study of Usages, Updates and Risks of Third-Party Libraries in Java Projects

Third-party libraries are a central building block to develop software s...
research
01/16/2022

Social Networks as a Collective Intelligence: An Examination of the Python Ecosystem

The Python ecosystem represents a global, data rich, technology-enabled ...
research
11/24/2017

Interactive Complexity: Software Metrics from an Ecosystem Perspective

With even the most trivial of applications now being written on top of m...
research
04/12/2023

We Live in a Society: Motivators for Contributions in an OSS Ecosystem

Due to the increasing number of attacks targeting open source library ec...

Please sign up or login with your details

Forgot password? Click here to reset