Skip to content

[Feature]: Support import.meta.resolve + Node Specific Meta Values #8008

@joealden

Description

@joealden

What problem does this feature solve?

Node recently added support for the following (currently in RC status):

As webpack + rspack already handle import.meta.url, I feel like it wouldn't be too much of a stretch to support these?

Currently in rspack:

  • import.meta.dirname is replaced by /* unsupported import.meta.dirname */ undefined
  • import.meta.filename is replaced by /* unsupported import.meta.filename */ undefined
  • import.meta.resolve is replaced by ({}).resolve

I'm not sure how webpack handles this today, but it might be worth aligning with the webpack team regardless? And even if we can't support these (in the short term or long term), should the built no error/warn if these are encountered?

What does the proposed API of configuration look like?

I guess maybe node.__filename and node.__dirname could impact these (see https://rspack.dev/config/node), or new options could be added (either generic node.filename and node.dirname properties that handle both CJS and ESM, or a new node.import property just for ESM)?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions