-
-
Notifications
You must be signed in to change notification settings - Fork 35.4k
Support clearing Node.js cache for package.json #54924
Copy link
Copy link
Open
Labels
feature requestIssues that request new features to be added to Node.js.Issues that request new features to be added to Node.js.loadersIssues and PRs related to ES module loadersIssues and PRs related to ES module loadersnever-staleMark issue so that it is never considered staleMark issue so that it is never considered stale
Metadata
Metadata
Assignees
Labels
feature requestIssues that request new features to be added to Node.js.Issues that request new features to be added to Node.js.loadersIssues and PRs related to ES module loadersIssues and PRs related to ES module loadersnever-staleMark issue so that it is never considered staleMark issue so that it is never considered stale
Type
Projects
Status
Triaged
What is the problem this feature will solve?
When a long-running Node.js process is active and a package.json file is modified (for example, by adding "type": "module"), Node.js does not detect this change. It continues treating the package as CommonJS, which results in an error like Unexpected token 'export' when attempting to use ES modules.
This is crucial for us at bit, where we run a background process called “bit server” that manages the local development workspace. Among its tasks is creating new web components, which initially have a package.json without "type": "module". If the component is later determined to be ESM, the package.json is updated accordingly. (Explaining why this can’t be handled differently is beyond the scope of this feature request).
What is the feature you are proposing to solve the problem?
I propose adding an API that allows clearing the cached information related to the package.json of a specific module (or optionally clearing the cache for all modules). Either option would solve the issue.
What alternatives have you considered?
Restarting the Node.js process, but this results in a poor user experience.