jest icon indicating copy to clipboard operation
jest copied to clipboard

[Feature/Bug Report] Discourage/disable "./" as one of the "moduleDirectories"

Open davidroeca opened this issue 5 years ago • 6 comments

🐛 Bug Report

This is a bug report pertaining to the use of "./" as one of the moduleDirectories. In particular, I was using a scoped package that had the same subdirectory name as a non-scoped package (e.g. @my-scope/my-package relies on my-package as an external/peer dependency). This prevented @my-scope/my-package from having access to my-package.

To Reproduce

See this repo

Expected behavior

Ideally, this behavior is not allowed. We should instead encourage people to use moduleNameMapper.

Link to repl or repo (highly encouraged)

Again see https://github.com/davidroeca/jest-shadowing-issue

envinfo

  System:
    OS: Linux 5.4 Linux Mint 20 (Ulyana)
    CPU: (8) x64 Intel(R) Core(TM) i5-8350U CPU @ 1.70GHz
  Binaries:
    Node: 14.9.0 - ~/.asdf/installs/nodejs/14.9.0/bin/node
    Yarn: 1.22.4 - ~/.asdf/shims/yarn
    npm: 6.14.8 - ~/.asdf/installs/nodejs/14.9.0/bin/npm
  npmPackages:
    jest: ^26.4.2 => 26.4.2

davidroeca avatar Sep 10 '20 22:09 davidroeca

Apologies, hit enter too soon. Edited the issue with the correct info.

davidroeca avatar Sep 10 '20 22:09 davidroeca

I have also run into this issue (@emotion/react having react as a dependency). @davidroeca I think the Needs Repro label can be removed as there seems to be a reproduction.

geritol avatar Apr 04 '21 20:04 geritol

for the record:

// jest.config.js
module.exports = {
  // ...
-  moduleDirectories: ["node_modules", "."]
+  moduleDirectories: ["node_modules", "<rootDir>"],
};

solves the issue

geritol avatar Apr 04 '21 21:04 geritol

This issue is stale because it has been open for 1 year with no activity. Remove stale label or comment or this will be closed in 30 days.

github-actions[bot] avatar Feb 17 '23 16:02 github-actions[bot]

I see no mentions/cautions here. I believe it is still at the very least worth discouraging somewhere in the docs.

davidroeca avatar Feb 17 '23 17:02 davidroeca

This issue is stale because it has been open for 1 year with no activity. Remove stale label or comment or this will be closed in 30 days.

github-actions[bot] avatar Feb 17 '24 18:02 github-actions[bot]

This issue was closed because it has been stalled for 30 days with no activity. Please open a new issue if the issue is still relevant, linking to this one.

github-actions[bot] avatar Mar 18 '24 19:03 github-actions[bot]

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. Please note this issue tracker is not a help forum. We recommend using StackOverflow or our discord channel for questions.

github-actions[bot] avatar Apr 18 '24 00:04 github-actions[bot]