88 Commits

Author SHA1 Message Date
Lovell Fuller
9e4e184132 Add experimental support for prebuilt linux-riscv64 binaries 2025-10-19 11:56:45 +01:00
Lovell Fuller
1bbee519aa Separate build script from install script #4458
The --build-from-source flag is now deprecated and will soon
be removed along with the need to define an install script.

This will remove a whole category of package manager
warnings about install scripts and "built" dependencies.

Most people don't need to build sharp from source, but for
those that do, a suitable method is now something like:

$ npm install package-that-depends-on-sharp
$ npm explore sharp -- npm run build
2025-10-07 16:11:54 +01:00
Lovell Fuller
2324d75f7f CI: Upgrade to macOS 15 (Sequoia) 2025-10-05 11:28:58 +01:00
Lovell Fuller
adb6275ae9 Remove licensing checker/linter
This tool appears to no longer be maintained, but more
importantly there are far fewer production dependencies now
than when first introduced, and all are known/trusted.
2025-09-21 12:11:02 +01:00
Lovell Fuller
f2978651f0 Migrate from mocha to Node.js native test runner
Includes coverage reports when using Node.js 22 onwards
2025-09-21 12:03:27 +01:00
Lovell Fuller
b36237ddcb Switch linter from semistandard to biome
Uses the recommended rules apart from complexity/useArrowFunction,
which would affect about 1700 lines of code with little benefit
right now. This is something that can be addressed over time.
2025-09-18 21:18:31 +01:00
Lovell Fuller
a0af662d78 CI: Separate platform-independent linter tasks
Run these before platform-specific build/testing tasks
2025-09-18 13:21:03 +01:00
Lovell Fuller
529901177b CI/Docs: Deno v2 support 2025-09-17 13:56:49 +01:00
Lovell Fuller
ed1ac43e55 CI: Upgrade packaging test dependencies 2025-09-17 12:11:06 +01:00
Lovell Fuller
b507831a11 CI: Remove dry-run flag
This was temporary whilst setting up auto-publish
2025-09-15 11:18:00 +01:00
Lovell Fuller
93b814f849 Upgrade to libvips v8.17.2 2025-09-14 12:23:16 +01:00
Lovell Fuller
c1e33de33c CI: Automate npm publish-with-provenance
Temporarily flagged with dry-run for now
2025-09-01 12:37:16 +01:00
Lovell Fuller
dda00f63e6 CI: Remove frontmatter from release notes 2025-07-28 11:34:31 +01:00
Lovell Fuller
fefda85d2d CI: Upgrade to Debian 12 for ppc64 and s390x
Debian 11 has reached EOL on these platforms
2025-07-24 17:29:38 +01:00
Lovell Fuller
e045235545 Upgrade to sharp-libvips v1.2.1 2025-07-24 16:51:28 +01:00
Lovell Fuller
67462bee79 CI: Simplify volume mappings for linuxmusl-arm64 runners 2025-07-19 14:45:07 +01:00
Lovell Fuller
ecfc77c185 Docs: split changelog into per-release files
Use these as the body for (future) GitHub releases
2025-07-15 17:21:09 +01:00
Lovell Fuller
cab02463ec Remove prebuild dependency
Every CI build task tagged with 'package' now populates and
publishes the relevant npm/platform directory as an artefact.
These are aggregated by a fan-in release task at the end to
create a complete npm workspace zipfile. If the commit is
tagged, a release is created and the npm workspace attached.
2025-06-14 17:49:17 +01:00
Lovell Fuller
5374b036f3 CI: Switch ARM64 from CircleCI to GitHub Actions 2025-06-13 14:08:19 +01:00
Lovell Fuller
01f6cbbaee Upgrade to sharp-libvips v1.2.0-rc.2 2025-06-12 14:59:13 +01:00
Lovell Fuller
99be893dd4 Upgrade to libvips v8.17.0
CI: Use more recent, non-deprecated Windows runners

