From c8301ef3c5a99e1cc01a26753932def4f4ca7598 Mon Sep 17 00:00:00 2001 From: Guy Bedford Date: Wed, 15 Sep 2021 02:52:40 -0700 Subject: [PATCH 1/3] module: subpath folder mappings EOL --- doc/api/deprecations.md | 10 +- doc/api/esm.md | 82 +++++++--------- doc/api/packages.md | 45 --------- lib/internal/modules/cjs/loader.js | 16 +--- lib/internal/modules/esm/resolve.js | 93 +++++++------------ .../test-esm-exports-deprecations.mjs | 5 - test/es-module/test-esm-exports.mjs | 15 +-- test/es-module/test-esm-imports.mjs | 4 +- .../es-module/test-esm-local-deprecations.mjs | 37 -------- .../es-modules/pkgimports/package.json | 2 +- .../node_modules/pkgexports/package.json | 9 +- 11 files changed, 81 insertions(+), 237 deletions(-) delete mode 100644 test/es-module/test-esm-local-deprecations.mjs diff --git a/doc/api/deprecations.md b/doc/api/deprecations.md index d1ed3a23c26d7a..f2d52e3a7f4140 100644 --- a/doc/api/deprecations.md +++ b/doc/api/deprecations.md @@ -2706,6 +2706,9 @@ Use `fs.rm(path, { recursive: true, force: true })`, ### DEP0148: Folder mappings in `"exports"` (trailing `"/"`) - -> Stability: 0 - Deprecated: Use subpath patterns instead. - -Before subpath patterns were supported, a trailing `"/"` suffix was used to -support folder mappings: - -```json -{ - "exports": { - "./features/": "./features/" - } -} -``` - -_This feature will be removed in a future release._ - -Instead, use direct [subpath patterns][]: - -```json -{ - "exports": { - "./features/*": "./features/*.js" - } -} -``` - -The benefit of patterns over folder exports is that packages can always be -imported by consumers without subpath file extensions being necessary. - ### Exports sugar