SPLASH 2020
Sun 15 - Sat 21 November 2020 Online Conference
Tue 17 Nov 2020 13:40 - 14:00 at OOPSLA/ECOOP - T-4
Wed 18 Nov 2020 01:40 - 02:00 at OOPSLA/ECOOP - T-4

JavaScript libraries are widely used and evolve rapidly. Adapting client code to non-backwards compatible changes in libraries is a difficult manual task. In this paper we address the challenge of how to locate affected API uses in client code, by the use of a simple pattern language for expressing API access points and a pattern-matching tool based on lightweight static analysis.

Experimental evaluation on 15 popular npm packages shows that typical breaking changes are easy to express as patterns. Running the static analysis on 265 clients of these packages shows that it is accurate and efficient: it reveals usages of breaking APIs with only 14% false positives and no false negatives, and takes less than a second per client on average. In addition, the analysis is able to report its confidence, which makes it easier to identify the false positives. These results suggest that the approach, despite its simplicity, can reduce the manual effort of the client developers.

Tue 17 Nov
Times are displayed in time zone: Central Time (US & Canada) change

13:00 - 14:20: T-4OOPSLA at OOPSLA/ECOOP +12h
13:00 - 13:20
Talk
OOPSLA
Shaked BrodyTechnion, Uri AlonTechnion, Eran YahavTechnion
Pre-print
13:20 - 13:40
Talk
OOPSLA
André PacakJGU Mainz, Sebastian ErdwegJGU Mainz, Tamás Szabóitemis / JGU Mainz
13:40 - 14:00
Talk
OOPSLA
Anders MøllerAarhus University, Benjamin Barslev NielsenAarhus University, Martin Toldam TorpAarhus University
DOI
14:00 - 14:20
Talk
OOPSLA
Fengyun LiuEPFL, Switzerland, Ondřej LhotákUniversity of Waterloo, Aggelos BiboudisEPFL, Switzerland, Paolo G. GiarrussoBedRock Systems, Martin OderskyEPFL, Switzerland

Wed 18 Nov
Times are displayed in time zone: Central Time (US & Canada) change

01:00 - 02:20: T-4OOPSLA at OOPSLA/ECOOP
01:00 - 01:20
Talk
OOPSLA
Shaked BrodyTechnion, Uri AlonTechnion, Eran YahavTechnion
Pre-print
01:20 - 01:40
Talk
OOPSLA
André PacakJGU Mainz, Sebastian ErdwegJGU Mainz, Tamás Szabóitemis / JGU Mainz
01:40 - 02:00
Talk
OOPSLA
Anders MøllerAarhus University, Benjamin Barslev NielsenAarhus University, Martin Toldam TorpAarhus University
DOI
02:00 - 02:20
Talk
OOPSLA
Fengyun LiuEPFL, Switzerland, Ondřej LhotákUniversity of Waterloo, Aggelos BiboudisEPFL, Switzerland, Paolo G. GiarrussoBedRock Systems, Martin OderskyEPFL, Switzerland