Dependency management in modern software development poses many challenges for developers who wish to stay up date with the latest features and fixes whilst ensuring backwards compatibility. Project maintainers have opted varied, sometimes conflicting, approaches maintaining their dependencies. Opting unsuitable can introduce bugs vulnerabilities into project, breaking changes, cause extraneous...