diff --git a/lib/sharp.js b/lib/sharp.js index 1081c931..ce6548ff 100644 --- a/lib/sharp.js +++ b/lib/sharp.js @@ -7,12 +7,13 @@ const { familySync, versionSync } = require('detect-libc'); +const { version } = require('../package.json'); const { runtimePlatformArch, isUnsupportedNodeRuntime, prebuiltPlatforms, minimumLibvipsVersion } = require('./libvips'); const runtimePlatform = runtimePlatformArch(); const paths = [ - `../src/build/Release/sharp-${runtimePlatform}.node`, - '../src/build/Release/sharp-wasm32.node', + `../src/build/Release/sharp-${runtimePlatform}-${version}.node`, + `../src/build/Release/sharp-wasm32-${version}.node`, `@img/sharp-${runtimePlatform}/sharp.node`, '@img/sharp-wasm32/sharp.node' ]; diff --git a/npm/darwin-arm64/package.json b/npm/darwin-arm64/package.json index 7405919f..486365be 100644 --- a/npm/darwin-arm64/package.json +++ b/npm/darwin-arm64/package.json @@ -18,6 +18,7 @@ "@img/sharp-libvips-darwin-arm64": "1.3.0-rc.1" }, "files": [ + "index.cjs", "lib" ], "publishConfig": { @@ -25,7 +26,7 @@ }, "type": "commonjs", "exports": { - "./sharp.node": "./lib/sharp-darwin-arm64.node", + "./sharp.node": "./index.cjs", "./package": "./package.json" }, "engines": { diff --git a/npm/darwin-x64/package.json b/npm/darwin-x64/package.json index 230fb24d..56529d75 100644 --- a/npm/darwin-x64/package.json +++ b/npm/darwin-x64/package.json @@ -18,6 +18,7 @@ "@img/sharp-libvips-darwin-x64": "1.3.0-rc.1" }, "files": [ + "index.cjs", "lib" ], "publishConfig": { @@ -25,7 +26,7 @@ }, "type": "commonjs", "exports": { - "./sharp.node": "./lib/sharp-darwin-x64.node", + "./sharp.node": "./index.cjs", "./package": "./package.json" }, "engines": { diff --git a/npm/from-local-build.js b/npm/from-local-build.js index fc35bd2e..dadc0465 100644 --- a/npm/from-local-build.js +++ b/npm/from-local-build.js @@ -44,9 +44,10 @@ cpSync(releaseDir, libDir, { } }); -// Generate README -const { name, description } = require(`./${platform}/package.json`); +// Generate README and index.cjs +const { version, name, description } = require(`./${platform}/package.json`); writeFileSync(join(destDir, 'README.md'), `# \`${name}\`\n\n${description}.\n${licensing}`); +writeFileSync(join(destDir, 'index.cjs'), `module.exports = require('./lib/sharp-${platform}-${version}.node');`); // Copy Apache-2.0 LICENSE copyFileSync(join(__dirname, '..', 'LICENSE'), join(destDir, 'LICENSE')); diff --git a/npm/linux-arm/package.json b/npm/linux-arm/package.json index c3999fcb..3dc0f67d 100644 --- a/npm/linux-arm/package.json +++ b/npm/linux-arm/package.json @@ -18,6 +18,7 @@ "@img/sharp-libvips-linux-arm": "1.3.0-rc.1" }, "files": [ + "index.cjs", "lib" ], "publishConfig": { @@ -25,7 +26,7 @@ }, "type": "commonjs", "exports": { - "./sharp.node": "./lib/sharp-linux-arm.node", + "./sharp.node": "./index.cjs", "./package": "./package.json" }, "engines": { diff --git a/npm/linux-arm64/package.json b/npm/linux-arm64/package.json index fd1eea0e..a2880690 100644 --- a/npm/linux-arm64/package.json +++ b/npm/linux-arm64/package.json @@ -18,6 +18,7 @@ "@img/sharp-libvips-linux-arm64": "1.3.0-rc.1" }, "files": [ + "index.cjs", "lib" ], "publishConfig": { @@ -25,7 +26,7 @@ }, "type": "commonjs", "exports": { - "./sharp.node": "./lib/sharp-linux-arm64.node", + "./sharp.node": "./index.cjs", "./package": "./package.json" }, "engines": { diff --git a/npm/linux-ppc64/package.json b/npm/linux-ppc64/package.json index 0d999e5f..1e771f20 100644 --- a/npm/linux-ppc64/package.json +++ b/npm/linux-ppc64/package.json @@ -18,6 +18,7 @@ "@img/sharp-libvips-linux-ppc64": "1.3.0-rc.1" }, "files": [ + "index.cjs", "lib" ], "publishConfig": { @@ -25,7 +26,7 @@ }, "type": "commonjs", "exports": { - "./sharp.node": "./lib/sharp-linux-ppc64.node", + "./sharp.node": "./index.cjs", "./package": "./package.json" }, "engines": { diff --git a/npm/linux-riscv64/package.json b/npm/linux-riscv64/package.json index 846659dc..3a1872a8 100644 --- a/npm/linux-riscv64/package.json +++ b/npm/linux-riscv64/package.json @@ -18,6 +18,7 @@ "@img/sharp-libvips-linux-riscv64": "1.3.0-rc.1" }, "files": [ + "index.cjs", "lib" ], "publishConfig": { @@ -25,7 +26,7 @@ }, "type": "commonjs", "exports": { - "./sharp.node": "./lib/sharp-linux-riscv64.node", + "./sharp.node": "./index.cjs", "./package": "./package.json" }, "engines": { diff --git a/npm/linux-s390x/package.json b/npm/linux-s390x/package.json index 9743d4f8..dba1b700 100644 --- a/npm/linux-s390x/package.json +++ b/npm/linux-s390x/package.json @@ -18,6 +18,7 @@ "@img/sharp-libvips-linux-s390x": "1.3.0-rc.1" }, "files": [ + "index.cjs", "lib" ], "publishConfig": { @@ -25,7 +26,7 @@ }, "type": "commonjs", "exports": { - "./sharp.node": "./lib/sharp-linux-s390x.node", + "./sharp.node": "./index.cjs", "./package": "./package.json" }, "engines": { diff --git a/npm/linux-x64/package.json b/npm/linux-x64/package.json index 698d503d..dc56e9aa 100644 --- a/npm/linux-x64/package.json +++ b/npm/linux-x64/package.json @@ -18,6 +18,7 @@ "@img/sharp-libvips-linux-x64": "1.3.0-rc.1" }, "files": [ + "index.cjs", "lib" ], "publishConfig": { @@ -25,7 +26,7 @@ }, "type": "commonjs", "exports": { - "./sharp.node": "./lib/sharp-linux-x64.node", + "./sharp.node": "./index.cjs", "./package": "./package.json" }, "engines": { diff --git a/npm/linuxmusl-arm64/package.json b/npm/linuxmusl-arm64/package.json index 5ee5853c..16942abe 100644 --- a/npm/linuxmusl-arm64/package.json +++ b/npm/linuxmusl-arm64/package.json @@ -18,6 +18,7 @@ "@img/sharp-libvips-linuxmusl-arm64": "1.3.0-rc.1" }, "files": [ + "index.cjs", "lib" ], "publishConfig": { @@ -25,7 +26,7 @@ }, "type": "commonjs", "exports": { - "./sharp.node": "./lib/sharp-linuxmusl-arm64.node", + "./sharp.node": "./index.cjs", "./package": "./package.json" }, "engines": { diff --git a/npm/linuxmusl-x64/package.json b/npm/linuxmusl-x64/package.json index 6489f57b..cf4bfe1b 100644 --- a/npm/linuxmusl-x64/package.json +++ b/npm/linuxmusl-x64/package.json @@ -18,6 +18,7 @@ "@img/sharp-libvips-linuxmusl-x64": "1.3.0-rc.1" }, "files": [ + "index.cjs", "lib" ], "publishConfig": { @@ -25,7 +26,7 @@ }, "type": "commonjs", "exports": { - "./sharp.node": "./lib/sharp-linuxmusl-x64.node", + "./sharp.node": "./index.cjs", "./package": "./package.json" }, "engines": { diff --git a/npm/wasm32/package.json b/npm/wasm32/package.json index 651a23b2..1f645bef 100644 --- a/npm/wasm32/package.json +++ b/npm/wasm32/package.json @@ -23,7 +23,7 @@ }, "type": "commonjs", "exports": { - "./sharp.node": "./lib/sharp-wasm32.node.js", + "./sharp.node": "./index.cjs", "./package": "./package.json", "./versions": "./versions.json" }, diff --git a/npm/win32-arm64/package.json b/npm/win32-arm64/package.json index 8cd86920..a6783693 100644 --- a/npm/win32-arm64/package.json +++ b/npm/win32-arm64/package.json @@ -15,6 +15,7 @@ }, "preferUnplugged": true, "files": [ + "index.cjs", "lib", "versions.json" ], @@ -23,7 +24,7 @@ }, "type": "commonjs", "exports": { - "./sharp.node": "./lib/sharp-win32-arm64.node", + "./sharp.node": "./index.cjs", "./package": "./package.json", "./versions": "./versions.json" }, diff --git a/npm/win32-ia32/package.json b/npm/win32-ia32/package.json index b6a27bae..67277556 100644 --- a/npm/win32-ia32/package.json +++ b/npm/win32-ia32/package.json @@ -15,6 +15,7 @@ }, "preferUnplugged": true, "files": [ + "index.cjs", "lib", "versions.json" ], @@ -23,7 +24,7 @@ }, "type": "commonjs", "exports": { - "./sharp.node": "./lib/sharp-win32-ia32.node", + "./sharp.node": "./index.cjs", "./package": "./package.json", "./versions": "./versions.json" }, diff --git a/npm/win32-x64/package.json b/npm/win32-x64/package.json index ad21c614..add64f2d 100644 --- a/npm/win32-x64/package.json +++ b/npm/win32-x64/package.json @@ -15,6 +15,7 @@ }, "preferUnplugged": true, "files": [ + "index.cjs", "lib", "versions.json" ], @@ -23,7 +24,7 @@ }, "type": "commonjs", "exports": { - "./sharp.node": "./lib/sharp-win32-x64.node", + "./sharp.node": "./index.cjs", "./package": "./package.json", "./versions": "./versions.json" }, diff --git a/src/binding.gyp b/src/binding.gyp index 2040cde5..1673651b 100644 --- a/src/binding.gyp +++ b/src/binding.gyp @@ -5,6 +5,7 @@ 'variables': { 'vips_version': '