release(apps): oxlint v1.44.0 && oxfmt v0.29.0#19168
Conversation
Oxfmt Ecosystem CI
|
There was a problem hiding this comment.
Pull request overview
This PR prepares a coordinated release bump for the oxlint and oxfmt apps/crates and their corresponding npm packages, updating version numbers and release notes to match the new published versions.
Changes:
- Bump
oxlintto v1.44.0 across Rust crates/apps, npm packages, and JS native-binding loaders. - Bump
oxfmt/oxc_formatterto v0.29.0 across Rust crates/apps, npm packages, and JS native-binding loaders. - Add new 2026-02-09 changelog entries for the released versions and update
Cargo.lockaccordingly.
Reviewed changes
Copilot reviewed 16 out of 17 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
npm/oxlint/package.json |
Bumps published oxlint npm package version to 1.44.0. |
npm/oxlint/CHANGELOG.md |
Adds 1.44.0 npm changelog entry (but currently skips 1.43.0). |
npm/oxfmt/package.json |
Bumps published oxfmt npm package version to 0.29.0. |
npm/oxfmt/CHANGELOG.md |
Adds 0.29.0 npm changelog entry (but currently skips 0.28.0). |
crates/oxc_linter/Cargo.toml |
Bumps oxc_linter crate version to 1.44.0. |
crates/oxc_linter/CHANGELOG.md |
Adds 1.44.0 crate changelog entry (contains a small rule-name typo). |
crates/oxc_formatter/Cargo.toml |
Bumps oxc_formatter crate version to 0.29.0. |
crates/oxc_formatter/CHANGELOG.md |
Adds 0.29.0 crate changelog entry. |
apps/oxlint/src-js/bindings.js |
Updates enforced native binding version checks to 1.44.0 (still highly duplicated). |
apps/oxlint/package.json |
Bumps internal oxlint-app package version to 1.44.0. |
apps/oxlint/Cargo.toml |
Bumps oxlint app crate version to 1.44.0. |
apps/oxlint/CHANGELOG.md |
Adds 1.44.0 app changelog entry (contains a small rule-name typo). |
apps/oxfmt/src-js/bindings.js |
Updates enforced native binding version checks to 0.29.0 (still highly duplicated). |
apps/oxfmt/package.json |
Bumps internal oxfmt-app package version to 0.29.0. |
apps/oxfmt/Cargo.toml |
Bumps oxfmt app crate version to 0.29.0. |
apps/oxfmt/CHANGELOG.md |
Adds 0.29.0 app changelog entry. |
Cargo.lock |
Updates locked versions for the bumped crates/apps. |
| - 9561e7f linter/plugins: Alter JS plugins example (#18900) (overlookmotel) | ||
| - b425a0c linter: Document jsPlugins examples (#18671) (Cameron) | ||
| - df2b7fa linter: Expand settings example with reference to custom plugins (#18670) (camc314) | ||
|
|
There was a problem hiding this comment.
The changelog skips directly from 1.44.0 to 1.42.0. Since the npm package version was 1.43.0 previously, this file should likely include a 1.43.0 section (even if empty) to keep the release history consistent.
| ## [1.43.0] - 2026-02-02 | |
| _No notable changes._ |
|
|
||
| - 6ee2d59 oxfmt: Use `oxc_formatter` in js-in-xxx part (#18373) (leaysgur) | ||
| - 9788a96 oxlint,oxfmt: Add more native builds (#18853) (Boshen) | ||
|
|
There was a problem hiding this comment.
The changelog jumps from 0.29.0 to 0.27.0, but the package version being bumped here is 0.28.0 -> 0.29.0. Add the missing 0.28.0 entry so the changelog reflects all published versions in order.
| ## [0.28.0] - 2026-02-02 | |
| ### 📦 Maintenance | |
| - No user-facing changes documented for this version. |
| - e3dc5f6 linter/plugins: `RuleTester` test suggestions (#19104) (overlookmotel) | ||
| - 6054249 linter/plugins: Add `recursive` option to `RuleTester` (#19093) (overlookmotel) | ||
| - 27c241b linter/plugins: `RuleTester` test fixes (#19091) (overlookmotel) | ||
| - 7be8613 linter: Move `no-misleading-chracter-class` to `correctness` (#19006) (Sysix) |
There was a problem hiding this comment.
Typo in the rule name in this changelog entry: no-misleading-chracter-class should be no-misleading-character-class. Since changelogs are user-facing, it’s worth correcting even if it came from the original commit message.
| - 7be8613 linter: Move `no-misleading-chracter-class` to `correctness` (#19006) (Sysix) | |
| - 7be8613 linter: Move `no-misleading-character-class` to `correctness` (#19006) (Sysix) |
| - 27c241b linter/plugins: `RuleTester` test fixes (#19091) (overlookmotel) | ||
| - 7318275 linter/new-cap: Tighten diagnostic spans and add help text (#19131) (camchenry) | ||
| - ac2b16b linter: Improve `no-misleading-character-class` diagnostic spans (#19109) (Sysix) | ||
| - 7be8613 linter: Move `no-misleading-chracter-class` to `correctness` (#19006) (Sysix) |
There was a problem hiding this comment.
Typo in the rule name in this changelog entry: no-misleading-chracter-class should be no-misleading-character-class.
| - 7be8613 linter: Move `no-misleading-chracter-class` to `correctness` (#19006) (Sysix) | |
| - 7be8613 linter: Move `no-misleading-character-class` to `correctness` (#19006) (Sysix) |
| const bindingPackageVersion = require('@oxlint/binding-android-arm64/package.json').version | ||
| if (bindingPackageVersion !== '1.43.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { | ||
| throw new Error(`Native binding package version mismatch, expected 1.43.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) | ||
| if (bindingPackageVersion !== '1.44.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { | ||
| throw new Error(`Native binding package version mismatch, expected 1.44.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) | ||
| } |
There was a problem hiding this comment.
This version string (1.44.0) is duplicated in many branches in this file (both in the comparison and in the error message). Consider defining a single expectedVersion constant (or reading it from the package.json) and reusing it to reduce the chance of missing an update in a future release.
| const bindingPackageVersion = require('@oxfmt/binding-android-arm64/package.json').version | ||
| if (bindingPackageVersion !== '0.28.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { | ||
| throw new Error(`Native binding package version mismatch, expected 0.28.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) | ||
| if (bindingPackageVersion !== '0.29.0' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0') { | ||
| throw new Error(`Native binding package version mismatch, expected 0.29.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`) | ||
| } |
There was a problem hiding this comment.
This version string (0.29.0) is duplicated in many branches in this file (both in the comparison and in the error message). Consider defining a single expectedVersion constant (or reading it from the package.json) and reusing it to reduce the chance of missing an update in a future release.
CodSpeed Performance ReportMerging this PR will not alter performanceComparing Summary
Footnotes
|
|
We've moved the release to tomorrow - lets close these and re-run the prepare release CI so that changelogs are up to date. |
Oxlint
🚀 Features
RuleTestertest suggestions (feat(linter/plugins):RuleTestertest suggestions #19104) (overlookmotel)recursiveoption toRuleTester(feat(linter/plugins): addrecursiveoption toRuleTester#19093) (overlookmotel)RuleTestertest fixes (feat(linter/plugins):RuleTestertest fixes #19091) (overlookmotel)no-misleading-character-classdiagnostic spans (feat(linter): improveno-misleading-character-classdiagnostic spans #19109) (Sysix)no-misleading-chracter-classtocorrectness(feat(linter): moveno-misleading-chracter-classtocorrectness#19006) (Sysix)unicorn/prefer-dom-node-dataset(feat(linter/unicorn): implement suggestion forunicorn/prefer-dom-node-dataset#19051) (Mikhail Baev)forEachcase (feat(linter/array-callback-return): improve diagnostic message forforEachcase #18992) (camc314)eslint/no-iteratorrule to correctness, which makes it a default rule (feat(linter): Promote theeslint/no-iteratorrule to correctness, which makes it a default rule #18915) (connorshea)unicorn/prefer-reflect-apply(feat(linter): implement suggestion forunicorn/prefer-reflect-apply#18932) (Mikhail Baev)typescript/consistent-type-assertions(feat(linter): implementtypescript/consistent-type-assertions#18869) (Bazyli Brzóska)@oxlint/pluginsNPM package (feat(linter/plugins): add@oxlint/pluginsNPM package #18824) (overlookmotel)prefer-expect-type-ofrule (feat(linter/vitest): Implementsprefer-expect-type-ofrule #17957) (Said Atrahouch)unicorn/relative-url-stylerule (feat(linter/unicorn): implementunicorn/relative-url-stylerule #18857) (Mikhail Baev)defineConfig(feat(linter): enforce exporting an object withdefineConfig#18858) (camc314)🐛 Bug Fixes
Effect.forEachcalls (fix(linter/no-array-for-each): skipEffect.forEachcalls #19127) (camc314)RuleTesterconsider adjacent fixes as overlapping in ESLint compat mode (fix(linter/plugins):RuleTesterconsider adjacent fixes as overlapping in ESLint compat mode #19094) (overlookmotel)no-misleading-character-class: do not skip reporting on first invalid sequence of the checking group (fix(linter):no-misleading-character-class: do not skip reporting on first invalid sequence of the checking group #19111) (Sysix)no-misleading-character-class: split sequences on allCharacterSet(fix(linter):no-misleading-character-class: split sequences on allCharacterSet#19107) (Sysix)check-tag-namesfor@in email addresses and npm scopes (fix(linter/jsdoc): false positive incheck-tag-namesfor@in email addresses and npm scopes #19021) (Boshen)arguments(fix(linter/prefer-at): skip autofix forarguments#18991) (camc314)popoverrelated props (fix(linter/react/no-unknown-property): add missingpopoverrelated props #18953) (Christoph Nakazawa)./prefix in overrides. (fix(linter): normalize relative paths with./prefix in overrides. #18954) (connorshea)afterhook always runs last in rule converted for ESLint (fix(linter/plugins): ensureafterhook always runs last in rule converted for ESLint #18904) (overlookmotel)ExternalPlugin.config_dirto fix js plugins loading (fix(linter/dynamic-config): setExternalPlugin.config_dirto fix js plugins loading #18854) (camc314)⚡ Performance
Vecwhen compilingPossibleFixes(perf(linter): avoid allocatingVecwhen compilingPossibleFixes#19074) (overlookmotel)📚 Documentation
RuleTesterconfig (docs(linter/plugins): correct and expand JSDoc comment forRuleTesterconfig #19156) (overlookmotel)import/max-dependenciesrule. (docs(linter): Improve docs forimport/max-dependenciesrule. #19119) (connorshea)jsx-a11y/no-redundant-rolesrule. (docs(linter): Rewrite the docs for thejsx-a11y/no-redundant-rolesrule. #19117) (connorshea)import/no-nodejs-modules. (docs(linter): Fix invalid directive in example code forimport/no-nodejs-modules. #19115) (connorshea)DiagnosticReport(docs(linter/plugins): improve JSDoc comment forDiagnosticReport#19103) (overlookmotel)config.generated.ts(docs(linter): regenerateconfig.generated.ts#18897) (overlookmotel)Oxfmt
🚀 Features
oxc_formatterin js-in-xxx part (feat(oxfmt): Useoxc_formatterin js-in-xxx part #18373) (leaysgur)🐛 Bug Fixes
isSingleJsxExpressionStatementInMarkdown()check for js-in-md (fix(oxfmt): HandleisSingleJsxExpressionStatementInMarkdown()check for js-in-md #19042) (leaysgur)babel-tsfor now (fix(oxfmt): Do not overridebabel-tsfor now #19030) (leaysgur)TemplateLiteralcontent (fix(formatter/detect_code_removal): Do not countTemplateLiteralcontent #18848) (leaysgur)⚡ Performance