Skip to content

fix: replace vulnerable xlsx dependency - #21509

Open
alexandroit wants to merge 1 commit into
baidu:masterfrom
alexandroit:security/replace-vulnerable-xlsx
Open

fix: replace vulnerable xlsx dependency#21509
alexandroit wants to merge 1 commit into
baidu:masterfrom
alexandroit:security/replace-vulnerable-xlsx

Conversation

@alexandroit

Copy link
Copy Markdown

What

Replace the direct xlsx@^0.18.5 dependency of the amis package with the npm
alias xlsx@npm:@stackline/xlsx@^1.0.6. Existing imports continue to resolve as
xlsx; no component or public API changes are required.

Why

The currently resolved direct dependency is affected by:

@stackline/xlsx is an independent Apache-2.0 SheetJS-compatible fork with
regression coverage for both advisories. It has no runtime dependencies and
requires Node 20 or newer, matching the current build and test environment.

Disclosure: I maintain @stackline/xlsx. Package and source links are
https://www.npmjs.com/package/@stackline/xlsx and
https://github.com/alexandroit/sheetjs.

How

  • Built amis-formula, amis-core, amis-ui, and amis successfully.
  • Built amis-editor-core and amis-editor successfully.
  • Ran the repository typecheck successfully.
  • Ran the InputExcel Jest suite: 11 tests passed.
  • Ran an XLSX write/read and prototype-pollution smoke test successfully.

Scope note: amis-editor-core separately reaches xlsx@0.17.5 through
i18n-command -> node-xlsx. This PR only fixes the direct production dependency
of the published amis package and does not claim to remove that separate
transitive path from the whole monorepo.

@github-actions

Copy link
Copy Markdown

👍 Thanks for this!
🏷 I have applied any labels matching special text in your issue.

Please review the labels and make any necessary changes.

@github-actions github-actions Bot added the fix label Aug 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant