logseq / logseq/logseq-plugin-samples

Node 22 broken for ARM macOS

Open
#39 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
CSS
Stars
383
Forks
97
PR merge metrics
No merged PRs in 30d

Description

I've been testing a variety of sample plugins, and they all seem broken during build. i came across a reference to the error that was happening during the build, and it suggested that the issue has something to do with an incompabitiblity between node 22 and something in `@libseq/libs` that is not in node 20. I used nvm to switch to node 20, and each sample repo built successfully.

**Node 22:**
```
ogseq-plugin-samples/logseq-a-translator on  master [!?] is 📦 v0.0.1 via  v22.9.0 via 💎 v3.0.5 took 3s
❯ npm run build

> logseq-a-translator@0.0.1 build
> parcel build --public-url . --no-source-maps index.html

(node:95127) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
⠙ Building index.html...
Browserslist: caniuse-lite is outdated. Please run:
npx browserslist@latest --update-db
Why you should do it regularly: https://github.com/browserslist/browserslist#brows
⠸ Building index.ts...
Browserslist: caniuse-lite is outdated. Please run:
npx browserslist@latest --update-db
Why you should do it regularly: https://github.com/browserslist/browserslist#brows
⠼ Building index.ts...
node(95127,0x16fd9b000) malloc: Incorrect checksum for freed object 0x11d8c0e00: probably modified after being freed.
Corrupt value: 0x10220a4930383839
node(95127,0x178407000) malloc: Incorrect checksum for freed object 0x10a847600: probably modified after being freed.
Corrupt value: 0x10220a4930383839
node(95127,0x178407000) malloc: *** set a breakpoint in malloc_error_break to debug
node(95127,0x16fd9b000) malloc: *** set a breakpoint in malloc_error_break to debug
zsh: abort npm run build
```

**Node 20:**
```
logseq-plugin-samples/logseq-a-translator on  master [!?] is 📦 v0.0.1 via  v20.18.0 via 💎 v3.0.5 took 3s
❯ npm run build

> logseq-a-translator@0.0.1 build
> parcel build --public-url . --no-source-maps index.html

⠙ Building index.html...
Browserslist: caniuse-lite is outdated. Please run:
npx browserslist@latest --update-db
Why you should do it regularly: https://github.com/browserslist/browserslist#brows
⠹ Building index.html...
Browserslist: caniuse-lite is outdated. Please run:
npx browserslist@latest --update-db
Why you should do it regularly: https://github.com/browserslist/browserslist#brows
⠼ Building lsplugin.user.js...
Browserslist: caniuse-lite is outdated. Please run:
npx browserslist@latest --update-db
Why you should do it regularly: https://github.com/browserslist/browserslist#brows
✨ Built in 1.09s

dist/index.html 383 B 471ms
dist/index.9947b3c0.js 90.11 KB 213ms

```

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing `npm run build` in a sample plugin with Node 22 and Node 20, focusing on the build of `index.ts` and the reported `@libseq/libs` incompatibility. Compare the dependency and build configuration used by the sample repositories; done means the samples build successfully on ARM macOS with Node 22.

Written by the indexing model from the issue text.

Assessment

Tech stack
nodejs
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.