A Longitudinal Study of Dependency Reclassifications in JavaScript Projects

📅 2026-04-09
📈 Citations: 0
Influential: 0
📄 PDF

career value

183K/year
🤖 AI Summary
This study addresses the lack of systematic understanding regarding the reclassification of third-party dependencies—such as transitions among core, dev, and peer roles or complete removal—in the evolution of JavaScript projects. Through a large-scale longitudinal analysis of 33,087 active repositories, combining code repository mining with categorical statistics, this work tracks historical changes in dependency declarations. The findings reveal that 79.1% of projects have undergone dependency reclassification, 97.2% have removed dependencies at some point, 38.0% have altered dependency roles, and 33.1% have reintroduced previously removed dependencies, with a median duration of 408 days between removal and reintroduction. These results demonstrate the prevalence, recurrence, and long-term nature of dependency role reclassification, thereby extending dependency maintenance research beyond version updates to encompass the dimension of role declaration.

Technology Category

Application Category

📝 Abstract
Modern software projects depend on third-party dependencies, whose declarations must be maintained as projects evolve. Prior work has focused on dependency version updates, while much less is known about how developers assign dependencies to different roles over time. In this paper, we investigate how developers of JavaScript projects reclassify their dependencies, including removal and role reassignment. Our analysis of 33,087 JavaScript projects with active dependency maintenance reveals that dependency reclassification is a prevalent maintenance activity, occurring in 79.1% of the studied projects. Of these projects, nearly all (97.2%) remove dependencies at some point, while 38.0% undergo role reassignments across Core (runtime), Dev (development-only), and Peer (consumer-provided) roles. These changes are not always final, as 33.1% of projects later reintroduce removed dependencies and 11.2% exhibit repeated role switching. Reclassification practices also tend to unfold over long periods, with a median duration of 408 days. These findings broaden the study of dependency maintenance beyond version updates, and contribute implications for dependency tools, package managers, and research to support correct dependency role declarations.
Problem

Research questions and friction points this paper is trying to address.

dependency reclassification
JavaScript projects
dependency roles
software maintenance
package management
Innovation

Methods, ideas, or system contributions that make the work stand out.

dependency reclassification
JavaScript projects
role assignment
software maintenance
longitudinal study