vix.ing · top · new · best · stats

Growth and Duplication of Public Source Code over Time: Provenance Tracking at Scale

2019/06/19 by Guillaume Rousseau, Rousseau, Guillaume, Roberto Di Cosmo +4
Computer Science · Decision Sciences · Psychology · #Benchmark (surveying) #Biology #Cartography #Code (set theory) #Commit #Computer science #Database #FOS: Computer and information sciences #Gene #Gene duplication #Genetics #Geography #Open Source Software Innovations #Paleontology #Programming language #Provenance #Psychology #Research Data Management Practices #Scale (ratio) #Scientific Computing and Data Management #Set (abstract data type) #Software #Software Engineering (cs.SE) #Software Engineering Research #Software construction #Software development #Software evolution #Source code #Tracking (education) #cs.SE

paper · pdf · open access · doi:10.48550/arxiv.1906.08076

published in arXiv (Cornell University) (Cornell University)

arxiv created 2019/06/19 · openalex publication_date 2019/06/19 · arxiv updated 2019/06/20 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/28

Abstract

We study the evolution of the largest known corpus of publicly available source code, i.e., the Software Heritage archive (4B unique source code files, 1B commits capturing their development histories across 50M software projects). On such corpus we quantify the growth rate of original, never-seen-before source code files and commits. We find the growth rates to be exponential over a period of more than 40 years.We then estimate the multiplication factor, i.e., how much the same artifacts (e.g., files or commits) appear in different contexts (e.g., commits or source code distribution places). We observe a combinatorial explosion in the multiplication of identical source code files across different commits.We discuss the implication of these findings for the problem of tracking the provenance of source code artifacts (e.g., where and when a given source code file or commit has been observed in the wild) for the entire body of publicly available source code. To that end we benchmark different data models for capturing software provenance information at this scale and growth rate. We identify a viable solution that is deployable on commodity hardware and appears to be maintainable for the foreseeable future.

Citations

Related