skywalking-eyes icon indicating copy to clipboard operation
skywalking-eyes copied to clipboard

Fix: Compatibility issue with Node.js 24 (related to apache/skywalking#13517)

Open XL-Zhao-23 opened this issue 1 month ago • 4 comments

Background

This PR fixes the compatibility issue reported in apache/skywalking#13517, where the make license-dep command fails under Node.js 24 due to incorrect handling of platform-specific npm packages.

Root Cause

The SkyWalking Eyes tool failed to correctly recognize platform-specific npm packages (e.g., @parcel/watcher-linux-x64-musl, @parcel/watcher-win32-arm64), resulting in license parsing errors under newer Node.js versions.

Solution

  • Added precise cross-platform package pattern recognition in the npm resolver.
  • Implemented OS/architecture matching via regex (e.g., -linux-x64-musl$, -win32-arm64$).
  • Updated logic to skip unsupported or non-current platform packages before license parsing.

Verification

  • Tested with Node.js 24.6.0 and npm 11.5.1 on Linux and macOS.
  • All licenses are now correctly identified when running make license-dep in the banyandb project.

Related Issue

Fixes apache/skywalking#13517

XL-Zhao-23 avatar Nov 12 '25 06:11 XL-Zhao-23

Please fix CI and take a look at Copilot review comments.

wu-sheng avatar Nov 12 '25 12:11 wu-sheng

Sorry for the long delay. I've completed the revisions. Could you please help rerun the CI and review the code?

XL-Zhao-23 avatar Nov 23 '25 13:11 XL-Zhao-23

I fixed the CI errors.

XL-Zhao-23 avatar Nov 24 '25 08:11 XL-Zhao-23

@kezhenxu94 Please take a look.

@hanahmily I think you could build a local version, and have a try?

wu-sheng avatar Nov 24 '25 08:11 wu-sheng