Skip to content

Commit

Permalink
Minimise use of engines property to improve yarn v1 support
Browse files Browse the repository at this point in the history
  • Loading branch information
lovell committed Aug 13, 2024
1 parent 82cebc3 commit 998c9b2
Show file tree
Hide file tree
Showing 16 changed files with 34 additions and 52 deletions.
3 changes: 3 additions & 0 deletions docs/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,9 @@ Requires libvips v8.15.3
[#4111](https://github.com/lovell/sharp/pull/4111)
[@project0](https://github.com/project0)

* Minimise use of `engines` property to improve yarn v1 support.
[#4130](https://github.com/lovell/sharp/issues/4130)

* Ensure `sharp.format.heif` includes only AVIF when using prebuilt binaries.
[#4132](https://github.com/lovell/sharp/issues/4132)

Expand Down
2 changes: 1 addition & 1 deletion docs/install.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ Use the [supportedArchitectures](https://pnpm.io/package_json#pnpmsupportedarchi
## Custom libvips

To use a custom, globally-installed version of libvips instead of the provided binaries,
make sure it is at least the version listed under `engines.libvips` in the `package.json` file
make sure it is at least the version listed under `config.libvips` in the `package.json` file
and that it can be located using `pkg-config --modversion vips-cpp`.

For help compiling libvips and its dependencies, please see
Expand Down
4 changes: 2 additions & 2 deletions lib/libvips.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@ const semverGreaterThanOrEqualTo = require('semver/functions/gte');
const semverSatisfies = require('semver/functions/satisfies');
const detectLibc = require('detect-libc');

const { engines, optionalDependencies } = require('../package.json');
const { config, engines, optionalDependencies } = require('../package.json');

const minimumLibvipsVersionLabelled = process.env.npm_package_config_libvips || /* istanbul ignore next */
engines.libvips;
config.libvips;
const minimumLibvipsVersion = semverCoerce(minimumLibvipsVersionLabelled).version;

const prebuiltPlatforms = [
Expand Down
4 changes: 2 additions & 2 deletions lib/sharp.js
Original file line number Diff line number Diff line change
Expand Up @@ -73,9 +73,9 @@ if (sharp) {
}
if (isLinux && /(symbol not found|CXXABI_)/i.test(messages)) {
try {
const { engines } = require(`@img/sharp-libvips-${runtimePlatform}/package`);
const { config } = require(`@img/sharp-libvips-${runtimePlatform}/package`);
const libcFound = `${familySync()} ${versionSync()}`;
const libcRequires = `${engines.musl ? 'musl' : 'glibc'} ${engines.musl || engines.glibc}`;
const libcRequires = `${config.musl ? 'musl' : 'glibc'} ${config.musl || config.glibc}`;
help.push(
'- Update your OS:',
` Found ${libcFound}`,
Expand Down
6 changes: 1 addition & 5 deletions npm/darwin-arm64/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,7 @@
"./package": "./package.json"
},
"engines": {
"node": "^18.17.0 || ^20.3.0 || >=21.0.0",
"npm": ">=9.6.5",
"yarn": ">=3.2.0",
"pnpm": ">=7.1.0",
"glibc": ">=2.26"
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
},
"os": [
"darwin"
Expand Down
6 changes: 1 addition & 5 deletions npm/darwin-x64/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,7 @@
"./package": "./package.json"
},
"engines": {
"node": "^18.17.0 || ^20.3.0 || >=21.0.0",
"npm": ">=9.6.5",
"yarn": ">=3.2.0",
"pnpm": ">=7.1.0",
"glibc": ">=2.26"
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
},
"os": [
"darwin"
Expand Down
7 changes: 3 additions & 4 deletions npm/linux-arm/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,9 @@
"./package": "./package.json"
},
"engines": {
"node": "^18.17.0 || ^20.3.0 || >=21.0.0",
"npm": ">=9.6.5",
"yarn": ">=3.2.0",
"pnpm": ">=7.1.0",
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
},
"config": {
"glibc": ">=2.28"
},
"os": [
Expand Down
7 changes: 3 additions & 4 deletions npm/linux-arm64/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,9 @@
"./package": "./package.json"
},
"engines": {
"node": "^18.17.0 || ^20.3.0 || >=21.0.0",
"npm": ">=9.6.5",
"yarn": ">=3.2.0",
"pnpm": ">=7.1.0",
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
},
"config": {
"glibc": ">=2.26"
},
"os": [
Expand Down
7 changes: 3 additions & 4 deletions npm/linux-s390x/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,9 @@
"./package": "./package.json"
},
"engines": {
"node": "^18.17.0 || ^20.3.0 || >=21.0.0",
"npm": ">=9.6.5",
"yarn": ">=3.2.0",
"pnpm": ">=7.1.0",
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
},
"config": {
"glibc": ">=2.31"
},
"os": [
Expand Down
7 changes: 3 additions & 4 deletions npm/linux-x64/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,9 @@
"./package": "./package.json"
},
"engines": {
"node": "^18.17.0 || ^20.3.0 || >=21.0.0",
"npm": ">=9.6.5",
"yarn": ">=3.2.0",
"pnpm": ">=7.1.0",
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
},
"config": {
"glibc": ">=2.26"
},
"os": [
Expand Down
7 changes: 3 additions & 4 deletions npm/linuxmusl-arm64/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,9 @@
"./package": "./package.json"
},
"engines": {
"node": "^18.17.0 || ^20.3.0 || >=21.0.0",
"npm": ">=9.6.5",
"yarn": ">=3.2.0",
"pnpm": ">=7.1.0",
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
},
"config": {
"musl": ">=1.2.2"
},
"os": [
Expand Down
7 changes: 3 additions & 4 deletions npm/linuxmusl-x64/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,9 @@
"./package": "./package.json"
},
"engines": {
"node": "^18.17.0 || ^20.3.0 || >=21.0.0",
"npm": ">=9.6.5",
"yarn": ">=3.2.0",
"pnpm": ">=7.1.0",
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
},
"config": {
"musl": ">=1.2.2"
},
"os": [
Expand Down
5 changes: 1 addition & 4 deletions npm/wasm32/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,7 @@
"./versions": "./versions.json"
},
"engines": {
"node": "^18.17.0 || ^20.3.0 || >=21.0.0",
"npm": ">=9.6.5",
"yarn": ">=3.2.0",
"pnpm": ">=7.1.0"
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
},
"dependencies": {
"@emnapi/runtime": "^1.2.0"
Expand Down
5 changes: 1 addition & 4 deletions npm/win32-ia32/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,7 @@
"./versions": "./versions.json"
},
"engines": {
"node": "^18.17.0 || ^20.3.0 || >=21.0.0",
"npm": ">=9.6.5",
"yarn": ">=3.2.0",
"pnpm": ">=7.1.0"
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
},
"os": [
"win32"
Expand Down
5 changes: 1 addition & 4 deletions npm/win32-x64/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,7 @@
"./versions": "./versions.json"
},
"engines": {
"node": "^18.17.0 || ^20.3.0 || >=21.0.0",
"npm": ">=9.6.5",
"yarn": ">=3.2.0",
"pnpm": ">=7.1.0"
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
},
"os": [
"win32"
Expand Down
4 changes: 3 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,9 @@
},
"license": "Apache-2.0",
"engines": {
"node": "^18.17.0 || ^20.3.0 || >=21.0.0",
"node": "^18.17.0 || ^20.3.0 || >=21.0.0"
},
"config": {
"libvips": ">=8.15.3"
},
"funding": {
Expand Down

0 comments on commit 998c9b2

Please sign in to comment.