English

npm-filter: Automating the mining of dynamic information from npm packages

Software Engineering 2022-03-31 v4

Abstract

The static properties of code repositories, e.g., lines of code, dependents, dependencies, etc. can be readily scraped from code hosting platforms such as GitHub, and from package management systems such as npm for JavaScript; Although no less important, information related to the dynamic properties of programs, e.g., number of tests in a test suite that pass or fail, is less readily available. The ability to easily collect this dynamic information could be immensely useful to researchers conducting corpus analyses, as they could differentiate projects based on properties that can only be observed by running them. In this paper, we present npm-filter, an automated tool that can download, install, build, test, and run custom user scripts over the source code of JavaScript projects available on npm, the most popular JavaScript package manager. We outline this tool, describe its implementation, and show that npm-filter has already been useful in developing evaluation suites for multiple JavaScript tools.

Keywords

Cite

@article{arxiv.2201.08452,
  title  = {npm-filter: Automating the mining of dynamic information from npm packages},
  author = {Ellen Arteca and Alexi Turcotte},
  journal= {arXiv preprint arXiv:2201.08452},
  year   = {2022}
}

Comments

5 pages. To appear in In 19th International Conference on Mining Software Repositories (MSR '22), May 23-24, 2022, Pittsburgh, PA, USA