bug: Sharp 0.35 fails in dev after external symlink targets dist directory
Les mainteneurs répondent en général sous 1 jour
@7430souvik y travaille déjà.
Depuis le 6/8/2026.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 68/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- Calme
- Stack technique
- node.js, typescript
- Domaine
- build-system, cli
Piste de recherche
Start with packages/cli-v3/src/build/externals.ts, especially the external-linking logic at lines 30–78. Use the linked reproduction repo and run pnpm dev with a valid project ref to observe the generated Sharp symlink and indexing failure. Done when Sharp's package root is linked, task indexing succeeds, and the local worker becomes ready.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Provide environment information
System:
OS: macOS 26.5.2
CPU: (12) arm64 Apple M2 Pro
Memory: 102.86 MB / 16.00 GB
Shell: 5.9 - /bin/zsh
Binaries:
Node: 24.15.0
npm: 11.12.1
pnpm: 11.10.0
bun: 1.3.14
Describe the bug
When trigger dev processes a task importing [email protected], automatic external detection creates the generated worker's node_modules/sharp symlink pointing to Sharp's dist directory instead of its package root.
This bypasses Sharp's root package.json, which defines its dist/index.mjs and dist/index.cjs entry points. Node consequently looks for sharp/index.js, which does not exist, and task indexing fails with ERR_MODULE_NOT_FOUND.
Importing the same Sharp installation directly outside Trigger.dev works correctly.
Expected behavior: the task is indexed and the local worker becomes ready.
Reproduction repo
https://github.com/benpixel/trigger-sharp-035-repro
To reproduce
-
Clone and install the reproduction:
git clone https://github.com/benpixel/trigger-sharp-035-repro.git cd trigger-sharp-035-repro pnpm install -
Authenticate the Trigger.dev CLI and provide a valid project ref:
TRIGGER_PROJECT_REF=proj_your_project_ref pnpm dev -
Task indexing fails with:
Error: Could not import trigger/sharp-task.ts Error: Cannot find package '.../node_modules/sharp/index.js' imported from '.../trigger/sharp-task.mjs' Did you mean to import "sharp/dist/index.cjs"?
Additional information
Confirmed with:
[email protected]@trigger.dev/[email protected][email protected]- Node.js 24.15.0
- pnpm 11.10.0
The generated symlink was inspected while trigger dev was running:
.trigger/tmp/build-*/node_modules/sharp
-> node_modules/.pnpm/[email protected]_*/node_modules/sharp/dist
Importing Sharp directly succeeds:
node --input-type=module -e 'const { default: sharp } = await import("sharp"); console.log(sharp.versions.sharp)'
0.35.3
Controls:
- Pinning Sharp to
0.34.5allows the local worker to become ready. - Setting
build.autoDetectExternaltofalsealso avoids the failure, but disables automatic externalization globally. - The minimal reproduction contains no Next.js dependency.
The relevant external-linking implementation appears to be here:
- Langage dominant
- TypeScript
- Étoiles
- 16.5k
- Forks
- 1.5k
- Merge moyen
- 1 j 15 h
- PR mergées (30 j)
- 17
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de triggerdotdev/trigger.dev
-
bug: retry.fetch ignores the caller's abort signal and retries aborted requestsPeut-être à nouveau libre Une pull request pour cette issue a été fermée sans être fusionnée. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
triggerdotdev/trigger.dev#5116 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
bug: Chat transport crashes on Safari < 17.4: AbortSignal.any is not a functionPeut-être à nouveau libre Une pull request pour cette issue a été fermée sans être fusionnée. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 83/100
triggerdotdev/trigger.dev#5098 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
bug: Side menu items lose their active state on detail pagesPeut-être à nouveau libre Une pull request pour cette issue a été fermée sans être fusionnée. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
triggerdotdev/trigger.dev#5088 ·
Les mainteneurs répondent en général sous 1 jour
-
bug: RBAC loader logs "plugin found but failed to load" when @triggerdotdev/plugins is simply not installedPeut-être à nouveau libre @itsfaryal l’a pris il y a 17 jours, et aucune pull request n’est ouverte. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
triggerdotdev/trigger.dev#5083 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 83/100
triggerdotdev/trigger.dev#5072 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de triggerdotdev/trigger.dev
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour
-
bug platform-android
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
Termix-SSH/Mobile#146 · 1 commentaire ·
Les mainteneurs répondent en général sous 2 jours
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 66/100
devswha/herdr-web-ui#3875 ·
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
-
area: runtime chore cli consistency dependencies developer-experience difficulty: easy discovery documentation enhancement good first issue help wanted hygiene json-output packaging priority: P3 tests version
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 1 jour