Compare commits

..

21 Commits

Author SHA1 Message Date
renovate-bot 6b8fed1b0e chore(deps): update actions/setup-node action to v7
renovate/stability-days Updates have met minimum release age requirement
CI / Check Dist (pull_request) Successful in 8s
CI / Dry-Run (pull_request) Successful in 9s
CI / Test (pull_request) Successful in 10s
2026-07-21 06:28:28 +00:00
renovate-bot a2f574acc1 chore(deps): update actions/setup-node action to v6.5.0 (#59)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [actions/setup-node](https://github.com/actions/setup-node) | action | minor | `v6.4.0` → `v6.5.0` |

---

### Release Notes

<details>
<summary>actions/setup-node (actions/setup-node)</summary>

### [`v6.5.0`](https://github.com/actions/setup-node/releases/tag/v6.5.0)

[Compare Source](https://github.com/actions/setup-node/compare/v6.4.0...v6.5.0)

##### What's Changed

- Update [@&#8203;actions/cache](https://github.com/actions/cache) to 5.1.0 and add security overrides for undici and fast-xml-parser by [@&#8203;HarithaVattikuti](https://github.com/HarithaVattikuti) in [#&#8203;1579](https://github.com/actions/setup-node/pull/1579)

**Full Changelog**: <https://github.com/actions/setup-node/compare/v6.4.0...v6.5.0>

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNjMuOSIsInVwZGF0ZWRJblZlciI6IjQzLjI2My45IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJhY3Rpb24iLCJkZXBzIl19-->

Reviewed-on: #59
Reviewed-by: t.behrendt <2+t.behrendt@noreply.localhost>
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-07-21 07:41:41 +02:00
renovate-bot e9d4547d7e chore(deps): update https://gitea.t000-n.de/t.behrendt/actions action to v0.2.11 (#58)
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-07-19 07:11:09 +02:00
renovate-bot 396e472c0d chore(deps): update actions (#57)
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-07-19 06:12:38 +02:00
renovate-bot 5f9db435c2 chore(deps): update https://gitea.t000-n.de/t.behrendt/conventional-semantic-git-tag-increment action to v0.1.41 (#56)
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-07-18 10:43:33 +02:00
renovate-bot 4ef2d7a6cc chore(deps): update https://gitea.t000-n.de/t.behrendt/actions action to v0.2.9 (#55)
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-07-18 07:34:21 +02:00
renovate-bot c4af91c99f chore(deps): update https://gitea.t000-n.de/t.behrendt/conventional-semantic-git-tag-increment action to v0.1.40 (#54)
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-07-18 07:09:55 +02:00
renovate-bot 3ec6498da5 chore(deps): update dependency typescript to v7 (#53)
This PR contains the following updates:

| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [typescript](https://www.typescriptlang.org/) ([source](https://github.com/microsoft/TypeScript)) | [`6.0.3` → `7.0.2`](https://renovatebot.com/diffs/npm/typescript/6.0.3/7.0.2) | ![age](https://developer.mend.io/api/mc/badges/age/npm/typescript/7.0.2?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typescript/6.0.3/7.0.2?slim=true) |

---

### Release Notes

<details>
<summary>microsoft/TypeScript (typescript)</summary>

### [`v7.0.2`](https://github.com/microsoft/TypeScript/compare/v6.0.3...2bd066d87f5bafd315be9f40889d0a60b9e58e0b)

[Compare Source](https://github.com/microsoft/TypeScript/compare/v6.0.3...2bd066d87f5bafd315be9f40889d0a60b9e58e0b)

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNjMuOSIsInVwZGF0ZWRJblZlciI6IjQzLjI2My45IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBzIiwibnBtIl19-->

Reviewed-on: #53
Reviewed-by: t.behrendt <2+t.behrendt@noreply.localhost>
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-07-16 07:27:26 +02:00
renovate-bot 04b5b312ea chore(deps): update all non-major dependencies (#52)
This PR contains the following updates:

| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | [`24.13.2` → `24.13.3`](https://renovatebot.com/diffs/npm/@types%2fnode/24.13.2/24.13.3) | ![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/24.13.3?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/24.13.2/24.13.3?slim=true) |
| [rolldown](https://rolldown.rs/) ([source](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown)) | [`1.1.4` → `1.1.5`](https://renovatebot.com/diffs/npm/rolldown/1.1.4/1.1.5) | ![age](https://developer.mend.io/api/mc/badges/age/npm/rolldown/1.1.5?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/rolldown/1.1.4/1.1.5?slim=true) |

---

### Release Notes

<details>
<summary>rolldown/rolldown (rolldown)</summary>

### [`v1.1.5`](https://github.com/rolldown/rolldown/blob/HEAD/CHANGELOG.md#115---2026-07-08)

[Compare Source](https://github.com/rolldown/rolldown/compare/v1.1.4...v1.1.5)

##### 🚀 Features

- detect top-level import-binding reads as execution-order sensitive ([#&#8203;10180](https://github.com/rolldown/rolldown/issues/10180)) by [@&#8203;hyf0](https://github.com/hyf0)
- sourcemap\_filenames: add a sourcemapFileNames option ([#&#8203;9271](https://github.com/rolldown/rolldown/issues/9271)) by [@&#8203;V1OL3TF0X](https://github.com/V1OL3TF0X)
- binding: record plugin hook result kind in tracing spans ([#&#8203;10154](https://github.com/rolldown/rolldown/issues/10154)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- linking: skip side-effect-free modules in per-entry reachability ([#&#8203;10111](https://github.com/rolldown/rolldown/issues/10111)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- improve error message for unresolved virtual imports ([#&#8203;10156](https://github.com/rolldown/rolldown/issues/10156)) by [@&#8203;sapphi-red](https://github.com/sapphi-red)
- add descriptive metadata to plugin API ([#&#8203;10106](https://github.com/rolldown/rolldown/issues/10106)) by [@&#8203;sapphi-red](https://github.com/sapphi-red)
- add `--configLoader=native` option ([#&#8203;10118](https://github.com/rolldown/rolldown/issues/10118)) by [@&#8203;sapphi-red](https://github.com/sapphi-red)

##### 🐛 Bug Fixes

- improve invalid annotation warnings ([#&#8203;10185](https://github.com/rolldown/rolldown/issues/10185)) by [@&#8203;hyf0](https://github.com/hyf0)
- keep deduplicated asset filenames stable once they can be observed ([#&#8203;10191](https://github.com/rolldown/rolldown/issues/10191)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- sourcemap\_filenames: use public option name in pattern errors ([#&#8203;10188](https://github.com/rolldown/rolldown/issues/10188)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- sourcemap\_filenames: hash prepared sourcemap content ([#&#8203;10178](https://github.com/rolldown/rolldown/issues/10178)) by [@&#8203;hyf0](https://github.com/hyf0)
- tree-shake unused circular declarators exported via export list ([#&#8203;10166](https://github.com/rolldown/rolldown/issues/10166)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- dev: don't panic when an HMR rebuild hits an unresolved import ([#&#8203;10162](https://github.com/rolldown/rolldown/issues/10162)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- propagate errors from output.globals function ([#&#8203;9880](https://github.com/rolldown/rolldown/issues/9880)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- dev: revert cache mutations when a partial scan fails ([#&#8203;10110](https://github.com/rolldown/rolldown/issues/10110)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- dev: update importer relationships of cached modules in incremental build ([#&#8203;10107](https://github.com/rolldown/rolldown/issues/10107)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- hmr: fall back to full reload when a changed module is not registered as executed ([#&#8203;10132](https://github.com/rolldown/rolldown/issues/10132)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- chunk-optimizer: follow entry facade edges in runtime placement cycle check ([#&#8203;10101](https://github.com/rolldown/rolldown/issues/10101)) by [@&#8203;hyf0](https://github.com/hyf0)
- dev: ignore watcher events after close ([#&#8203;10113](https://github.com/rolldown/rolldown/issues/10113)) by [@&#8203;hyf0](https://github.com/hyf0)
- emit async wrapper for TLA modules under onDemandWrapping ([#&#8203;10086](https://github.com/rolldown/rolldown/issues/10086)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- gate sideEffects:false modules' side effects on body demand ([#&#8203;10080](https://github.com/rolldown/rolldown/issues/10080)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- rolldown\_plugin\_vite\_resolve: return empty object for `browser: false` mapped modules ([#&#8203;10082](https://github.com/rolldown/rolldown/issues/10082)) by [@&#8203;sapphi-red](https://github.com/sapphi-red)
- reset the word-boundary state on newline in Hires::Boundary sourcemaps ([#&#8203;10025](https://github.com/rolldown/rolldown/issues/10025)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- trim an emptied chunk's outro/intro instead of skipping past it ([#&#8203;10029](https://github.com/rolldown/rolldown/issues/10029)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- test each edited chunk's own start against indent exclude ranges ([#&#8203;10026](https://github.com/rolldown/rolldown/issues/10026)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- preserve sourcemap mappings for indented lines when a CJS module shares the chunk ([#&#8203;10074](https://github.com/rolldown/rolldown/issues/10074)) by [@&#8203;hyf0](https://github.com/hyf0)

##### 🚜 Refactor

- separate tree-shaking side effects from execution order sensitivity ([#&#8203;10168](https://github.com/rolldown/rolldown/issues/10168)) by [@&#8203;hyf0](https://github.com/hyf0)
- type construct\_vite\_preload\_call to take an ObjectPattern ([#&#8203;10135](https://github.com/rolldown/rolldown/issues/10135)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- treeshake: single-source the own-export classification shared with the lazy-barrel loader ([#&#8203;10098](https://github.com/rolldown/rolldown/issues/10098)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- dev: reuse Vite's bundledDev server ([#&#8203;10081](https://github.com/rolldown/rolldown/issues/10081)) by [@&#8203;h-a-n-a](https://github.com/h-a-n-a)
- clippy: ban std HashMap/HashSet in favour of FxHashMap/FxHashSet ([#&#8203;10108](https://github.com/rolldown/rolldown/issues/10108)) by [@&#8203;Boshen](https://github.com/Boshen)
- treeshake: make body demand a second module bit instead of a stmt multimap ([#&#8203;10097](https://github.com/rolldown/rolldown/issues/10097)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- seal used\_symbol\_refs by construction after its last writer ([#&#8203;10091](https://github.com/rolldown/rolldown/issues/10091)) by [@&#8203;hyf0](https://github.com/hyf0)
- treeshake: replace inclusion mutual recursion with a worklist engine ([#&#8203;10096](https://github.com/rolldown/rolldown/issues/10096)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- treeshake: split include\_statements.rs into focused modules ([#&#8203;10095](https://github.com/rolldown/rolldown/issues/10095)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- drop redundant is\_user\_defined filter on partitioned entries ([#&#8203;10050](https://github.com/rolldown/rolldown/issues/10050)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- project the retained export interface out of used\_symbol\_refs ([#&#8203;10089](https://github.com/rolldown/rolldown/issues/10089)) by [@&#8203;hyf0](https://github.com/hyf0)
- track used external symbols separately from used\_symbol\_refs ([#&#8203;10088](https://github.com/rolldown/rolldown/issues/10088)) by [@&#8203;hyf0](https://github.com/hyf0)
- make module namespace inclusion an explicit linking metadata field ([#&#8203;10087](https://github.com/rolldown/rolldown/issues/10087)) by [@&#8203;hyf0](https://github.com/hyf0)
- rename statement evaluation metadata ([#&#8203;10078](https://github.com/rolldown/rolldown/issues/10078)) by [@&#8203;hyf0](https://github.com/hyf0)

##### 📚 Documentation

- virtual modules user-facing id convention ([#&#8203;10155](https://github.com/rolldown/rolldown/issues/10155)) by [@&#8203;sapphi-red](https://github.com/sapphi-red)
- cli: clarify disabling boolean/object flags like codeSplitting ([#&#8203;10153](https://github.com/rolldown/rolldown/issues/10153)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- chore: remove Vite+ alpha banner ([#&#8203;10105](https://github.com/rolldown/rolldown/issues/10105)) by [@&#8203;mdong1909](https://github.com/mdong1909)
- write down the used\_symbol\_refs contract ([#&#8203;10090](https://github.com/rolldown/rolldown/issues/10090)) by [@&#8203;hyf0](https://github.com/hyf0)
- dev/lazy: update design and implementation ([#&#8203;10079](https://github.com/rolldown/rolldown/issues/10079)) by [@&#8203;h-a-n-a](https://github.com/h-a-n-a)

#####  Performance

- ast\_scanner: stop order-sensitivity checks once a module is flagged ([#&#8203;10190](https://github.com/rolldown/rolldown/issues/10190)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- return impl ExactSizeIterator from slice-backed accessors ([#&#8203;10133](https://github.com/rolldown/rolldown/issues/10133)) by [@&#8203;Boshen](https://github.com/Boshen)
- binding: box dev and watcher napi futures ([#&#8203;10103](https://github.com/rolldown/rolldown/issues/10103)) by [@&#8203;Boshen](https://github.com/Boshen)

##### 🧪 Testing

- move string\_wizard replace unit tests to the JS magic-string suite ([#&#8203;10176](https://github.com/rolldown/rolldown/issues/10176)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- dev: assert incremental scan state matches a fresh full build after each HMR step ([#&#8203;10115](https://github.com/rolldown/rolldown/issues/10115)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- dev: restore runtime assertions of delete\_file\_not\_used\_anymore ([#&#8203;10112](https://github.com/rolldown/rolldown/issues/10112)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- dev: fix flaky dev server tests in CI ([#&#8203;10152](https://github.com/rolldown/rolldown/issues/10152)) by [@&#8203;h-a-n-a](https://github.com/h-a-n-a)
- add regression test for [#&#8203;10099](https://github.com/rolldown/rolldown/issues/10099) (lazyBarrel drops default-import binding but keeps its property reads) ([#&#8203;10109](https://github.com/rolldown/rolldown/issues/10109)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)

##### ⚙️ Miscellaneous Tasks

- deploy website to Void via GitHub OIDC ([#&#8203;10192](https://github.com/rolldown/rolldown/issues/10192)) by [@&#8203;Boshen](https://github.com/Boshen)
- deps: update oxc to 0.139.0 ([#&#8203;10161](https://github.com/rolldown/rolldown/issues/10161)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- deps: update test262 submodule for tests ([#&#8203;10160](https://github.com/rolldown/rolldown/issues/10160)) by [@&#8203;rolldown-guard](https://github.com/rolldown-guard)\[bot]
- rolldown\_plugin\_utils: remove dead asset-url and css scaffolding ([#&#8203;10131](https://github.com/rolldown/rolldown/issues/10131)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- deps: revert vite-plus to v0.2.1 ([#&#8203;10148](https://github.com/rolldown/rolldown/issues/10148)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- deps: update github actions ([#&#8203;10141](https://github.com/rolldown/rolldown/issues/10141)) by [@&#8203;renovate](https://github.com/renovate)\[bot]
- deps: update dependency rust to v1.96.1 ([#&#8203;10145](https://github.com/rolldown/rolldown/issues/10145)) by [@&#8203;renovate](https://github.com/renovate)\[bot]
- deps: update npm packages ([#&#8203;10142](https://github.com/rolldown/rolldown/issues/10142)) by [@&#8203;renovate](https://github.com/renovate)\[bot]
- deps: update rust crates ([#&#8203;10143](https://github.com/rolldown/rolldown/issues/10143)) by [@&#8203;renovate](https://github.com/renovate)\[bot]
- deps: update napi to v3.10.3 ([#&#8203;10121](https://github.com/rolldown/rolldown/issues/10121)) by [@&#8203;renovate](https://github.com/renovate)\[bot]
- rolldown\_utils: remove unused time module ([#&#8203;10138](https://github.com/rolldown/rolldown/issues/10138)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- remove dead CopyModulePlugin::is\_active method ([#&#8203;10129](https://github.com/rolldown/rolldown/issues/10129)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- remove dead LazyCompilationContext::is\_lazy\_module method ([#&#8203;10128](https://github.com/rolldown/rolldown/issues/10128)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- remove dead BuildDiagnostic::downcast\_ref method ([#&#8203;10127](https://github.com/rolldown/rolldown/issues/10127)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- deps: update dependency vite-plus to v0.2.2 ([#&#8203;10084](https://github.com/rolldown/rolldown/issues/10084)) by [@&#8203;renovate](https://github.com/renovate)\[bot]
- deps: update rust crate oxc\_sourcemap to v8.1.0 ([#&#8203;10122](https://github.com/rolldown/rolldown/issues/10122)) by [@&#8203;renovate](https://github.com/renovate)\[bot]
- deps: update crate-ci/typos action to v1.48.0 ([#&#8203;10124](https://github.com/rolldown/rolldown/issues/10124)) by [@&#8203;renovate](https://github.com/renovate)\[bot]
- enable more clippy restriction lints ([#&#8203;10114](https://github.com/rolldown/rolldown/issues/10114)) by [@&#8203;Boshen](https://github.com/Boshen)
- deps: update rust dependencies ([#&#8203;10100](https://github.com/rolldown/rolldown/issues/10100)) by [@&#8203;Boshen](https://github.com/Boshen)
- deps: update oxc resolver to v11.23.0 ([#&#8203;10083](https://github.com/rolldown/rolldown/issues/10083)) by [@&#8203;renovate](https://github.com/renovate)\[bot]

##### ◀️ Revert

- Revert "chore(deps): revert vite-plus to v0.2.1" ([#&#8203;10157](https://github.com/rolldown/rolldown/issues/10157)) by [@&#8203;h-a-n-a](https://github.com/h-a-n-a)
- "fix(hmr): fall back to full reload when a changed module is not registered as executed ([#&#8203;10132](https://github.com/rolldown/rolldown/issues/10132))" ([#&#8203;10151](https://github.com/rolldown/rolldown/issues/10151)) by [@&#8203;shulaoda](https://github.com/shulaoda)

##### ❤️ New Contributors

- [@&#8203;V1OL3TF0X](https://github.com/V1OL3TF0X) made their first contribution in [#&#8203;9271](https://github.com/rolldown/rolldown/pull/9271)

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMzMuNCIsInVwZGF0ZWRJblZlciI6IjQzLjI2My45IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBzIiwibnBtIl19-->

Reviewed-on: https://gitea.t000-n.de/t.behrendt/validate-json-by-json-schema-action/pulls/52
Reviewed-by: t.behrendt <2+t.behrendt@noreply.localhost>
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-07-15 16:41:49 +02:00
t.behrendt 20a2188ee2 ci: create release on dist changes (#51)
Reviewed-on: #51
Co-authored-by: t.behrendt <t.behrendt@t00n.de>
Co-committed-by: t.behrendt <t.behrendt@t00n.de>
2026-07-14 07:31:11 +02:00
renovate-bot 7b3ec98d69 chore(deps): update all non-major dependencies (#50)
This PR contains the following updates:

| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [@vitest/coverage-v8](https://vitest.dev/guide/coverage) ([source](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8)) | [`4.1.9` → `4.1.10`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-v8/4.1.9/4.1.10) | ![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fcoverage-v8/4.1.10?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fcoverage-v8/4.1.9/4.1.10?slim=true) |
| [oxfmt](https://oxc.rs/docs/guide/usage/formatter) ([source](https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt)) | [`0.56.0` → `0.58.0`](https://renovatebot.com/diffs/npm/oxfmt/0.56.0/0.58.0) | ![age](https://developer.mend.io/api/mc/badges/age/npm/oxfmt/0.58.0?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/oxfmt/0.56.0/0.58.0?slim=true) |
| [rolldown](https://rolldown.rs/) ([source](https://github.com/rolldown/rolldown/tree/HEAD/packages/rolldown)) | [`1.1.3` → `1.1.4`](https://renovatebot.com/diffs/npm/rolldown/1.1.3/1.1.4) | ![age](https://developer.mend.io/api/mc/badges/age/npm/rolldown/1.1.4?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/rolldown/1.1.3/1.1.4?slim=true) |
| [vitest](https://vitest.dev) ([source](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest)) | [`4.1.9` → `4.1.10`](https://renovatebot.com/diffs/npm/vitest/4.1.9/4.1.10) | ![age](https://developer.mend.io/api/mc/badges/age/npm/vitest/4.1.10?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vitest/4.1.9/4.1.10?slim=true) |

---

### Release Notes

<details>
<summary>vitest-dev/vitest (@&#8203;vitest/coverage-v8)</summary>

### [`v4.1.10`](https://github.com/vitest-dev/vitest/releases/tag/v4.1.10)

[Compare Source](https://github.com/vitest-dev/vitest/compare/v4.1.9...v4.1.10)

#####    🐞 Bug Fixes

- **browser**: Check fs access in builtin commands \[backport to v4]  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **OpenCode (claude-opus-4-8)** in [#&#8203;10680](https://github.com/vitest-dev/vitest/issues/10680) [<samp>(5c18d)</samp>](https://github.com/vitest-dev/vitest/commit/5c18dd267)
- **vm**: Fix external module resolve error with deps optimizer query for encoded URI \[backport to v4]  -  by [@&#8203;SveLil](https://github.com/SveLil) and [@&#8203;hi-ogawa](https://github.com/hi-ogawa) in [#&#8203;10661](https://github.com/vitest-dev/vitest/issues/10661) [<samp>(bae52)</samp>](https://github.com/vitest-dev/vitest/commit/bae52b511)

#####     [View changes on GitHub](https://github.com/vitest-dev/vitest/compare/v4.1.9...v4.1.10)

</details>

<details>
<summary>oxc-project/oxc (oxfmt)</summary>

### [`v0.58.0`](https://github.com/oxc-project/oxc/compare/oxfmt_v0.57.0...oxfmt_v0.58.0)

[Compare Source](https://github.com/oxc-project/oxc/compare/oxfmt_v0.57.0...oxfmt_v0.58.0)

### [`v0.57.0`](https://github.com/oxc-project/oxc/compare/oxfmt_v0.56.0...oxfmt_v0.57.0)

[Compare Source](https://github.com/oxc-project/oxc/compare/oxfmt_v0.56.0...oxfmt_v0.57.0)

</details>

<details>
<summary>rolldown/rolldown (rolldown)</summary>

### [`v1.1.4`](https://github.com/rolldown/rolldown/blob/HEAD/CHANGELOG.md#114---2026-07-01)

[Compare Source](https://github.com/rolldown/rolldown/compare/v1.1.3...v1.1.4)

##### 🚀 Features

- disable `experimental.lazyBarrel` by default ([#&#8203;10071](https://github.com/rolldown/rolldown/issues/10071)) by [@&#8203;shulaoda](https://github.com/shulaoda)

##### 🐛 Bug Fixes

- dev: disable lazy barrel in dev mode ([#&#8203;10060](https://github.com/rolldown/rolldown/issues/10060)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- generate: keep full JSON interface under preserveModules namespa… ([#&#8203;10056](https://github.com/rolldown/rolldown/issues/10056)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- check finalize\_other\_specifiers in its own Debug attribute ([#&#8203;10032](https://github.com/rolldown/rolldown/issues/10032)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- serialize the KeepAssign unused minify option as "keep\_assign" ([#&#8203;10031](https://github.com/rolldown/rolldown/issues/10031)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- keep fragments after the newline fragment in MagicString::last\_line ([#&#8203;10023](https://github.com/rolldown/rolldown/issues/10023)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- generate: undeclared JSON named exports under preserveModules ([#&#8203;10020](https://github.com/rolldown/rolldown/issues/10020)) ([#&#8203;10027](https://github.com/rolldown/rolldown/issues/10027)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- deconflict: rename CJS-wrapped locals that shadow chunk-root bindings ([#&#8203;9921](https://github.com/rolldown/rolldown/issues/9921)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- rolldown: keep entry facade when a shared chunk holds another entry's module ([#&#8203;9997](https://github.com/rolldown/rolldown/issues/9997)) by [@&#8203;hyf0](https://github.com/hyf0)
- treeshake: also bail JSON default split when the object escapes ([#&#8203;9996](https://github.com/rolldown/rolldown/issues/9996)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- don't classify await in a strict-mode function as top-level await ([#&#8203;9987](https://github.com/rolldown/rolldown/issues/9987)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- avoid spurious leading newline in addon hooks (banner/footer/intro/outro) ([#&#8203;9989](https://github.com/rolldown/rolldown/issues/9989)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- handle JSON default mutation bailouts ([#&#8203;9972](https://github.com/rolldown/rolldown/issues/9972)) by [@&#8203;TheAlexLichter](https://github.com/TheAlexLichter)
- plugin: make lazy hook metadata enumerable ([#&#8203;9991](https://github.com/rolldown/rolldown/issues/9991)) by [@&#8203;TheAlexLichter](https://github.com/TheAlexLichter)
- dev: make init errors in lazy-compiled modules catchable ([#&#8203;9981](https://github.com/rolldown/rolldown/issues/9981)) by [@&#8203;h-a-n-a](https://github.com/h-a-n-a)
- treeshake: keep computed-key side effects on namespace member access ([#&#8203;9986](https://github.com/rolldown/rolldown/issues/9986)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- binding: validate replace plugin delimiters length instead of panicking ([#&#8203;9984](https://github.com/rolldown/rolldown/issues/9984)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- reconstruct nested rest patterns in into\_expression ([#&#8203;9980](https://github.com/rolldown/rolldown/issues/9980)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- reconstruct rest patterns as spread in into\_expression ([#&#8203;9976](https://github.com/rolldown/rolldown/issues/9976)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- preserve export keyword on multi-declarator exports under keepNames ([#&#8203;9974](https://github.com/rolldown/rolldown/issues/9974)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- deterministically keep the shortest name for deduplicated assets ([#&#8203;9948](https://github.com/rolldown/rolldown/issues/9948)) by [@&#8203;x1024](https://github.com/x1024)
- treeshake: apply @&#8203;**NO\_SIDE\_EFFECTS** to cross-chunk namespace calls ([#&#8203;9960](https://github.com/rolldown/rolldown/issues/9960)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)

##### 🚜 Refactor

- drop redundant program scope enter/leave in finalizer ([#&#8203;10049](https://github.com/rolldown/rolldown/issues/10049)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- deconflict: extract collect\_chunk\_scope\_captured\_names ([#&#8203;10006](https://github.com/rolldown/rolldown/issues/10006)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- unify pre-scan multi-declarator split into one decision site ([#&#8203;9982](https://github.com/rolldown/rolldown/issues/9982)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- common: return bool from SymbolRef::is\_not\_reassigned ([#&#8203;9962](https://github.com/rolldown/rolldown/issues/9962)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)

##### 📚 Documentation

- rolldown: remove outdated comment for removing parenthesized expression ([#&#8203;10062](https://github.com/rolldown/rolldown/issues/10062)) by [@&#8203;Dunqing](https://github.com/Dunqing)
- use GitHub-flavored alert for Etiquette note in contribution guide ([#&#8203;10012](https://github.com/rolldown/rolldown/issues/10012)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- replace: explain the delimiters left and right boundaries ([#&#8203;9985](https://github.com/rolldown/rolldown/issues/9985)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- ast-mutation: remove stale Address Use section after pre-scan refactor ([#&#8203;9983](https://github.com/rolldown/rolldown/issues/9983)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- remove fathom ([#&#8203;9968](https://github.com/rolldown/rolldown/issues/9968)) by [@&#8203;mdong1909](https://github.com/mdong1909)
- contribution-guide: code-format main branch references ([#&#8203;9966](https://github.com/rolldown/rolldown/issues/9966)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- contribution-guide: fix stale REPL note and tidy wording ([#&#8203;9957](https://github.com/rolldown/rolldown/issues/9957)) by [@&#8203;hyf0](https://github.com/hyf0)
- contribution-guide: clarify when to discuss before opening a PR ([#&#8203;9955](https://github.com/rolldown/rolldown/issues/9955)) by [@&#8203;hyf0](https://github.com/hyf0)

#####  Performance

- disable preserve\_parens across all parse paths ([#&#8203;10057](https://github.com/rolldown/rolldown/issues/10057)) by [@&#8203;Dunqing](https://github.com/Dunqing)
- common: inline declared\_symbols with SmallVec ([#&#8203;9920](https://github.com/rolldown/rolldown/issues/9920)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- common: pack TaggedSymbolRef into 8 bytes ([#&#8203;9919](https://github.com/rolldown/rolldown/issues/9919)) by [@&#8203;IWANABETHATGUY](https://github.com/IWANABETHATGUY)
- sourcemap: skip newline scan on the no-sourcemap join fast path ([#&#8203;9936](https://github.com/rolldown/rolldown/issues/9936)) by [@&#8203;Boshen](https://github.com/Boshen)

##### 🧪 Testing

- dev: error in lazy module should be catchable ([#&#8203;9975](https://github.com/rolldown/rolldown/issues/9975)) by [@&#8203;sapphi-red](https://github.com/sapphi-red)
- dev: reject unknown lazy compile modules ([#&#8203;9969](https://github.com/rolldown/rolldown/issues/9969)) by [@&#8203;sapphi-red](https://github.com/sapphi-red)

##### ⚙️ Miscellaneous Tasks

- deps: update actions/cache action to v6 ([#&#8203;10001](https://github.com/rolldown/rolldown/issues/10001)) by [@&#8203;renovate](https://github.com/renovate)\[bot]
- trigger vite ecosystem-ci from PR comments ([#&#8203;10058](https://github.com/rolldown/rolldown/issues/10058)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- deps: update napi to v3.10.0 ([#&#8203;10063](https://github.com/rolldown/rolldown/issues/10063)) by [@&#8203;renovate](https://github.com/renovate)\[bot]
- remove unused From impl for RolldownLabelSpan ([#&#8203;10055](https://github.com/rolldown/rolldown/issues/10055)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- remove dead Diagnostic::with\_kind method ([#&#8203;10054](https://github.com/rolldown/rolldown/issues/10054)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- remove unused StatementExt methods ([#&#8203;10053](https://github.com/rolldown/rolldown/issues/10053)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- remove unused ExpressionExt methods ([#&#8203;10052](https://github.com/rolldown/rolldown/issues/10052)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- remove commented-out re\_export\_all\_names field ([#&#8203;10051](https://github.com/rolldown/rolldown/issues/10051)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- deps: update pnpm to v11.9.0 ([#&#8203;10047](https://github.com/rolldown/rolldown/issues/10047)) by [@&#8203;renovate](https://github.com/renovate)\[bot]
- remove the unused BindingGenerateHmrPatchReturn napi type ([#&#8203;10034](https://github.com/rolldown/rolldown/issues/10034)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- remove the dead inline\_entry\_chunk\_wrapping scaffolding ([#&#8203;10037](https://github.com/rolldown/rolldown/issues/10037)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- deps: bump oxc\_resolver to 11.22.0 ([#&#8203;10045](https://github.com/rolldown/rolldown/issues/10045)) by [@&#8203;Boshen](https://github.com/Boshen)
- remove never-constructed MatchImportKind::\_Ignore variant ([#&#8203;10041](https://github.com/rolldown/rolldown/issues/10041)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- remove the unused ScheduledBuild napi struct ([#&#8203;10033](https://github.com/rolldown/rolldown/issues/10033)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- remove dead compute\_hmr\_update\_single method ([#&#8203;10040](https://github.com/rolldown/rolldown/issues/10040)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- drop the redundant visited.insert in manual code splitting ([#&#8203;10038](https://github.com/rolldown/rolldown/issues/10038)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- remove the dead output\_assets vector in render\_chunk\_to\_assets ([#&#8203;10036](https://github.com/rolldown/rolldown/issues/10036)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- remove the unused From<String>/Display impls for BindingLogLevel ([#&#8203;10035](https://github.com/rolldown/rolldown/issues/10035)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- deps: upgrade oxc to 0.138.0 and migrate to per-type AST construction ([#&#8203;10018](https://github.com/rolldown/rolldown/issues/10018)) by [@&#8203;shulaoda](https://github.com/shulaoda)
- deps: update rust crates ([#&#8203;9911](https://github.com/rolldown/rolldown/issues/9911)) by [@&#8203;renovate](https://github.com/renovate)\[bot]
- deps: update test262 submodule for tests ([#&#8203;10016](https://github.com/rolldown/rolldown/issues/10016)) by [@&#8203;rolldown-guard](https://github.com/rolldown-guard)\[bot]
- deps: update github actions ([#&#8203;9999](https://github.com/rolldown/rolldown/issues/9999)) by [@&#8203;renovate](https://github.com/renovate)\[bot]
- deps: update npm packages ([#&#8203;10000](https://github.com/rolldown/rolldown/issues/10000)) by [@&#8203;renovate](https://github.com/renovate)\[bot]

##### ◀️ Revert

- "fix(plugin): make lazy hook metadata enumerable ([#&#8203;9991](https://github.com/rolldown/rolldown/issues/9991))" ([#&#8203;10005](https://github.com/rolldown/rolldown/issues/10005)) by [@&#8203;shulaoda](https://github.com/shulaoda)

##### ❤️ New Contributors

- [@&#8203;x1024](https://github.com/x1024) made their first contribution in [#&#8203;9948](https://github.com/rolldown/rolldown/pull/9948)

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](undefined) if that's undesired.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMzMuNCIsInVwZGF0ZWRJblZlciI6IjQzLjIzMy40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBzIiwibnBtIl19-->

Reviewed-on: https://gitea.t000-n.de/t.behrendt/validate-json-by-json-schema-action/pulls/50
Reviewed-by: t.behrendt <2+t.behrendt@noreply.localhost>
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-07-14 07:15:26 +02:00
renovate-bot 081cf28d81 chore(deps): update actions/cache action to v6 (#48)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [actions/cache](https://github.com/actions/cache) | action | major | `v5.1.0` → `v6.1.0` |

---

### Release Notes

<details>
<summary>actions/cache (actions/cache)</summary>

### [`v6.1.0`](https://github.com/actions/cache/releases/tag/v6.1.0)

[Compare Source](https://github.com/actions/cache/compare/v6.0.0...v6.1.0)

##### What's Changed

- Bump [@&#8203;actions/cache](https://github.com/actions/cache) to v6.1.0 - handle read-only cache access by [@&#8203;jasongin](https://github.com/jasongin) in [#&#8203;1768](https://github.com/actions/cache/pull/1768)

**Full Changelog**: <https://github.com/actions/cache/compare/v6...v6.1.0>

### [`v6.0.0`](https://github.com/actions/cache/releases/tag/v6.0.0)

[Compare Source](https://github.com/actions/cache/compare/v6.0.0...v6.0.0)

##### What's Changed

- Update packages, migrate to ESM by [@&#8203;Samirat](https://github.com/Samirat) in [#&#8203;1760](https://github.com/actions/cache/pull/1760)

**Full Changelog**: <https://github.com/actions/cache/compare/v5...v6.0.0>

### [`v6`](https://github.com/actions/cache/compare/v5.1.0...v6.0.0)

[Compare Source](https://github.com/actions/cache/compare/v5.1.0...v6.0.0)

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMzMuNCIsInVwZGF0ZWRJblZlciI6IjQzLjIzMy40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJhY3Rpb24iLCJkZXBzIl19-->

Reviewed-on: #48
Reviewed-by: t.behrendt <2+t.behrendt@noreply.localhost>
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-07-04 08:47:07 +02:00
renovate-bot 4c97522b0f chore(deps): update actions (#49)
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-07-03 22:26:52 +02:00
t.behrendt 30070f7f9c refactor: to node action (#47)
CD / Release (push) Successful in 33s
Refactoring the action from a composite to Node action. This change improves security through pinning of packages as well as better test-ability and error handling.

Reviewed-on: #47
Co-authored-by: Timo Behrendt <t.behrendt@t00n.de>
Co-committed-by: Timo Behrendt <t.behrendt@t00n.de>
2026-06-27 14:00:15 +02:00
renovate-bot 3730a56a77 chore(deps): update https://gitea.t000-n.de/t.behrendt/actions action to v0.2.8 (#46)
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-06-26 06:12:17 +02:00
renovate-bot e790aebac3 chore(deps): update actions/checkout action to v7 (#45)
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-06-25 20:26:38 +02:00
renovate-bot 0b4b5fb319 chore(deps): update https://gitea.t000-n.de/t.behrendt/actions action to v0.2.7 (#44)
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-06-21 17:32:00 +02:00
renovate-bot e785907b2b chore(deps): update https://gitea.t000-n.de/t.behrendt/conventional-semantic-git-tag-increment action to v0.1.39 (#43)
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-06-21 17:30:39 +02:00
renovate-bot 26c2bb0a79 chore(deps): update https://gitea.t000-n.de/t.behrendt/actions action to v0.2.6 (#42)
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-06-21 17:20:58 +02:00
renovate-bot 07c599b06b chore(deps): update actions/checkout action to v6.0.3 (#41)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [actions/checkout](https://github.com/actions/checkout) | action | patch | `v6.0.2` → `v6.0.3` |

---

### Release Notes

<details>
<summary>actions/checkout (actions/checkout)</summary>

### [`v6.0.3`](https://github.com/actions/checkout/blob/HEAD/CHANGELOG.md#v603)

[Compare Source](https://github.com/actions/checkout/compare/v6.0.2...v6.0.3)

- Fix checkout init for SHA-256 repositories by [@&#8203;yaananth](https://github.com/yaananth) in [#&#8203;2439](https://github.com/actions/checkout/pull/2439)
- fix: expand merge commit SHA regex and add SHA-256 test cases by [@&#8203;yaananth](https://github.com/yaananth) in [#&#8203;2414](https://github.com/actions/checkout/pull/2414)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My41LjQiLCJ1cGRhdGVkSW5WZXIiOiI0My41LjQiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImFjdGlvbiIsImRlcHMiXX0=-->

Reviewed-on: #41
Reviewed-by: t.behrendt <2+t.behrendt@noreply.localhost>
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-06-12 11:34:14 +02:00
renovate-bot 04b5ff2c14 chore(deps): update https://gitea.t000-n.de/t.behrendt/conventional-semantic-git-tag-increment action to v0.1.35 (#40)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [https://gitea.t000-n.de/t.behrendt/conventional-semantic-git-tag-increment](https://gitea.t000-n.de/t.behrendt/conventional-semantic-git-tag-increment) | action | patch | `0.1.32` → `0.1.35` |

---

### Release Notes

<details>
<summary>t.behrendt/conventional-semantic-git-tag-increment (https://gitea.t000-n.de/t.behrendt/conventional-semantic-git-tag-increment)</summary>

### [`v0.1.35`](https://gitea.t000-n.de/t.behrendt/conventional-semantic-git-tag-increment/compare/0.1.34...0.1.35)

[Compare Source](https://gitea.t000-n.de/t.behrendt/conventional-semantic-git-tag-increment/compare/0.1.34...0.1.35)

### [`v0.1.34`](https://gitea.t000-n.de/t.behrendt/conventional-semantic-git-tag-increment/compare/0.1.33...0.1.34)

[Compare Source](https://gitea.t000-n.de/t.behrendt/conventional-semantic-git-tag-increment/compare/0.1.33...0.1.34)

### [`v0.1.33`](https://gitea.t000-n.de/t.behrendt/conventional-semantic-git-tag-increment/compare/0.1.32...0.1.33)

[Compare Source](https://gitea.t000-n.de/t.behrendt/conventional-semantic-git-tag-increment/compare/0.1.32...0.1.33)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My41LjQiLCJ1cGRhdGVkSW5WZXIiOiI0My41LjQiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImFjdGlvbiIsImRlcHMiXX0=-->

Reviewed-on: #40
Reviewed-by: t.behrendt <2+t.behrendt@noreply.localhost>
Co-authored-by: Renovate Bot <renovate@t00n.de>
Co-committed-by: Renovate Bot <renovate@t00n.de>
2026-06-08 19:53:34 +02:00
21 changed files with 25026 additions and 181 deletions
+8
View File
@@ -0,0 +1,8 @@
[*]
end_of_line = lf
insert_final_newline = true
indent_style = space
indent_size = 2
charset = utf-8
trim_trailing_whitespace = true
max_line_length = 80
+4 -3
View File
@@ -6,6 +6,7 @@ on:
- main - main
paths: paths:
- action.yml - action.yml
- dist/**
workflow_dispatch: workflow_dispatch:
jobs: jobs:
@@ -13,14 +14,14 @@ jobs:
name: Release name: Release
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with: with:
fetch-depth: 0 fetch-depth: 0
- name: Increment tag - name: Increment tag
id: tag id: tag
uses: https://gitea.t000-n.de/t.behrendt/conventional-semantic-git-tag-increment@ef0c23189db33220a73022d8c29a27709d0df440 # 0.1.32 uses: https://gitea.t000-n.de/t.behrendt/conventional-semantic-git-tag-increment@3ab82e6aa1db388a34562f5ce6eedb598651d916 # 0.1.42
with: with:
token: ${{ secrets.GITEA_TOKEN }} token: ${{ secrets.GITEA_TOKEN }}
- uses: https://gitea.t000-n.de/t.behrendt/actions/release-git-tag@38c1bbd8bad3e7965744d03de85faa4a5b808d1b # 0.2.4 - uses: https://gitea.t000-n.de/t.behrendt/actions/release-git-tag@7f9ed2bccd9161d124284619464c5dc5b15b79c0 # 0.2.11
with: with:
tag: ${{ steps.tag.outputs.new-tag }} tag: ${{ steps.tag.outputs.new-tag }}
+55 -2
View File
@@ -8,8 +8,61 @@ jobs:
name: Dry-Run name: Dry-Run
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- name: Validate JSON - name: Validate Renovate Config
uses: ./ uses: ./
with: with:
json-file: renovate.json json-file: renovate.json
test:
name: Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version-file: .nvmrc
- name: Cache dependencies
id: cache-deps
uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: |
node_modules
key: ${{ runner.os }}-npm-${{ hashFiles('package-lock.json') }}
- name: Install dependencies
if: steps.cache-deps.outputs.cache-hit != 'true'
run: npm ci
- name: Typecheck
run: npm run typecheck
- name: Format code
run: npm run format:check
- name: Run test
run: npm run test
check-dist:
name: Check Dist
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version-file: .nvmrc
- name: Cache dependencies
id: cache-deps
uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: |
node_modules
key: ${{ runner.os }}-npm-${{ hashFiles('package-lock.json') }}
- name: Install dependencies
if: steps.cache-deps.outputs.cache-hit != 'true'
run: npm ci
- run: mv dist dist_orig
- run: npm run build
- run: |
original_hash=$(sha256sum dist_orig/index.js | cut -d' ' -f1)
new_hash=$(sha256sum dist/index.js | cut -d' ' -f1)
if [ "$original_hash" != "$new_hash" ]; then
echo "Build is not up to date. Original hash: $original_hash, new hash: $new_hash"
exit 1
fi
+3 -3
View File
@@ -8,15 +8,15 @@ jobs:
name: Release name: Release
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with: with:
fetch-depth: 0 fetch-depth: 0
- name: Increment tag - name: Increment tag
id: tag id: tag
uses: https://gitea.t000-n.de/t.behrendt/conventional-semantic-git-tag-increment@ef0c23189db33220a73022d8c29a27709d0df440 # 0.1.32 uses: https://gitea.t000-n.de/t.behrendt/conventional-semantic-git-tag-increment@3ab82e6aa1db388a34562f5ce6eedb598651d916 # 0.1.42
with: with:
token: ${{ secrets.GITEA_TOKEN }} token: ${{ secrets.GITEA_TOKEN }}
prerelease: true prerelease: true
- uses: https://gitea.t000-n.de/t.behrendt/actions/release-git-tag@38c1bbd8bad3e7965744d03de85faa4a5b808d1b # 0.2.4 - uses: https://gitea.t000-n.de/t.behrendt/actions/release-git-tag@7f9ed2bccd9161d124284619464c5dc5b15b79c0 # 0.2.11
with: with:
tag: ${{ steps.tag.outputs.new-tag }} tag: ${{ steps.tag.outputs.new-tag }}
+1 -137
View File
@@ -1,138 +1,2 @@
# ---> Node node_modules
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*
.pnpm-debug.log*
# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
# Runtime data
pids
*.pid
*.seed
*.pid.lock
# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov
# Coverage directory used by tools like istanbul
coverage coverage
*.lcov
# nyc test coverage
.nyc_output
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
.grunt
# Bower dependency directory (https://bower.io/)
bower_components
# node-waf configuration
.lock-wscript
# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release
# Dependency directories
node_modules/
jspm_packages/
# Snowpack dependency directory (https://snowpack.dev/)
web_modules/
# TypeScript cache
*.tsbuildinfo
# Optional npm cache directory
.npm
# Optional eslint cache
.eslintcache
# Optional stylelint cache
.stylelintcache
# Microbundle cache
.rpt2_cache/
.rts2_cache_cjs/
.rts2_cache_es/
.rts2_cache_umd/
# Optional REPL history
.node_repl_history
# Output of 'npm pack'
*.tgz
# Yarn Integrity file
.yarn-integrity
# dotenv environment variable files
.env
.env.development.local
.env.test.local
.env.production.local
.env.local
# parcel-bundler cache (https://parceljs.org/)
.cache
.parcel-cache
# Next.js build output
.next
out
# Nuxt.js build / generate output
.nuxt
dist
# Gatsby files
.cache/
# Comment in the public line in if your project uses Gatsby and not Next.js
# https://nextjs.org/blog/next-9-1#public-directory-support
# public
# vuepress build output
.vuepress/dist
# vuepress v2.x temp and cache directory
.temp
.cache
# vitepress build output
**/.vitepress/dist
# vitepress cache directory
**/.vitepress/cache
# Docusaurus cache and generated files
.docusaurus
# Serverless directories
.serverless/
# FuseBox cache
.fusebox/
# DynamoDB Local files
.dynamodb/
# TernJS port file
.tern-port
# Stores VSCode versions used for testing VSCode extensions
.vscode-test
# yarn v2
.yarn/cache
.yarn/unplugged
.yarn/build-state.yml
.yarn/install-state.gz
.pnp.*
+1
View File
@@ -0,0 +1 @@
min-release-age=7
+2
View File
@@ -0,0 +1,2 @@
24
+4
View File
@@ -0,0 +1,4 @@
{
"$schema": "./node_modules/oxfmt/configuration_schema.json",
"ignorePatterns": ["dist/**", "node_modules/**", "coverage/**"]
}
+2 -23
View File
@@ -8,26 +8,5 @@ inputs:
required: true required: true
runs: runs:
using: "composite" using: "node24"
steps: main: "dist/index.js"
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: "latest"
- name: Extract schema
shell: bash
run: |
schema=$(jq -r '.["$schema"]' < ${{ inputs.json-file }})
if [ -n "$schema" ]; then
curl -s $schema > schema.json
else
echo "No schema found"
exit 0
fi
- name: Update the schema to the latest version
shell: bash
run: |
npx ajv-cli migrate -s schema.json -o schema.json
- name: Validate JSON
shell: bash
run: |
npx ajv-cli validate -s schema.json -d ${{ inputs.json-file }} --strict=false
+22265
View File
File diff suppressed because one or more lines are too long
+2439
View File
File diff suppressed because it is too large Load Diff
+25
View File
@@ -0,0 +1,25 @@
{
"name": "validate-json-by-json-schema-action",
"version": "1.0.0",
"type": "commonjs",
"main": "src/index.ts",
"scripts": {
"test": "vitest --config vitext.config.ts",
"format": "oxfmt",
"format:check": "oxfmt --check",
"build": "rolldown -c",
"typecheck": "tsc --noEmit"
},
"dependencies": {
"@actions/core": "3.0.1",
"ajv": "8.20.0"
},
"devDependencies": {
"@types/node": "24.13.3",
"@vitest/coverage-v8": "4.1.10",
"oxfmt": "0.58.0",
"rolldown": "1.1.5",
"typescript": "7.0.2",
"vitest": "4.1.10"
}
}
+8 -3
View File
@@ -1,7 +1,12 @@
{ {
"$schema": "https://docs.renovatebot.com/renovate-schema.json", "$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [ "extends": [
"local>t.behrendt/renovate-configs:common", "local>t.behrendt/renovate-configs:action",
"local>t.behrendt/renovate-configs:action" "local>t.behrendt/renovate-configs:bun-npm"
] ],
"postUpgradeTasks": {
"commands": ["npm ci", "npm run build"],
"fileFilters": ["dist/**"],
"executionMode": "update"
}
} }
+11
View File
@@ -0,0 +1,11 @@
import { defineConfig } from "rolldown";
export default defineConfig({
input: "src/index.ts",
platform: "node",
tsconfig: "./tsconfig.json",
output: {
file: "dist/index.js",
format: "cjs",
},
});
+3
View File
@@ -0,0 +1,3 @@
import { run } from "./main";
run();
+18
View File
@@ -0,0 +1,18 @@
import * as core from "@actions/core";
import { readFileSync } from "node:fs";
import { validateJson } from "./validation";
export async function run(): Promise<void> {
try {
const jsonFilePath = core.getInput("json-file");
core.info(`Validating JSON file: ${jsonFilePath}`);
const json = readFileSync(jsonFilePath, "utf8");
await validateJson(json);
core.info("JSON file is valid");
} catch (error) {
core.setFailed(`Error validating JSON file: ${error}`);
}
}
+109
View File
@@ -0,0 +1,109 @@
import { beforeEach, describe, expect, it, vi } from "vitest";
import { validateJson } from "./validation";
global.fetch = vi.fn();
const validSchema = JSON.stringify({
$id: "https://t00n.de/schema.json",
title:
"JSON schema for Renovate 43.244.4 config files (https://renovatebot.com/)",
$schema: "http://json-schema.org/draft-07/schema#",
type: "object",
properties: {
$schema: {
type: "string",
},
name: {
type: "string",
},
},
required: ["name"],
additionalProperties: false,
});
describe("validateJson()", () => {
beforeEach(() => {
vi.clearAllMocks();
});
it("throws an error if the JSON file is not valid JSON", async () => {
const jsonFile = {
despiteThisBeingValidJson: "toString() breaks it, making it invalid",
}.toString();
await expect(validateJson(jsonFile)).rejects.toThrow(
'"[object Object]" is not valid JSON',
);
});
it("throws an error if the JSON file does not contain a $schema property", async () => {
const jsonFile = JSON.stringify({
validJson: true,
});
await expect(validateJson(jsonFile)).rejects.toThrow(
"No schema found in JSON file.",
);
});
it("throws an error if the schema cannot be fetched", async () => {
vi.mocked(fetch).mockRejectedValue(new Error("Failed to fetch schema"));
const jsonFile = JSON.stringify({ $schema: "http://t00n.de/404.json" });
await expect(validateJson(jsonFile)).rejects.toThrow(
"Failed to fetch schema",
);
});
it("throws an error if the schema file is not valid", async () => {
vi.mocked(fetch).mockResolvedValue(
// @ts-expect-error - mock response
{
ok: true,
text: async () =>
({
despiteThisBeingValidJson:
"toString() breaks it, making it invalid",
}).toString(),
},
);
const jsonFile = JSON.stringify({
$schema: "https://json-schema.org/draft-07/schema",
});
await expect(validateJson(jsonFile)).rejects.toThrow(
'"[object Object]" is not valid JSON',
);
});
it("throws an error if the JSON file does not match the schema", async () => {
vi.mocked(fetch).mockResolvedValue(
// @ts-expect-error - mock response
{
ok: true,
text: async () => validSchema,
},
);
const jsonFile = JSON.stringify({
$schema: "https://json-schema.org/draft-07/schema",
notTheExpectedField: 42,
});
await expect(validateJson(jsonFile)).rejects.toThrow(
"JSON file is not valid: No errors",
);
});
it("does not throw an error if the JSON file is valid", async () => {
vi.mocked(fetch).mockResolvedValue(
// @ts-expect-error - mock response
{
ok: true,
text: async () => validSchema,
},
);
const jsonFile = JSON.stringify({
$schema: "https://t00n.de/schema.json",
name: "John Doe",
});
await expect(validateJson(jsonFile)).resolves.toBeUndefined();
});
});
+25
View File
@@ -0,0 +1,25 @@
import Ajv from "ajv";
export const validateJson = async (jsonFileContent: string): Promise<void> => {
const jsonObject = JSON.parse(jsonFileContent);
const schema = jsonObject["$schema"];
if (!schema) {
throw new Error("No schema found in JSON file.");
}
const schemaUrl = new URL(schema);
const schemaContent = await fetch(schemaUrl.toString());
const schemaText = await schemaContent.text();
const schemaObject = JSON.parse(schemaText);
const validator = new Ajv({
strict: false,
});
const validate = validator.compile(schemaObject);
const isValid = validate(jsonObject);
if (!isValid) {
throw new Error(`JSON file is not valid: ${validator.errorsText()}`);
}
};
+22
View File
@@ -0,0 +1,22 @@
{
"compilerOptions": {
"target": "ES2022",
"module": "commonjs",
"lib": ["ES2022"],
"types": ["node"],
"strict": true,
"esModuleInterop": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true,
"removeComments": false,
"noImplicitAny": true,
"noImplicitReturns": true,
"noImplicitThis": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"exactOptionalPropertyTypes": true,
"noImplicitOverride": true
},
"include": ["src/**/*"],
"exclude": ["node_modules", "dist", "**/*.test.ts", "**/*.spec.ts"]
}
+11
View File
@@ -0,0 +1,11 @@
import { defineConfig } from "vitest/config";
export default defineConfig({
test: {
coverage: {
enabled: true,
provider: "v8",
reporter: ["lcov"],
},
},
});