Thanks to visit codestin.com
Credit goes to github.com

Skip to content

[no-restricted-imports] path should be a path.relative()d string, but got "./types" #4491

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
3 tasks done
n1kk opened this issue Jan 29, 2022 · 1 comment · Fixed by #4494
Closed
3 tasks done

[no-restricted-imports] path should be a path.relative()d string, but got "./types" #4491

n1kk opened this issue Jan 29, 2022 · 1 comment · Fixed by #4494
Labels
accepting prs Go ahead, send a pull request that resolves this issue bug Something isn't working package: eslint-plugin Issues related to @typescript-eslint/eslint-plugin

Comments

@n1kk
Copy link

n1kk commented Jan 29, 2022

  • I have tried restarting my IDE, and the issue persists.
  • I have updated to the latest version of the packages.
  • I have read the FAQ and my problem is not listed.

no-restricted-imports throws an error on a type import if any pattern is specified. It complains that a relative path is not a relative path.

If the pattern is removed from the rule leaving just "@typescript-eslint/no-restricted-imports": "error", then no error is thrown.

Also, no error is thrown if the type is removed from the import.

Oops! Something went wrong! :(

ESLint: 8.8.0

RangeError: path should be a `path.relative()`d string, but got "./types"
Occurred while linting ~/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src/index.ts:2
Rule: "@typescript-eslint/no-restricted-imports"

Repro

Repro repo

eslint config:

module.exports = {
    root: true,
    env: {
        node: true,
        es6: true,
    },
    extends: ["eslint:recommended"],
    parserOptions: {
        sourceType: "module",
        project: ["./tsconfig.json"],
    },
    plugins: ["@typescript-eslint"],
    overrides: [
        {
            files: ["*.ts"],
            parser: "@typescript-eslint/parser",
            parserOptions: {
                sourceType: "module",
                project: ["./tsconfig.json"],
            },
            plugins: ["@typescript-eslint"],
            extends: ["plugin:@typescript-eslint/recommended"],
            rules: {
                "@typescript-eslint/no-restricted-imports": [
                    "error",
                    {
                        patterns: [
                            {
                                group: ["fail"],
                                message: "Please do not load from 'fail'.",
                                allowTypeImports: true,
                            },
                        ],
                    },
                ],
            }
        }
    ]
};

ts code:

import { myConst } from "./fail";
import type { MyType } from "./types";

function func(arg: MyType) {
    return myConst
}

tsconfig:

{
  "compilerOptions": {
    "target": "ESNext",
    "lib": ["esnext"],
    "checkJs": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "esModuleInterop": true,
    "isolatedModules": true,
    "sourceMap": true,
    "importsNotUsedAsValues": "error",
    "module": "esnext",
    "allowJs": true,
    "moduleResolution": "node",
    "resolveJsonModule": true,
    "incremental": true,
    "downlevelIteration": true,
    "declaration": true,
    "outDir": "dist"
  },
  "include": ["**/*.ts"],
  "exclude": ["node_modules"]
}

Expected Result

No error should be thrown.

Actual Result

An error is thrown:

Oops! Something went wrong! :(

ESLint: 8.8.0

RangeError: path should be a `path.relative()`d string, but got "./types"
Occurred while linting /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src/index.ts:2
Rule: "@typescript-eslint/no-restricted-imports"
    at throwError (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/ignore/index.js:364:9)
    at checkPath (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/ignore/index.js:383:12)
    at Ignore._test (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/ignore/index.js:504:5)
    at Ignore.ignores (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/ignore/index.js:549:17)
    at /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-restricted-imports.js:121:36
    at Array.every (<anonymous>)
    at isAllowedTypeImportPattern (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-restricted-imports.js:120:43)
    at ImportDeclaration (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-restricted-imports.js:129:26)
    at ruleErrorHandler (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/eslint/lib/linter/linter.js:1107:28)
    at /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/eslint/lib/linter/safe-emitter.js:45:58

Additional Info

debug dump: ``` npx eslint --ext ".ts,.js" src --debug eslint:rules Loading rule 'accessor-pairs' (remaining=285) +0ms eslint:rules Loading rule 'array-bracket-newline' (remaining=284) +2ms eslint:rules Loading rule 'array-bracket-spacing' (remaining=283) +0ms eslint:rules Loading rule 'array-callback-return' (remaining=282) +0ms eslint:rules Loading rule 'array-element-newline' (remaining=281) +0ms eslint:rules Loading rule 'arrow-body-style' (remaining=280) +0ms eslint:rules Loading rule 'arrow-parens' (remaining=279) +1ms eslint:rules Loading rule 'arrow-spacing' (remaining=278) +0ms eslint:rules Loading rule 'block-scoped-var' (remaining=277) +0ms eslint:rules Loading rule 'block-spacing' (remaining=276) +0ms eslint:rules Loading rule 'brace-style' (remaining=275) +1ms eslint:rules Loading rule 'callback-return' (remaining=274) +0ms eslint:rules Loading rule 'camelcase' (remaining=273) +0ms eslint:rules Loading rule 'capitalized-comments' (remaining=272) +0ms eslint:rules Loading rule 'class-methods-use-this' (remaining=271) +0ms eslint:rules Loading rule 'comma-dangle' (remaining=270) +1ms eslint:rules Loading rule 'comma-spacing' (remaining=269) +0ms eslint:rules Loading rule 'comma-style' (remaining=268) +0ms eslint:rules Loading rule 'complexity' (remaining=267) +0ms eslint:rules Loading rule 'computed-property-spacing' (remaining=266) +0ms eslint:rules Loading rule 'consistent-return' (remaining=265) +1ms eslint:rules Loading rule 'consistent-this' (remaining=264) +0ms eslint:rules Loading rule 'constructor-super' (remaining=263) +0ms eslint:rules Loading rule 'curly' (remaining=262) +0ms eslint:rules Loading rule 'default-case' (remaining=261) +0ms eslint:rules Loading rule 'default-case-last' (remaining=260) +0ms eslint:rules Loading rule 'default-param-last' (remaining=259) +0ms eslint:rules Loading rule 'dot-location' (remaining=258) +1ms eslint:rules Loading rule 'dot-notation' (remaining=257) +0ms eslint:rules Loading rule 'eol-last' (remaining=256) +0ms eslint:rules Loading rule 'eqeqeq' (remaining=255) +0ms eslint:rules Loading rule 'for-direction' (remaining=254) +0ms eslint:rules Loading rule 'func-call-spacing' (remaining=253) +0ms eslint:rules Loading rule 'func-name-matching' (remaining=252) +0ms eslint:rules Loading rule 'func-names' (remaining=251) +1ms eslint:rules Loading rule 'func-style' (remaining=250) +0ms eslint:rules Loading rule 'function-call-argument-newline' (remaining=249) +0ms eslint:rules Loading rule 'function-paren-newline' (remaining=248) +0ms eslint:rules Loading rule 'generator-star-spacing' (remaining=247) +0ms eslint:rules Loading rule 'getter-return' (remaining=246) +0ms eslint:rules Loading rule 'global-require' (remaining=245) +0ms eslint:rules Loading rule 'grouped-accessor-pairs' (remaining=244) +1ms eslint:rules Loading rule 'guard-for-in' (remaining=243) +0ms eslint:rules Loading rule 'handle-callback-err' (remaining=242) +0ms eslint:rules Loading rule 'id-blacklist' (remaining=241) +1ms eslint:rules Loading rule 'id-denylist' (remaining=240) +2ms eslint:rules Loading rule 'id-length' (remaining=239) +0ms eslint:rules Loading rule 'id-match' (remaining=238) +0ms eslint:rules Loading rule 'implicit-arrow-linebreak' (remaining=237) +0ms eslint:rules Loading rule 'indent' (remaining=236) +1ms eslint:rules Loading rule 'indent-legacy' (remaining=235) +1ms eslint:rules Loading rule 'init-declarations' (remaining=234) +0ms eslint:rules Loading rule 'jsx-quotes' (remaining=233) +0ms eslint:rules Loading rule 'key-spacing' (remaining=232) +0ms eslint:rules Loading rule 'keyword-spacing' (remaining=231) +1ms eslint:rules Loading rule 'line-comment-position' (remaining=230) +1ms eslint:rules Loading rule 'linebreak-style' (remaining=229) +0ms eslint:rules Loading rule 'lines-around-comment' (remaining=228) +0ms eslint:rules Loading rule 'lines-around-directive' (remaining=227) +0ms eslint:rules Loading rule 'lines-between-class-members' (remaining=226) +0ms eslint:rules Loading rule 'max-classes-per-file' (remaining=225) +0ms eslint:rules Loading rule 'max-depth' (remaining=224) +1ms eslint:rules Loading rule 'max-len' (remaining=223) +0ms eslint:rules Loading rule 'max-lines' (remaining=222) +0ms eslint:rules Loading rule 'max-lines-per-function' (remaining=221) +0ms eslint:rules Loading rule 'max-nested-callbacks' (remaining=220) +0ms eslint:rules Loading rule 'max-params' (remaining=219) +1ms eslint:rules Loading rule 'max-statements' (remaining=218) +0ms eslint:rules Loading rule 'max-statements-per-line' (remaining=217) +0ms eslint:rules Loading rule 'multiline-comment-style' (remaining=216) +0ms eslint:rules Loading rule 'multiline-ternary' (remaining=215) +0ms eslint:rules Loading rule 'new-cap' (remaining=214) +0ms eslint:rules Loading rule 'new-parens' (remaining=213) +0ms eslint:rules Loading rule 'newline-after-var' (remaining=212) +1ms eslint:rules Loading rule 'newline-before-return' (remaining=211) +0ms eslint:rules Loading rule 'newline-per-chained-call' (remaining=210) +0ms eslint:rules Loading rule 'no-alert' (remaining=209) +0ms eslint:rules Loading rule 'no-array-constructor' (remaining=208) +0ms eslint:rules Loading rule 'no-async-promise-executor' (remaining=207) +1ms eslint:rules Loading rule 'no-await-in-loop' (remaining=206) +0ms eslint:rules Loading rule 'no-bitwise' (remaining=205) +0ms eslint:rules Loading rule 'no-buffer-constructor' (remaining=204) +0ms eslint:rules Loading rule 'no-caller' (remaining=203) +0ms eslint:rules Loading rule 'no-case-declarations' (remaining=202) +0ms eslint:rules Loading rule 'no-catch-shadow' (remaining=201) +0ms eslint:rules Loading rule 'no-class-assign' (remaining=200) +0ms eslint:rules Loading rule 'no-compare-neg-zero' (remaining=199) +0ms eslint:rules Loading rule 'no-cond-assign' (remaining=198) +1ms eslint:rules Loading rule 'no-confusing-arrow' (remaining=197) +0ms eslint:rules Loading rule 'no-console' (remaining=196) +0ms eslint:rules Loading rule 'no-const-assign' (remaining=195) +0ms eslint:rules Loading rule 'no-constant-condition' (remaining=194) +0ms eslint:rules Loading rule 'no-constructor-return' (remaining=193) +0ms eslint:rules Loading rule 'no-continue' (remaining=192) +0ms eslint:rules Loading rule 'no-control-regex' (remaining=191) +0ms eslint:rules Loading rule 'no-debugger' (remaining=190) +1ms eslint:rules Loading rule 'no-delete-var' (remaining=189) +0ms eslint:rules Loading rule 'no-div-regex' (remaining=188) +0ms eslint:rules Loading rule 'no-dupe-args' (remaining=187) +0ms eslint:rules Loading rule 'no-dupe-class-members' (remaining=186) +0ms eslint:rules Loading rule 'no-dupe-else-if' (remaining=185) +0ms eslint:rules Loading rule 'no-dupe-keys' (remaining=184) +1ms eslint:rules Loading rule 'no-duplicate-case' (remaining=183) +0ms eslint:rules Loading rule 'no-duplicate-imports' (remaining=182) +0ms eslint:rules Loading rule 'no-else-return' (remaining=181) +0ms eslint:rules Loading rule 'no-empty' (remaining=180) +0ms eslint:rules Loading rule 'no-empty-character-class' (remaining=179) +0ms eslint:rules Loading rule 'no-empty-function' (remaining=178) +0ms eslint:rules Loading rule 'no-empty-pattern' (remaining=177) +1ms eslint:rules Loading rule 'no-eq-null' (remaining=176) +0ms eslint:rules Loading rule 'no-eval' (remaining=175) +0ms eslint:rules Loading rule 'no-ex-assign' (remaining=174) +0ms eslint:rules Loading rule 'no-extend-native' (remaining=173) +0ms eslint:rules Loading rule 'no-extra-bind' (remaining=172) +1ms eslint:rules Loading rule 'no-extra-boolean-cast' (remaining=171) +0ms eslint:rules Loading rule 'no-extra-label' (remaining=170) +0ms eslint:rules Loading rule 'no-extra-parens' (remaining=169) +0ms eslint:rules Loading rule 'no-extra-semi' (remaining=168) +0ms eslint:rules Loading rule 'no-fallthrough' (remaining=167) +0ms eslint:rules Loading rule 'no-floating-decimal' (remaining=166) +0ms eslint:rules Loading rule 'no-func-assign' (remaining=165) +1ms eslint:rules Loading rule 'no-global-assign' (remaining=164) +0ms eslint:rules Loading rule 'no-implicit-coercion' (remaining=163) +0ms eslint:rules Loading rule 'no-implicit-globals' (remaining=162) +0ms eslint:rules Loading rule 'no-implied-eval' (remaining=161) +0ms eslint:rules Loading rule 'no-import-assign' (remaining=160) +0ms eslint:rules Loading rule 'no-inline-comments' (remaining=159) +0ms eslint:rules Loading rule 'no-inner-declarations' (remaining=158) +1ms eslint:rules Loading rule 'no-invalid-regexp' (remaining=157) +0ms eslint:rules Loading rule 'no-invalid-this' (remaining=156) +0ms eslint:rules Loading rule 'no-irregular-whitespace' (remaining=155) +1ms eslint:rules Loading rule 'no-iterator' (remaining=154) +0ms eslint:rules Loading rule 'no-label-var' (remaining=153) +0ms eslint:rules Loading rule 'no-labels' (remaining=152) +0ms eslint:rules Loading rule 'no-lone-blocks' (remaining=151) +1ms eslint:rules Loading rule 'no-lonely-if' (remaining=150) +0ms eslint:rules Loading rule 'no-loop-func' (remaining=149) +0ms eslint:rules Loading rule 'no-loss-of-precision' (remaining=148) +0ms eslint:rules Loading rule 'no-magic-numbers' (remaining=147) +0ms eslint:rules Loading rule 'no-misleading-character-class' (remaining=146) +0ms eslint:rules Loading rule 'no-mixed-operators' (remaining=145) +1ms eslint:rules Loading rule 'no-mixed-requires' (remaining=144) +0ms eslint:rules Loading rule 'no-mixed-spaces-and-tabs' (remaining=143) +0ms eslint:rules Loading rule 'no-multi-assign' (remaining=142) +0ms eslint:rules Loading rule 'no-multi-spaces' (remaining=141) +1ms eslint:rules Loading rule 'no-multi-str' (remaining=140) +0ms eslint:rules Loading rule 'no-multiple-empty-lines' (remaining=139) +0ms eslint:rules Loading rule 'no-native-reassign' (remaining=138) +0ms eslint:rules Loading rule 'no-negated-condition' (remaining=137) +0ms eslint:rules Loading rule 'no-negated-in-lhs' (remaining=136) +0ms eslint:rules Loading rule 'no-nested-ternary' (remaining=135) +1ms eslint:rules Loading rule 'no-new' (remaining=134) +0ms eslint:rules Loading rule 'no-new-func' (remaining=133) +0ms eslint:rules Loading rule 'no-new-object' (remaining=132) +0ms eslint:rules Loading rule 'no-new-require' (remaining=131) +0ms eslint:rules Loading rule 'no-new-symbol' (remaining=130) +0ms eslint:rules Loading rule 'no-new-wrappers' (remaining=129) +0ms eslint:rules Loading rule 'no-nonoctal-decimal-escape' (remaining=128) +0ms eslint:rules Loading rule 'no-obj-calls' (remaining=127) +1ms eslint:rules Loading rule 'no-octal' (remaining=126) +0ms eslint:rules Loading rule 'no-octal-escape' (remaining=125) +0ms eslint:rules Loading rule 'no-param-reassign' (remaining=124) +0ms eslint:rules Loading rule 'no-path-concat' (remaining=123) +0ms eslint:rules Loading rule 'no-plusplus' (remaining=122) +0ms eslint:rules Loading rule 'no-process-env' (remaining=121) +1ms eslint:rules Loading rule 'no-process-exit' (remaining=120) +0ms eslint:rules Loading rule 'no-promise-executor-return' (remaining=119) +0ms eslint:rules Loading rule 'no-proto' (remaining=118) +0ms eslint:rules Loading rule 'no-prototype-builtins' (remaining=117) +0ms eslint:rules Loading rule 'no-redeclare' (remaining=116) +1ms eslint:rules Loading rule 'no-regex-spaces' (remaining=115) +0ms eslint:rules Loading rule 'no-restricted-exports' (remaining=114) +0ms eslint:rules Loading rule 'no-restricted-globals' (remaining=113) +0ms eslint:rules Loading rule 'no-restricted-imports' (remaining=112) +0ms eslint:rules Loading rule 'no-restricted-modules' (remaining=111) +1ms eslint:rules Loading rule 'no-restricted-properties' (remaining=110) +0ms eslint:rules Loading rule 'no-restricted-syntax' (remaining=109) +0ms eslint:rules Loading rule 'no-return-assign' (remaining=108) +1ms eslint:rules Loading rule 'no-return-await' (remaining=107) +0ms eslint:rules Loading rule 'no-script-url' (remaining=106) +0ms eslint:rules Loading rule 'no-self-assign' (remaining=105) +0ms eslint:rules Loading rule 'no-self-compare' (remaining=104) +0ms eslint:rules Loading rule 'no-sequences' (remaining=103) +0ms eslint:rules Loading rule 'no-setter-return' (remaining=102) +0ms eslint:rules Loading rule 'no-shadow' (remaining=101) +1ms eslint:rules Loading rule 'no-shadow-restricted-names' (remaining=100) +0ms eslint:rules Loading rule 'no-spaced-func' (remaining=99) +0ms eslint:rules Loading rule 'no-sparse-arrays' (remaining=98) +0ms eslint:rules Loading rule 'no-sync' (remaining=97) +0ms eslint:rules Loading rule 'no-tabs' (remaining=96) +0ms eslint:rules Loading rule 'no-template-curly-in-string' (remaining=95) +0ms eslint:rules Loading rule 'no-ternary' (remaining=94) +0ms eslint:rules Loading rule 'no-this-before-super' (remaining=93) +1ms eslint:rules Loading rule 'no-throw-literal' (remaining=92) +0ms eslint:rules Loading rule 'no-trailing-spaces' (remaining=91) +0ms eslint:rules Loading rule 'no-undef' (remaining=90) +0ms eslint:rules Loading rule 'no-undef-init' (remaining=89) +0ms eslint:rules Loading rule 'no-undefined' (remaining=88) +0ms eslint:rules Loading rule 'no-underscore-dangle' (remaining=87) +1ms eslint:rules Loading rule 'no-unexpected-multiline' (remaining=86) +0ms eslint:rules Loading rule 'no-unmodified-loop-condition' (remaining=85) +0ms eslint:rules Loading rule 'no-unneeded-ternary' (remaining=84) +0ms eslint:rules Loading rule 'no-unreachable' (remaining=83) +0ms eslint:rules Loading rule 'no-unreachable-loop' (remaining=82) +0ms eslint:rules Loading rule 'no-unsafe-finally' (remaining=81) +0ms eslint:rules Loading rule 'no-unsafe-negation' (remaining=80) +0ms eslint:rules Loading rule 'no-unsafe-optional-chaining' (remaining=79) +1ms eslint:rules Loading rule 'no-unused-expressions' (remaining=78) +0ms eslint:rules Loading rule 'no-unused-labels' (remaining=77) +0ms eslint:rules Loading rule 'no-unused-private-class-members' (remaining=76) +0ms eslint:rules Loading rule 'no-unused-vars' (remaining=75) +0ms eslint:rules Loading rule 'no-use-before-define' (remaining=74) +0ms eslint:rules Loading rule 'no-useless-backreference' (remaining=73) +0ms eslint:rules Loading rule 'no-useless-call' (remaining=72) +1ms eslint:rules Loading rule 'no-useless-catch' (remaining=71) +0ms eslint:rules Loading rule 'no-useless-computed-key' (remaining=70) +0ms eslint:rules Loading rule 'no-useless-concat' (remaining=69) +0ms eslint:rules Loading rule 'no-useless-constructor' (remaining=68) +0ms eslint:rules Loading rule 'no-useless-escape' (remaining=67) +0ms eslint:rules Loading rule 'no-useless-rename' (remaining=66) +0ms eslint:rules Loading rule 'no-useless-return' (remaining=65) +0ms eslint:rules Loading rule 'no-var' (remaining=64) +1ms eslint:rules Loading rule 'no-void' (remaining=63) +0ms eslint:rules Loading rule 'no-warning-comments' (remaining=62) +0ms eslint:rules Loading rule 'no-whitespace-before-property' (remaining=61) +0ms eslint:rules Loading rule 'no-with' (remaining=60) +0ms eslint:rules Loading rule 'nonblock-statement-body-position' (remaining=59) +0ms eslint:rules Loading rule 'object-curly-newline' (remaining=58) +0ms eslint:rules Loading rule 'object-curly-spacing' (remaining=57) +0ms eslint:rules Loading rule 'object-property-newline' (remaining=56) +1ms eslint:rules Loading rule 'object-shorthand' (remaining=55) +0ms eslint:rules Loading rule 'one-var' (remaining=54) +0ms eslint:rules Loading rule 'one-var-declaration-per-line' (remaining=53) +0ms eslint:rules Loading rule 'operator-assignment' (remaining=52) +0ms eslint:rules Loading rule 'operator-linebreak' (remaining=51) +1ms eslint:rules Loading rule 'padded-blocks' (remaining=50) +0ms eslint:rules Loading rule 'padding-line-between-statements' (remaining=49) +0ms eslint:rules Loading rule 'prefer-arrow-callback' (remaining=48) +1ms eslint:rules Loading rule 'prefer-const' (remaining=47) +0ms eslint:rules Loading rule 'prefer-destructuring' (remaining=46) +0ms eslint:rules Loading rule 'prefer-exponentiation-operator' (remaining=45) +0ms eslint:rules Loading rule 'prefer-named-capture-group' (remaining=44) +1ms eslint:rules Loading rule 'prefer-numeric-literals' (remaining=43) +0ms eslint:rules Loading rule 'prefer-object-has-own' (remaining=42) +0ms eslint:rules Loading rule 'prefer-object-spread' (remaining=41) +0ms eslint:rules Loading rule 'prefer-promise-reject-errors' (remaining=40) +0ms eslint:rules Loading rule 'prefer-reflect' (remaining=39) +1ms eslint:rules Loading rule 'prefer-regex-literals' (remaining=38) +0ms eslint:rules Loading rule 'prefer-rest-params' (remaining=37) +0ms eslint:rules Loading rule 'prefer-spread' (remaining=36) +0ms eslint:rules Loading rule 'prefer-template' (remaining=35) +1ms eslint:rules Loading rule 'quote-props' (remaining=34) +0ms eslint:rules Loading rule 'quotes' (remaining=33) +0ms eslint:rules Loading rule 'radix' (remaining=32) +0ms eslint:rules Loading rule 'require-atomic-updates' (remaining=31) +0ms eslint:rules Loading rule 'require-await' (remaining=30) +1ms eslint:rules Loading rule 'require-jsdoc' (remaining=29) +0ms eslint:rules Loading rule 'require-unicode-regexp' (remaining=28) +0ms eslint:rules Loading rule 'require-yield' (remaining=27) +0ms eslint:rules Loading rule 'rest-spread-spacing' (remaining=26) +0ms eslint:rules Loading rule 'semi' (remaining=25) +0ms eslint:rules Loading rule 'semi-spacing' (remaining=24) +0ms eslint:rules Loading rule 'semi-style' (remaining=23) +0ms eslint:rules Loading rule 'sort-imports' (remaining=22) +1ms eslint:rules Loading rule 'sort-keys' (remaining=21) +0ms eslint:rules Loading rule 'sort-vars' (remaining=20) +0ms eslint:rules Loading rule 'space-before-blocks' (remaining=19) +0ms eslint:rules Loading rule 'space-before-function-paren' (remaining=18) +1ms eslint:rules Loading rule 'space-in-parens' (remaining=17) +0ms eslint:rules Loading rule 'space-infix-ops' (remaining=16) +0ms eslint:rules Loading rule 'space-unary-ops' (remaining=15) +0ms eslint:rules Loading rule 'spaced-comment' (remaining=14) +0ms eslint:rules Loading rule 'strict' (remaining=13) +1ms eslint:rules Loading rule 'switch-colon-spacing' (remaining=12) +0ms eslint:rules Loading rule 'symbol-description' (remaining=11) +0ms eslint:rules Loading rule 'template-curly-spacing' (remaining=10) +0ms eslint:rules Loading rule 'template-tag-spacing' (remaining=9) +0ms eslint:rules Loading rule 'unicode-bom' (remaining=8) +1ms eslint:rules Loading rule 'use-isnan' (remaining=7) +0ms eslint:rules Loading rule 'valid-jsdoc' (remaining=6) +0ms eslint:rules Loading rule 'valid-typeof' (remaining=5) +4ms eslint:rules Loading rule 'vars-on-top' (remaining=4) +0ms eslint:rules Loading rule 'wrap-iife' (remaining=3) +0ms eslint:rules Loading rule 'wrap-regex' (remaining=2) +0ms eslint:rules Loading rule 'yield-star-spacing' (remaining=1) +0ms eslint:rules Loading rule 'yoda' (remaining=0) +1ms eslint:cli CLI args: [ '--ext', '.ts,.js', 'src', '--debug' ] +0ms eslint:cli Running on files +1ms eslintrc:config-array-factory Loading JSON config file: /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/package.json +0ms eslintrc:ignore-pattern Create with: [ IgnorePattern { patterns: [ '/**/node_modules/*' ], basePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro', loose: false } ] +0ms eslintrc:ignore-pattern processed: { basePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro', patterns: [ '/**/node_modules/*' ] } +2ms eslintrc:ignore-pattern Create with: [ IgnorePattern { patterns: [ '/**/node_modules/*' ], basePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro', loose: false } ] +0ms eslintrc:ignore-pattern processed: { basePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro', patterns: [ '/**/node_modules/*' ] } +0ms eslint:file-enumerator Start to iterate files: [ 'src' ] +0ms eslint:file-enumerator Directory: /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src +0ms eslint:file-enumerator Enter the directory: /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src +0ms eslintrc:cascading-config-array-factory Load config files for /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src. +0ms eslintrc:cascading-config-array-factory No cache found: /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src. +0ms eslintrc:config-array-factory Config file not found on /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src +3ms eslintrc:cascading-config-array-factory No cache found: /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro. +0ms eslintrc:config-array-factory Loading JS config file: /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/.eslintrc.js +0ms eslintrc:config-array-factory Config file found: /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/.eslintrc.js +1ms eslintrc:config-array-factory Loading {extends:"eslint:recommended"} relative to /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/.eslintrc.js +0ms eslintrc:config-array-factory Loading JS config file: /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/eslint/conf/eslint-recommended.js +0ms eslintrc:config-array-factory Loading plugin "@typescript-eslint" from /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/.eslintrc.js +0ms eslintrc:config-array-factory Loaded: @typescript-eslint/[email protected] (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/index.js) +1ms eslintrc:config-array-factory Plugin /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/index.js loaded in: 156ms +156ms eslintrc:config-array-factory Loading {extends:"plugin:@typescript-eslint/recommended"} relative to /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/.eslintrc.js +0ms eslintrc:config-array-factory Loading plugin "@typescript-eslint" from /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/.eslintrc.js +0ms eslintrc:config-array-factory Loaded: @typescript-eslint/[email protected] (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/index.js) +0ms eslintrc:config-array-factory Plugin /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/index.js loaded in: 0ms +0ms eslintrc:config-array-factory Loading {extends:"./configs/base"} relative to /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/index.js +1ms eslintrc:config-array-factory package.json was not found: Cannot find module './configs/base/package.json' Require stack: - /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/index.js +0ms eslintrc:config-array-factory Loaded: ./configs/base (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js) +0ms eslintrc:config-array-factory Loading JS config file: /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js +0ms eslintrc:config-array-factory Loading parser "@typescript-eslint/parser" from /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js +0ms eslintrc:config-array-factory Loaded: @typescript-eslint/[email protected] (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/parser/dist/index.js) +0ms eslintrc:config-array-factory Loading plugin "@typescript-eslint" from /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js +24ms eslintrc:config-array-factory Loaded: @typescript-eslint/[email protected] (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/index.js) +1ms eslintrc:config-array-factory Plugin /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/index.js loaded in: 0ms +0ms eslintrc:config-array-factory Loading {extends:"./configs/eslint-recommended"} relative to /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/index.js +0ms eslintrc:config-array-factory package.json was not found: Cannot find module './configs/eslint-recommended/package.json' Require stack: - /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/index.js +0ms eslintrc:config-array-factory Loaded: ./configs/eslint-recommended (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js) +0ms eslintrc:config-array-factory Loading JS config file: /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js +0ms eslintrc:config-array-factory Loading parser "@typescript-eslint/parser" from /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/.eslintrc.js +0ms eslintrc:config-array-factory Loaded: @typescript-eslint/[email protected] (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/parser/dist/index.js) +0ms eslintrc:config-array-factory Loading plugin "@typescript-eslint" from /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/.eslintrc.js +0ms eslintrc:config-array-factory Loaded: @typescript-eslint/[email protected] (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/index.js) +0ms eslintrc:config-array-factory Plugin /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/index.js loaded in: 0ms +0ms eslintrc:cascading-config-array-factory Stop traversing because of 'root:true'. +184ms eslintrc:cascading-config-array-factory Configuration was determined: ConfigArray(8) [ { type: 'config', name: 'DefaultIgnorePattern', filePath: '', criteria: null, env: undefined, globals: undefined, ignorePattern: IgnorePattern { patterns: [Array], basePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro', loose: false }, noInlineConfig: undefined, parser: undefined, parserOptions: undefined, plugins: undefined, processor: undefined, reportUnusedDisableDirectives: undefined, root: undefined, rules: undefined, settings: undefined }, { type: 'config', name: '.eslintrc.js » eslint:recommended', filePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/eslint/conf/eslint-recommended.js', criteria: null, env: undefined, globals: undefined, ignorePattern: undefined, noInlineConfig: undefined, parser: undefined, parserOptions: undefined, plugins: undefined, processor: undefined, reportUnusedDisableDirectives: undefined, root: undefined, rules: { 'constructor-super': 'error', 'for-direction': 'error', 'getter-return': 'error', 'no-async-promise-executor': 'error', 'no-case-declarations': 'error', 'no-class-assign': 'error', 'no-compare-neg-zero': 'error', 'no-cond-assign': 'error', 'no-const-assign': 'error', 'no-constant-condition': 'error', 'no-control-regex': 'error', 'no-debugger': 'error', 'no-delete-var': 'error', 'no-dupe-args': 'error', 'no-dupe-class-members': 'error', 'no-dupe-else-if': 'error', 'no-dupe-keys': 'error', 'no-duplicate-case': 'error', 'no-empty': 'error', 'no-empty-character-class': 'error', 'no-empty-pattern': 'error', 'no-ex-assign': 'error', 'no-extra-boolean-cast': 'error', 'no-extra-semi': 'error', 'no-fallthrough': 'error', 'no-func-assign': 'error', 'no-global-assign': 'error', 'no-import-assign': 'error', 'no-inner-declarations': 'error', 'no-invalid-regexp': 'error', 'no-irregular-whitespace': 'error', 'no-loss-of-precision': 'error', 'no-misleading-character-class': 'error', 'no-mixed-spaces-and-tabs': 'error', 'no-new-symbol': 'error', 'no-nonoctal-decimal-escape': 'error', 'no-obj-calls': 'error', 'no-octal': 'error', 'no-prototype-builtins': 'error', 'no-redeclare': 'error', 'no-regex-spaces': 'error', 'no-self-assign': 'error', 'no-setter-return': 'error', 'no-shadow-restricted-names': 'error', 'no-sparse-arrays': 'error', 'no-this-before-super': 'error', 'no-undef': 'error', 'no-unexpected-multiline': 'error', 'no-unreachable': 'error', 'no-unsafe-finally': 'error', 'no-unsafe-negation': 'error', 'no-unsafe-optional-chaining': 'error', 'no-unused-labels': 'error', 'no-unused-vars': 'error', 'no-useless-backreference': 'error', 'no-useless-catch': 'error', 'no-useless-escape': 'error', 'no-with': 'error', 'require-yield': 'error', 'use-isnan': 'error', 'valid-typeof': 'error' }, settings: undefined }, { type: 'config', name: '.eslintrc.js', filePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/.eslintrc.js', criteria: null, env: { node: true, es6: true }, globals: undefined, ignorePattern: undefined, noInlineConfig: undefined, parser: undefined, parserOptions: { sourceType: 'module', project: [Array] }, plugins: { '@typescript-eslint': [Object] }, processor: undefined, reportUnusedDisableDirectives: undefined, root: true, rules: undefined, settings: undefined }, { type: 'config', name: '.eslintrc.js#overrides[0] » plugin:@typescript-eslint/recommended » ./configs/base', filePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js', criteria: { includes: [Array], excludes: null, basePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro' }, env: undefined, globals: undefined, ignorePattern: undefined, noInlineConfig: undefined, parser: { error: null, filePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/parser/dist/index.js', id: '@typescript-eslint/parser', importerName: '.eslintrc.js#overrides[0] » plugin:@typescript-eslint/recommended » ./configs/base', importerPath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/configs/base.js' }, parserOptions: { sourceType: 'module' }, plugins: { '@typescript-eslint': [Object] }, processor: undefined, reportUnusedDisableDirectives: undefined, root: undefined, rules: undefined, settings: undefined }, { type: 'config', name: '.eslintrc.js#overrides[0] » plugin:@typescript-eslint/recommended » ./configs/eslint-recommended', filePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js', criteria: { includes: [Array], excludes: null, basePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro' }, env: undefined, globals: undefined, ignorePattern: undefined, noInlineConfig: undefined, parser: undefined, parserOptions: undefined, plugins: undefined, processor: undefined, reportUnusedDisableDirectives: undefined, root: undefined, rules: undefined, settings: undefined }, { type: 'config', name: '.eslintrc.js#overrides[0] » plugin:@typescript-eslint/recommended » ./configs/eslint-recommended#overrides[0]', filePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js', criteria: { AND: [Array], basePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro' }, env: undefined, globals: undefined, ignorePattern: undefined, noInlineConfig: undefined, parser: undefined, parserOptions: undefined, plugins: undefined, processor: undefined, reportUnusedDisableDirectives: undefined, root: undefined, rules: { 'constructor-super': 'off', 'getter-return': 'off', 'no-const-assign': 'off', 'no-dupe-args': 'off', 'no-dupe-class-members': 'off', 'no-dupe-keys': 'off', 'no-func-assign': 'off', 'no-import-assign': 'off', 'no-new-symbol': 'off', 'no-obj-calls': 'off', 'no-redeclare': 'off', 'no-setter-return': 'off', 'no-this-before-super': 'off', 'no-undef': 'off', 'no-unreachable': 'off', 'no-unsafe-negation': 'off', 'no-var': 'error', 'prefer-const': 'error', 'prefer-rest-params': 'error', 'prefer-spread': 'error', 'valid-typeof': 'off' }, settings: undefined }, { type: 'config', name: '.eslintrc.js#overrides[0] » plugin:@typescript-eslint/recommended', filePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/index.js', criteria: { includes: [Array], excludes: null, basePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro' }, env: undefined, globals: undefined, ignorePattern: undefined, noInlineConfig: undefined, parser: undefined, parserOptions: undefined, plugins: undefined, processor: undefined, reportUnusedDisableDirectives: undefined, root: undefined, rules: { '@typescript-eslint/adjacent-overload-signatures': 'error', '@typescript-eslint/ban-ts-comment': 'error', '@typescript-eslint/ban-types': 'error', 'no-array-constructor': 'off', '@typescript-eslint/no-array-constructor': 'error', 'no-empty-function': 'off', '@typescript-eslint/no-empty-function': 'error', '@typescript-eslint/no-empty-interface': 'error', '@typescript-eslint/no-explicit-any': 'warn', '@typescript-eslint/no-extra-non-null-assertion': 'error', 'no-extra-semi': 'off', '@typescript-eslint/no-extra-semi': 'error', '@typescript-eslint/no-inferrable-types': 'error', 'no-loss-of-precision': 'off', '@typescript-eslint/no-loss-of-precision': 'error', '@typescript-eslint/no-misused-new': 'error', '@typescript-eslint/no-namespace': 'error', '@typescript-eslint/no-non-null-asserted-optional-chain': 'error', '@typescript-eslint/no-non-null-assertion': 'warn', '@typescript-eslint/no-this-alias': 'error', '@typescript-eslint/no-unnecessary-type-constraint': 'error', 'no-unused-vars': 'off', '@typescript-eslint/no-unused-vars': 'warn', '@typescript-eslint/no-var-requires': 'error', '@typescript-eslint/prefer-as-const': 'error', '@typescript-eslint/prefer-namespace-keyword': 'error', '@typescript-eslint/triple-slash-reference': 'error' }, settings: undefined }, { type: 'config', name: '.eslintrc.js#overrides[0]', filePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/.eslintrc.js', criteria: { includes: [Array], excludes: null, basePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro' }, env: undefined, globals: undefined, ignorePattern: undefined, noInlineConfig: undefined, parser: { error: null, filePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/parser/dist/index.js', id: '@typescript-eslint/parser', importerName: '.eslintrc.js#overrides[0]', importerPath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/.eslintrc.js' }, parserOptions: { sourceType: 'module', project: [Array] }, plugins: { '@typescript-eslint': [Object] }, processor: undefined, reportUnusedDisableDirectives: undefined, root: undefined, rules: { '@typescript-eslint/no-restricted-imports': [Array] }, settings: undefined } ] on /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src +9ms eslintrc:ignore-pattern Create with: [ IgnorePattern { patterns: [ '/**/node_modules/*' ], basePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro', loose: false } ] +197ms eslintrc:ignore-pattern processed: { basePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro', patterns: [ '/**/node_modules/*' ] } +1ms eslintrc:ignore-pattern Check { filePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src/fail.ts', dot: false, relativePath: 'src/fail.ts', result: false } +0ms eslint:file-enumerator Yield: fail.ts +198ms eslintrc:cascading-config-array-factory Load config files for /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src. +4ms eslintrc:cascading-config-array-factory Cache hit: /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src. +0ms eslint:cli-engine Lint /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src/fail.ts +0ms eslint:linter Linting code for /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src/fail.ts (pass 1) +0ms eslint:linter Verify +0ms eslint:linter With ConfigArray: /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src/fail.ts +0ms eslint:linter Generating fixed text for /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src/fail.ts (pass 1) +205ms eslint:source-code-fixer Applying fixes +0ms eslint:source-code-fixer shouldFix parameter was false, not attempting fixes +0ms eslintrc:ignore-pattern Check { filePath: '/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src/index.ts', dot: false, relativePath: 'src/index.ts', result: false } +205ms eslint:file-enumerator Yield: index.ts +205ms eslintrc:cascading-config-array-factory Load config files for /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src. +205ms eslintrc:cascading-config-array-factory Cache hit: /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src. +0ms eslint:cli-engine Lint /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src/index.ts +205ms eslint:linter Linting code for /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src/index.ts (pass 1) +1ms eslint:linter Verify +0ms eslint:linter With ConfigArray: /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src/index.ts +0ms eslint:linter An error occurred while traversing +4ms eslint:linter Filename: /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src/index.ts +0ms eslint:linter Line: 2 +0ms eslint:linter Parser Options: { ecmaFeatures: { globalReturn: false }, ecmaVersion: 6, sourceType: 'module', project: [ './tsconfig.json' ] } +0ms eslint:linter Parser Path: /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/parser/dist/index.js +0ms eslint:linter Settings: {} +0ms

Oops! Something went wrong! :(

ESLint: 8.8.0

RangeError: path should be a path.relative()d string, but got "./types"
Occurred while linting /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/src/index.ts:2
Rule: "@typescript-eslint/no-restricted-imports"
at throwError (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/ignore/index.js:364:9)
at checkPath (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/ignore/index.js:383:12)
at Ignore._test (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/ignore/index.js:504:5)
at Ignore.ignores (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/ignore/index.js:549:17)
at /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-restricted-imports.js:121:36
at Array.every ()
at isAllowedTypeImportPattern (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-restricted-imports.js:120:43)
at ImportDeclaration (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-restricted-imports.js:129:26)
at ruleErrorHandler (/Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/eslint/lib/linter/linter.js:1107:28)
at /Users/n1kk/dev/npm/_test/ts-eslint-no-restricted-imports-repro/node_modules/eslint/lib/linter/safe-emitter.js:45:58

</details>

**Versions**

| package                            | version |
| ---------------------------------- | ------- |
| `@typescript-eslint/eslint-plugin` | "^5.10.1" |
| `@typescript-eslint/parser`        | "^5.10.1" |
| `TypeScript`                       | "^4.5.5" |
| `ESLint`                           | "^8.8.0" |
| `node`                             | v14.18.2 |
@n1kk n1kk added package: eslint-plugin Issues related to @typescript-eslint/eslint-plugin triage Waiting for team members to take a look labels Jan 29, 2022
@JoshuaKGoldberg JoshuaKGoldberg added accepting prs Go ahead, send a pull request that resolves this issue bug Something isn't working and removed triage Waiting for team members to take a look labels Jan 29, 2022
@Josh-Cena
Copy link
Member

Just to clarify, this path is indeed not path.relative()'d, because otherwise it should not have the ./ prefix :P But in any case this is a TS-ESLint bug

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
accepting prs Go ahead, send a pull request that resolves this issue bug Something isn't working package: eslint-plugin Issues related to @typescript-eslint/eslint-plugin
Projects
None yet
3 participants