Bump devDeps
2025-06-12 11:27:26 +01:00
Hans
e922ef7450 Add support for prebuilt Windows ARM64 binaries #4375 2025-05-10 14:29:25 +01:00
Lovell Fuller
dbb7606129 Prerelease v0.34.0-rc.1 2025-04-03 15:29:32 +01:00
Lovell Fuller
fda06a62b0 CI: Upgrade emscripten SDK version to match upstream 2025-03-13 08:21:37 +00:00
Kleis Auke Wolthuizen
9b88547f12
CI: Upgrade uraimo/run-on-arch-action to v3 (#4340)
Upgrade `uraimo/run-on-arch-action` to v3, which includes QEMU 9.2.2
from `tonistiigi/binfmt:latest` that fixes the current CI failure on
ppc64le - see:
https://github.com/uraimo/run-on-arch-action/issues/160
https://github.com/tonistiigi/binfmt/issues/215#issuecomment-2689340770
and https://gitlab.com/qemu-project/qemu/-/issues/1913.
2025-02-28 17:16:39 +00:00
Lovell Fuller
8e3ec0fc61 CI: Ensure emulated archs use latest qemu-user-static package 2025-02-23 10:06:42 +00:00
Lovell Fuller
6480a94181 Upgrade to libvips v8.16.0-rc2
CI: Add Node.js 22
Bump devDeps
Pin node-addon-api to prevent C++17 for now
2024-10-28 10:29:22 +00:00
Lovell Fuller
a53d7cb6bf Upgrade to libvips v8.15.5-rc1 2024-10-09 14:43:14 +01:00
sumitd2
c26b77683a
Improve support for ppc64le architecture (#4203)
Includes CI and arch-specific npm package
2024-09-06 12:45:47 +01:00
Lovell Fuller
6327f13717 CI: Add yarn v1 to packaging tests 2024-08-13 18:39:54 +01:00
Lovell Fuller
de42667767 Upgrade to libvips v8.15.3 2024-08-12 13:19:10 +01:00
Lovell Fuller
c2a024101b CI: Upgrade Python to at least 3.8
- Latest node-gyp requires 3.8
- Python 3.7 is EOL
- Minimum glibc requirement for linux-arm will now be 2.31
  (Pi OS 'Legacy' provides Debian 11 with glibc 2.31)
2024-07-17 09:12:50 +01:00
Lovell Fuller
cc96c21e42 CI: Upgrade to macOS 12 (as 11 will be removed soon) 2024-05-21 11:40:11 +01:00
Lovell Fuller
36e60bf040 CI: Upgrade linux-s390x to Debian 11
Debian LTS does not include s390x and Debian 10 is EOL so this
platform will now require a minimum version of glibc 2.31.
2024-04-19 13:13:48 +01:00
Lovell Fuller
02fd565476 CI: bump write-file-action 2024-03-29 13:01:51 +00:00
Lovell Fuller
dc07fd4e9c Upgrade to libvips v8.15.2 2024-03-18 15:55:01 +00:00
Lovell Fuller
60f4048d6c CI: Upgrade to Python 3.12 2024-02-11 20:45:16 +00:00
Lovell Fuller
af6aa8a690 CI: Add macOS 14 (ARM64)
Replaces runner previously and very kindly donated by MacStadium
2024-02-01 13:21:43 +00:00
Lovell Fuller
c30d355f97 CI: Fix npm smoke test expectation
libvips v8.15.1 added jfif to suffixes
2024-01-11 18:47:24 +00:00
Lovell Fuller
3bc31a8b20 CI: Verify emscripten versions match 2024-01-11 16:23:12 +00:00
Kleis Auke Wolthuizen
c28523e70e
CI: Update Emscripten Docker image to 3.1.51 (#3907) 2024-01-11 16:21:53 +00:00
Lovell Fuller
0b18aeff62 CI: Remove use of nodesource repos 2024-01-03 11:40:42 +00:00
Lovell Fuller
328b18df88 CI: Split yarn pnp package tests into separate jobs 2023-12-17 19:00:14 +00:00
Lovell Fuller
420e0822b4 CI: Pin Node.js 18 to avoid npm 10 on 32-bit Windows
npm 10 seems to be opening thousands of network connections,
leading to resource starvation in Node.js 18. This does not
appear to impact Node.js 20.
2023-12-17 16:53:12 +00:00
Lovell Fuller
0adf7ef16f CI: Ensure Yarn pnp linker uses ESM 2023-12-12 12:01:11 +00:00
Lovell Fuller
6e02f9288e CI: Add package test for Yarn Plug'n'Play 2023-12-10 20:02:17 +00:00
Lovell Fuller
68ef72cb61 CI: allow failure when attempting to rm native binary 2023-11-22 12:00:10 +00:00
Lovell Fuller
9680f00ddd CI: Ensure Wasm packaging test uses Wasm package 2023-11-15 19:28:18 +00:00
Lovell Fuller
a8f68ba7f0
Add infrastructure to build and publish as wasm32 (#3840)
Co-authored-by: Ingvar Stepanyan <me@rreverser.com>
2023-11-09 14:46:07 +00:00
Lovell Fuller
12fd512b83 CI: simplify npm package smoke tests by using import 2023-11-04 21:15:18 +00:00