All Topics
All Topics
Technology
Technology
Design
Design
Programming
Programming
Science
Science
News
News
Gaming
Gaming
Entertainment
Entertainment
Business
Business
Finance
Finance
Sports
Sports
Health
Health
Food
Food
Travel
Travel
Art
Art
Music
Music
Books
Books
Education
Education
Politics
Politics
Personal
Personal
No algorithm. No AI slop. No ads. Just RSS. Pro-human. Indie writers. Real journalism. Open web. Chronological. Hand toasted.

The Dependency Cutout Workflow Pattern: Managing Urgent Bug Fixes in Open Source Dependencies

By

ingve

6mo ago· 15 min readen

Summary

The article discusses a software development workflow pattern called "Dependency Cutout" for handling bugs in open source dependencies. It presents a scenario where an application (FooApp) depends on an open source library (LibBar) that has a bug causing production issues. Since upstream fixes can take too long (quarterly releases), the pattern involves creating a local copy of the dependency code, fixing the bug there, and maintaining it as a temporary solution while still contributing the fix upstream. The article emphasizes the importance of fixing bugs in dependencies rather than just working around them, and introduces this as a practical workflow pattern for developers facing urgent production issues with open source dependencies.

Key quotes

· 4 pulled
You're working on an application. Let's call it 'FooApp'. FooApp has a dependency on an open source library, let's call it 'LibBar'. You find a bug in LibBar that affects FooApp.
FooApp is your job; LibBar is (at best) your hobby. Blocking on the full upstream contribution cycle and waiting for the next quarterly release is not an option.
It's important to be able to fix bugs in your open source dependencies, and not just work around them.
The Dependency Cutout pattern involves creating a local copy of the dependency code, fixing the bug there, and maintaining it as a temporary solution while still contributing the fix upstream.
Snippet from the RSS feed
It’s important to be able to fix bugs in your open source dependencies, and not just work around them.

You might also wanna read