Bumps the bun-minor-patch group with 3 updates in the / directory: [oxfmt](https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt), [oxlint](https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint) and [oxlint-tsgolint](https://github.com/oxc-project/tsgolint). Updates `oxfmt` from 0.49.0 to 0.57.0 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/oxc-project/oxc/blob/main/npm/oxfmt/CHANGELOG.md">oxfmt's changelog</a>.</em></p> <blockquote> <h1>Changelog</h1> <p>All notable changes to this package will be documented in this file.</p> <p>The format is based on <a href="https://keepachangelog.com/en/1.0.0">Keep a Changelog</a>.</p> <h2>[0.55.0] - 2026-06-15</h2> <h3>🚀 Features</h3> <ul> <li>9a2788b linter/unicorn: Implement <code>prefer-export-from</code> rule (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt/issues/22935">#22935</a>) (AliceLanniste)</li> </ul> <h2>[0.54.0] - 2026-06-08</h2> <h3>📚 Documentation</h3> <ul> <li>dadafe3 oxlint, oxfmt: Mention migrate skills in npm READMEs (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt/issues/22965">#22965</a>) (Boshen)</li> <li>f88961a oxfmt: Annotate each config option with supported languages (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt/issues/22953">#22953</a>) (leaysgur)</li> </ul> <h2>[0.52.0] - 2026-05-26</h2> <h3>🚀 Features</h3> <ul> <li>16b8058 oxfmt: Support <code>vite-plus/resolveConfig</code> for vite.config.ts (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt/issues/22454">#22454</a>) (leaysgur)</li> </ul> <h2>[0.50.0] - 2026-05-15</h2> <h3>🐛 Bug Fixes</h3> <ul> <li>43b9978 formatter/sort_imports: Treat subpath imports as internal (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt/issues/22440">#22440</a>) (leaysgur)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="5306f24d9e"><code>5306f24</code></a> release(apps): oxlint v1.72.0 && oxfmt v0.57.0 (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt/issues/23935">#23935</a>)</li> <li><a href="c4be770f24"><code>c4be770</code></a> release(apps): oxlint v1.71.0 && oxfmt v0.56.0 (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt/issues/23707">#23707</a>)</li> <li><a href="aa79b5be99"><code>aa79b5b</code></a> release(apps): oxlint v1.70.0 && oxfmt v0.55.0 (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt/issues/23442">#23442</a>)</li> <li><a href="9a2788b3ae"><code>9a2788b</code></a> feat(linter/unicorn): implement <code>prefer-export-from</code> rule (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt/issues/22935">#22935</a>)</li> <li><a href="44ae845fe1"><code>44ae845</code></a> release(apps): oxlint v1.69.0 && oxfmt v0.54.0 (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt/issues/23116">#23116</a>)</li> <li><a href="dadafe3e08"><code>dadafe3</code></a> docs(oxlint, oxfmt): mention migrate skills in npm READMEs (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt/issues/22965">#22965</a>)</li> <li><a href="f88961ae29"><code>f88961a</code></a> docs(oxfmt): annotate each config option with supported languages (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt/issues/22953">#22953</a>)</li> <li><a href="964a758084"><code>964a758</code></a> release(apps): oxlint v1.68.0 && oxfmt v0.53.0 (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt/issues/22883">#22883</a>)</li> <li><a href="68b455d84f"><code>68b455d</code></a> release(apps): oxlint v1.67.0 && oxfmt v0.52.0 (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt/issues/22735">#22735</a>)</li> <li><a href="16b8058cd6"><code>16b8058</code></a> feat(oxfmt): Support <code>vite-plus/resolveConfig</code> for vite.config.ts (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt/issues/22454">#22454</a>)</li> <li>Additional commits viewable in <a href="https://github.com/oxc-project/oxc/commits/oxfmt_v0.57.0/npm/oxfmt">compare view</a></li> </ul> </details> <br /> Updates `oxlint` from 1.64.0 to 1.72.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/oxc-project/oxc/releases">oxlint's releases</a>.</em></p> <blockquote> <h2>oxlint v1.27.0 && oxfmt v0.12.0</h2> <h1>Oxlint v1.27.0</h1> <h3>🚀 Features</h3> <ul> <li>222a8f0 linter/plugins: Implement <code>SourceCode#isSpaceBetween</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15498">#15498</a>) (overlookmotel)</li> <li>2f9735d linter/plugins: Implement <code>context.languageOptions</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15486">#15486</a>) (overlookmotel)</li> <li>bc731ff linter/plugins: Stub out all <code>Context</code> APIs (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15479">#15479</a>) (overlookmotel)</li> <li>5822cb4 linter/plugins: Add <code>extend</code> method to <code>FILE_CONTEXT</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15477">#15477</a>) (overlookmotel)</li> <li>7b1e6f3 apps: Add pure rust binaries and release to github (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15469">#15469</a>) (Boshen)</li> <li>2a89b43 linter: Introduce debug assertions after fixes to assert validity (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15389">#15389</a>) (camc314)</li> <li>ad3c45a editor: Add <code>oxc.path.node</code> option (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15040">#15040</a>) (Sysix)</li> </ul> <h3>🐛 Bug Fixes</h3> <ul> <li>6f3cd77 linter/no-var: Incorrect warning for blocks (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15504">#15504</a>) (Hamir Mahal)</li> <li>6957fb9 linter/plugins: Do not allow access to <code>Context#id</code> in <code>createOnce</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15489">#15489</a>) (overlookmotel)</li> <li>7409630 linter/plugins: Allow access to <code>cwd</code> in <code>createOnce</code> in ESLint interop mode (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15488">#15488</a>) (overlookmotel)</li> <li>732205e parser: Reject <code>using</code> / <code>await using</code> in a switch <code>case</code> / <code>default</code> clause (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15225">#15225</a>) (sapphi-red)</li> <li>a17ca32 linter/plugins: Replace <code>Context</code> class (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15448">#15448</a>) (overlookmotel)</li> <li>ecf2f7b language_server: Fail gracefully when tsgolint executable not found (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15436">#15436</a>) (camc314)</li> <li>3c8d3a7 lang-server: Improve logging in failure case for tsgolint (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15299">#15299</a>) (camc314)</li> <li>ef71410 linter: Use jsx if source type is JS in fix debug assertion (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15434">#15434</a>) (camc314)</li> <li>e32bbf6 linter/no-var: Handle TypeScript declare keyword in fixer (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15426">#15426</a>) (camc314)</li> <li>6565dbe linter/switch-case-braces: Skip comments when searching for <code>:</code> token (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15425">#15425</a>) (camc314)</li> <li>85bd19a linter/prefer-class-fields: Insert value after type annotation in fixer (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15423">#15423</a>) (camc314)</li> <li>fde753e linter/plugins: Block access to <code>context.settings</code> in <code>createOnce</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15394">#15394</a>) (overlookmotel)</li> <li>ddd9f9f linter/forward-ref-uses-ref: Dont suggest removing wrapper in invalid positions (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15388">#15388</a>) (camc314)</li> <li>dac2a9c linter/no-template-curly-in-string: Remove fixer (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15387">#15387</a>) (camc314)</li> <li>989b8e3 linter/no-var: Only fix to <code>const</code> if the var has an initializer (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15385">#15385</a>) (camc314)</li> <li>cc403f5 linter/plugins: Return empty object for unimplemented parserServices (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15364">#15364</a>) (magic-akari)</li> </ul> <h3>⚡ Performance</h3> <ul> <li>25d577e language_server: Start tools in parallel (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15500">#15500</a>) (Sysix)</li> <li>3c57291 linter/plugins: Optimize loops (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15449">#15449</a>) (overlookmotel)</li> <li>3166233 linter/plugins: Remove <code>Arc</code>s (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15431">#15431</a>) (overlookmotel)</li> <li>9de1322 linter/plugins: Lazily deserialize settings JSON (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15395">#15395</a>) (overlookmotel)</li> <li>3049ec2 linter/plugins: Optimize <code>deepFreezeSettings</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15392">#15392</a>) (overlookmotel)</li> <li>444ebfd linter/plugins: Use single object for <code>parserServices</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15378">#15378</a>) (overlookmotel)</li> </ul> <h3>📚 Documentation</h3> <ul> <li>97d2104 linter: Update comment in lint.rs about default value for tsconfig path (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15530">#15530</a>) (Connor Shea)</li> <li>2c6bd9e linter: Always refer as "ES2015" instead of "ES6" (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15411">#15411</a>) (sapphi-red)</li> <li>a0c5203 linter/import/named: Update "ES7" comment in examples (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15410">#15410</a>) (sapphi-red)</li> <li>3dc24b5 linter,minifier: Always refer as "ES Modules" instead of "ES6 Modules" (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15409">#15409</a>) (sapphi-red)</li> <li>2ad77fb linter/no-this-before-super: Correct "Why is this bad?" section (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15408">#15408</a>) (sapphi-red)</li> <li>57f0ce1 linter: Add backquotes where appropriate (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/15407">#15407</a>) (sapphi-red)</li> </ul> <h1>Oxfmt v0.12.0</h1> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/oxc-project/oxc/blob/main/npm/oxlint/CHANGELOG.md">oxlint's changelog</a>.</em></p> <blockquote> <h2>[1.72.0] - 2026-06-29</h2> <h3>🚀 Features</h3> <ul> <li>1c8f50c linter: Add schema for <code>eslint/no-restricted-import</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23642">#23642</a>) (Sysix)</li> </ul> <h3>🐛 Bug Fixes</h3> <ul> <li>742be36 refactor/node/handle-callback-err: Reject invalid regex config (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23740">#23740</a>) (camc314)</li> </ul> <h2>[1.71.0] - 2026-06-22</h2> <h3>🚀 Features</h3> <ul> <li>0dc2405 linter: Add schema for <code>eslint/no-restricted-properties</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23619">#23619</a>) (Sysix)</li> <li>b638d0e linter: Add schema for <code>node/callback-return</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23615">#23615</a>) (Sysix)</li> <li>eb8bedc linter: Add schema for <code>import/extensions</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23557">#23557</a>) (WaterWhisperer)</li> <li>46f3625 linter: Implement node/no-sync rule (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23589">#23589</a>) (fujitani sora)</li> <li>b01739a linter: Add schema for <code>unicorn/numeric-separators-style</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23554">#23554</a>) (Mikhail Baev)</li> <li>68afd2a linter/node: Implement <code>no-mixed-requires</code> rule (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23539">#23539</a>) (fujitani sora)</li> <li>a421215 linter: Add schema for <code>eslint/prefer-destructuring</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23410">#23410</a>) (WaterWhisperer)</li> <li>84438be linter/jsdoc: Added missing options to <code>require-param-description</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23416">#23416</a>) (kapobajza)</li> <li>51910df linter/jsdoc: Add missing options to <code>require-param-type</code> rule (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23418">#23418</a>) (kapobajza)</li> <li>e90925f linter/unicorn: Implement prefer-number-coercion rule (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23497">#23497</a>) (Shekhu☺️)</li> <li>dd1c866 linter/vue: Implement no-async-in-computed-properties rule (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23493">#23493</a>) (bab)</li> <li>b02444e linter: Add schema for <code>react/jsx-no-script-url</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23475">#23475</a>) (WaterWhisperer)</li> <li>a8dce46 linter/unicorn: Implement <code>max-nested-calls</code> rule (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23461">#23461</a>) (arieleli01212)</li> </ul> <h3>🐛 Bug Fixes</h3> <ul> <li>a303c23 linter/jsx-a11y: Align <code>anchor-is-valid</code> config with upstream (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23446">#23446</a>) (camc314)</li> </ul> <h3>📚 Documentation</h3> <ul> <li>b50bf4d linter: Remove manually written options doc for <code>eslint/arrow-body-style</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23490">#23490</a>) (Mikhail Baev)</li> </ul> <h2>[1.70.0] - 2026-06-15</h2> <h3>🚀 Features</h3> <ul> <li>2e8bda4 linter/vue: Implement no-dupe-keys rule (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23350">#23350</a>) (bab)</li> <li>1490a0a linter/react: Implement react-compiler rule (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23202">#23202</a>) (Boshen)</li> <li>dd560ae linter/unicorn: Implement <code>no-array-fill-with-reference-type</code> rule (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23397">#23397</a>) (Mikhail Baev)</li> <li>af36c2f linter: Add schema for <code>react/jsx-curly-brace-presence</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23400">#23400</a>) (WaterWhisperer)</li> <li>47d34a3 linter: Add schema for <code>react/jsx-handler-names</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23393">#23393</a>) (WaterWhisperer)</li> <li>f4250d0 linter: Add schema for <code>unicorn/import-style</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23386">#23386</a>) (WaterWhisperer)</li> <li>30c74ce linter: Add schema for <code>jsx_a11y/no-noninteractive-element-to-interactive-role</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23384">#23384</a>) (Sysix)</li> <li>cfbe8dc linter: Add schema for <code>jsx_a11y/no-interactive-element-to-noninteractive-role</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23382">#23382</a>) (WaterWhisperer)</li> <li>d15b7ff linter: Add schema for <code>typescript/no-restricted-types</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23381">#23381</a>) (WaterWhisperer)</li> <li>028a811 linter: Add schema for <code>jsx-a11y/media-has-caption</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23377">#23377</a>) (Sysix)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="5306f24d9e"><code>5306f24</code></a> release(apps): oxlint v1.72.0 && oxfmt v0.57.0 (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23935">#23935</a>)</li> <li><a href="742be3616f"><code>742be36</code></a> fix(refactor/node/handle-callback-err): reject invalid regex config (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23740">#23740</a>)</li> <li><a href="1c8f50c67f"><code>1c8f50c</code></a> feat(linter): add schema for <code>eslint/no-restricted-import</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23642">#23642</a>)</li> <li><a href="c4be770f24"><code>c4be770</code></a> release(apps): oxlint v1.71.0 && oxfmt v0.56.0 (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23707">#23707</a>)</li> <li><a href="0dc2405411"><code>0dc2405</code></a> feat(linter): add schema for <code>eslint/no-restricted-properties</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23619">#23619</a>)</li> <li><a href="b638d0ee1d"><code>b638d0e</code></a> feat(linter): add schema for <code>node/callback-return</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23615">#23615</a>)</li> <li><a href="6d355ab8b3"><code>6d355ab</code></a> refactor(linter): remove <code>number_as_object_schema</code> helper (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23614">#23614</a>)</li> <li><a href="eb8bedc2fb"><code>eb8bedc</code></a> feat(linter): add schema for <code>import/extensions</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23557">#23557</a>)</li> <li><a href="46f362530d"><code>46f3625</code></a> feat(linter): implement node/no-sync rule (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23589">#23589</a>)</li> <li><a href="953c7b3f1c"><code>953c7b3</code></a> refactor(linter): make <code>unicorn/numeric-separators-style</code> options <code>u32</code> (<a href="https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint/issues/23558">#23558</a>)</li> <li>Additional commits viewable in <a href="https://github.com/oxc-project/oxc/commits/oxlint_v1.72.0/npm/oxlint">compare view</a></li> </ul> </details> <br /> Updates `oxlint-tsgolint` from 0.22.1 to 0.23.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/oxc-project/tsgolint/releases">oxlint-tsgolint's releases</a>.</em></p> <blockquote> <h2>v0.23.0</h2> <h2>What's Changed</h2> <ul> <li>chore(deps): update crate-ci/typos action to v1.45.2 by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/915">oxc-project/tsgolint#915</a></li> <li>feat: add skill for upgrading typescript-go by <a href="https://github.com/camc314"><code>@camc314</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/918">oxc-project/tsgolint#918</a></li> <li>chore(deps): update pnpm to v10.33.2 by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/921">oxc-project/tsgolint#921</a></li> <li>chore: update typescript-go submodule by <a href="https://github.com/camc314"><code>@camc314</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/922">oxc-project/tsgolint#922</a></li> <li>fix: attach tsconfig path to diagnostics by <a href="https://github.com/camc314"><code>@camc314</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/923">oxc-project/tsgolint#923</a></li> <li>fix(prefer-nullish-coalescing): parenthesize mixed logical fixes by <a href="https://github.com/camc314"><code>@camc314</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/924">oxc-project/tsgolint#924</a></li> <li>tests(return-await): cover non-async arrow functions by <a href="https://github.com/camc314"><code>@camc314</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/926">oxc-project/tsgolint#926</a></li> <li>chore(deps): update github.com/go-json-experiment/json digest to b6187a3 by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/927">oxc-project/tsgolint#927</a></li> <li>chore(deps): update github actions by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/928">oxc-project/tsgolint#928</a></li> <li>chore(deps): update crate-ci/typos action to v1.46.0 by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/929">oxc-project/tsgolint#929</a></li> <li>chore(deps): update module github.com/dlclark/regexp2 to v2 by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/930">oxc-project/tsgolint#930</a></li> <li>chore: update typescript-go submodule by <a href="https://github.com/camc314"><code>@camc314</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/931">oxc-project/tsgolint#931</a></li> <li>chore(deps): update typescript-go digest to 48e2953 by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/933">oxc-project/tsgolint#933</a></li> <li>chore(deps): update typescript-go digest to 5eb880f by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/936">oxc-project/tsgolint#936</a></li> <li>fix(no-misused-promises): handle empty JSX attributes by <a href="https://github.com/camc314"><code>@camc314</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/938">oxc-project/tsgolint#938</a></li> <li>fix(no-unsafe-enum-comparison): flag string literal unions by <a href="https://github.com/camc314"><code>@camc314</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/937">oxc-project/tsgolint#937</a></li> <li>chore(deps): update typescript-go digest to e1f8f97 by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/939">oxc-project/tsgolint#939</a></li> <li>chore(deps): update typescript-go digest to 092b34f by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/940">oxc-project/tsgolint#940</a></li> <li>chore: configure typescript-go renovate schedule by <a href="https://github.com/camc314"><code>@camc314</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/941">oxc-project/tsgolint#941</a></li> <li>chore(deps): update github actions by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/945">oxc-project/tsgolint#945</a></li> <li>chore(deps): update dependency dprint-typescript to v0.96.0 by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/947">oxc-project/tsgolint#947</a></li> <li>chore(deps): update gomod by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/946">oxc-project/tsgolint#946</a></li> <li>chore(deps): update crate-ci/typos action to v1.46.1 by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/948">oxc-project/tsgolint#948</a></li> <li>fix(prefer-nullish-coalescing): emit suggestion over fix by <a href="https://github.com/camc314"><code>@camc314</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/951">oxc-project/tsgolint#951</a></li> <li>chore: update packageManager to pnpm 11.0.4 by <a href="https://github.com/Boshen"><code>@Boshen</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/953">oxc-project/tsgolint#953</a></li> <li>chore: update typescript-go submodule by <a href="https://github.com/camc314"><code>@camc314</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/955">oxc-project/tsgolint#955</a></li> <li>fix(no-nullable-type-assertion-style): use suggestion instead of fix by <a href="https://github.com/camc314"><code>@camc314</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/956">oxc-project/tsgolint#956</a></li> <li>docs: Update Go version requirement to 1.26 in CONTRIBUTING.md. by <a href="https://github.com/connorshea"><code>@connorshea</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/957">oxc-project/tsgolint#957</a></li> <li>fix: allow safe promise intersection members by <a href="https://github.com/camc314"><code>@camc314</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/959">oxc-project/tsgolint#959</a></li> <li>ci: switch security workflow to ubuntu-latest by <a href="https://github.com/Boshen"><code>@Boshen</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/962">oxc-project/tsgolint#962</a></li> <li>chore(deps): update dependency vitest to v4.1.6 by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/963">oxc-project/tsgolint#963</a></li> <li>chore(deps): update module github.com/dlclark/regexp2/v2 to v2.0.3 by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/964">oxc-project/tsgolint#964</a></li> <li>chore(deps): update dependency dprint-markdown to v0.22.0 by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/965">oxc-project/tsgolint#965</a></li> <li>chore(deps): update github actions by <a href="https://github.com/renovate"><code>@renovate</code></a>[bot] in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/966">oxc-project/tsgolint#966</a></li> <li>perf(no-unnecessary-type-parameters): stop counting settled candidates by <a href="https://github.com/camc314"><code>@camc314</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/967">oxc-project/tsgolint#967</a></li> <li>chore: add <code>dprint</code> to pnpm <code>allowBuilds</code> by <a href="https://github.com/camc314"><code>@camc314</code></a> in <a href="https://redirect.github.com/oxc-project/tsgolint/pull/968">oxc-project/tsgolint#968</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/oxc-project/tsgolint/compare/v0.22.1...v0.23.0">https://github.com/oxc-project/tsgolint/compare/v0.22.1...v0.23.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="0e575fae84"><code>0e575fa</code></a> chore: add <code>dprint</code> to pnpm <code>allowBuilds</code> (<a href="https://redirect.github.com/oxc-project/tsgolint/issues/968">#968</a>)</li> <li><a href="bb8886bef7"><code>bb8886b</code></a> perf(no-unnecessary-type-parameters): stop counting settled candidates (<a href="https://redirect.github.com/oxc-project/tsgolint/issues/967">#967</a>)</li> <li><a href="90be7b2609"><code>90be7b2</code></a> chore(deps): update github actions (<a href="https://redirect.github.com/oxc-project/tsgolint/issues/966">#966</a>)</li> <li><a href="cdae358c52"><code>cdae358</code></a> chore(deps): update dependency dprint-markdown to v0.22.0 (<a href="https://redirect.github.com/oxc-project/tsgolint/issues/965">#965</a>)</li> <li><a href="d356c9e3d6"><code>d356c9e</code></a> chore(deps): update module github.com/dlclark/regexp2/v2 to v2.0.3 (<a href="https://redirect.github.com/oxc-project/tsgolint/issues/964">#964</a>)</li> <li><a href="7cba6be4c0"><code>7cba6be</code></a> chore(deps): update dependency vitest to v4.1.6 (<a href="https://redirect.github.com/oxc-project/tsgolint/issues/963">#963</a>)</li> <li><a href="1dcd2a6f41"><code>1dcd2a6</code></a> ci: switch security workflow to ubuntu-latest (<a href="https://redirect.github.com/oxc-project/tsgolint/issues/962">#962</a>)</li> <li><a href="b4f66246a6"><code>b4f6624</code></a> fix: allow safe promise intersection members (<a href="https://redirect.github.com/oxc-project/tsgolint/issues/959">#959</a>)</li> <li><a href="233eeb35db"><code>233eeb3</code></a> docs: Update Go version requirement to 1.26 in CONTRIBUTING.md. (<a href="https://redirect.github.com/oxc-project/tsgolint/issues/957">#957</a>)</li> <li><a href="8bd37abc59"><code>8bd37ab</code></a> fix(no-nullable-type-assertion-style): use suggestion instead of fix (<a href="https://redirect.github.com/oxc-project/tsgolint/issues/956">#956</a>)</li> <li>Additional commits viewable in <a href="https://github.com/oxc-project/tsgolint/compare/v0.22.1...v0.23.0">compare view</a></li> </ul> </details> <br /> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Julien Goux <hi@jgoux.dev>
⚙️ Supabase CLI Action
About
This composite action sets up the Supabase CLI,
supabase, on GitHub's hosted Actions
runners. Other CI runners like
Bitbucket
and
GitLab
are supported via their respective pipelines.
This action can be run on ubuntu-latest, windows-latest, and macos-latest
GitHub Actions runners, and will install and expose a specified version of the
supabase CLI on the runner environment.
Usage
Setup the supabase CLI:
steps:
- uses: supabase/setup-cli@v3
If version is omitted, the action checks the repository root for bun.lock,
pnpm-lock.yaml, or package-lock.json and installs the declared supabase
package version through npm. If the lockfile includes package integrity
metadata, the action verifies it against the npm registry before installing. If
no supported lockfile is present, it falls back to latest.
The action uses an existing Node.js/npm runtime when one is already available, and requires Node.js 20 or newer. On non-musl runners without Node.js or npm, it provisions them internally. Runners must be able to reach the npm registry to install the CLI package.
When running in Alpine or other Linux musl containers, the action uses Alpine's
nodejs and npm packages instead of actions/setup-node, because the
standard Node.js runner binaries target glibc. Root containers can have missing
runtime packages installed automatically. Non-root containers must include
Node.js 20+ and the runtime packages in the image before the action runs:
FROM alpine:3.20
RUN apk add --no-cache libstdc++ libgcc nodejs npm
USER 1000:1000
A fixed npm-published version, latest, or beta of the supabase CLI can be
installed:
steps:
- uses: supabase/setup-cli@v3
with:
version: 2.84.2
steps:
- uses: supabase/setup-cli@v3
with:
version: beta
Run supabase db start to execute all migrations on a fresh database:
steps:
- uses: supabase/setup-cli@v3
with:
version: latest
- run: supabase init
- run: supabase db start
Since Supabase CLI relies on Docker Engine API, additional setup may be required on Windows and macOS runners.
Inputs
The action supports the following inputs:
| Name | Type | Description | Default | Required |
|---|---|---|---|---|
version |
String | Supabase CLI latest, beta, or fixed version published to npm |
Root lockfile version or latest |
false |
Advanced Usage
Check generated TypeScript types are up-to-date with Postgres schema:
steps:
- uses: supabase/setup-cli@v3
- run: supabase init
- run: supabase db start
- name: Verify generated types match Postgres schema
run: |
supabase gen types typescript --local > schema.gen.ts
if ! git diff --ignore-space-at-eol --exit-code --quiet schema.gen.ts; then
echo "Detected uncommitted changes after build. See status below:"
git diff
exit 1
fi
Release job to push schema changes to a Supabase project:
env:
SUPABASE_ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }}
SUPABASE_DB_PASSWORD: ${{ secrets.DB_PASSWORD }}
# Retrieve <project-id> from dashboard url: https://app.supabase.com/project/<project-id>
PROJECT_ID: <project-id>
steps:
- uses: supabase/setup-cli@v3
- run: supabase link --project-ref $PROJECT_ID
- run: supabase db push
Export local Supabase env vars for app tests:
steps:
- uses: supabase/setup-cli@v3
- run: supabase init
- run: supabase start
- name: Export local Supabase env vars
run: |
# Customize the variable names as needed for your app.
supabase status -o env \
--override-name api.url=SUPABASE_URL \
--override-name auth.service_role_key=SUPABASE_SERVICE_ROLE_KEY \
>> .env.test
- run: bun test
Develop
After you've cloned the repository to your local machine or codespace, you'll need to perform a few setup steps before you can work on the action.
Note
You'll need a recent version of Bun for local development. This repository includes a
.bun-versionfile for tools that can auto-switch Bun versions.
-
🛠️ Install the dependencies
bun install -
✅ Run the tests
bun test -
🔍 Run the full local CI suite
bun run ci
Publish
- Create a new GitHub release
- Rebase
v3branch onmain
Your action is now published! 🚀
See the versioning documentation
Validate
Validate changes by exercising the action from a workflow in this repository (see ci.yml and e2e.yml).
steps:
- uses: ./
with:
version: latest
The CI workflow provides fast smoke coverage across GitHub-hosted runners, and
the E2E workflow verifies supabase init and supabase start against supported
Postgres versions. See the actions tab
for recent runs.