Changelog
v5.0.4 — Aug 28, 2026
unplugin-kubb
Bug Fixes
Move
unplugin-kubbpast its squatted npm version range.Versions 5.0.1 through 5.0.30 were already published on npm from
unplugin-kubb's pre-monorepo history and depend on kubb v4, so the package's version was set directly to 5.0.31 to clear that range. This changeset picks up from that 5.0.31 baseline and putsunplugin-kubbback through the normal release process, independent ofkubband@kubb/*. (#3940,b45071e)
Contributors
Thanks to everyone who contributed to this release:
v5.0.3 — Aug 27, 2026
@kubb/adapter-oas
Bug Fixes
- Keep every discriminator mapping key that targets the same schema, and apply the discriminant to children declared with
allOf(#3929,58d9625)
Contributors
Thanks to everyone who contributed to this release:
v5.0.2 — Aug 24, 2026
@kubb/kit
Bug Fixes
Fix
Url.toPathproducing route masks thatpath-to-regexp(used by MSW/Express) rejects or misparses:- A parameter name starting with a character outside
[A-Za-z0-9_](e.g.{$id}) now sanitizes to a safe capture name instead of keeping the disallowed character. - Distinct parameter names that normalize to the same identifier (e.g.
{group-id}and{group.id}) are now deduplicated with an incrementing suffix (groupId,groupId2) instead of producing two identically named captures. (#3922,56a072c)
- A parameter name starting with a character outside
Contributors
Thanks to everyone who contributed to this release:
v5.0.1 — Aug 21, 2026
@kubb/adapter-oas
Bug Fixes
- Fix an OpenAPI 3.1 multi-type array collapsing to one type when paired with
format.type: ["null", "integer", "string"], format: "int32"generatedinteger | null, droppingstring. The multi-type rule now runs beforeformat, so each type parses on its own. (#3916,3d0098c) - Fix an OpenAPI 3.1 multi-type array dropping its other types when
nullcame first.type: ["null", "string"]generatednullinstead ofstring | null, whiletype: ["string", "null"]generated the right type, so the output depended on the order the types happened to be written in. The normalized type now takes the first non-nullentry, andtype: ["null"]stays a null schema. (#3912,331558e)
@kubb/cli
Bug Fixes
@kubb/kit
Bug Fixes
- Fix
Url.toPathproducing an invalid Express-style route for a hyphenated path parameter (e.g.{point-id}became:point-id).path-to-regexptreats a hyphen as ending the parameter name, so the generated MSW handler matched:pointfollowed by a literal-idand rejected valid values.Url.toPathnow camelCases the parameter name the same wayUrl.toTemplateStringalready does, so{point-id}becomes:pointId. (#3895,bf9bdc8)
Contributors
Thanks to everyone who contributed to this release:
v5.0.0
Kubb v5 rebuilds code generation around adapters, a universal AST, parsers, and storage, and generates code up to 5.4x faster than v4. Config gets shorter, generated client calls change shape, and plugins move to their own repo (kubb-labs/plugins).
Read the release blog post for the highlights, and the migration guide for the full, per-package breaking-change list and upgrade steps.
For prior releases, see GitHub Releases.