Abstract
It can be challenging to manage an open source package from a licensing perspective. License violations can be introduced by both direct and indirect package dependencies, which evolve independently. In this paper, we propose a license compatibility matrix as the foundation for a tool that can help maintainers assess the compliance of their package with the licenses of its dependencies. Using this tool, we empirically study the evolution, popularity, and compliance with dependency licenses in the npm and RubyGems software package ecosystems. The size of the corresponding dependency networks renders verifying license compliance for indirect dependencies computationally expensive. We found that 7.3% of npm packages and 13.9% of RubyGems have direct or indirect dependencies with incompatible licenses. We also found that GPL dependencies are the major cause for incompatibilities. Our results provide a good understanding of the state of license incompatibilities in software package ecosystems, and suggest that individual ecosystems can differ significantly in this regard.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
In (_ , None), “_ ” refers to dependent with any license and None refers to dependency without a license.
References
Kapitsaki, G.M., Kramer, F., Tselikas, N.D.: Automating the license compatibility process in open source software with SPDX. J. Syst. Softw. 131, 386–401 (2017)
Gangadharan, G.R., D’Andrea, V., De Paoli, S., Weiss, M.: Managing license compliance in free and open source software development. Inf. Syst. Front. 14(2), 143–154 (2012)
Wheeler, D.A.: The free-libre/open source software (floss) license slide, September 2007
Kapitsaki, G.M., Tselikas, N.D., Foukarakis, I.E.: An insight into license tools for open source software systems. J. Syst. Softw. 102, 72–87 (2015)
Kechagia, M., Spinellis, D., Androutsellis-Theotokis, S.: Open source licensing across package dependencies. In: 2010 14th Panhellenic Conference on Informatics, pp. 27–32. IEEE (2010)
Qiu, S., German, D.M., Inoue, K.: Empirical study on dependency-related license violation in the javascript package ecosystem. J. Inf. Process. 29, 296–304 (2021)
Decan, A., Mens, T.: What do package dependencies tell us about semantic versioning? IEEE Trans. Softw. Eng. 47(6), 1226–1240 (2019)
Michaeli, S.: Top 10 open source software licenses of 2016 and key trends. https://resources.whitesourcesoftware.com/blog-whitesource/top-10-open-source-software-licenses-of-2016-and-key-trends. January 2017
Balter, B.: Open source license usage on github.com. https://github.blog/2015-03-09-open-source-license-usage-on-github-com/. March 2015
Openbsd Copyright Policy. https://www.openbsd.org/policy.html
Reid, B.: Kea to be released under mozilla public license 2.0, December 2015
Vendome, C., Linares-Vásquez, M., Bavota, G., Di Penta, M., German, D., Poshyvanyk, D.: License usage and changes: a large-scale study of java projects on github. In: 2015 IEEE 23rd International Conference on Program Comprehension, pp. 218–228. IEEE (2015)
Acknowledgments
This research was partially funded by the Excellence of Science project 30446992 SECO-Assist financed by F.R.S.-FNRS and FWO-Vlaanderen.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 Springer Nature Switzerland AG
About this paper
Cite this paper
Makari, I.S., Zerouali, A., De Roover, C. (2022). Prevalence and Evolution of License Violations in npm and RubyGems Dependency Networks. In: Perrouin, G., Moha, N., Seriai, AD. (eds) Reuse and Software Quality. ICSR 2022. Lecture Notes in Computer Science, vol 13297. Springer, Cham. https://doi.org/10.1007/978-3-031-08129-3_6
Download citation
DOI: https://doi.org/10.1007/978-3-031-08129-3_6
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-08128-6
Online ISBN: 978-3-031-08129-3
eBook Packages: Computer ScienceComputer Science (R0)