infctr / eslint-plugin-typescript-sort-keys

A linter plugin to require sorting interface and string enum keys
ISC License
143 stars 25 forks source link

Fixed react-native warning about package.json export #28

Closed worldlee78 closed 3 years ago

worldlee78 commented 3 years ago

When running react-native under Node.js 14.x on a project that uses npm modules which specify the new exports field in package.json, react-native will print the following warning:

warn Package uuid has been ignored because it contains invalid configuration. Reason: Package subpath './package.json' is not defined by "exports" in /PATH_TO_CURRENT_PROJECT/node_modules/eslint-plugin-typescript-sort-keys/package.json

The reason is that, starting in Node.js 14.x, as soon as an npm module defines the exports field in package.json, only the files listed there are exported. If package.json is not included in that list, it's no longer possible to do things like require.resolve('uuid/package.json');.

So package.json should be defined in exports to be available for import.

This is linked to #27

infctr commented 3 years ago

@worldlee78 Appreciate the fix!