In the wide world of program control there exists a dreadful place labeled as a€?dependency hell

  1. PRINCIPAL type whenever you render incompatible API changes,
  2. MINOR variation once you create function in a backwards suitable fashion, and
  3. PLOT variation when you making backwards compatible insect fixes.

Introduction

a€? greater your body expands plus the considerably bundles you integrate into your applications, the much more likely you’re to obtain your self, someday, inside pit of despair.

In systems with many different dependencies, issuing brand new package versions can quickly be a horror. In the event that dependency requirements are way too tight-fitting, you’re in danger of type lock (the inability to improve a package and never have to discharge brand new variations each and every established bundle).