English
Related papers

Related papers: Characterizing Python Library Migrations

200 papers

Library migration is the process of replacing a library with a similar one in a software project. Manual library migration is time consuming and error prone, as it requires developers to understand the Application Programming Interfaces…

Software Engineering · Computer Science 2026-02-25 Mohayeminul Islam , Ajay Kumar Jha , May Mahmoud , Sarah Nadi

Library migration is the process of replacing one library with another library that provides similar functionality. Manual library migration is time consuming and error prone, as it requires developers to understand the APIs of both…

Software Engineering · Computer Science 2025-10-14 Md Mohayeminul Islam , Ajay Kumar Jha , May Mahmoud , Ildar Akhmetov , Sarah Nadi

Library migration is a common but error-prone task in software development. Developers may need to replace one library with another due to reasons like changing requirements or licensing changes. Migration typically entails updating and…

Software Engineering · Computer Science 2026-02-03 Daniel Ramos , Catarina Gamboa , Inês Lynce , Vasco Manquinho , Ruben Martins , Claire Le Goues

The migration process between different third-party software libraries is hard, complex and error-prone. Typically, during a library migration process, developers opt to replace methods from the retired library with other methods from a new…

Software Engineering · Computer Science 2020-10-05 Hussein Alrubaye , Deema Alshoaibi , Eman Alomar , Mohamed Wiem Mkaouer , Ali Ouni

Modern software relies heavily on third-party software libraries to streamline the development process. The act of switching one library for a similar counterpart, called library migration, naturally occurs as libraries become outdated or…

Software Engineering · Computer Science 2026-03-03 Matthias Kebede , May Mahmoud , Mohayeminul Islam , Sarah Nadi

API developers evolve software libraries to fix bugs, add new features, or refactor code. To benefit from such library evolution, the programmers of client projects have to repetitively upgrade their library usages and adapt their codebases…

Software Engineering · Computer Science 2021-05-07 Hao Zhong , Na Meng

Library migration happens when a library can not meet the project's requirements and is non-trivial to accomplish. To mitigate the problem, substantial efforts have been devoted to understanding its characteristics and recommending…

Software Engineering · Computer Science 2025-07-08 Haiqiao Gu , Yiliang Zhao , Kai Gao , Minghui Zhou

The migration process between different third-party libraries is hard, complex and error-prone. Typically, during a library migration, developers need to find methods in the new library that are most adequate in replacing the old methods of…

Software Engineering · Computer Science 2019-06-07 Hussein Alrubaye , Mohamed Wiem Mkaouer , Ali Ouni

The fast-paced evolution of Android APIs has posed a challenging task for Android app developers. To leverage Android's frequently released APIs, developers must often spend considerable effort on API migrations. Prior research and Android…

Software Engineering · Computer Science 2021-03-29 Maxime Lamothe , Weiyi Shang , Tse-Hsun Chen

The manual migration between different third-party libraries represents a challenge for software developers. Developers typically need to explore both libraries Application Programming Interfaces, along with reading their documentation, in…

Information Retrieval · Computer Science 2019-06-10 Hussein Alrubaye , Mohamed Wiem Mkaouer , Igor Khokhlov , Leon Reznik , Ali Ouni , Jason Mcgoff

Library migration is a challenging problem, where most existing approaches rely on prior knowledge. This can be, for example, information derived from changelogs or statistical models of API usage. This paper addresses a different API…

Software Engineering · Computer Science 2020-08-28 Bruce Collie , Philip Ginsbach , Jackson Woodruff , Ajitha Rajan , Michael O'Boyle

Software intensively depends on external libraries whose relevance may change during its life cycle. As a consequence, software developers must periodically reconsider the libraries they depend on, and must think about \textit{library…

Software Engineering · Computer Science 2013-06-27 Cédric Teyton , Jean-Rémy Falleri , Marc Palyart , Xavier Blanc

Developers often evolve an existing software system by making internal changes, called migration. Moving to a new framework, changing implementation to improve efficiency, and upgrading a dependency to its latest version are examples of…

Software Engineering · Computer Science 2025-04-15 Celal Ziftci , Stoyan Nikolov , Anna Sjövall , Bo Kim , Daniele Codecasa , Max Kim

Third-party libraries are a cornerstone of fast application development. To enable efficient use, libraries must provide a well-designed API. An obscure API instead slows down the learning process and can lead to erroneous use. The usual…

Software Engineering · Computer Science 2024-01-17 Lars Reimann , Günter Kniesel-Wünsche

An increase in diverse technology stacks and third-party library usage has led developers to inevitably switch technologies. To assist these developers, maintainers have started to release their libraries to multiple technologies, i.e., a…

Due to the rise of AI applications, machine learning libraries have become far more accessible, with Python being the most common programming language to write them. Machine learning libraries tend to be updated periodically, which may…

Software Engineering · Computer Science 2020-11-11 Stefanus Agus Haryono , Ferdian Thung , David Lo , Julia Lawall , Lingxiao Jiang

Keeping software systems up to date is essential to avoid technical debt, security vulnerabilities, and the rigidity typical of legacy systems. However, updating libraries and frameworks remains a time consuming and error-prone process.…

Software Engineering · Computer Science 2026-01-09 Aylton Almeida , Laerte Xavier , Marco Tulio Valente

In this paper we introduce, MigrationMiner, an automated tool that detects code migrations performed between Java third-party library. Given a list of open source projects, the tool detects potential library migration code changes and…

Software Engineering · Computer Science 2019-07-17 Hussein Alrubaye , Mohamed Wiem Mkaouer , Ali Ouni

Migration guides are a form of software documentation that helps developers address breaking changes introduced in library version updates. Prior studies have examined documents such as release notes, API reference manuals, and patch notes.…

Software Engineering · Computer Science 2026-05-20 Takahiro Monno , Kazumasa Shimari , Tetsuya Kanda , Kazuma Yamasaki , Kenichi Matsumoto

Context: Refactoring is recognized as an effective practice to maintain evolving software systems. For software libraries, we study how library developers refactor their Application Programming Interfaces (APIs), especially when it impacts…

Software Engineering · Computer Science 2017-10-02 Raula Gaikovina Kula , Ali Ouni , Daniel M. German , Katsuro Inoue
‹ Prev 1 2 3 10 Next ›