SonarSource / eslint-plugin-sonarjs

SonarJS rules for ESLint

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

sonarjs/no-duplicate-string : ignore import expressions

a-tarasyuk opened this issue · comments

I want to report a bug.

Reproducer

import("./main");
import("./main");
import("./main");

Expected behavior
No error

eslint-plugin-sonarjs version: 0.10.0
eslint version: 7.32.0
Node.js version: 14.17.1
Rule key: no-duplicate-string

Why would you want to import the same module 3 times?

@vilchik-elena This is just a simplified example. no-duplicate-string ignores import declarations and cjs requires, however, import expressions are not ignored. Does it make sense to ignore them?

import "module-name-long";
import "module-name-long";
import "module-name-long";

const EXCLUDED_CONTEXTS = [
'ImportDeclaration',


code: `// CallExpression 'require'
const a = require("module-name-long").a;
const b = require("module-name-long").b;
const c = require("module-name-long").c;

isRequireContext(parent, context) ||