npm / jsii
jsii
What changed in jsii 5 to 6, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-29.
2 breaking1 security7 new APIs and options2 behavior and defaults2 tooling15 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli initjsii 68 changes
New APIs and options 2
The CLI reads validate-tsconfig defaults from package.json.
Commands were added to validate a tsconfig and inspect tsconfig rule sets.
Tooling 1
TypeScript 6.0 support was added, allowing developers to use this TypeScript release with jsii.
Fixes and other changes 5
Fixes deprecation warnings that can get very repetitive.
Fixed symbolId resolution for consumers when a library uses jsii.tsconfig.
Emit metadata.tscRootDir relative to the package root.
@jsii ignorenow has an effect on types extending mapped types.Fixes parsing tsconfig.json files with leading comments.
jsii 521 changes
Breaking changes 2
Index signatures, previously silently ignored and unavailable in non-JavaScript/TypeScript APIs, now cause an error unless explicitly opted out.
Tuple types, previously interpreted as synonyms to object and resulting in unusable APIs for non-JavaScript/TypeScript languages, now cause an error.
Security 1
Fixes packages not being released with npm provenance attestations.
New APIs and options 5
Warnings can now be suppressed inline with the @jsii suppress directive.
Warnings can now be silenced by JSII code, number, or diagnostic name.
Namespaces can now be configured for files-as-submodules, in addition to directories.
Intersection types are supported, allowing developers to express types that satisfy multiple type constraints.
Use the @jsii ignore doc-tag to explicitly opt index signatures out of the multi-language API.
Behavior and default changes 2
Submodule target configurations are now validated.
Classes can use covariant overrides.
Tooling 1
Compilation output now includes error and warning counts and timing.
Fixes and other changes 10
Fixed broken transitive deprecation warnings.
Fixed the issue where the deprecation warnings source file was too large.
Fixed cyclic dependencies generated in the warnings.js file.
Submodule name collision detection no longer incorrectly triggers for names from a different submodule hierarchy level.
Silenced warnings are excluded from the summary warning count.
Detached diagnostics are now formatted with color.
Detached diagnostics now include source locations.
Diagnostic names now appear after the message text instead of after the source context.
The types field is no longer required in package.json.
Invalid jsii target parameters are now validated, helping developers catch invalid target configuration.