Knowledge-Based Environment Dependency Inference for Python Programs
Thu 12 May 2022 21:10 - 21:15 at ICSE room 1-odd hours - Evolution and Maintenance 3 Chair(s): Mohamed Wiem Mkaouer
Besides third-party packages, the Python interpreter and system libraries are also critical dependencies of a Python program. In our empirical study, 34% programs are only compatible with specific Python interpreter versions, and 24% programs require specific system libraries. However, existing techniques mainly focus on inferring third-party package dependencies. Therefore, they can lack other necessary dependencies and violate version constraints, thus resulting in program build failures and runtime errors.
This paper proposes a knowledge-based technique named PyEGo, which can automatically infer dependencies of third-party packages, the Python interpreter, and system libraries at compatible versions for Python programs. We first construct the dependency knowledge graph PyKG, which can portray the relations and constraints among third-party packages, the Python interpreter, and system libraries. Then, by querying PyKG with extracted program features, PyEGo constructs a program-related sub-graph with dependency candidates of the three types. It finally outputs the latest compatible dependency versions by solving constraints in the subgraph. We evaluate PyEGo on 2,891 single-file Python gists and 100 open-source Python projects. The experimental results show that PyEGo achieves better accuracy, 0.4x to 3.5x higher than the state-of-the-art approaches.
Thu 12 MayDisplayed time zone: Eastern Time (US & Canada) change
05:00 - 06:00 | Evolution and Maintenance 1Technical Track / Journal-First Papers / NIER - New Ideas and Emerging Results at ICSE room 1-odd hours Chair(s): Massimiliano Di Penta University of Sannio, Italy | ||
05:00 5mTalk | Self-Admitted Technical Debt Practices: A Comparison Between Industry and Open-Source Journal-First Papers Fiorella Zampetti University of Sannio, Italy, Gianmarco Fucci University of Sannio, Alexander Serebrenik Eindhoven University of Technology, Massimiliano Di Penta University of Sannio, Italy Link to publication DOI Pre-print Media Attached | ||
05:05 5mTalk | BreakBot: Analyzing the Impact of Breaking Changes to Assist Library EvolutionNIER-track Award NIER - New Ideas and Emerging Results Lina Ochoa Eindhoven University of Technology, Thomas Degueule CNRS, LaBRI, Jean-Rémy Falleri Univ. Bordeaux, Bordeaux INP, CNRS, LaBRI. Institut Universitaire de France. Pre-print Media Attached | ||
05:10 5mTalk | Knowledge-Based Environment Dependency Inference for Python Programs Technical Track Hongjie Ye Institute of Software, Chinese Academy of Sciences, Wei Chen Institute of Software at Chinese Academy of Sciences, China, Wensheng Dou Institute of Software at Chinese Academy of Sciences; University of Chinese Academy of Sciences, Guoquan Wu Institute of Software at Chinese Academy of Sciences, China, Jun Wei Institute of Software at Chinese Academy of Sciences; University of Chinese Academy of Sciences Pre-print Media Attached | ||
05:15 5mTalk | Online Summarizing Alerts through Semantic and Behavior Information Technical Track DOI Pre-print Media Attached | ||
05:20 5mTalk | Using Reinforcement Learning for Load Testing of Video Games Technical Track Rosalia Tufano Università della Svizzera Italiana, Simone Scalabrino University of Molise, Luca Pascarella Università della Svizzera italiana (USI), Emad Aghajani Software Institute, USI Università della Svizzera italiana, Rocco Oliveto University of Molise, Gabriele Bavota Software Institute, USI Università della Svizzera italiana Pre-print Media Attached |
21:00 - 22:00 | Evolution and Maintenance 3Technical Track / SEIS - Software Engineering in Society at ICSE room 1-odd hours Chair(s): Mohamed Wiem Mkaouer Rochester Institute of Technology | ||
21:00 5mTalk | Why Do Projects Join the Apache Software Foundation? SEIS - Software Engineering in Society Nan Yang Eindhoven University of Technology, The Netherlands, Isabella Ferreira Polytechnique Montréal, Alexander Serebrenik Eindhoven University of Technology, Bram Adams Queen's University, Kingston, Ontario Pre-print Media Attached | ||
21:05 5mTalk | DrAsync: Identifying and Visualizing Anti-Patterns in Asynchronous JavaScriptBest Artifact Award Technical Track Alexi Turcotte Northeastern University, Michael D. Shah Northeastern University, USA, Mark W. Aldrich Tufts University, Frank Tip Northeastern University Pre-print Media Attached | ||
21:10 5mTalk | Knowledge-Based Environment Dependency Inference for Python Programs Technical Track Hongjie Ye Institute of Software, Chinese Academy of Sciences, Wei Chen Institute of Software at Chinese Academy of Sciences, China, Wensheng Dou Institute of Software at Chinese Academy of Sciences; University of Chinese Academy of Sciences, Guoquan Wu Institute of Software at Chinese Academy of Sciences, China, Jun Wei Institute of Software at Chinese Academy of Sciences; University of Chinese Academy of Sciences Pre-print Media Attached | ||
21:15 5mTalk | Online Summarizing Alerts through Semantic and Behavior Information Technical Track DOI Pre-print Media Attached |