Skip to content

Unable to resolve a package by its own name #289

Open
@fasttime

Description

This is a reminder that package self-referencing is not supported at this time.

package.json

{
  "name": "my-package",
  "main": "./index.js",
  "dependencies": {
    "resolve": "*"
  },
  "exports": {
    ".": "./index.js"
  }
}

index.js

const resolve = require('resolve/sync');

// prints full path of index.js
console.log(`require.resolve: ${require.resolve('my-package')}`);

// throws MODULE_NOT_FOUND
console.log(`resolve: ${resolve('my-package')}`);

DEMO LINK


I imagine this must be a known limitation, since other features linked to module resolution in Node like package imports are not supported either. I'm reporting this here anyway because I could not find a reference to this in the documentation or in any of the other issues.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions