Towards Automated Updates of Software Dependencies
summary
Study compiles ~3,000 Java repositories (using Maven, Java 8/11) from the Libraries.io dataset and extracts ~18,000 artifacts and 163,000 direct dependencies. Incremental updates reveal ~15,000 compilation failures; about 2,000 breaking changes appear in the latest release rather than earlier versions. 95 distinct compilation-error types are catalogued (top cause: method signature changes ≈5.5%), and on 7,000 artifacts with tests, 27,000 dependency updates yield ~18,000 failing tests. Goal: taxonomy of source/binary/behavioral breaks and mined fix patterns to automate updates.
AI-written summary · about
chapters (17)
- 0:00Dependency updates introduction
- 1:09Motivation for automation
- 2:14Breaking changes types
- 5:24Research questions approach
- 7:35Data collection analysis
- 10:09Compilation errors from updates
- 12:17Behavioral incompatibilities
- 14:26Pattern detection next steps
- 15:52Handling breaking changes
- 16:35Summary future work
- 17:18Q&A semantic versioning
- 19:02Breaking change frequencies
- 20:20Interface-based management
- 22:29Transient breaking changes
- 23:55Automating in CI/CD
- 24:37Q&A tooling validation
- 26:42Conclusion directions
related talks
42mDependency Updates: Before and After
39mTrials and Tribulations of Updating Dependencies for Vulnerability...
36mNasty Dependencies: Surviving and fixing bugs in 3rd-party libra…
27mDependency hell - Or, Developers' perception of software dependencies
54mNetflix’s Journey to Confident Automated Changes
38mDependency Management: The Cause of—and Solution to—All Supply...
48mJava's Hidden Gems: Tools and Libraries
31mStrengthen Our Developer eXperience to Face Obsolescence and View...
