diff --git a/.oxlintrc.base.json b/.oxlintrc.base.json new file mode 100644 index 000000000000..96122ee95b3e --- /dev/null +++ b/.oxlintrc.base.json @@ -0,0 +1,139 @@ +{ + "$schema": "./node_modules/oxlint/configuration_schema.json", + "plugins": ["typescript", "import", "jsdoc", "vitest"], + "rules": { + "no-unused-vars": [ + "warn", + { "argsIgnorePattern": "^_", "varsIgnorePattern": "^_", "caughtErrorsIgnorePattern": "^_" } + ], + + // === Base rules from eslint-config-sdk/base.js === + "no-console": "error", + "no-alert": "error", + "no-param-reassign": "error", + "prefer-template": "error", + "no-bitwise": "error", + "complexity": ["error", { "max": 33 }], + "no-unused-expressions": ["error", { "allowShortCircuit": true }], + "guard-for-in": "error", + "array-callback-return": ["error", { "allowImplicit": true }], + "quotes": ["error", "single", { "avoidEscape": true }], + "no-return-await": "error", + "max-lines": ["error", { "max": 300, "skipComments": true, "skipBlankLines": true }], + + // === Import rules === + "import/namespace": "off", + "import/no-unresolved": "off", + + // === Rules turned off (not enforced in ESLint or causing false positives) === + "no-control-regex": "off", + "jsdoc/check-tag-names": "off", + "jsdoc/require-yields": "off", + "no-useless-rename": "off", + "no-constant-binary-expression": "off", + "vitest/hoisted-apis-on-top": "off", + "vitest/no-conditional-tests": "off", + "no-unsafe-optional-chaining": "off", + "no-eval": "off", + "no-import-assign": "off", + "typescript/no-duplicate-type-constituents": "off" + }, + "overrides": [ + { + "files": ["**/*.ts", "**/*.tsx", "**/*.d.ts"], + "rules": { + "typescript/ban-ts-comment": "error", + "typescript/consistent-type-imports": "error", + "typescript/no-unnecessary-type-assertion": "error", + "typescript/prefer-for-of": "error", + "typescript/no-floating-promises": ["error", { "ignoreVoid": true }], + "typescript/no-dynamic-delete": "error", + "typescript/no-unsafe-member-access": "error", + "typescript/unbound-method": "error", + "typescript/no-explicit-any": "error", + "typescript/no-empty-function": "off", + "typescript/prefer-optional-chain": ["error"], + "typescript/no-redundant-type-constituents": "off", + "typescript/restrict-template-expressions": "off", + "typescript/await-thenable": "warn", + "typescript/no-base-to-string": "off" + } + }, + { + "files": ["**/*.js", "**/*.mjs", "**/*.cjs"], + "rules": { + "typescript/ban-ts-comment": "off", + "typescript/consistent-type-imports": "off", + "typescript/prefer-optional-chain": "off", + "typescript/no-unnecessary-type-assertion": "off", + "typescript/prefer-for-of": "off", + "typescript/no-floating-promises": "off", + "typescript/no-dynamic-delete": "off", + "typescript/no-unsafe-member-access": "off", + "typescript/unbound-method": "off", + "typescript/no-explicit-any": "off" + } + }, + { + "files": [ + "**/*.test.ts", + "**/*.test.tsx", + "**/*.test.js", + "**/*.test.jsx", + "**/test/**", + "**/tests/**", + "**/suites/**", + "**/loader-suites/**" + ], + "rules": { + "typescript/explicit-function-return-type": "off", + "no-unused-expressions": "off", + "typescript/no-unused-expressions": "off", + "typescript/no-unnecessary-type-assertion": "off", + "typescript/no-unsafe-member-access": "off", + "typescript/no-explicit-any": "off", + "typescript/no-non-null-assertion": "off", + "typescript/no-floating-promises": "off", + "typescript/unbound-method": "off", + "max-lines": "off", + "complexity": "off", + "typescript/prefer-optional-chain": "off", + "typescript/no-misused-spread": "off", + "typescript/require-array-sort-compare": "off", + "typescript/no-base-to-string": "off", + "typescript/await-thenable": "off" + } + }, + { + "files": ["*.tsx"], + "rules": { + "jsdoc/require-jsdoc": "off" + } + }, + { + "files": ["*.config.js", "*.config.mjs", "*.config.ts", "vite.config.ts", ".size-limit.js"], + "rules": { + "no-console": "off", + "max-lines": "off" + } + }, + { + "files": [ + "**/scenarios/**", + "**/rollup-utils/**", + "**/bundle-analyzer-scenarios/**", + "**/bundle-analyzer-scenarios/*.cjs", + "**/bundle-analyzer-scenarios/*.js" + ], + "rules": { + "no-console": "off" + } + }, + { + "files": ["**/src/**"], + "rules": { + "no-restricted-globals": ["error", "window", "document", "location", "navigator"] + } + } + ] +} diff --git a/.oxlintrc.json b/.oxlintrc.json index e65745736664..83ff1674daf4 100644 --- a/.oxlintrc.json +++ b/.oxlintrc.json @@ -1,6 +1,9 @@ { "$schema": "./node_modules/oxlint/configuration_schema.json", - "plugins": ["typescript", "import", "jsdoc", "vitest"], + "extends": ["./.oxlintrc.base.json"], + "options": { + "typeAware": true + }, "jsPlugins": [ { "name": "sdk", @@ -9,140 +12,12 @@ ], "categories": {}, "rules": { - "no-unused-vars": [ - "warn", - { "argsIgnorePattern": "^_", "varsIgnorePattern": "^_", "caughtErrorsIgnorePattern": "^_" } - ], - - // === Base rules from eslint-config-sdk/base.js === - "no-console": "error", - "no-alert": "error", - "no-param-reassign": "error", - "prefer-template": "error", - "no-bitwise": "error", - "complexity": ["error", { "max": 33 }], - "no-unused-expressions": ["error", { "allowShortCircuit": true }], - "guard-for-in": "error", - "array-callback-return": ["error", { "allowImplicit": true }], - "quotes": ["error", "single", { "avoidEscape": true }], - "no-return-await": "error", - "max-lines": ["error", { "max": 300, "skipComments": true, "skipBlankLines": true }], - - // === Import rules === - "import/namespace": "off", - "import/no-unresolved": "off", - - // === Rules turned off (not enforced in ESLint or causing false positives) === - "no-control-regex": "off", - "jsdoc/check-tag-names": "off", - "jsdoc/require-yields": "off", - "no-useless-rename": "off", - "no-constant-binary-expression": "off", - "vitest/hoisted-apis-on-top": "off", - "vitest/no-conditional-tests": "off", - "no-unsafe-optional-chaining": "off", - "no-eval": "off", - "no-import-assign": "off", - "typescript/no-duplicate-type-constituents": "off", - - // === Custom SDK rules (via JS plugin) === "sdk/no-eq-empty": "error" }, "overrides": [ - { - "files": ["**/*.ts", "**/*.tsx", "**/*.d.ts"], - "rules": { - "typescript/ban-ts-comment": "error", - "typescript/consistent-type-imports": "error", - "typescript/no-unnecessary-type-assertion": "error", - "typescript/prefer-for-of": "error", - "typescript/no-floating-promises": ["error", { "ignoreVoid": true }], - "typescript/no-dynamic-delete": "error", - "typescript/no-unsafe-member-access": "error", - "typescript/unbound-method": "error", - "typescript/no-explicit-any": "error", - "typescript/no-empty-function": "off", - "typescript/prefer-optional-chain": ["error"], - "typescript/no-redundant-type-constituents": "off", - "typescript/restrict-template-expressions": "off", - "typescript/await-thenable": "warn", - "typescript/no-base-to-string": "off" - } - }, - { - "files": ["**/*.js", "**/*.mjs", "**/*.cjs"], - "rules": { - "typescript/ban-ts-comment": "off", - "typescript/consistent-type-imports": "off", - "typescript/prefer-optional-chain": "off", - "typescript/no-unnecessary-type-assertion": "off", - "typescript/prefer-for-of": "off", - "typescript/no-floating-promises": "off", - "typescript/no-dynamic-delete": "off", - "typescript/no-unsafe-member-access": "off", - "typescript/unbound-method": "off", - "typescript/no-explicit-any": "off" - } - }, - { - "files": [ - "**/*.test.ts", - "**/*.test.tsx", - "**/*.test.js", - "**/*.test.jsx", - "**/test/**", - "**/tests/**", - "**/suites/**", - "**/loader-suites/**" - ], - "rules": { - "typescript/explicit-function-return-type": "off", - "no-unused-expressions": "off", - "typescript/no-unused-expressions": "off", - "typescript/no-unnecessary-type-assertion": "off", - "typescript/no-unsafe-member-access": "off", - "typescript/no-explicit-any": "off", - "typescript/no-non-null-assertion": "off", - "typescript/no-floating-promises": "off", - "typescript/unbound-method": "off", - "max-lines": "off", - "complexity": "off", - "typescript/prefer-optional-chain": "off", - "typescript/no-misused-spread": "off", - "typescript/require-array-sort-compare": "off", - "typescript/no-base-to-string": "off", - "typescript/await-thenable": "off" - } - }, - { - "files": ["*.tsx"], - "rules": { - "jsdoc/require-jsdoc": "off" - } - }, - { - "files": ["*.config.js", "*.config.mjs", "*.config.ts", "vite.config.ts", ".size-limit.js"], - "rules": { - "no-console": "off", - "max-lines": "off" - } - }, - { - "files": [ - "**/scenarios/**", - "**/rollup-utils/**", - "**/bundle-analyzer-scenarios/**", - "**/bundle-analyzer-scenarios/*.cjs", - "**/bundle-analyzer-scenarios/*.js" - ], - "rules": { - "no-console": "off" - } - }, { "files": ["**/src/**"], "rules": { - "no-restricted-globals": ["error", "window", "document", "location", "navigator"], "sdk/no-class-field-initializers": "error", "sdk/no-regexp-constructor": "error" } diff --git a/dev-packages/.oxlintrc.json b/dev-packages/.oxlintrc.json index 72497867a535..d8fc364e7886 100644 --- a/dev-packages/.oxlintrc.json +++ b/dev-packages/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../node_modules/oxlint/configuration_schema.json", - "extends": ["../.oxlintrc.json"], + "extends": ["../.oxlintrc.base.json"], "rules": { "typescript/no-explicit-any": "off", "max-lines": "off", diff --git a/package.json b/package.json index ccb2f051319a..d05b71e7fdbc 100644 --- a/package.json +++ b/package.json @@ -25,8 +25,8 @@ "format:check": "oxfmt . --check", "verify": "run-s format:check lint", "fix": "run-s format lint:fix", - "lint": "OXLINT_TSGOLINT_DANGEROUSLY_SUPPRESS_PROGRAM_DIAGNOSTICS=true oxlint . --type-aware", - "lint:fix": "OXLINT_TSGOLINT_DANGEROUSLY_SUPPRESS_PROGRAM_DIAGNOSTICS=true oxlint . --fix --type-aware", + "lint": "OXLINT_TSGOLINT_DANGEROUSLY_SUPPRESS_PROGRAM_DIAGNOSTICS=true oxlint .", + "lint:fix": "OXLINT_TSGOLINT_DANGEROUSLY_SUPPRESS_PROGRAM_DIAGNOSTICS=true oxlint . --fix", "lint:es-compatibility": "nx run-many -t lint:es-compatibility", "dedupe-deps:check": "yarn-deduplicate yarn.lock --list --fail", "dedupe-deps:fix": "yarn-deduplicate yarn.lock", diff --git a/packages/angular/.oxlintrc.json b/packages/angular/.oxlintrc.json index f87f394ed3b6..e068a79fa654 100644 --- a/packages/angular/.oxlintrc.json +++ b/packages/angular/.oxlintrc.json @@ -1,6 +1,12 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], + "jsPlugins": [ + { + "name": "sdk", + "specifier": "@sentry-internal/eslint-plugin-sdk" + } + ], "env": { "browser": true }, diff --git a/packages/astro/.oxlintrc.json b/packages/astro/.oxlintrc.json index 28d9e2d390f2..9623aa8dfd5a 100644 --- a/packages/astro/.oxlintrc.json +++ b/packages/astro/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "browser": true, "node": true diff --git a/packages/aws-serverless/.oxlintrc.json b/packages/aws-serverless/.oxlintrc.json index 8ca250cb7e99..f079a7bc588c 100644 --- a/packages/aws-serverless/.oxlintrc.json +++ b/packages/aws-serverless/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "node": true } diff --git a/packages/browser-utils/.oxlintrc.json b/packages/browser-utils/.oxlintrc.json index 220599004174..a0967ad5a718 100644 --- a/packages/browser-utils/.oxlintrc.json +++ b/packages/browser-utils/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "browser": true }, diff --git a/packages/browser/.oxlintrc.json b/packages/browser/.oxlintrc.json index a17777df77bf..28df8e880028 100644 --- a/packages/browser/.oxlintrc.json +++ b/packages/browser/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "browser": true }, diff --git a/packages/bun/.oxlintrc.json b/packages/bun/.oxlintrc.json index 5d561466a55b..d774a8e7bfa0 100644 --- a/packages/bun/.oxlintrc.json +++ b/packages/bun/.oxlintrc.json @@ -1,6 +1,12 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], + "jsPlugins": [ + { + "name": "sdk", + "specifier": "@sentry-internal/eslint-plugin-sdk" + } + ], "env": { "node": true }, diff --git a/packages/cloudflare/.oxlintrc.json b/packages/cloudflare/.oxlintrc.json index 5d561466a55b..d774a8e7bfa0 100644 --- a/packages/cloudflare/.oxlintrc.json +++ b/packages/cloudflare/.oxlintrc.json @@ -1,6 +1,12 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], + "jsPlugins": [ + { + "name": "sdk", + "specifier": "@sentry-internal/eslint-plugin-sdk" + } + ], "env": { "node": true }, diff --git a/packages/core/.oxlintrc.json b/packages/core/.oxlintrc.json index 3fd23c75834a..05b86efa950b 100644 --- a/packages/core/.oxlintrc.json +++ b/packages/core/.oxlintrc.json @@ -1,6 +1,12 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], + "jsPlugins": [ + { + "name": "sdk", + "specifier": "@sentry-internal/eslint-plugin-sdk" + } + ], "rules": { "sdk/no-unsafe-random-apis": "error" }, diff --git a/packages/deno/.oxlintrc.json b/packages/deno/.oxlintrc.json index 75164516b719..d29725f59d80 100644 --- a/packages/deno/.oxlintrc.json +++ b/packages/deno/.oxlintrc.json @@ -1,6 +1,12 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], + "jsPlugins": [ + { + "name": "sdk", + "specifier": "@sentry-internal/eslint-plugin-sdk" + } + ], "overrides": [ { "files": ["**/src/**"], diff --git a/packages/elysia/.oxlintrc.json b/packages/elysia/.oxlintrc.json index d38bbcf5c769..4cd4930fa802 100644 --- a/packages/elysia/.oxlintrc.json +++ b/packages/elysia/.oxlintrc.json @@ -1,4 +1,4 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"] + "extends": ["../../.oxlintrc.base.json"] } diff --git a/packages/ember/.oxlintrc.json b/packages/ember/.oxlintrc.json index 9f0633da4a03..9c0c3060af0f 100644 --- a/packages/ember/.oxlintrc.json +++ b/packages/ember/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "overrides": [ { "files": ["vendor/**/*.js"], diff --git a/packages/eslint-plugin-sdk/.oxlintrc.json b/packages/eslint-plugin-sdk/.oxlintrc.json index d38bbcf5c769..4cd4930fa802 100644 --- a/packages/eslint-plugin-sdk/.oxlintrc.json +++ b/packages/eslint-plugin-sdk/.oxlintrc.json @@ -1,4 +1,4 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"] + "extends": ["../../.oxlintrc.base.json"] } diff --git a/packages/feedback/.oxlintrc.json b/packages/feedback/.oxlintrc.json index d38bbcf5c769..4cd4930fa802 100644 --- a/packages/feedback/.oxlintrc.json +++ b/packages/feedback/.oxlintrc.json @@ -1,4 +1,4 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"] + "extends": ["../../.oxlintrc.base.json"] } diff --git a/packages/gatsby/.oxlintrc.json b/packages/gatsby/.oxlintrc.json index 5b04f7d7779b..82e1187d7863 100644 --- a/packages/gatsby/.oxlintrc.json +++ b/packages/gatsby/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "browser": true, "node": true diff --git a/packages/google-cloud-serverless/.oxlintrc.json b/packages/google-cloud-serverless/.oxlintrc.json index 8ca250cb7e99..f079a7bc588c 100644 --- a/packages/google-cloud-serverless/.oxlintrc.json +++ b/packages/google-cloud-serverless/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "node": true } diff --git a/packages/hono/.oxlintrc.json b/packages/hono/.oxlintrc.json index 5d561466a55b..d774a8e7bfa0 100644 --- a/packages/hono/.oxlintrc.json +++ b/packages/hono/.oxlintrc.json @@ -1,6 +1,12 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], + "jsPlugins": [ + { + "name": "sdk", + "specifier": "@sentry-internal/eslint-plugin-sdk" + } + ], "env": { "node": true }, diff --git a/packages/integration-shims/.oxlintrc.json b/packages/integration-shims/.oxlintrc.json index d38bbcf5c769..4cd4930fa802 100644 --- a/packages/integration-shims/.oxlintrc.json +++ b/packages/integration-shims/.oxlintrc.json @@ -1,4 +1,4 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"] + "extends": ["../../.oxlintrc.base.json"] } diff --git a/packages/nestjs/.oxlintrc.json b/packages/nestjs/.oxlintrc.json index 8ca250cb7e99..f079a7bc588c 100644 --- a/packages/nestjs/.oxlintrc.json +++ b/packages/nestjs/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "node": true } diff --git a/packages/nextjs/.oxlintrc.json b/packages/nextjs/.oxlintrc.json index 1c483ce8e3b3..1aab7272e6d2 100644 --- a/packages/nextjs/.oxlintrc.json +++ b/packages/nextjs/.oxlintrc.json @@ -1,6 +1,12 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], + "jsPlugins": [ + { + "name": "sdk", + "specifier": "@sentry-internal/eslint-plugin-sdk" + } + ], "env": { "browser": true, "node": true diff --git a/packages/node-core/.oxlintrc.json b/packages/node-core/.oxlintrc.json index 714725dd1b45..7828795e480e 100644 --- a/packages/node-core/.oxlintrc.json +++ b/packages/node-core/.oxlintrc.json @@ -1,6 +1,12 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], + "jsPlugins": [ + { + "name": "sdk", + "specifier": "@sentry-internal/eslint-plugin-sdk" + } + ], "env": { "node": true }, diff --git a/packages/node-native/.oxlintrc.json b/packages/node-native/.oxlintrc.json index 3d79070be500..3452decc312f 100644 --- a/packages/node-native/.oxlintrc.json +++ b/packages/node-native/.oxlintrc.json @@ -1,6 +1,12 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], + "jsPlugins": [ + { + "name": "sdk", + "specifier": "@sentry-internal/eslint-plugin-sdk" + } + ], "env": { "node": true }, diff --git a/packages/node/.oxlintrc.json b/packages/node/.oxlintrc.json index 714725dd1b45..7828795e480e 100644 --- a/packages/node/.oxlintrc.json +++ b/packages/node/.oxlintrc.json @@ -1,6 +1,12 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], + "jsPlugins": [ + { + "name": "sdk", + "specifier": "@sentry-internal/eslint-plugin-sdk" + } + ], "env": { "node": true }, diff --git a/packages/node/src/integrations/tracing/fastify/fastify-otel/.oxlintrc.json b/packages/node/src/integrations/tracing/fastify/fastify-otel/.oxlintrc.json index b7cd1ae58cb7..40e6ea6709c1 100644 --- a/packages/node/src/integrations/tracing/fastify/fastify-otel/.oxlintrc.json +++ b/packages/node/src/integrations/tracing/fastify/fastify-otel/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../../../../../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../../../../../../.oxlintrc.json"], + "extends": ["../../../../../../../.oxlintrc.base.json"], "env": { "node": true } diff --git a/packages/nuxt/.oxlintrc.json b/packages/nuxt/.oxlintrc.json index 28d9e2d390f2..9623aa8dfd5a 100644 --- a/packages/nuxt/.oxlintrc.json +++ b/packages/nuxt/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "browser": true, "node": true diff --git a/packages/opentelemetry/.oxlintrc.json b/packages/opentelemetry/.oxlintrc.json index 6b15cbd9576d..37af3a80b799 100644 --- a/packages/opentelemetry/.oxlintrc.json +++ b/packages/opentelemetry/.oxlintrc.json @@ -1,6 +1,12 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], + "jsPlugins": [ + { + "name": "sdk", + "specifier": "@sentry-internal/eslint-plugin-sdk" + } + ], "env": { "node": true }, diff --git a/packages/profiling-node/.oxlintrc.json b/packages/profiling-node/.oxlintrc.json index 2ae976eabb62..3a49bb14b11d 100644 --- a/packages/profiling-node/.oxlintrc.json +++ b/packages/profiling-node/.oxlintrc.json @@ -1,6 +1,12 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], + "jsPlugins": [ + { + "name": "sdk", + "specifier": "@sentry-internal/eslint-plugin-sdk" + } + ], "env": { "node": true }, diff --git a/packages/react-router/.oxlintrc.json b/packages/react-router/.oxlintrc.json index 28d9e2d390f2..9623aa8dfd5a 100644 --- a/packages/react-router/.oxlintrc.json +++ b/packages/react-router/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "browser": true, "node": true diff --git a/packages/react/.oxlintrc.json b/packages/react/.oxlintrc.json index 9b4ad8ffaf10..ad747b8e6922 100644 --- a/packages/react/.oxlintrc.json +++ b/packages/react/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "plugins": ["react"], "env": { "browser": true diff --git a/packages/remix/.oxlintrc.json b/packages/remix/.oxlintrc.json index a1ce14a978f3..5e5f2bb0ae99 100644 --- a/packages/remix/.oxlintrc.json +++ b/packages/remix/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "browser": true, "node": true diff --git a/packages/replay-canvas/.oxlintrc.json b/packages/replay-canvas/.oxlintrc.json index d38bbcf5c769..4cd4930fa802 100644 --- a/packages/replay-canvas/.oxlintrc.json +++ b/packages/replay-canvas/.oxlintrc.json @@ -1,4 +1,4 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"] + "extends": ["../../.oxlintrc.base.json"] } diff --git a/packages/replay-internal/.oxlintrc.json b/packages/replay-internal/.oxlintrc.json index c747c30f7d40..21ef9701c095 100644 --- a/packages/replay-internal/.oxlintrc.json +++ b/packages/replay-internal/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "overrides": [ { "files": ["test.setup.ts", "vitest.config.ts"], diff --git a/packages/replay-worker/.oxlintrc.json b/packages/replay-worker/.oxlintrc.json index 32424a5a0979..280567c4e7fc 100644 --- a/packages/replay-worker/.oxlintrc.json +++ b/packages/replay-worker/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "ignorePatterns": ["examples/worker.js"], "overrides": [ { diff --git a/packages/solid/.oxlintrc.json b/packages/solid/.oxlintrc.json index fa79cc1dcc7f..ed17064b99bc 100644 --- a/packages/solid/.oxlintrc.json +++ b/packages/solid/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "browser": true } diff --git a/packages/solidstart/.oxlintrc.json b/packages/solidstart/.oxlintrc.json index 28d9e2d390f2..9623aa8dfd5a 100644 --- a/packages/solidstart/.oxlintrc.json +++ b/packages/solidstart/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "browser": true, "node": true diff --git a/packages/svelte/.oxlintrc.json b/packages/svelte/.oxlintrc.json index fa79cc1dcc7f..ed17064b99bc 100644 --- a/packages/svelte/.oxlintrc.json +++ b/packages/svelte/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "browser": true } diff --git a/packages/sveltekit/.oxlintrc.json b/packages/sveltekit/.oxlintrc.json index 28d9e2d390f2..9623aa8dfd5a 100644 --- a/packages/sveltekit/.oxlintrc.json +++ b/packages/sveltekit/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "browser": true, "node": true diff --git a/packages/tanstackstart-react/.oxlintrc.json b/packages/tanstackstart-react/.oxlintrc.json index 28d9e2d390f2..9623aa8dfd5a 100644 --- a/packages/tanstackstart-react/.oxlintrc.json +++ b/packages/tanstackstart-react/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "browser": true, "node": true diff --git a/packages/tanstackstart/.oxlintrc.json b/packages/tanstackstart/.oxlintrc.json index 28d9e2d390f2..9623aa8dfd5a 100644 --- a/packages/tanstackstart/.oxlintrc.json +++ b/packages/tanstackstart/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "browser": true, "node": true diff --git a/packages/types/.oxlintrc.json b/packages/types/.oxlintrc.json index 92a92888f2cb..ad51a29efc6d 100644 --- a/packages/types/.oxlintrc.json +++ b/packages/types/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "node": false, "browser": false diff --git a/packages/vercel-edge/.oxlintrc.json b/packages/vercel-edge/.oxlintrc.json index 714725dd1b45..7828795e480e 100644 --- a/packages/vercel-edge/.oxlintrc.json +++ b/packages/vercel-edge/.oxlintrc.json @@ -1,6 +1,12 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], + "jsPlugins": [ + { + "name": "sdk", + "specifier": "@sentry-internal/eslint-plugin-sdk" + } + ], "env": { "node": true }, diff --git a/packages/vue/.oxlintrc.json b/packages/vue/.oxlintrc.json index fa79cc1dcc7f..ed17064b99bc 100644 --- a/packages/vue/.oxlintrc.json +++ b/packages/vue/.oxlintrc.json @@ -1,6 +1,6 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"], + "extends": ["../../.oxlintrc.base.json"], "env": { "browser": true } diff --git a/packages/wasm/.oxlintrc.json b/packages/wasm/.oxlintrc.json index d38bbcf5c769..4cd4930fa802 100644 --- a/packages/wasm/.oxlintrc.json +++ b/packages/wasm/.oxlintrc.json @@ -1,4 +1,4 @@ { "$schema": "../../node_modules/oxlint/configuration_schema.json", - "extends": ["../../.oxlintrc.json"] + "extends": ["../../.oxlintrc.base.json"] }