quavedev / eslint-plugin

4 stars 2 forks source link

Error linting typescript file #4

Closed alisnic closed 2 months ago

alisnic commented 5 months ago
ESLint: 8.56.0

SyntaxError: Unexpected token, expected "," (2:10)
Occurred while linting /Users/andreilisnic/Work/<redacted>/client/instagram-client.ts:9
Rule: "@quave/meteor-quave/no-sync-mongo-methods-on-server"
    at constructor (/Users/andreilisnic/Work/<redacted>/node_modules/@babel/parser/lib/index.js:356:19)
    at FlowParserMixin.raise (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:3223:19)
    at FlowParserMixin.unexpected (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:3253:16)
    at FlowParserMixin.expect (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:3585:28)
    at FlowParserMixin.flowParseTypeParameterDeclaration (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:4366:14)
    at FlowParserMixin.flowParseObjectTypeMethodish (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:4467:34)
    at FlowParserMixin.flowParseObjectTypeProperty (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:4645:27)
    at FlowParserMixin.flowParseObjectType (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:4573:36)
    at FlowParserMixin.flowParseInterfaceish (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:4256:22)
    at FlowParserMixin.flowParseInterface (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:4275:10)

Source that reproduces the problem:

// instagram-client.ts
const InstagramClient = {
  checkInterval: 1000
};

Also I have typescript-eslint enabled as a parser in config:

  parser: '@typescript-eslint/parser',
  parserOptions: {
    // This version is set in tsconfig.json
    ecmaVersion: 2018,
    parser: '@typescript-eslint/parser',
    tsconfigRootDir: __dirname,
    project: ['./tsconfig.json'],
    // "project": "./tsconfig.json",
    allowImportExportEverywhere: true,
    sourceType: 'module',
    ecmaFeatures: {
      jsx: true,
      experimentalObjectRestSpread: true
    }
  },
renanccastro commented 4 months ago

We are probably not using the parser config from eslint while using the walker. I will address this ASAP

alisnic commented 1 month ago

@renanccastro didn't help, same error in 1.5.0:

SyntaxError: Unexpected token ','. (60:1)
Occurred while linting /Users/andreilisnic/Work/planable-app/client/instagram-client.ts:1
Rule: "@quave/meteor-quave/no-sync-mongo-methods-on-server"
    at constructor (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:356:19)
    at FlowParserMixin.raise (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:3223:19)
    at FlowParserMixin.parseExprListItem (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:12000:14)
    at FlowParserMixin.parseCallExpressionArguments (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:11054:22)
    at FlowParserMixin.parseCoverCallAndAsyncArrowHead (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:10964:29)
    at FlowParserMixin.parseSubscript (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:10899:19)
    at FlowParserMixin.parseSubscript (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:5858:18)
    at FlowParserMixin.parseSubscripts (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:10870:19)
    at FlowParserMixin.parseSubscripts (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:5824:18)
    at FlowParserMixin.parseExprSubscripts (/Users/andreilisnic/Work/planable-app/node_modules/@babel/parser/lib/index.js:10861:17)
matheusccastroo commented 1 month ago

@alisnic Are you trying with the latest version of the plugin? I have it running on a TS project here without an issue.

alisnic commented 1 month ago

I'm using version 1.5.0, here's an excerpt from package-lock:

    "@quave/eslint-plugin-meteor-quave": {
      "version": "1.5.0",
      "resolved": "https://registry.npmjs.org/@quave/eslint-plugin-meteor-quave/-/eslint-plugin-meteor-quave-1.5.0.tgz",
      "integrity": "sha512-RMazDlXZkDiQd8UlnzBawpDRmHydUZSrpojmVYz0BAqYn727Yprs2j8WIqeJv+M4l+QH1je55ZHdg1OZjjEEIg==",

Any pointers on how I can debug this issue?

alisnic commented 1 month ago

The problem seems be with *.ts files in client folder in project root. if I move the file outside this folder everything seems to be working fine