@kubb/adapter-oas
Bug Fixes
- Replace
anyand unchecked object-literalas Typeassertions with real types and type annotations, satisfying the newtypescript/no-explicit-anyandtypescript/consistent-type-assertionsoxlint rules.createMockedAdapternow returns a fully-shapedAdapter(includingdocumentandvalidate) instead of force-casting a partial object,KubbDriverbuilds each plugin's default resolver inline instead of casting past the missing field, and the Astro integration inunplugin-kubbreturns a typedAstroIntegrationobject instead ofany. (#3759,08b209c)
@kubb/ast
Bug Fixes
-
Align the
Nodeand scalar schema types with the runtime and fix related docs.Nodenow includesTextNode,BreakNode, andJsxNodeso the union matchesNodeKindand theisNoderuntime check that already treats them as nodes.ScalarSchemaTypeno longer includesipv4andipv6, which have their ownIpv4SchemaNodeandIpv6SchemaNode, soScalarSchemaNodestops overlapping those members. TheVisitorDepthdoc now states that shallow traversal stops at schema subtrees rather than the immediate node, and thePrinterHandlerContextexample includes its requiredbasefield. (#3761,07c3125)
@kubb/cli
Bug Fixes
-
Tidy up a few CLI correctness details.
The clack logger's plugin-end guard now compares with
<= silentlike every other log-level guard, rather than a lone equality check that only worked becausesilentis negative infinity. The telemetry event type drops theagentcommand that no caller ever sends. Thegeneratecommand resolves its log level through a small helper instead of a nested ternary. (#3761,07c3125)
@kubb/core
Bug Fixes
-
Collect reporter results in an ordered array and only buffer them when a
drainexists.A reporter whose
reportreturnedvoid(the default) or any repeated value collapsed to one entry in the backingSet, sodrainreceived a single item for a run that generated several configs. Reporters without adrainalso kept every result in memory for the life of the run. Results now keep their order and count, and a reporter with nodrainbuffers nothing. (#3761,07c3125)
@kubb/mcp
Bug Fixes
-
Discover
kubb.config.mjsduring config auto-discovery and report each config error once.The
generatetool searched every allowed config extension except.mjs, so a project whose only config waskubb.config.mjswas told no config existed unless it passed an explicit path. The tool also emittedCONFIG_ERRORa second time from its catch block afterloadUserConfighad already reported it. Auto-discovery now includeskubb.config.mjsand each config error surfaces a single time. (#3761,07c3125)
@kubb/parser-ts
Bug Fixes
-
Render a single string export name as a named re-export.
printExportwarned to the console and fell back to a wildcard whennamewas a string withoutasAlias, silently dropping the name. It now emitsexport { Name } from './path', which matches the single-export form documented onExportNode, and no longer writes to the console from a string builder. (#3761,07c3125)
@kubb/plugin-barrel
Bug Fixes
-
Honor
barrelType: 'named'when generating nested barrels.With
{ type: 'named', nested: true }the nested walk emitted a wildcardexport *for every file, so leaf modules were re-exported by wildcard instead of by their named symbols. Nested barrels now apply the named strategy to leaf files and only chain a sub-directory barrel that actually produced output, so an empty sub-directory no longer leaves a danglingexport * from './sub'. (#3761,07c3125)
@kubb/renderer-jsx
Bug Fixes
-
Prefix the stray-text error with
[jsx]instead of[react].The error raised when raw text sits directly under
<File>was tagged[react], but this renderer has no React runtime, so the prefix pointed at the wrong thing. (#3761,07c3125)
Contributors
Thanks to everyone who contributed to this release: