Re-using open-source software (OSS) can avoid reinventing the wheel, but failing to keep it up-to-date can lead to missing new features and persistent bugs or vulnerabilities that have already been resolved. The use of outdated OSS libraries introduces technical lag, necessitating timely upgrades. However, maintaining up-to-date libraries is challenging, as it may introduce incompatibility issues that break the project or redundant dependencies that unnecessarily increase the size of the project. These issues discourage developers from upgrading libraries, highlighting the need for a fully automated solution that balances version upgrades, reduces technical lag, ensures compatibility, and avoids redundant dependencies. To this end, we propose DepUpdater, which ensures that upgrades minimize technical lag as much as possible while avoiding incompatibility issues and redundant dependencies. The comparison with existing dependency management tools demonstrates that DepUpdater more effectively reduces technical lag while ensuring compatibility and pruning redundant dependencies. Additionally, an ablation study highlights the potential benefits of considering pruning requirements during upgrades to mitigate incompatibility issues. Finally, leveraging DepUpdater, we investigate the impact of transitive dependency upgrades on client compatibility, providing insights for future research.


翻译:复用开源软件(OSS)可避免重复造轮子,但若未能及时更新,则可能导致错过新功能,并遗留已修复的缺陷或安全漏洞。使用过时的OSS库会引入技术滞后,因此需要及时升级。然而,保持库的更新具有挑战性,因为它可能引发不兼容问题导致项目崩溃,或产生冗余依赖不必要地增加项目规模。这些问题阻碍了开发者升级库的积极性,凸显了对全自动化解决方案的需求——该方案需平衡版本升级、减少技术滞后、确保兼容性并避免冗余依赖。为此,我们提出DepUpdater,其确保升级在最大程度减少技术滞后的同时,避免不兼容问题和冗余依赖。与现有依赖管理工具的对比表明,DepUpdater能更有效地降低技术滞后,同时保证兼容性并剔除冗余依赖。此外,消融实验揭示了在升级过程中考虑依赖剔除需求对缓解不兼容问题的潜在益处。最后,基于DepUpdater,我们探究了传递依赖升级对客户端兼容性的影响,为未来研究提供了见解。

0
下载
关闭预览

相关内容

AI生成代码缺陷综述
专知会员服务
13+阅读 · 12月8日
《用于 DevSecOps 的自动化数据》26页报告,CMU
专知会员服务
29+阅读 · 2023年9月17日
Python图像处理,366页pdf,Image Operators Image Processing in Python
NAACL 2019 | 一种考虑缓和KL消失的简单VAE训练方法
PaperWeekly
20+阅读 · 2019年4月24日
国家自然科学基金
17+阅读 · 2017年12月31日
国家自然科学基金
4+阅读 · 2015年12月31日
国家自然科学基金
3+阅读 · 2015年12月31日
国家自然科学基金
3+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
VIP会员
相关基金
国家自然科学基金
17+阅读 · 2017年12月31日
国家自然科学基金
4+阅读 · 2015年12月31日
国家自然科学基金
3+阅读 · 2015年12月31日
国家自然科学基金
3+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
Top
微信扫码咨询专知VIP会员