eslint-plugin-import
eslint-plugin-import copied to clipboard
`import/namespace` failures when importing chai@5
Upgrading from chai v4 to chai v5 yields the following eslint error:
cfpathcheck/test/cfpathcheck.spec.js
1:24 error Parse errors in imported module 'chai': Unexpected token ; (146:10) import/namespace
The line of code in question is as follows:
import { expect } from 'chai';
For now I have added an ignore annotation to my code so that the linting passes, but it would be good to know why the import/namespace
rule has started to fail with this new, ESM-only, version of chai.
Thank you 😸
What’s your eslint config? A parse error is not expected.
What’s your eslint config? A parse error is not expected.
env:
browser: true
es6: true
extends:
- xo
- plugin:import/recommended
parserOptions:
ecmaVersion: 2021
sourceType: module
plugins:
- import
- redos
rules:
arrow-parens: 0
object-curly-spacing: 0
import/no-unresolved: [2]
redos/no-vulnerable: error
overrides:
- files:
- "**/*.spec.js"
rules:
redos/no-vulnerable: 'off'
(fwiw i would advise against using any "recommended" configs; use the airbnb config for the best settings for this plugin)
Is there any way you could make a repro repo for this? I don't see anything in https://unpkg.com/browse/[email protected]/lib/chai/interface/expect.js that should fail to parse, but with a repro i can debug it locally.
(fwiw i would advise against using any "recommended" configs; use the airbnb config for the best settings for this plugin)
Interesting - thanks. Does the README need to be updated to advise this?
I will prepare a repro for this later.
Yes, it probably should be, I'll get on that.
I get this same error when attempting to import marked
. Apparently from this line https://github.com/markedjs/marked/blob/d342aaa0f8a0f5987ffb8b5898f9e2e01ecab784/src/Tokenizer.ts#L72