Skip to content

boennemann/unbreak

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

💔 unbreak ❤️

Don’t leave me in all this pain. Don’t leave me out in the rain.

Note: At this point unbreak is an idea without implementation.

unbreak aims to automatically update code so it stays compatible with its dependencies across major breaking version changes. In fact unbreak doesn’t do that all by itself. Rather it provides a standardized way for authors to attach transforms to a certain module and for consumers to execute them.

There are great tools like facebook’s jscodeshift or substack’s falafel that we can use to write such transforms.

For a module called my-module the author may publish a new module with the "unbreak" prefix – unbreak-my-module – that contains a transform for every major version that the package has.

To encourage the use of semver unbreak supports transforms for major versions only.

Transforms are published as a separate module so it's not necessary to add transformation tools as dependencies to the original module.

If you then run unbreak against your project it will look at the npm outdated output, update dependencies, find available transforms and correctly apply them to your codebase.

Releases

No releases published

Packages

No packages published