github oxc-project/oxc oxlint_v1.27.0
oxlint v1.27.0 && oxfmt v0.12.0

latest releases: apps_v1.28.0, oxlint_v1.28.0, oxfmt_v0.13.0...
11 hours ago

Oxlint v1.27.0

🚀 Features

  • 222a8f0 linter/plugins: Implement SourceCode#isSpaceBetween (#15498) (overlookmotel)
  • 2f9735d linter/plugins: Implement context.languageOptions (#15486) (overlookmotel)
  • bc731ff linter/plugins: Stub out all Context APIs (#15479) (overlookmotel)
  • 5822cb4 linter/plugins: Add extend method to FILE_CONTEXT (#15477) (overlookmotel)
  • 7b1e6f3 apps: Add pure rust binaries and release to github (#15469) (Boshen)
  • 2a89b43 linter: Introduce debug assertions after fixes to assert validity (#15389) (camc314)
  • ad3c45a editor: Add oxc.path.node option (#15040) (Sysix)

🐛 Bug Fixes

  • 6f3cd77 linter/no-var: Incorrect warning for blocks (#15504) (Hamir Mahal)
  • 6957fb9 linter/plugins: Do not allow access to Context#id in createOnce (#15489) (overlookmotel)
  • 7409630 linter/plugins: Allow access to cwd in createOnce in ESLint interop mode (#15488) (overlookmotel)
  • 732205e parser: Reject using / await using in a switch case / default clause (#15225) (sapphi-red)
  • a17ca32 linter/plugins: Replace Context class (#15448) (overlookmotel)
  • ecf2f7b language_server: Fail gracefully when tsgolint executable not found (#15436) (camc314)
  • 3c8d3a7 lang-server: Improve logging in failure case for tsgolint (#15299) (camc314)
  • ef71410 linter: Use jsx if source type is JS in fix debug assertion (#15434) (camc314)
  • e32bbf6 linter/no-var: Handle TypeScript declare keyword in fixer (#15426) (camc314)
  • 6565dbe linter/switch-case-braces: Skip comments when searching for : token (#15425) (camc314)
  • 85bd19a linter/prefer-class-fields: Insert value after type annotation in fixer (#15423) (camc314)
  • fde753e linter/plugins: Block access to context.settings in createOnce (#15394) (overlookmotel)
  • ddd9f9f linter/forward-ref-uses-ref: Dont suggest removing wrapper in invalid positions (#15388) (camc314)
  • dac2a9c linter/no-template-curly-in-string: Remove fixer (#15387) (camc314)
  • 989b8e3 linter/no-var: Only fix to const if the var has an initializer (#15385) (camc314)
  • cc403f5 linter/plugins: Return empty object for unimplemented parserServices (#15364) (magic-akari)

⚡ Performance

  • 25d577e language_server: Start tools in parallel (#15500) (Sysix)
  • 3c57291 linter/plugins: Optimize loops (#15449) (overlookmotel)
  • 3166233 linter/plugins: Remove Arcs (#15431) (overlookmotel)
  • 9de1322 linter/plugins: Lazily deserialize settings JSON (#15395) (overlookmotel)
  • 3049ec2 linter/plugins: Optimize deepFreezeSettings (#15392) (overlookmotel)
  • 444ebfd linter/plugins: Use single object for parserServices (#15378) (overlookmotel)

📚 Documentation

  • 97d2104 linter: Update comment in lint.rs about default value for tsconfig path (#15530) (Connor Shea)
  • 2c6bd9e linter: Always refer as "ES2015" instead of "ES6" (#15411) (sapphi-red)
  • a0c5203 linter/import/named: Update "ES7" comment in examples (#15410) (sapphi-red)
  • 3dc24b5 linter,minifier: Always refer as "ES Modules" instead of "ES6 Modules" (#15409) (sapphi-red)
  • 2ad77fb linter/no-this-before-super: Correct "Why is this bad?" section (#15408) (sapphi-red)
  • 57f0ce1 linter: Add backquotes where appropriate (#15407) (sapphi-red)

Oxfmt v0.12.0

🚀 Features

  • 3251000 oxfmt: Use prettier directly and bundle prettier (#15544) (Dunqing)
  • 7b1e6f3 apps: Add pure rust binaries and release to github (#15469) (Boshen)
  • 33ad374 oxfmt: Disable embedded formatting by default for alpha (#15402) (leaysgur)
  • 5708126 formatter/sort_imports: Add options.newlinesBetween (#15369) (leaysgur)
  • 2dfc3bd formatter: Remove Tag::StartVerbatim and Tag::EndVerbatim (#15370) (Dunqing)
  • 88c7530 formatter: Remove FormatElement::LocatedTokenText (#15367) (Dunqing)

🐛 Bug Fixes

  • d32d22e formatter: Correct FormatElement size check (#15461) (Dunqing)
  • b0f43f9 formatter: Test call difference (#15356) (Dunqing)
  • 01f20f3 formatter: Incorrect comment checking logic for grouping argument (#15354) (Dunqing)

⚡ Performance

  • f4b75b6 formatter: Pre-allocate enough space for the FormatElement buffer (#15422) (Dunqing)
  • 5a61189 formatter: Avoid unnecessary allocation for BinaryLikeExpression (#15467) (Dunqing)
  • 064f835 formatter: Optimize printing call arguments (#15464) (Dunqing)
  • 29f35b2 formatter: Reuse previous indent stack in FitsMeasurer (#15416) (Dunqing)
  • a6808a0 oxfmt: Use AllocatorPool to reuse allocator between threads (#15412) (leaysgur)
  • 2515045 formatter: Use CodeBuffer's built-in print_indent to print indentation (#15406) (Dunqing)
  • 681607b formatter: Check the Text to see whether it has multiple lines based on its width (#15405) (Dunqing)
  • b92deb4 formatter: Replace String buffer with byte-oriented CodeBuffer (#14752) (Boshen)
  • 963b87f formatter: Add text_without_whitespace for text that can never have whitespace (#15403) (Dunqing)
  • f30ce4b formatter: Optimize formatting literal string (#15380) (Dunqing)
  • 8f25a0e formatter: Memorize text width for FormatElement::Text (#15372) (Dunqing)
  • f913543 formatter: Avoid allocation for SyntaxTokenCowSlice (#15366) (Dunqing)
  • 98c9234 formatter: Optimize FormatElement::Token printing (#15365) (Dunqing)

Don't miss a new oxc release

NewReleases is sending notifications on new releases.