Skip to content

mwe from docs doesn't works/ can't make defineConfig to work in 0.3.0 #155

@superle3

Description

@superle3

the mwe from the docs:

// eslint.config.mjs
import tsparser from "@typescript-eslint/parser";
import { defineConfig } from "eslint/config";
import obsidianmd from "eslint-plugin-obsidianmd";

export default defineConfig([
  ...obsidianmd.configs.recommended,
  {
    files: ["**/*.ts"],
    languageOptions: {
      parser: tsparser,
      parserOptions: { project: "./tsconfig.json" },
    },

    // You can add your own configuration to override or add rules
    rules: {
      // example: turn off a rule from the recommended set
      "obsidianmd/sample-names": "off",
      // example: add a rule not in the recommended set and set its severity
      "obsidianmd/prefer-file-manager-trash": "error",
    },
  },
]);

doesn't work when using the sample plugin as a repo.

and as of 0.3.0 I can't make defineConfig work at https://github.com/artisticat1/obsidian-latex-suite/blob/main/eslint.config.mts but it works for 0.2.9

adding

			parserOptions: {
				projectService: {
					allowDefaultProject: ['eslint.config.mts', 'manifest.json'],
				},
				// tsconfigRootDir: __dirname,
				// extraFileExtensions: ['.json'],
			} satisfies ParserOptions,

to the mwe seems to work for 0.2.9.

the error I get for the mwe for 0.3.0 on the sample plugin is:

npm run lint

> obsidian-sample-plugin@1.0.0 lint
> eslint .


Oops! Something went wrong! :(

ESLint: 9.39.4

Error: Error while loading rule 'obsidianmd/no-plugin-as-component': You have used a rule which requires type information, but don't have parserOptions set to generate type information for this file. See https://tseslint.com/typed-linting for enabling linting with type information.
Parser: (unknown)
Note: detected a parser other than @typescript-eslint/parser. Make sure the parser is configured to forward "parserOptions.project" to @typescript-eslint/parser.
Occurred while linting .obsidian\plugins\obsidian-sample-plugin\esbuild.config.mjs
    at throwError (.obsidian\plugins\obsidian-sample-plugin\node_modules\@typescript-eslint\utils\dist\eslint-utils\getParserServices.js:40:11)    at Object.getParserServices (.obsidian\plugins\obsidian-sample-plugin\node_modules\@typescript-eslint\utils\dist\eslint-utils\getParserServices.js:23:9)
    at create (file:////.obsidian/plugins/obsidian-sample-plugin/node_modules/eslint-plugin-obsidianmd/dist/lib/rules/noPluginAsComponent.js:38:38)
    at Object.create (.obsidian\plugins\obsidian-sample-plugin\node_modules\@typescript-eslint\utils\dist\eslint-utils\RuleCreator.js:39:20)
    at createRuleListeners (.obsidian\plugins\obsidian-sample-plugin\node_modules\eslint\lib\linter\linter.js:1019:15)
    at .obsidian\plugins\obsidian-sample-plugin\node_modules\eslint\lib\linter\linter.js:1151:7
    at Array.forEach (<anonymous>)
    at runRules (.obsidian\plugins\obsidian-sample-plugin\node_modules\eslint\lib\linter\linter.js:1085:31)
    at #flatVerifyWithoutProcessors (.obsidian\plugins\obsidian-sample-plugin\node_modules\eslint\lib\linter\linter.js:2115:4)
    at Linter._verifyWithFlatConfigArrayAndWithoutProcessors (.obsidian\plugins\obsidian-sample-plugin\node_modules\eslint\lib\linter\linter.js:2203:43)

tseslint.config what the sample plugin currently has, does work but its depreciated.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions