Typical modern Node.js application consists of hundreds of JavaScript files, with more than 90% of the code coming from such third-party libraries. Reuse of high-quality libraries is thus an important factor in software development. Most libraries, especially the most popular ones, are continuously improved, and new versions are released frequently. However, dependence on other people’s libraries opens the door to security vulnerabilities and programming errors that may exist deeply inside the libraries and have severe consequences to the applications and end users, and breaking changes in new versions often cause problems for the application developers.
The objectives of this project are to further explore the scientific results achieved in the ERC CoG project “Automated Program Analysis for Advanced Web Applications” (PAW) and bring them closer to practical use.