中文
相关论文

相关论文: Characterizing Python Library Migrations

200 篇论文

Modern software programs are built on stacks that are often undergoing changes that introduce updates and improvements, but may also break any project that depends upon them. In this paper we explore the use of Large Language Models (LLMs)…

软件工程 · 计算机科学 2025-11-04 Katherine A. Rosenfeld , Cliff C. Kerr , Jessica Lundin

Using libraries in applications has helped developers reduce the costs of reinventing already existing code. However, an increase in diverse technology stacks and third-party library usage has led developers to inevitably switch…

软件工程 · 计算机科学 2023-03-17 Kanchanok Kannee , Raula Gaikovina Kula , Supatsara Wattanakriengkrai , Kenichi Matsumoto

Unittest and pytest are the most popular testing frameworks in Python. Overall, pytest provides some advantages, including simpler assertion, reuse of fixtures, and interoperability. Due to such benefits, multiple projects in the Python…

软件工程 · 计算机科学 2026-02-06 Altino Alves , Andre Hora

This paper tackles the challenging problem of automating code updates to fix deprecated API usages of open source libraries by analyzing their release notes. Our system employs a three-tier architecture: first, a web crawler service…

计算与语言 · 计算机科学 2022-12-27 Petr Babkin , Nacho Navarro , Salwa Alamir , Sameena Shah

Developers rely on third-party library Application Programming Interfaces (APIs) when developing software. However, libraries typically come with assumptions and API usage constraints, whose violation results in API misuse. API misuses may…

软件工程 · 计算机科学 2026-04-17 Akalanka Galappaththi , Sarah Nadi , Christoph Treude

Python is widely used in the open-source community, largely owing to the extensive support from diverse third-party libraries within the PyPI ecosystem. Nevertheless, the utilization of third-party libraries can potentially lead to…

软件工程 · 计算机科学 2024-01-08 Yun Peng , Ruida Hu , Ruoke Wang , Cuiyun Gao , Shuqing Li , Michael R. Lyu

Large language models (LLMs), pre-trained or fine-tuned on large code corpora, have shown effectiveness in generating code completions. However, in LLM-based code completion, LLMs may struggle to use correct and up-to-date Application…

软件工程 · 计算机科学 2025-02-14 Chong Wang , Kaifeng Huang , Jian Zhang , Yebo Feng , Lyuye Zhang , Yang Liu , Xin Peng

Third-party library reuse has become common practice in contemporary software development, as it includes several benefits for developers. Library dependencies are constantly evolving, with newly added features and patches that fix bugs in…

软件工程 · 计算机科学 2017-09-15 Raula Gaikovina Kula , Daniel M. German , Ali Ouni , Takashi Ishio , Katsuro Inoue

Code changes constitute one of the most important features of software evolution. Studying them can provide insights into the nature of software development and also lead to practical solutions - recommendations and automations of popular…

软件工程 · 计算机科学 2021-08-05 Yaroslav Golubev , Jiawei Li , Viacheslav Bushev , Timofey Bryksin , Iftekhar Ahmed

Graph domain adaptation has emerged as a promising approach to facilitate knowledge transfer across different domains. Recently, numerous models have been proposed to enhance their generalization capabilities in this field. However, there…

机器学习 · 计算机科学 2025-03-14 Zhen Zhang , Meihan Liu , Bingsheng He

Python libraries are widely used for machine learning and scientific computing tasks today. APIs in Python libraries are deprecated due to feature enhancements and bug fixes in the same way as in other languages. These deprecated APIs are…

软件工程 · 计算机科学 2021-05-11 Aparna Vadlamani , Rishitha Kalicheti , Sridhar Chimalakonda

Large language models (LLMs) have shown remarkable capabilities across various software engineering tasks; however, their effectiveness in code migration, adapting code to run in different environments, remains insufficiently studied. In…

软件工程 · 计算机科学 2025-06-03 Keyuan Cheng , Xudong Shen , Yihao Yang , Tengyue Wang , Yang Cao , Muhammad Asif Ali , Hanbin Wang , Lijie Hu , Di Wang

With the advancement of automated software engineering, research focus is increasingly shifting toward practical tasks reflecting the day-to-day work of software engineers. Among these tasks, software migration, a critical process of…

软件工程 · 计算机科学 2026-04-29 Ryo Fujii , Makoto Morishita , Kazuki Yano , Jun Suzuki

Software ecosystems (e.g., npm, PyPI) are the backbone of modern software developments. Developers add new packages to ecosystems every day to solve new problems or provide alternative solutions, causing obsolete packages to decline in…

软件工程 · 计算机科学 2023-08-21 Suhaib Mujahid , Diego Elias Costa , Rabe Abdalkareem , Emad Shihab

Mining repetitive code changes from version control history is a common way of discovering unknown change patterns. Such change patterns can be used in code recommender systems or automated program repair techniques. While there are such…

软件工程 · 计算机科学 2023-04-12 Akalanka Galappaththi , Sarah Nadi

Python is very popular because it can be used for a wider audience of developers, data scientists, machine learning experts and so on. Like other programming languages, there are beginner to advanced levels of writing Python code. However,…

软件工程 · 计算机科学 2024-10-11 Indira Febriyanti , Youmei Fan , Kazumasa Shimari , Kenichi Matsumoto , Raula Gaikovina Kula

In this research, we provide a comprehensive empirical summary of the Python Package Repository, PyPI, including both package metadata and source code covering 178,592 packages, 1,745,744 releases, 76,997 contributors, and 156,816,750…

软件工程 · 计算机科学 2019-07-29 Ethan Bommarito , Michael Bommarito

Python is one of the most commonly used programming languages in industry and education. Its English keywords and built-in functions/modules allow it to come close to pseudo-code in terms of its readability and ease of writing. However,…

计算与语言 · 计算机科学 2025-04-17 Joshua Otten , Antonios Anastasopoulos , Kevin Moran

In software engineering, different approaches and machine learning models leverage different types of data: source code, textual information, historical data. An important part of any project is its dependencies. The list of dependencies is…

软件工程 · 计算机科学 2022-09-09 Yaroslav Golubev , Egor Bogomolov , Egor Bulychev , Timofey Bryksin

Software developers often struggle to update APIs, leading to manual, time-consuming, and error-prone processes. We introduce MELT, a new approach that generates lightweight API migration rules directly from pull requests in popular library…

软件工程 · 计算机科学 2024-07-10 Daniel Ramos , Hailie Mitchell , Inês Lynce , Vasco Manquinho , Ruben Martins , Claire Le Goues