Skip to content

[Bug] BanyanDB Canopy source build fails on macOS ARM64 #14094

Description

@wu-sheng

Search before asking

  • I searched the existing issues and found no matching report for this macOS build failure.

Apache SkyWalking Component

BanyanDB (apache/skywalking-banyandb) — Canopy

What happened

Canopy should be buildable and runnable natively on macOS. During verification of the updated BanyanDB 0.11.1 release candidate, make -C canopy build fails on macOS ARM64 before compilation because the web workspace requires Linux x64 native packages.

Candidate: 0.11.1 staging directory, reviewed on September 19, 2026; directory revision 87670.

Environment:

  • OS/architecture: macOS, darwin/arm64 (Apple Silicon)
  • Node.js: v24.13.0
  • npm: 11.6.2
npm install
npm error code EBADPLATFORM
npm error notsup Unsupported platform for @esbuild/linux-x64@0.28.2: wanted {"os":"linux","cpu":"x64"} (current: {"os":"darwin","cpu":"arm64"})
npm error notsup Valid os:   linux
npm error notsup Actual os:  darwin
npm error notsup Valid cpu:  x64
npm error notsup Actual cpu: arm64
make: *** [install] Error 1

canopy/web/package.json lines 40–41 declare these as mandatory devDependencies:

"@rolldown/binding-linux-x64-gnu": "^1.1.5",
"@esbuild/linux-x64": "^0.28.1"

The Makefile's build target invokes npm install, which attempts to install these platform-specific packages on macOS.

What you expected to happen

Canopy's normal dependency installation, source build, and local execution should work on macOS, including Apple Silicon, without requiring a Linux container or manual dependency edits.

Please remove the unconditional Linux x64 native dependencies and let the build tools resolve the appropriate platform packages, update the lockfile accordingly, and cover the native macOS build and runtime with validation. Existing Linux builds should continue to work.

How to reproduce

  1. Download and extract skywalking-banyandb-0.11.1-src.tgz from the candidate directory above.

  2. On macOS ARM64, with Node.js and npm installed, run this from the extracted source root:

    make -C canopy build
  3. Installation fails with EBADPLATFORM for @esbuild/linux-x64, before the frontend or server can be compiled.

Anything else

  • The latest published Canopy package already installs and runs on macOS ARM64: npm ci --omit=dev succeeds, and native runtime smoke checks pass for health, SPA delivery, development login, and authenticated sessions. This issue tracks the remaining source-build failure and asks for native macOS build/run support to be maintained. Backend integration was not part of the Canopy smoke test.
  • A fresh Canopy source build succeeds on Linux x64 with Node.js 24.6.0. All 35 rebuilt frontend/server output files match the published package byte-for-byte.
  • Node.js 24.13.0 also produces an EBADENGINE warning because the manifest specifies exactly 24.6.0. The terminating error shown above is the separate OS/CPU incompatibility.

Are you willing to submit a pull request to fix on your own?

  • Yes, I am willing to submit a pull request on my own.

Code of Conduct

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

UIUI and front end related.bugSomething isn't working and you are sure it's a bug!databaseBanyanDB - SkyWalking native database

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions