Examples on advanced usage of the module.
Let's say that you have a root composer.json which requires two packages: A and B. The package B depends on (requires) package A. In order to be able to use package B properly, package A needs to be patched.
So in this case package B would have the following in the composer.json:
{
"extra": {
"patches": {
"A": {
"Compatibility magic": "patches/compatibility-with-package-a.patch"
}
}
}
}
... where the patch is placed to <package B root>/patches/compatibility-with-dependency-a.patch
and paths
withing the patch file are relative to the root of package A.
This can be tested out with...
composer patch --redo --from-source --filter compatibility-with-pack
The 'filter' part is really optional as you could also try to re-apply everything. the 'from-source' makes the patches scan for patches directly in 'vendor' folder (which allows patches to be pre-tested before updating/committing changes to a given package). The default behaviour is to scan for them in installed.json