Open
Description
I just found out about #43 which will make our patches really easy to work with by separating patches from each other. What a great feature!
Unfortunately we have enabled --error-on-warn
to ensure we keep our patches up to date, and so the warnings we get from multi-patch names causes our builds to break.
I've patched patch-package with patch-package locally to skip +
version patches, to work around this and avoid the warning. I'm sure there are some gotchas with the .includes('+')
syntax I've used here (NPM versions that include the +
character?) but I thought I should submit this as an issue to see whether it could be applied.
Here is the diff that solved my problem:
diff --git a/node_modules/patch-package/dist/applyPatches.js b/node_modules/patch-package/dist/applyPatches.js
index c0217cf..90f3eda 100644
--- a/node_modules/patch-package/dist/applyPatches.js
+++ b/node_modules/patch-package/dist/applyPatches.js
@@ -92,13 +92,19 @@ function applyPatchesForApp({ appPath, reverse, patchDir, shouldExitWithError, s
// yay patch was applied successfully
// print warning if version mismatch
if (installedPackageVersion !== version) {
- warnings.push(createVersionMismatchWarning({
- packageName: name,
- actualVersion: installedPackageVersion,
- originalVersion: version,
- pathSpecifier,
- path,
- }));
+ // Ignore multi-patch versions
+ if (version.includes('+') && version.split('+')[0] === installedPackageVersion) {
+ console.log("Ignoring multi-patch version mismatch for", pathSpecifier);
+ } else {
+ warnings.push(createVersionMismatchWarning({
+ packageName: name,
+ actualVersion: installedPackageVersion,
+ originalVersion: version,
+ pathSpecifier,
+ path,
+ }));
+
+ }
}
console.log(`${chalk_1.default.bold(pathSpecifier)}@${version} ${chalk_1.default.green("✔")}`);
}
This issue body was partially generated by patch-package ❤️
Metadata
Metadata
Assignees
Labels
No labels