Skip to content

Repository files navigation

depatcher

Programmatically create and apply .patch files to your project's dependencies.
Under the hood, it leverages diff to generate diffs and package manager primitives to apply them.

Note: diff is bundled to support the patch cross package managers.

⚙️ Installation

Install as a development dependency:

Package ManagerCommand
npmnpm install -D depatcher
yarnyarn add -D depatcher
pnpmpnpm add -D depatcher

📖 Usage

createPatch

Generates a .patch file by comparing an original file with a modified (patched) file.

import{createPatch}from'depatcher'createPatch('./original_file.js','./patched_file.js','./file.patch')

applyPatch

Applies .patch files to specific file paths within a target dependency.

import{applyPatch}from'depatcher'// applyPatch(packageName, patchMap)awaitapplyPatch('packageName',{// 'target_file_in_dependency': 'path_to_patch_file''/dist/index.js': './packageName_index.patch'})

applyPatchMultiple

Applies .patch files to multiple target dependencies efficiently.

import{applyPatchMultiple}from'depatcher'// applyPatchMultiple(packagePatchMap)awaitapplyPatchMultiple({packageName1: {'/dist/index.js': './packageName1_index.patch'},packageName2: {'/dist/index.js': './packageName2_index.patch'}})

🔄 TODO

  • npm patch support

📜 License

This project is licensed under the MIT License.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages