Fix ReferenceError: __dirname is not defined in ESM module #86
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR fixes a
ReferenceError: __dirname is not defined
that occurs when running the plugin in Node.js environments that use ESM modules.Problem
The plugin was using the CommonJS
__dirname
variable in therunNcu
method:However, since the project is configured as an ESM module (
"type": "module"
in package.json),__dirname
is not available and causes a runtime error:Solution
Replaced the CommonJS
__dirname
with the ESM equivalent:This change:
import { fileURLToPath } from 'node:url'
importfileURLToPath(import.meta.url)
to get the current module's file pathpath.dirname()
to extract the directory pathThe fix maintains the same functionality while being compatible with ESM modules.
Testing
__dirname
references in the codebaseFixes #85.
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.