oxc-project
oxc
Blog
Docs
Changelog
Blog
Docs
Changelog
Overview
Branches
Benchmarks
Runs
Performance History
Latest Results
fix(oxfmt): place space outside body group for arrow conditional expressions When an arrow function with a conditional expression body is the grouped last argument, the space before the body group must be a Space element outside the group rather than a soft_line_break_or_space inside it. By placing an explicit space() before the body group, the pending_space is checked when the next Line(Soft) is encountered in Expanded mode: line_width + 1 > printWidth correctly returns Fits::No, causing oxfmt to fall through to most_expanded, matching Prettier. Fixes: #21185 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
jsmecham:fix/issue-21185
9 minutes ago
feat(linter): introduce `--type-check-only` flag (#21184)
main
2 hours ago
u
c/04-08-feat_linter_introduce_--type-check-only_flag
3 hours ago
feat(linter): introduce `--type-check-only` flag
c/04-08-feat_linter_introduce_--type-check-only_flag
3 hours ago
feat(linter): introduce `--type-check-only` flag
c/04-08-feat_linter_introduce_--type-check-only_flag
3 hours ago
fix(formatter): sequence expression in arrow function body collapses to one line When a sequence expression is the body of a parenthesized arrow function, the break decision was made at the indented column inside the `(...)` rather than at the column of `(`. This caused items to collapse onto one line even when they were too long to fit, since the indented context gave them more space than the arrow function signature context. Fix by having the sequence expression use `soft_block_indent` inside its own group when in an arrow body context, and removing the outer `soft_block_indent` from the arrow function body handler. This ensures the group's break threshold is evaluated at the correct column ā matching Prettier's behavior. Fixes #21171 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
jsmecham:fix/issue-21171
3 hours ago
feat(linter): Implemented `valid-expect-in-promise` vitest and jest rule (#21170) Related to: - https://github.com/oxc-project/oxc/issues/4656 - https://github.com/oxc-project/oxc/issues/492 # AI Disclosure The code structure and architecture was done without AI assistance. Once the base was done, the code was made with Claude Code, reviewed, refactor to remove noised comments, duplicate code or explain better some functions. # Summary The OG rules implementation does a bottom to top iteration. The approach done here it's the opposite, iterate on jest nodes from top to bottom for the following reasons: - Running only in jest nodes allow me to filter all nodes that aren't `it` or `test`, it save me to check every call expression if we are in a `test case scope` - Any error found after a return statement, it have a diagnostic message to notify the promise is unreachable. `valid_expect_in_promise.rs` shows 3839 added, but ~3400 lines of 3839 are the test cases. The test that depends on `globalAlias` are commented. # Info Jest - [Doc](https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.1/docs/rules/valid-expect-in-promise.md) - [Source Code](https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.1/src/rules/valid-expect-in-promise.ts) - [Test](https://github.com/jest-community/eslint-plugin-jest/blob/v29.15.1/src/rules/__tests__/valid-expect.test.ts) Vitest - [Doc](https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-expect-in-promise.md) - [Source Code](https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/src/rules/valid-expect-in-promise.ts) - [Test](https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/tests/valid-expect-in-promise.test.ts)
main
4 hours ago
fix(formatter): preserve newline between self-closing JSX element and single-char text
jsmecham:fix/jsx-self-closing-newline-before-single-char-text
5 hours ago
Latest Branches
CodSpeed Performance Gauge
0%
fix(oxfmt): place space outside body group for arrow conditional expressions
#21186
13 minutes ago
de1a84e
jsmecham:fix/issue-21185
CodSpeed Performance Gauge
0%
feat(linter): introduce `--type-check-only` flag
#21184
3 hours ago
3858d16
c/04-08-feat_linter_introduce_--type-check-only_flag
CodSpeed Performance Gauge
-3%
fix(formatter): sequence expression in arrow function body collapses onto one line
#21183
3 hours ago
f3feb1a
jsmecham:fix/issue-21171
Ā© 2026 CodSpeed Technology
Home
Terms
Privacy
Docs