@wistia/oxlint-config 1.12.5 → 1.12.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,40 @@
1
1
  # @wistia/oxlint-config
2
2
 
3
+ ## 1.12.7
4
+
5
+ ### Patch Changes
6
+
7
+ - [#195](https://github.com/wistia/oxlint-config/pull/195) [`57f33f1`](https://github.com/wistia/oxlint-config/commit/57f33f1b14a53495aece8c23ebcc4981e8fc6312) Thanks [@okize](https://github.com/okize)! - build(deps): upgrade `oxlint` to v1.84.0
8
+
9
+ - Bump `oxlint` peer minimum to `>= 1.84.0`
10
+ - No new, renamed, or removed rules in v1.84.0
11
+ - Changes to rules already set to `error`, no config change required:
12
+ - `react/no-unknown-property` accepts `onTransitionRun`, `onTransitionStart`, `onTransitionCancel`, and their Capture variants
13
+ - `eslint/preserve-caught-error` fixes no longer conflict with `unicorn/prefer-optional-catch-binding`. `catch (error) { throw new Error('m') }` now fixes to `catch { throw new Error('m') }` instead of adding a dangling `cause: error`
14
+ - `eslint/no-unused-vars` reports unused private bindings inside a TypeScript namespace even when a root export shares the name. Its fixer keeps comments when removing imports and keeps rest bindings when removing array elements (the rule is off in the typescript config)
15
+ - Rules set to `off`, no effect: `unicorn/no-unreadable-iife` (gains a suggestion), `unicorn/consistent-function-scoping` (reports functions that only capture a distant ancestor), `vitest/prefer-to-be-truthy` (fix reclassified as a suggestion)
16
+
17
+ ## 1.12.6
18
+
19
+ ### Patch Changes
20
+
21
+ - [#193](https://github.com/wistia/oxlint-config/pull/193) [`4746be3`](https://github.com/wistia/oxlint-config/commit/4746be3493821df5119ebb23121a83209e998010) Thanks [@okize](https://github.com/okize)! - build(deps): patch & minor upgrades to dependencies
22
+
23
+ - Bump peer minimums: `eslint` to `>= 10.11.0`, `oxfmt` to `>= 0.70.0`, `oxlint-tsgolint` to `>= 7.0.2002`
24
+ - `eslint-plugin-playwright` v2.11.0 → v2.12.0 adds eight rules:
25
+ - New at `error`: `no-identical-title`, `no-test-return-statement`, `no-export`, `no-magic-timeouts`, `require-annotation-reason`. Consumers may see new errors
26
+ - New at `off`: `no-template-literal-title` (dynamic titles are allowed, matching `vitest/valid-title` `allowArguments`), `prefer-ending-with-an-expect` (page-object assertion helpers need project-specific options), `no-action-timeout` (per-call timeouts are a documented option; inline literals are covered by `no-magic-timeouts`)
27
+ - `no-skipped-test` now detects `testInfo` annotations. The rule is `off`, no effect
28
+ - `@eslint-react/eslint-plugin` v5.18.6 → v5.20.5. No new, renamed, or removed rules. Changes to rules already set to `error`, no config change required:
29
+ - `@eslint-react/dom-no-flush-sync` tracks `react-dom` imports, so aliased and namespace calls are reported and same-named functions from other packages are not
30
+ - `@eslint-react/dom-no-unsafe-iframe-sandbox` checks polymorphic components written as member expressions
31
+ - `@eslint-react/web-api-no-leaked-event-listener` reports listeners added only in effect cleanup
32
+ - `@eslint-react/web-api-no-leaked-fetch` no longer reports `abort` calls nested in a callback inside cleanup
33
+ - `immutability` and `set-state-in-effect` changed upstream. Their jsPlugin names are `off` (handled by native rules), no effect
34
+ - `eslint-plugin-storybook` v10.5.10 → v10.6.0. No rule changes
35
+ - `oxlint-tsgolint` v7.0.2001 → v7.0.2002. No new rules. Clearer diagnostics and false-positive fixes in type-aware rules already set to `error`, including `no-misused-promises`, `no-unnecessary-condition`, `no-unnecessary-type-assertion`, `prefer-optional-chain`, `require-array-sort-compare`, and `no-unnecessary-boolean-literal-compare`
36
+ - `oxfmt` v0.67.0 → v0.70.0. No config option changes. Adds a Markdown formatter (v0.69.0)
37
+
3
38
  ## 1.12.5
4
39
 
5
40
  ### Patch Changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wistia/oxlint-config",
3
- "version": "1.12.5",
3
+ "version": "1.12.7",
4
4
  "description": "Wistia's Oxlint configurations",
5
5
  "keywords": [
6
6
  "linter",
@@ -76,7 +76,7 @@
76
76
  "validate": "vitest run --project validate"
77
77
  },
78
78
  "dependencies": {
79
- "@eslint-react/eslint-plugin": "^5.18.6",
79
+ "@eslint-react/eslint-plugin": "^5.20.5",
80
80
  "@vitest/eslint-plugin": "^1.6.27",
81
81
  "confusing-browser-globals": "^1.0.11",
82
82
  "eslint-plugin-barrel-files": "^3.0.1",
@@ -84,29 +84,29 @@
84
84
  "eslint-plugin-jest-dom": "^5.10.1",
85
85
  "eslint-plugin-n": "^18.3.0",
86
86
  "eslint-plugin-no-only-tests": "^3.4.0",
87
- "eslint-plugin-playwright": "^2.11.0",
88
- "eslint-plugin-storybook": "^10.5.10",
87
+ "eslint-plugin-playwright": "^2.12.0",
88
+ "eslint-plugin-storybook": "^10.6.0",
89
89
  "eslint-plugin-styled-components": "^0.0.0",
90
90
  "eslint-plugin-styled-components-a11y": "^2.2.1",
91
91
  "eslint-plugin-testing-library": "^7.16.2",
92
92
  "typescript": "^6.0.3"
93
93
  },
94
94
  "devDependencies": {
95
- "@changesets/changelog-github": "^1.0.0",
96
- "@changesets/cli": "^3.0.1",
97
- "eslint": "^10.9.0",
98
- "oxfmt": "^0.67.0",
99
- "oxlint": "1.83.0",
100
- "oxlint-tsgolint": "^7.0.2001",
101
- "storybook": "^10.5.10",
102
- "vite": "^8.2.2",
103
- "vitest": "^5.0.0"
95
+ "@changesets/changelog-github": "^1.0.1",
96
+ "@changesets/cli": "^3.0.3",
97
+ "eslint": "^10.11.0",
98
+ "oxfmt": "^0.70.0",
99
+ "oxlint": "1.84.0",
100
+ "oxlint-tsgolint": "^7.0.2002",
101
+ "storybook": "^10.6.0",
102
+ "vite": "^8.3.0",
103
+ "vitest": "^5.0.1"
104
104
  },
105
105
  "peerDependencies": {
106
- "eslint": ">= 10.9.0",
107
- "oxfmt": ">= 0.67.0",
108
- "oxlint": ">= 1.83.0",
109
- "oxlint-tsgolint": ">= 7.0.2001"
106
+ "eslint": ">= 10.11.0",
107
+ "oxfmt": ">= 0.70.0",
108
+ "oxlint": ">= 1.84.0",
109
+ "oxlint-tsgolint": ">= 7.0.2002"
110
110
  },
111
111
  "peerDependenciesMeta": {
112
112
  "oxfmt": {
@@ -200,6 +200,26 @@ export const playwrightRules = {
200
200
  // https://github.com/playwright-community/eslint-plugin-playwright/blob/main/docs/rules/no-unnecessary-assertions.md
201
201
  'eslint-plugin-playwright/no-unnecessary-assertions': 'error',
202
202
 
203
+ // Disallow identical test and describe titles
204
+ // https://github.com/playwright-community/eslint-plugin-playwright/blob/main/docs/rules/no-identical-title.md
205
+ 'eslint-plugin-playwright/no-identical-title': 'error',
206
+
207
+ // Disallow returning from a test body
208
+ // https://github.com/playwright-community/eslint-plugin-playwright/blob/main/docs/rules/no-test-return-statement.md
209
+ 'eslint-plugin-playwright/no-test-return-statement': 'error',
210
+
211
+ // Disallow exports in files containing tests
212
+ // https://github.com/playwright-community/eslint-plugin-playwright/blob/main/docs/rules/no-export.md
213
+ 'eslint-plugin-playwright/no-export': 'error',
214
+
215
+ // Disallow inline numeric timeout values
216
+ // https://github.com/playwright-community/eslint-plugin-playwright/blob/main/docs/rules/no-magic-timeouts.md
217
+ 'eslint-plugin-playwright/no-magic-timeouts': 'error',
218
+
219
+ // Require a reason on conditional skip and fixme annotations
220
+ // https://github.com/playwright-community/eslint-plugin-playwright/blob/main/docs/rules/require-annotation-reason.md
221
+ 'eslint-plugin-playwright/require-annotation-reason': 'error',
222
+
203
223
  // Enforce blank lines between test blocks
204
224
  // https://github.com/playwright-community/eslint-plugin-playwright/blob/main/docs/rules/consistent-spacing-between-blocks.md
205
225
  // Decision: style preference, left to a formatter
@@ -249,5 +269,20 @@ export const playwrightRules = {
249
269
  // https://github.com/playwright-community/eslint-plugin-playwright/blob/main/docs/rules/require-to-pass-timeout.md
250
270
  // Decision: too strict for general use, matching vitest/require-test-timeout
251
271
  'eslint-plugin-playwright/require-to-pass-timeout': 'off',
272
+
273
+ // Disallow the timeout option on actions
274
+ // https://github.com/playwright-community/eslint-plugin-playwright/blob/main/docs/rules/no-action-timeout.md
275
+ // Decision: per-call timeouts are a documented Playwright option; inline literals are covered by no-magic-timeouts
276
+ 'eslint-plugin-playwright/no-action-timeout': 'off',
277
+
278
+ // Disallow template literals in titles
279
+ // https://github.com/playwright-community/eslint-plugin-playwright/blob/main/docs/rules/no-template-literal-title.md
280
+ // Decision: dynamic titles are allowed, matching vitest/valid-title allowArguments
281
+ 'eslint-plugin-playwright/no-template-literal-title': 'off',
282
+
283
+ // Require tests to end with an assertion
284
+ // https://github.com/playwright-community/eslint-plugin-playwright/blob/main/docs/rules/prefer-ending-with-an-expect.md
285
+ // Decision: page-object assertion helpers are not recognized without project-specific options
286
+ 'eslint-plugin-playwright/prefer-ending-with-an-expect': 'off',
252
287
  },
253
288
  };