Back

Minisymposium Presentation

Learning to Predict and Improve Build Successes in Package Ecosystems Using Graph Neural Networks

Tuesday, June 4, 2024
17:30
-
18:00
CEST
Climate, Weather and Earth Sciences
Climate, Weather and Earth Sciences
Climate, Weather and Earth Sciences
Chemistry and Materials
Chemistry and Materials
Chemistry and Materials
Computer Science and Applied Mathematics
Computer Science and Applied Mathematics
Computer Science and Applied Mathematics
Humanities and Social Sciences
Humanities and Social Sciences
Humanities and Social Sciences
Engineering
Engineering
Engineering
Life Sciences
Life Sciences
Life Sciences
Physics
Physics
Physics

Description

Modern software has reached an unprecedented level of complexity, consisting of tens or even hundreds of dependencies on various packages. In order to tackle this complexity, software ecosystems rely on automated package managers to analyze compatibility constraints among different packages and select a compatible set of package versions to install. Current approaches rely on experts with in-depth knowledge of packages and constraints to identify compatible versions. In practice, users often have to explore different choices of package versions to find an appropriate one that builds successfully. In this talk, we present a tool, called BuildCheck, to understand build incompatibilities, predict bad configurations, and assist developers in managing version constraints. We combine the capabilities of Graph Neural Networks and advanced package management technologies to offer solutions for managing package dependencies. Our tool, BuildCheck, evaluated on E4S software ecosystem consisting of 45, 837 data points can predict build outcomes with 91% accuracy eliminating very expensive trial-and-error exercises to find working builds. Furthermore, our novel self-supervised pre-training method using masked modeling was shown to improve the prediction accuracy when only a limited amount of data is available.

Authors