ModuleGuard: Understanding and Detecting Module Conflicts in Python Ecosystem
Python has become one of the most popular programming languages for software development due to its simplicity, readability, and versatility. As the Python ecosystem grows, developers face increasing challenges in avoiding module conflicts, which occur when different packages have the same namespace modules. Unfortunately, existing work has neither investigated the module conflict comprehensively nor provided tools to detect the conflict. Therefore, this paper systematically investigates the module conflict problem and its impact on the Python ecosystem. We propose a novel technique called InstSimulator, which leverages semantics and installation simulation to achieve accurate and efficient module extraction. Based on this, we implement a tool called ModuleGuard to detect module conflicts for the Python ecosystem.
For the study, we first collect 97 MC issues on GitHub, classify the characteristics and causes of these MC issues, summarize three different conflict patterns, and analyze their potential threats. Then we conduct a large-scale analysis of the whole PyPI ecosystem (4.2 million packages) and GitHub popular projects (3,711 projects) to detect each MC pattern and analyze their potential impact. We discover that module conflicts still impact numerous open-source software packages in PyPI. Our work reveals Python’s shortcomings in handling naming conflicts and provides a tool and guidelines for developers to detect conflicts.
Fri 19 AprDisplayed time zone: Lisbon change
14:00 - 15:30 | Analytics 5Research Track / Journal-first Papers at Amália Rodrigues Chair(s): Sridhar Chimalakonda Indian Institute of Technology, Tirupati | ||
14:00 15mTalk | An Exploratory Investigation of Log Anomalies in Unmanned Aerial Vehicles Research Track Dinghua Wang , Shuqing Li The Chinese University of Hong Kong, Guanping Xiao Nanjing University of Aeronautics and Astronautics, Yepang Liu Southern University of Science and Technology, Yulei Sui UNSW, Pinjia He Chinese University of Hong Kong, Shenzhen, Michael Lyu The Chinese University of Hong Kong | ||
14:15 15mTalk | ModuleGuard: Understanding and Detecting Module Conflicts in Python Ecosystem Research Track Ruofan Zhu Zhejiang University, Xingyu Wang Zhejiang University, Chengwei Liu Nanyang Technological University, Zhengzi Xu Nanyang Technological University, Wenbo Shen Zhejiang University, China, Rui Chang Zhejiang University, Yang Liu Nanyang Technological University | ||
14:30 15mTalk | Empirical Analysis of Vulnerabilities Life Cycle in Golang Ecosystem Research Track Jinchang Hu , Lyuye Zhang Nanyang Technological University, Chengwei Liu Nanyang Technological University, Sen Yang Academy of Military Science, Song Huang Army Engineering University of PLA, Yang Liu Nanyang Technological University | ||
14:45 15mTalk | Fine-SE: Integrating Semantic Features and Expert Features for Software Effort Estimation Research Track Yue Li Nanjing University, Zhong Ren State Key Laboratory of Novel Software Technology, Software Institute, Nanjing University Nanjing, Jiangsu, China, Zhiqi Wang State Key Laboratory of Novel Software Technology, Software Institute, Nanjing University Nanjing, Jiangsu, China, Lanxin Yang Nanjing University, Liming Dong Nanjing University, He Zhang Nanjing University | ||
15:00 7mTalk | Concretization of Abstract Traffic Scene Specifications Using Metaheuristic Search Journal-first Papers Aren Babikian McGill University, Oszkár Semeráth Budapest University of Technology and Economics, Daniel Varro Linköping University / McGill University | ||
15:07 7mTalk | Technical leverage analysis in the Python ecosystem Journal-first Papers Ranindya Paramitha University of Trento, Fabio Massacci University of Trento; Vrije Universiteit Amsterdam | ||
15:14 7mTalk | Automated Mapping of Adaptive App GUIs from Phones to TVs Journal-first Papers Han Hu Faculty of Information Technology, Monash University, ruiqi dong Swinburne University of Technology, John Grundy Monash University, Thai Minh Nguyen Monash University, huaxiao liu Jilin University, Chunyang Chen Technical University of Munich (TUM) Link to publication DOI Pre-print | ||
15:21 7mTalk | Assessing the Early Bird Heuristic (for Predicting Project Quality) Journal-first Papers Link to publication DOI Pre-print |