[BUG]: `events` is required but not declared in dependencies

Ouverte Adaptée aux débutants
#8,163 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
2/5
Temps estimé
1-3 heures
Accessibilité débutants
83/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
javascript, webpack

Piste de recherche

Commencez par lire package.json et les trois fichiers nommés dans le rapport : src/lib/events.js, src/snapshot/toimage.js et src/snapshot/svgtoimg.js. Reproduisez l’échec avec la commande stricte pnpm install et webpack fournie. Le travail est terminé lorsque le package déclare la dépendance events requise et que la compilation de production réussit avec des installations strictes.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Description

src/lib/events.js, src/snapshot/toimage.js and src/snapshot/svgtoimg.js call require('events'), but events is not in the dependencies of package.json.

Since webpack 5 no longer polyfills Node.js core modules, the bundler resolves events to whatever version the package manager happens to hoist.
Today, it only resolves through a transitive dependency: regl-scatter2d → glslify → glslify-deps → events.
With strict installs (pnpm with hoist=false, Yarn PnP), the build fails.
With hoisted installs, another package's events can be picked up instead (e.g. [email protected]).

This happens with the latest release (4.2.0) and with 2.x.
events is the only Node.js core module still required under src/ (see also #6014 for older ones).

Steps to reproduce

package.json:

{
  "dependencies": { "plotly.js": "4.2.0" },
  "devDependencies": { "webpack": "5.106.0", "webpack-cli": "6.0.1" }
}

src/index.js:

import Plotly from "plotly.js/lib/core";
console.log(Plotly.version);
pnpm install --config.hoist=false
npx webpack --mode production
ERROR in ./node_modules/.pnpm/[email protected]/node_modules/plotly.js/src/lib/events.js 3:19-49
Module not found: Error: Can't resolve 'events' in '.../node_modules/.pnpm/[email protected]/node_modules/plotly.js/src/lib'
Langage dominant
JavaScript
Étoiles
18.4k
Forks
2.1k
Merge moyen
1 j 3 h
PR mergées (30 j)
9

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de plotly/plotly.js

Toutes les issues de plotly/plotly.js

Issues similaires

Plus d'issues JavaScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.