transitive-version-pinning

Installation
SKILL.md

A transitive pin beats your version choice

You declared a version. A library you added declares a strict constraint on some shared lower-level artifact — a rendering backend, a serialization core, a native binding — and strict wins: it overrides a plain version, and it overrides the platform/BOM you thought was in charge. Nothing warns you. The build compiles, because every module still compiles against whatever headers it was built with.

The failure arrives later and somewhere else.

The shape of the failure

A concrete run of it: adding a glass-effect UI library pinned the rendering backend strictly several minor versions up. The UI runtime, a vector-animation renderer and the image loader had all been built against the older one, and the newer backend had removed a matrix helper method. Result: a missing-method failure at runtime, thrown inside the animation renderer's draw pass — a component with no relationship to the library that had been added, and only when an animation actually rendered.

Installs
2
GitHub Stars
35
First Seen
6 days ago
transitive-version-pinning — maxrave-dev/kotlin-footguns