facebook/flow

If a `name_mapper` points to a non-existent file, it should tell user that the mapped path doesn't exist (instead of the original path)

Open

#7 427 ouverte le 1 févr. 2019

Voir sur GitHub
 (5 commentaires) (0 réactions) (0 assignés)Rust (1 885 forks)batch import
enhancementerror messagesgood first issuemodule resolution

Métriques du dépôt

Stars
 (22 203 stars)
Métriques de merge PR
 (Aucune PR mergée en 30 j)

Description

module.name_mapper='.*\.css$' -> '<PROJECT_ROOT>/css-modules-stub.js.flow'
import foo from `foo.css`

Flow version: 0.91.

Expected behavior

Error should say:

Cannot find module 'foo.css' (after it was remapped to '<PROJECT_ROOT>/css-modules-stub.js.flow', check your .flowconfig mapper paths exist)

Actual behavior

Cannot find module 'foo.css' 

Related: https://github.com/facebook/flow/issues/3889


Another example:

module.name_mapper='debug' -> 'empty/object'

If empty/object doesn't exist, there is no message to say that is the cause of Cannot resolve module 'debug' error.


There are many cases where name_mapper breaks things by the user wouldn't know. Try this to show the errors that are generated:

module.name_mapper='.*' -> '<PROJECT_ROOT>/some-empty-stub.js'

Then you get errors like this:

Cannot import Component because there is no Component export in react. Did you mean import Component from "..."?

But the cause is that the name_mapper has mapped to a file that doesn't export anything.

Related

Guide contributeur