All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
1.92.0 (2023-11-16)
- jsii-pacmak and the libraries it generates for Python targets now require a minimum Python version of 3.8, instead of 3.7 previously. We recommend users upgrade to the latest supported Python release (Python 3.11).
- all libraries and tools now require a minimum version of Node.js 18, instead of 16 previously. We recommend users upgrade to the latest supported Node.js release (Node.js 20).
- jsii-reflect: TypeSystem can be locked to improve reflection performance (#4318) (c87da43)
- make node 18 the default (#4325) (8784725)
- superchain: publish a bullseye image with node18 & python 3.9 (#4326) (7197b4f)
- switch to python 3.8 (#4327) (416e2b5)
- kernel: invokeBinScript fails when using symlinked cache (#4324) (a2ab316)
- pacmak: *.tsbuildinfo not in auto-generated .npmignore file (#4236) (d55b8d5), closes #3978
- superchain: installed setuptools is an unsupported version (#4333) (c0a4140)
1.91.0 (2023-10-24)
1.90.0 (2023-10-06)
1.89.0 (2023-09-20)
1.88.0 (2023-08-24)
1.87.0 (2023-08-11)
- kernel: fast module loading fails on Windows (EPERM) (#4212) (fac6cbb), closes #4208
- kernel: package cache fails under parallelism (#4215) (b739ef6), closes #4181 #4207
- pip, black, setuptools, twine, wheel, and aws-sam-cli incorrectly installed in superchain (#4201) (851415c)
- python: type object 'InterfaceDynamicProxy' has no attribute 'jsii_type' (#4209) (057b267)
- superchain: add openssh-client back (#4224) (8390ca1)
1.86.1 (2023-08-02)
- kernel: incorrectly scoped FQN resolutions (#4204) (ed667c7), closes aws/aws-cdk#26604 #4202 #4203
1.86.0 (2023-08-01)
- faster, lazy-friendly runtime loading (#4181) (ef6e5b1)
- jsii-pacmak: allow disabling go build conditionally (#4196) (7fc7987)
- python: deprecation message when using Python <= 3.7 (#4186) (0ef7ace)
- jsii-pacmak: comment lines should not contain comment ending (#4193) (906c24d)
- jsii-pacmak: handles 'default' doc component for go (#4115) (9085514)
- type annotation for callable metaclass (#4179) (4ccbb57)
1.85.0 (2023-07-17)
- export transliterateAssembly and fix bug with transliterate cli (backport) (#4166) (6b7eb02)
- go-runtime: use fatih/color instead of ANSI Escape Code (#4109) (28b192a)
1.84.0 (2023-06-13)
1.83.0 (2023-06-07)
1.82.0 (2023-05-22)
- go: register exported properties as callbacks (#4104) (fa921ec), closes cdk8s-team/cdk8s#1326
- superchain: switch to JDK 20 (#4082) (f0a1dfc)
- jsii-pacmak: disable
doclint
(#4103) (30afa09) - jsii-pacmak: emit correct
[@return](https://github.com/return)
tag for JavaDocs (#4095) (fc7ab7c) - jsii-pacmak: escape documentation in all positions (#4096) (6a2248d)
- pacmak: _ is not treated as a keyword in Java (#4094) (eaaf3ee)
1.81.0 (2023-05-10)
- jsii-diff: allow external stability to be treated as error (#4076) (95689ea)
- jsii-pacmak: parsing arguments in non-strict mode (#4068) (3d49d6f), closes #3465
- pacmak: go docs overview displays repeating description (#4081) (4fd596a), closes /github.com/aws/jsii/pull/3698/files#diff-0a99c713a1282d6efe349c932d74dbfbdf1d926834c46ebfb5d65daeb27073f3R263 /github.com/aws/aws-cdk/blob/main/packages/aws-cdk-lib/package.json#L4 /github.com/aws/jsii/blob/main/packages/jsii-reflect/lib/assembly.ts#L46-L52
- rosetta: flakey trim-cache test (#4043) (f70c0f7)
1.80.0 (2023-04-04)
- rosetta: handle tablets with a streaming JSON codec (#4034) (d2ecb6d), closes aws/jsii-rosetta#43
- enable dereference when copying module to tmp dir (#4030) (e00102b)
- jsii: incorrect symbol-id generated with typesVersions (#4037) (1f06ac9)
1.79.0 (2023-03-23)
- add configurable pack command (#4021) (6b2fd18)
- enable Go generics for jsii Go CDK code (#4009) (f653b31)
- runtimes: support JSII_NODE setting (#4024) (f8f2f13), closes #4009
1.78.1 (2023-03-16)
1.78.0 (2023-03-15)
- kernel: json deserialization fails on
null
value (#4000) (884b0ff), closes aws/aws-cdk#14639
1.77.0 (2023-03-06)
- dotnet: target netcoreapp3.1 with RollForward (#3987) (461446b)
- rosetta: go may incorrectly emit _ instead of . (#3985) (52163f8)
- rosetta: prints colors to log file (#3953) (0fc9229)
1.76.0 (2023-02-24)
- dotnet: The runtime library for .NET & generated .NET bindings will no longer support netcoreapp3.1 after this release. Users are advised to upgrade their apps to use net6.0 or net7.0 instead.
- dotnet: update TargetFramework to net6.0 (#3957) (ae335ed), closes aws/aws-cdk#23926 aws/aws-cdk#23921
- go: add JSII_NODE to override node entrypoint (#3890) (357562a), closes #3889
1.75.0 (2023-02-14)
- go: shorten file names for sub-packages (#3927) (7697571)
- rosetta: submodule-qualified names produce invalid Go, Java (#3928) (1ff230d), closes #3551
1.74.0 (2023-01-28)
- python: returning Promise breaks runtime (#3916) (209d10e)
- rosetta: Rosetta does not support
await
(#3915) (e4c51c4)
1.73.0 (2023-01-04)
1.72.0 (2022-12-05)
- check-node: allow silencing @jsii/check-node warnings (#3841) (880dbcc), closes #3817 #3171
- python: streaming bin script output (#3794) (7a41349), closes #3782
- dotnet: broken error name deserialization (#3855) (be008d4)
- python: dereference values returned from Kernel.ainvoke (#3847) (5643c50)
- python: parameter names shadow imported modules (#3848) (8bac012)
- revert "chore(deps): Bump aws-actions/stale-issue-cleanup from 5 to 6" (#3850) (6700f1a), closes aws/jsii#3844
1.71.0 (2022-11-09)
- jsii-diff: does not check types in submodules (#3808) (12ea38e)
- python: type-checking may require incorrect type (#3820) (e9d4084), closes #3818
1.70.0 (2022-10-19)
- add error awareness to go deserialization (#3793) (9b6a307)
- python: add error differentiation to Python. (#3772) (e3f7d5e)
- superchain: add 'acl' package to support projen GHA (#3783) (306b248)
- jsii-reflect: TypeMember is not SourceLocatable (#3778) (db809e2), closes #3777
- python: KeyError in type checks when decorating methods (#3791) (dae724c)
1.69.0 (2022-09-27)
- jsii: missing deprecation warning in collections (#3756) (72f2e7c), closes #3755
- kernel: EPERM on rename operation on Windows (#3769) (bab1d38), closes #992 #3724 #3751
- python: bin script python support, test argument passing (#3762) (0cf5008), closes #3694
1.68.0 (2022-09-22)
- jsii: unable to return Promise (#3752) (852b3dc), closes #51
- pacmak: .NET bindings fail to compile with error CS8120 (#3760) (783ec7f), closes #3759
- runtime: type not found (#3763) (c7dfad3), closes #3742
1.67.0 (2022-09-02)
- java: dynamic type checking for union-typed parameters (#3703) (26ca47c)
- java: utility to perform unsafe cast (#3730) (4a52d4c)
- kernel: experimental runtime package cache (#3724) (4c2dcd5), closes #3389
- java: type generation code-gen issues (#3735) (cf04f79)
- pacmak: crash when generating java code (1fd58db)
1.66.0 (2022-08-29)
- go: emit deprecation warning when using go1.16 and go1.17 (#3718) (3cf5c28)
- go: runtime type check type unions (#3712) (c73c2ee)
- .net: missing dynamic type checking for collection-nested unions (#3720) (362326e)
- rosetta: rosetta reader expects default tablet file to be uncompressed (#3723) (9768e2a)
- type unions in variadic position leads to invalid code-gen (#3722) (93aec85)
1.65.1 (2022-08-29)
- python: reference to type does not use alias (#3728)
1.65.0 (2022-08-18)
1.64.0 (2022-08-11)
- .net: dynamic type checking for union-typed parameters (#3668) (f5e0603), closes #3640
- .net: embed package icon when configured (#3676) (c65b1d9)
- python: classproperty not working with type checkers (#3694) (5413720), closes #3633
- python: unable to override methods with keyword arguments (#3695) (bcffb4b), closes #3656
1.63.2 (2022-07-29)
1.63.1 (2022-07-26)
- python: formally allow dicts to be passed in lieu of structs (#3683)
1.63.0 (2022-07-26)
- jsii: allow specifying baseUrl and paths in tsconfig.json (#3662) (7eb11b7), closes #865
- python: add dynamic type checking (#3660) (6c4b773), closes #3639
- go: unused imports emitted for type unions (#3664) (68a80d9), closes #3399
- rosetta: infuse incorrectly handles compressed assemblies (#3669) (a5bd219)
- rosetta: tablet compression handled incorrectly in multiple places (#3670) (30eded9), closes #3652
1.62.0 (2022-07-12)
- @jsii/spec: add loadAssemblyFromBuffer function (#3634) (4f3a0d1)
- @jsii/spec: add a utility library to be consumed by jsii modules (#3570) (635404a)
- rosetta: tablets can be compressed (#3652) (359e74f)
- use new read/load assembly functions everywhere (#3600) (623c0c1), closes #3570 #3570
- benchmark: compilation fails due to missing dependencies (#3610) (28db6e3)
- jitter Docker build startup (#3646) (5857ea8)
- jsii: fail compilation when two or more enum members have same val (#3412) (f64dace), closes #2782
- Status icon for Go language that it is generally available. (#3607) (1762310)
1.61.0 (2022-06-16)
- @jsii/check-node crashes on loading with older node releases (#3588) (a1582bf)
- instantiate perf observer for each iteration (#3585) (3827d93)
- italics in Markdown notation (#3594) (f754baa)
1.60.1 (2022-06-09)
1.60.0 (2022-06-08)
- Beginning with this release, jsii packages no longer support node 12. Users should migrate to a supported node release (14.x, 16.x, or 18.x).
-
@jsii/spec: speed up assembly validation by 20x for large libraries (#3565) (c40f26c)
-
java: rendering of
[@see](https://github.com/see)
hyperlink leads to errors (#3554) (9fd3c71) -
jsii:
assert
not allowed as interface member (#3553) (f3fec0c)
1.59.0 (2022-05-16)
- jsii: deprecation warnings use this.constructor before calling super (#3528) (5d5f435), closes #3527
- python: cannot import nested submodules (#3540) (8ef8ef2), closes #3408
1.58.0 (2022-05-06)
jsii-pacmak
and the libraries it generates for Python targets now require a minimum Python version of 3.7, instead of 3.6 previously. We recommend users upgrade to the latest supported Python release (Python 3.10).
- compiler benchmarks and gh action (#3503) (4a91cf0), closes /github.com/MrArnoldPalmer/jsii/pull/417#commitcomment-72358212
- go: add tag to denote required/optional properties (#3486) (3d7c310), closes #2536 #2672
-
go: object type not recognized (#3485) (fe2fa94), closes #2880
-
jsii: some submodules are not exported from
aws-cdk-lib
(#3491) (47f70a2) -
pacmak: missing python artifacts when using relative -o path (#3518) (cc9b561), closes aws/aws-cdk#20041
-
rosetta: attempts transliteraiton to unsupported languages (#3478) (db2d62e)
-
rosetta: incorrect transliteration for selective imports (#3508) (8eec086)
-
drop support for Python 3.6 (EOL as of 2021-12-23) (#3472) (abf7415)
1.57.0 (2022-04-19)
- go: object type not recognized (#3485) (fe2fa94), closes #2880
- jsii: some submodules are not exported from
aws-cdk-lib
(#3491) (47f70a2) - make jsii --watch work (#3487) (4a46f7d), closes #3467
1.56.0 (2022-04-08)
- drop internal functions from Deprecation Error stack trace (#3426) (5b4b852)
- expose unknownSnippets config (#3475) (e9d99a0)
- specify output directory for assemblies (#3437) (5419876)
- Standardize issue template for discussions (b191f60)
- rosetta: incorrect transliteration of map keys in python (#3449) (54cebaa), closes #3448 #3448
- typo "though" -> "through" (#3419) (3274b6c)
1.55.1 (2022-03-16)
1.55.0 (2022-03-10)
1.54.0 (2022-02-15)
1.53.0 (2022-02-09)
- add configuration for Visual Studio Code (#3309) (3edf74c)
- go: add UnsafeCast function (#3316) (19da85e)
- go: Use type registry to find the correct target type for JSII Proxy (#3354) (75d94ef), closes #3353 #2819
- rosetta: Rosetta manages dependencies automatically (#3269) (f0b811b)
- dontet: excessive overrides generated (#3355) (5460d66)
- go: replace uses of CanConvert to Type.AssignableTo (#3373) (ae4ea62)
- go: unable to reuse instances between child/parent interfaces (#3321) (70be636)
- jsii: breaks due to faulty version of
colors
(#3328) (13c0737) - jsii: compiler allows inheriting interface-violating members (#3343) (b5037b9), closes #3342
- jsii: excessive overrides declarations registered (#3375) (64a5984)
- jsii: submodule READMEs don't have literate examples (#3347) (5769771), closes aws/aws-cdk#18589
- kernel: kernel's private object annotations are enumerable (#3339) (d361c7b)
- pacmak: greatly reduce go code-gen memory footprint (#3362) (77b520f)
- python: cannot call a method that takes an empty struct (#3372) (c36b67c), closes #2846
- remove the "comments rewriter" (#3368) (50dd3b0)
- superchain: failure to download PowerShell (#3340) (59eaaa3)
1.52.1 (2022-01-09)
1.52.0 (2022-01-07)
1.51.0 (2022-01-06)
- jsii: cannot use submodule types from assemblies before 1.39.0 (#3306) (949d5f0), closes #3233
- rosetta: Python translation for
implements
is wrong (#3280) (a833a1d), closes aws/aws-cdk#17928
1.50.0 (2021-12-24)
- jsii: color codes are logged to logfiles (#3284) (2c8c647)
- jsii: slow with deep dependency tree (#3294) (04d64c9)
- pacmak: fails on bundled dependency without entry point (#3277) (6e5a0b5), closes #3275
- rosetta: diagnostics from infused snippets were not ignored (#3282) (ad7f6a4)
- rosetta: infused snippets not returned from cache (#3291) (dd44431)
- rosetta: non-compiling snippets not reported on subsequent extracts (#3260) (771190b)
- rosetta: transliterate command does not translate in parallel (#3262) (beeadaa)
1.49.0 (2021-12-14)
- improve compatibility with restricted-export modules (#3205) (31a7172)
- jsii: correctly identify types regardless of import method (#3233) (aa37d62), closes aws/aws-cdk#17860
- jsii: handle imports from libraries compiled with old jsii (#3245) (133d1cf), closes #3233 #3233
- jsii: symbolid for single-valued enums is incorrect (#3234) (83d3fc8)
- rosetta:
rosetta extract
fails if run afterrosetta infuse
(#3248) (e3ec929) - rosetta: classes are not correctly identified if package uses an outDir (#3225) (05631a7)
- rosetta: infuse drops first assembly (#3243) (29a6a84)
1.48.0 (2021-12-13)
- reflect: add
allTypes
accessor (#3194) (41f301a) - rosetta: metadata tag for fixtures in docs (#3200) (8cefa8b)
- rosetta: generate rosetta tablets next to each assembly (#3223) (1e7b604)
- rosetta: reuse output file as additional cache and introduce
--infuse
option forextract
(#3210) (ccb3c57)
- improve compatibility with restricted-export modules (#3205) (31a7172)
- jsii: constants can't mix letters and digits (#3209) (a444e29), closes #3208
- jsii: correctly identify types regardless of import method (#3233) (aa37d62), closes aws/aws-cdk#17860
- jsii: deprecation message is not displayed for deprecated classes (#3206) (3841538)
- jsii: handle imports from libraries compiled with old jsii (#3245) (133d1cf), closes #3233 #3233
- jsii: symbolid for single-valued enums is incorrect (#3234) (83d3fc8)
- pacmak: don't automatically translate examples without asking (#3219) (937f8c3)
- rosetta:
extract
ignores--compile
option (#3193) (639c510) - rosetta: classes are not correctly identified if package uses an outDir (#3225) (05631a7)
- rosetta: enum resolution breaks for properties (#3190) (3b49066)
- rosetta: infuse drops first assembly (#3243) (29a6a84)
- rosetta: use
--compile
flag by default (#3218) (9df7950)
1.47.0 (2021-12-06)
- reflect: add
allTypes
accessor (#3194) (41f301a) - rosetta: metadata tag for fixtures in docs (#3200) (8cefa8b)
- rosetta: generate rosetta tablets next to each assembly (#3223) (1e7b604)
- rosetta: reuse output file as additional cache and introduce
--infuse
option forextract
(#3210) (ccb3c57)
- jsii: constants can't mix letters and digits (#3209) (a444e29), closes #3208
- jsii: deprecation message is not displayed for deprecated classes (#3206) (3841538)
- pacmak: don't automatically translate examples without asking (#3219) (937f8c3)
- rosetta:
extract
ignores--compile
option (#3193) (639c510) - rosetta: enum resolution breaks for properties (#3190) (3b49066)
- rosetta: use
--compile
flag by default (#3218) (9df7950)
1.46.0 (2021-11-21)
- rosetta:
extract
ignores--compile
option (#3193) (639c510) - rosetta: enum resolution breaks for properties (#3190) (3b49066)
1.45.0 (2021-11-18)
- C# NamespaceDoc emitted to wrong location (#3183) (0f5f349)
- jsii: require statement for the warning file is generated when it's not used (#3184) (3d90ae6)
- pacmak: dotnet code docs loses indentation (#3180) (ace0b83)
- pacmak: Generate Relative Module Imports in Python (#3181) (b0afe51)
- rosetta: diagnostics not showing (#3182) (92a7d5e)
- rosetta: Rosetta is not submodule-aware (#3176) (5c7d148)
- rosetta: types from submodules not recognized properly (#3174) (b009d07)
1.44.2 (2021-11-18)
1.44.1 (2021-11-16)
1.44.0 (2021-11-15)
- dependency submodules may not be discovered (#3151) (5768bb9)
- deprecation warnings are generated even when one property is not deprecated (#3157) (e566f37)
- jsii: incorrectly allowed unexported type in constructor params (#3147) (7cd59fc)
- pacmak: remove disclaimer on compiling examples (#3148) (75e4093)
- pacmak: Support more than 255 properties for interfaces in Java (#3133) (ba4a20d), closes #3132 #3132
- rosetta:
didCompile
evaluates to true when compilation not attempted (#3149) (7ad9e0a) - rosetta: cache source file parses (#3163) (307d3ca)
- rosetta: gets confused by type unions (#3156) (ca04dad)
- rosetta: snippet throughput incorrect (#3145) (91418d6)
1.43.0 (2021-11-08)
- pacmak: fail on untranslated snippets (#3127) (874e8e2), closes cdklabs/cdk-ops#1777
- rosetta: find fixtures based on submodules (#3131) (236dd88)
- pacmak: add 'silly' loglevel for command output (#3125) (bf769da)
- pacmak: API locations for inherited members are incorrect (#3130) (8d0a248), closes cdklabs/cdk-ops#1777
- pacmak: development version cannot pack java (#3121) (0d9cf51), closes #3107
- pacmak: re-introduce parallelism for Python and Go builds (#3124) (87ba35d), closes #3045
- rosetta:
infuse
creates untranslated examples (#3126) (ab60275) - rosetta: crashes on outdated tablet files in a package (#3119) (80ff0dc)
- rosetta: remember live-translated snippets without fixtures (#3129) (0638345)
- rosetta: stop skipping example values (#3128) (ee0620a)
1.42.0 (2021-11-02)
- jsii: deprecation warnings erroneously warn for duplicate enum values (#3105) (c477422), closes #3103
- jsii: generated deprecation-warning code is platform dependent (#3096) (9aa6f02)
- jsii: unexpected deprecated warnings when a deprecated interface is extended (#3112) (bd7e07c), closes #3111
- pacmak: '*/' not escaped in JavaDocs (#3104) (7ab109a)
- rosetta: arrays aren't handled properly (#3098) (de4648b)
1.41.0 (2021-10-27)
- jsii: experimental --strip-deprecated with file (#3085) (e5ba807)
- rosetta: "rosetta infuse" feature (#3067) (0f2f2d0)
- rosetta: improve translation throughput (#3083) (919d895)
1.40.0 (2021-10-19)
- jsii: added warnings for usage of deprecated elements (#3051) (8c0dd3b)
- jsii: allow customizing tsconfig.json file name (#3076) (c611f26)
- rosetta: allow only property assignments in object literals (#3065) (c783ab7), closes #3061
- rosetta: breaks when given a lot of snippets (#3075) (eca552e)
- rosetta: class declaration uses wrong constructor name in C# (#3064) (13f75a1), closes #3056
- rosetta: disallow nullish coalescing operator in examples (#3060) (a35bbfa), closes #3053
- rosetta: fix usage of Builders in Java (#3058) (a0ce42d), closes #2984
- rosetta: newlines after return statements missing (#3063) (26c95f5), closes #3054
1.39.0 (2021-10-12)
- jsii: added a symbol identifier to every type in the assembly (#3030) (2120d34)
- jsii: case consistency between filesystems (#3015) (cc364f0), closes #3013 #3013
- java: log messages may not flush by app exit (#3028) (41631e7), closes #3009
- pacmak: build failure due to non-sequential package builds between consumer and dependency (#3045) (1589af8)
- python: unknown type when submodule is not loaded (#3049) (da55a1e), closes aws/aws-cdk#16625
- rosetta: constants are incorrectly turned into getters (#3050) (84e4ca3), closes #2984
- rosetta: correctly detect arguments typed as
any
(#3043) (3d2ba15), closes #3029 - rosetta: fix translation of
!
and===
operators (#3052) (72b9b98), closes #2993 - rosetta: literal map type is rendered as __object in C sharp (#3047) (e2843be), closes #3044 #3026 #3027
- rosetta: structs starting with
I
are incorrectly interpreted as non-structs (#3040) (d564350) - rosetta: support
declare
statements (#3044) (4ccacd1) - rosetta: turn
asList
intoList.of
(#3048) (ee75bf1)
1.38.0 (2021-10-07)
- jsii-pacmak: modules not packed in topological order (3f6db2c)
1.37.0 (2021-10-06)
- pacmak: opt out of jsii assembly validation (#3032) (a3265d9)
- reflect: memoize expensive properties (#3031) (e169c38)
1.36.0 (2021-10-04)
1.35.0 (2021-09-28)
- the minimum supported version of
node
changed from10.3.0
to12.7.0
. We recommend using16.x
if possible.
-
jsii: improve checks around peerDependencies (#2997) (d1ff3e6), closes #2994
-
upgrade baseline node requirement to >=12.7.0 (#2946) (f2c6842)
1.34.0 (2021-08-25)
- superchain: the
jsii/superchain
image tags:latest
,:nightly
,:node10
and:node14
are no longer maintained. Users should migrate to the new debian-based tags starting with:1-buster-slim
.
- @struct type system hint (#2965) (a4ed9a8)
- superchain: arm64 support (#2949) (ceb66a6), closes #2930
1.33.0 (2021-08-16)
- java: Disable covariants for java builder params (#2853) (e729f5d), closes #2839
- java: implemented interface is not registered (#2952) (99da7a6), closes #2951
1.32.0 (2021-07-22)
- jsii-rosetta transliterate: transliterate a jsii assembly (#2869) (d9028c8)
- rosetta: hoist declare statements to top-level of document (#2897) (7b2ec05)
- rosetta: transliterate loose mode (#2892) (43e6dfd)
- crash when assembly originator key file is missing (#2899) (e05ce62)
- dotnet: strong-name sign assemblies (#2894) (7b90f27)
- pacmak/go: missing go.sum entry (#2893) (6e6ad69)
- rosetta: extract does not respect strict metadata entry (#2863) (5d2392b), closes #2861
- rosetta: fails on "Debug Failure" (#2917) (f6078ef), closes cdklabs/jsii-docgen#369
- rosetta: hangs on 'markdown' command when a file is provided (#2871) (e538b36)
1.31.0 (2021-07-09)
- jsii-rosetta transliterate: transliterate a jsii assembly (#2869) (d9028c8)
- rosetta: transliterate loose mode (#2892) (43e6dfd)
- pacmak/go: missing go.sum entry (#2893) (6e6ad69)
- rosetta: extract does not respect strict metadata entry (#2863) (5d2392b), closes #2861
- rosetta: hangs on 'markdown' command when a file is provided (#2871) (e538b36)
1.30.0 (2021-05-27)
- docs: correct the "source version" in Python version mapping (47a40f1)
- update lineMap after altering source.text (#2837) (82f5d5f), closes #2680
- pacmak: fails when package path contains space (#2758) (0fbba6b), closes #2748
- python: classes do not correctly implement interfaces (#2809) (0769347), closes aws/aws-cdk#13474
- python: module import fails: NameError: name 'List' is not defined (#2851) (b7b9e5f)
1.29.0 (2021-04-21)
1.28.0 (2021-04-13)
- dotnet: unable to pass 2d-array of interfaces (#2763) (347cf69), closes aws/aws-cdk#12587
- deprecated symbol stripping does not strip out heritage clause with imported type (#2783) (e87d879)
1.27.1 (2021-04-12)
- go: retracted github.com/aws/jsii-runtime-go@v1.27.0 as it was unusable.
1.27.0 (2021-04-02)
- go: variadic type helpers to build slices (#2755) (16b6546)
- superchain: also build a superchain image with Node 14 (#2741) (6364d51)
- go: dates are mistreated as strings (#2730) (2ba2ec4), closes #2659
- go: missing setter for R/W interface properties (#2731) (74d0d99), closes #2665
- go: protected property accessors missing (#2738) (94c799a)
- go: unable to set an array of interfaces/enums (#2754) (0cd514e), closes #2686
- python: accept Sequence[T] for array parameters (#2606) (b09d578), closes aws/aws-cdk#13203
- python: module import fails with: KeyError: 'all' (#2757) (c32a889), closes #2750
- rosetta: 'extract' does not translate samples in submodule READMEs (#2744) (0a3f01f)
- superchain: use entrypoint to set up nvm (#2736) (0e247b6)
1.26.0 (2021-03-22)
- go,python/java: if multiple members have the same name with different capitalization, only one is allowed to be non-deprecated. This will currently only manifest when producing python bindings, but will be added as a jsii compiler error in the future.
- compliance: Compliance suite (#2607) (18b2c16)
- go: extension & overrides mechanism (#2717) (33f3b26)
- go: packageName and versionSuffix (#2687) (9562108), closes #2632
- superchain:
$NVM_USE_VERSION
selects Node.js version (#2726) (fb9abf9) - superchain: install both Node 10 and Node 14 (#2718) (3ca97d9)
- go: duplicate conversion functions when parent structs have the same base name (#2697) (52bd510), closes #2692
- go: invalid code when a module only has static methods [test only] (#2704) (2dbe84d), closes #2622 #2617
- go: missing imports needed by base members (#2685) (daca06f), closes #2647
- go: missing imports required by collection types (#2691) (c9a36a6), closes #2689
- go: nested types are not namespaced (#2650) (45b527c), closes #2649
- go: optional values (#2705) (7d0cfc5), closes #2442 #2671
- go,python/java: bad code for members with same name with different casing (#2699) (25528fb), closes #2508
- pacmak: .NET submodules don't have namespace docs (#2683) (097a4ea)
- pacmak: Java submodules don't have package infos (#2682) (e6ca054)
- pacmak: Python submodules don't have docstrings (#2681) (a950282)
- pacmak: xmldom error when generating packages (#2713) (6b2bbe8)
- TypeError when trying to use bin-scripts in Python (#2720) (acdf1a9)
- python: duplicated kwargs when field is multi-inherited (#2654) (3cd9d19), closes #2653
- rosetta: 'extract' does not translate samples in submodule READMEs (#2712) (ccac1bd)
1.25.0 (2021-03-16)
- compliance: Compliance suite (#2607) (18b2c16)
- go: packageName and versionSuffix (#2687) (9562108), closes #2632
- go: duplicate conversion functions when parent structs have the same base name (#2697) (52bd510), closes #2692
- go: invalid code when a module only has static methods [test only] (#2704) (2dbe84d), closes #2622 #2617
- go: missing imports needed by base members (#2685) (daca06f), closes #2647
- go: missing imports required by collection types (#2691) (c9a36a6), closes #2689
- go: nested types are not namespaced (#2650) (45b527c), closes #2649
1.24.0 (2021-03-03)
- go: enums inside structs are not properly serialized (#2636) (19cbd25)
- go: invalid generated code for classes a keyword name (#2641) (8668f13), closes #2637
- go: malformed multiline docstrings in constructors (#2639) (72f25af), closes #2638
1.23.0 (2021-03-01)
- go: emit indirect dependencies in go.mod (#2596) (0f95a0b)
- go: preserve casing of enum member names (#2598) (efdc165), closes aws/aws-cdk-rfcs#292
- go: represent jsii structs as go structs (only) (#2600) (e7cc93e), closes aws/aws-cdk-rfcs#292
- go: require go 1.16, use native embed (#2603) (67cd3ce)
- pacmak: emit LICENSE file with SPDX license text, NOTICE file (#2604) (6747f12)
- go: map values incorrectly handled though de/serialization (#2587) (0359928)
- go-runtime: enums are not encoded/decoded correctly (#2585) (4731aeb), closes #2534
- java: invalid code when multi-inheriting optional properties (#2591) (2399608), closes #22556
- java: JsiiRuntime.ErrorStreamSink does not respond to being interrupted (#2540) (6e74bf9), closes #2533
- jsii: excessive "exclude" in "tsconfig.json" (#1736) (ecffb9f)
- pacmak: go 1.16 requires running "go mod download" explicitly (#2616) (1f8f022), closes #2615
- pacmak: go local replace do not respect
--outdir
in some cases (#2584) (b9b9b4c) - pacmak: multiple go (and python) issues (#2622) (c2bd156), closes #2618 #2619 #2620 #2621
1.22.0 (2021-02-18)
- go: map values incorrectly handled though de/serialization (#2587) (0359928)
- go-runtime: enums are not encoded/decoded correctly (#2585) (4731aeb), closes #2534
- jsii: excessive "exclude" in "tsconfig.json" (#1736) (ecffb9f)
- pacmak: go local replace do not respect
--outdir
in some cases (#2584) (b9b9b4c)
1.21.0 (2021-02-15)
- pacmak: examples with multi-line strings produce invalid python docstrings (#2571) (d5c2e3a), closes #2569
- pacmak: TypeError when operating with Worker threads (#2550) (5822e48), closes isaacs/node-graceful-fs#204 isaacs/node-graceful-fs#205
- rosetta,pacmak: TypeError in node 10 with --experimental-worker (#2554) (4728e86), closes isaacs/node-graceful-fs#204
1.20.1 (2021-02-05)
1.20.0 (2021-02-03)
1.19.0 (2021-02-02)
- add runtime type info (fqn and version) to compiled sources (481e7a4), closes /github.com/aws/aws-cdk-rfcs/blob/master/text/0253-cdk-metadata-v2.md#appendix-1
- go: version file in the generated module directory (#2492) (da3ea25)
1.18.0 (2021-01-28)
- add support for bin-scripts (python only) (#1941) (61ef5ed)
- dotnet,java: kernel process inherits host's STDERR (#2248) (70ce153)
- submodules expose readmes and targets via
jsii-reflect
(#2482) (33f41eb) - go: run "go build" on generated code (#2485) (d3602ec), closes #2463
- go: runtime release tagging (#2417) (9ffd204)
- jsii: experimental --strip-deprecated feature (#2437) (f958f5a)
- dotnet: Use nested classes for proxies to avoid name collision (#2368) (90b17e2), closes #2367
- go: generated code runtime dependency version (#2399) (f1a06e5)
- go: invalid output for multi-line @return and @deprecated comments (#2462) (590681a), closes #2457
- jsii: errors when invoking with a project root argument (#2351) (9c66340)
- jsii: submodules of dependencies show up in assembly (#2481) (2630a80)
- jsii: unknown error in Assembler._validateHeritageClauses (#2350) (3120bf4), closes #2349
- bad working directory in go runtime push (#2356) (53457e2)
- pacmak: illegal static overrides in java & c# (#2373) (4672e4b), closes #2358
- python: mypy validation errors (#2472) (2b2e9a8), closes #2464 #2476
- python: pin mypy to the exact version (#2476) (01a46d6), closes #2464
- rosetta: correctly emit multi-line string literals (#2419) (a30a996)
1.17.1 (2021-01-13)
1.17.0 (2021-01-13)
- add support for bin-scripts (python only) (#1941) (61ef5ed)
- dotnet,java: kernel process inherits host's STDERR (#2248) (70ce153)
- bad working directory in go runtime push (#2356) (53457e2)
- dotnet: Use nested classes for proxies to avoid name collision (#2368) (90b17e2), closes #2367
- go: generated code runtime dependency version (#2399) (f1a06e5)
- jsii: errors when invoking with a project root argument (#2351) (9c66340)
- jsii: unknown error in Assembler._validateHeritageClauses (#2350) (3120bf4), closes #2349
- pacmak: illegal static overrides in java & c# (#2373) (4672e4b), closes #2358
1.16.0 (2020-12-07)
- java: exception is logged when Java VM is shutting down (#2305) (8e1e7bd), closes #2303
- runtime: excessive latency introduced by sleep (#2298) (1a94b85), closes #2284
1.15.0 (2020-11-25)
- dotnet,java: finalize kernel process on VM shutdown (#2247) (29b2262), closes #2100
- go: generate go.mod files (#2265) (4164eb5), closes #2090
- go: Runtime arg type casting (8ba6aa9)
- go: Runtime interface type casting (bfce93d)
- jsii: configure diagnostics in package.json (#2233) (2bbef1f)
- rosetta: hoist imports above fixtures (#2211) (66e2ac8)
- rosetta: make assembly validation opt-in (#2252) (302dbb9)
- rosetta: support "strict" assemblies (#2253) (6cbde78)
- rosetta: support computed properties (#2230) (80b3aae)
- go: generate concrete structs for behavioral interfaces (#2257) (6da0870)
- go: Method call return reference an implMap (af5b27b)
- python: update
cattrs
dependency specification (#2212) (4f2836b), closes aws/aws-cdk#11219 - runtime: "Error: EOF: end of file, read" on Windows (#2238) (1453ed3)
1.14.1 (2020-11-04)
- python: update
cattrs
dependency specification (#2212) (d7731f9), closes aws/aws-cdk#11219
1.14.0 (2020-10-29)
- The
jsii/superchain
Docker image no longer includesruby
andgcc
. Users who need those should install them as part of their initialization script.
- dotnet: introduce
UnsafeCast<T>()
method (#2192) (5e22e81), closes aws/aws-cdk#3284 aws/aws-cdk-rfcs#193 - go: dynamically load npm packages as needed (#2067) (7dbdbeb)
- go: embed jsii runtime application (#2066) (85764de)
- go: Runtime method and static invoke support (#2145) (ff882c1)
- go: runtime object creation (#2117) (977a063)
- pacmak: prerelease identifier support (#2146) (1338fc2), closes #2114
- pacmak/java: emit default interface implementations (#2076) (c618de3), closes #2014
-
dotnet: abundant nullability warnings in generated code (#2061) (01a2951)
-
go: fix generation of readonly and static properties (#2133) (57b7d56), closes #2093
-
jsii: annotation '@internal' causes missing type declarations downstream (#2172) (e80a4f7), closes #1947 #1830
-
jsii: TypeError: Cannot read property 'getJsDocTags' of undefined (#2163) (5d87101), closes #2098
-
jsii-diff: external structs returned from methods cannot be changed (#2070) (11e9389), closes #2064
-
pacmak/python: escape character escapes in python docs (#2138) (1578899), closes #2137
-
python: leftover jsii-kernel-* directories in TMPDIR (#2100) (c119994)
-
removes unused software from superchain to reduce image size (#2092) (fe2c597)
1.13.0 (2020-09-29)
- add go to superchain (#1994) (30f76c7)
- go: runtime library definition (#1996) (adbf44d)
- jsii: reflect stabilities in doc comment summaries (#1951) (ce8c0c4)
- pacmak: go module resolution & compiler fixes (#1956) (7e2512f)
- pacmak: retry select external command invocations (#2013) (66cf186)
- dontet: iso-8601 date strings get turned into DateTime (#2058) (52d7382), closes aws/aws-cdk#10513
- go: null returns and pointer getters/setters (807568d)
- go: Only embed behavioral interfaces (#1966) (e1f4e18)
- pacmak: go bad local package imports (#1973) (f9311b2)
1.12.0 (2020-08-27)
- golang: introduce Golang code generation (#1551) (2833db4), closes #83
- java: use covariant types for collection elements (#1884) (be2c7e2), closes #1517
- jsii: standardized error messages (#1931) (b146286)
- java: module "" not found error (#1906) (d0b9ffd), closes #1904
- jsii: class members named after the class result in illegal C# (#1903) (bc71154), closes #1931 #1880
- kernel: calling super.property unexpectedly returns
undefined
(#1932) (3b48778) - python: generate type-checking code (#1881) (e6d1bc1), closes awslabs/cdk8s#194
1.11.0 (2020-08-18)
- jsii: detect changing visibility when overriding (#1876) (cfc99c2), closes aws/aws-cdk#9616
- jsii-pacmak: option to disallow parallel generation of languages (#1890) (9d5a439)
- python: allow setting additional trove classifiers (#1902) (26be2b6), closes aws/cdk-ops#393
- dotnet: "Could not infer JSII type for .NET type 'AnonymousObject'" (#1718) (41d79e7), closes aws/aws-cdk#7977
- dotnet: crash when TEMP contains certain unicode characters (#1913) (8f31b1a), closes aws/aws-cdk#7456
- jsii: README.md filename is case sensitive (#1871) (e375647), closes #1862
- jsii: unable to use nested types from dependencies (#1866) (44f9109), closes #1861
- pacmak:
EMFILE
error when runningjsii-pacmak
(#1891) (7316b44) - rosetta: use of keyword 'lambda' produces invalid Python code (#1850) (39769b0)
1.10.0 (2020-08-05)
- java: user.xml repository ID was not sanitized (#1812) (4283af0)
- jsii: Location of initializers in source was not documented (#1806) (3957827)
- jsii: selective exports declarations are ignored (#1829) (2699ccf), closes #1818
- python: missing imports for certain keyword arguments (#1810) (f124bc8), closes #1809
- rosetta: OOpsie -- couldn't find root file back on Windows (#1842) (6ea8daa)
- rosetta: kwargs arguments are emitted at a variadic position (#1832) (079e147), closes #1821
1.9.0 (2020-07-16)
- jsii-reflect: TypeSystem.methods and .properties ignores submodules (#1779) (bdb5483)
- pacmak: python pack fails when installing 'black' via pip (#1782) (d83e004)
- pacmak: race condition in python packing when run over multiple packages (#1783) (7807027)
1.8.0 (2020-07-02)
- kernel: tarball unpacking does not behave like 'npm install' (#1766) (2dc1b21), closes aws/aws-cdk#8233 #1765
- python: relative import missing for kwargs types (#1768) (c174ac5)
1.7.0 (2020-06-18)
- jsii-pacmak: add maven and nuget support for * dependencies (#1696) (13667f6), closes aws/jsii#1678
- turn off assembly validation (#1751) (c6d5f8a)
- @jsii/runtime: "maximum call stack size exceeded" in SyncStdio.readLine (#1717) (6348226), closes aws/aws-cdk#8288 aws/aws-cdk#5187 aws/aws-cdk#8397
- jsii: build succeeds using Omit<T, K> (#1708) (a46fdb1), closes #1707
- python: no overload variant of "Factory" matches argument type "object" (#1716) (eee8ea5)
- python: reference isomorphism is broken within init (#1724) (b7be1c6), closes aws/aws-cdk#8262
1.6.0 (2020-06-02)
- java: add a Builder interface implemented by all builders (#1654) (52e73b5), closes #1652
- java: use covariant types for collection elements (#1653) (bc5e200), closes #1517
- jsii: use incremental builders (aaa7593)
- allow per-submodule naming configuration (#1690) (b2aa424), closes #1286
- pacmak/java: isolate maven repositories (#1709) (4904cd8)
- python: add explicit return type to setters (#1645) (0f3c6e2)
- dotnet: F# dictionaries cause NullReferenceException (#1655) (50c656c), closes #1322
- jsii: dependency submodules are not tagged (#1663) (18e3702)
- package runtimes as private for integ test (#1677) (7afe761)
- jsii-pacmak: computeIfAbsent throws ConcurrentModificationException (#1706) (fa60b7f)
- kernel: error raised during rename operation on win32 (#1702) (38ee336), closes #992
- pacmak: label "External" stability as "Stable" (#1633) (8569c00)
- python:
self
as property name leads to assignment error (#1330) (a877f34) - python: imports between subpackages are broken (#1528) (84e0f48)
1.5.0 (2020-05-07)
1.4.1 (2020-04-22)
1.4.0 (2020-04-22)
- python: improve metadata of jsii package (#1587) (7dd04fe)
- spec: model submodules in the Assembly schema (#1563) (de2689b), closes #1528 #1557
1.3.2 (2020-04-20)
1.3.1 (2020-04-18)
1.3.0 (2020-04-16)
- jsii-diff: detect interfaces inherited via interfaces (#1492) (e03a638)
- python: packages fail to load when relocated (#1518) (9db95e1), closes #1501
1.2.0 (2020-03-31)
- jsii: introduce submodules feature (#1297) (2df5d90), closes #1286
- add autobump script (#1335) (bdda569)
- diff: check super types (#1354) (b08f65f)
- dotnet: missing ? on nullable interface members (#1287) (9299db2), closes #1285
- dotnet-analyzers: unit test null reference (#1341) (6b88509)
- jsii: missing context on "Message" diagnostics (#1298) (c44f5f3)
- jsii: out-of-source builds are broken (#1344) (aecdc5e), closes #1273
- jsii: single-valued enums are not processed correctly (#1406) (39425a4), closes aws/aws-cdk#6712 aws/aws-cdk#6948
- kernel: "any" serialization breaks private type instances (#1347) (655adeb), closes aws/aws-cdk#6746
- python-runtime: KernelResponse missing types (#1332) (fcafab4)
1.1.0 (2020-03-10)
- dotnet: missing ? on nullable interface members (#1287) (9299db2), closes #1285
- jsii: missing context on "Message" diagnostics (#1298) (c44f5f3)
1.0.0 (2020-02-17)
- CDK Build Integration Test (#1219) (e99d722), closes #1209
- csharp: enable nullable reference types (#1246) (cbc7258)
- dotnet: upgrade target framework to netcoreapp3.1 (#1241) (c324439)
0.22.0 (2020-02-06)
- java: annotate nullability (#1234) (6f2ab03), closes aws/aws-cdk#6026
0.21.2 (2020-01-22)
- java: maven-surefire-plugin 2.22.2 (#1165) (2f1f7b9)
- depend on python-3.8-supporting version of cattrs (#1177) (e9b00c8), closes #913
- rosetta: properly escape C# comments as XML (#1184) (2bdc589)
- poor error message on scalar deserialization type mismatch (#1187) (fdf8927)
0.21.1 (2020-01-03)
0.21.0 (2020-01-02)
- dotnet: documentation strings sometimes invalid (#1127) (94da056)
- java,dotnet: abstract properties have concrete implementations (#1128) (c9351a3), closes #240 #1011
- jsii:
--watch
causes immediate failure (#1150) (6bdf7d7), closes #1149 - pacmak: generated dependencies are not consistent with source npm module (#1141) (03221fe), closes #676 #1137
- runtime: runtime crashes with EAGAIN trying to read from STDIN (#1143) (e3502ed), closes #1142 aws/aws-cdk#5187
- superchain: bad permissions on ~/.ssh/config (#1139) (eda462d), closes #1138
- jsii: switch to disable reserved words warnings (#1076) (5389def), closes #1073
- rosetta: translate examples to Java and C# (#985) (d591b85)
0.20.11 (2019-12-13)
0.20.10 (2019-12-13)
0.20.9 (2019-12-11)
- allow Missing Dotnet Version Suffix (#1047) (fc366d0), closes #1037
- dotnet/roslyn: analyzer target framework (#1071) (fea0f0a), closes aws/aws-cdk#5189
- generate non-overlapping artifacts (#1104) (2add627)
- java: missing remarks in builder documentation (#1111) (33e820c), closes #1094
- java: remove Jackson confusion with certain patterns (#1070) (9eacbe3), closes #987 aws/aws-cdk#4080
- python: correctly emit sligified positional args (#1081) (6f9167b), closes aws/aws-cdk#4302
- python: correctly handle structs out of callbacks (#1009) (812d8c2), closes #1003 #997 #997 #1003
- python: members named property results in invalid code (#1114) (92be5d7), closes #1113
0.20.8 (2019-11-24)
0.20.7 (2019-11-18)
- java: handle null-able collections correctly (#986) (e88e5e2), closes aws/aws-cdk#4316
- jsii: unable to depend on modules with private declarations (#995) (08c4294), closes #994
- kernel: cannot pass decorated structs to kernel as "any" (#997) (2bd3183), closes aws/aws-cdk#5066
- jsii-config: introducing jsii-config (#981) (2bbf576), closes #904
- rosetta: extract and compile samples into "tablets" (#925) (eec44e1)
0.20.6 (2019-11-14)
- python: dynamic proxies handling of setters (eec9640), closes aws/aws-cdk#5032
0.20.5 (2019-11-13)
- dotnet: allow down-casting to parent interface type (#983) (8a390e5), closes #982
- python: correctly handle interface declarations on returned objects (#980) (c2de100)
0.20.4 (2019-11-12)
0.20.3 (2019-11-11)
0.20.2 (2019-11-08)
- dotnet: fix callback issues (#953) (849c004)
- pacmak: .NET build downloading packages from NuGet (#949) (433d1f8)
- pacmak: occasional EISDIR failure (#948) (a388f24)
- runtime: make kernel 'load' operation synchronous (#951) (896d688)
0.20.1 (2019-11-06)
- dotnet/analyzer: remove dependency on Runtime (#927) (815b449)
- kernel: revert behavior change around
any
serialization (#932) (2f47543), closes #825 - pacmak: put package README into the right Python module (#928) (17dd60f)
0.20.0 (2019-10-30)
- java: correctly search for protected override implementations (#905) (e3f0f6c), closes #903
- java,dotnet: emit default implementations for optional properties (#906) (37ddfd5), closes #543
- kernel: correct deserialization of structs in union contexts (#919) (c0f338e), closes #822 aws/aws-cdk#3917 aws/aws-cdk#2013
- pacmak: fix a couple of issues related to java generation (#921) (5ad58c0)
- pacmak/python: improve detection of twine (#845) (2c4ef29)
- update Dockerfile to .NET SDK 3.1, improve NuGet metadata (#880) (5e076cf)
- java: offer Builders for certain Java classes (#895) (f9c1335), closes #488
- kernel: annotate implemented interfaces on "ObjRef"s (#825) (a4e2095)
- pacmak: build all java targets at once (#849) (5d7824d)
- pacmak: put translated README into module docstring (#900) (8bacfb1)
0.19.0 (2019-10-14)
- jsii: Correct the 'types' attribute in package.json (#876) (391a7ec)
- jsii-diff: add 'main' property to package.json (#877) (670d94a)
- sampiler: Add missing .npmignore (#875) (b16fc6b)
0.18.0 (2019-10-01)
- dotnet: use snupkg format for dotnet symbol packages (#830) (0d18b4d), closes NuGet/Home#6082
- python: clear error message when trying to serialize function (#824) (2eb6422), closes aws/aws-cdk#4064
- jsii: enable strictPropertyInitialization checks (#838) (11268c4), closes #4286
- configure
engines
withnode >= 10.3.0
(#795) (6164b6b), closes #794 - configure AWS logo for NuGet packages (#797) (04305ce)
0.17.1 (2019-09-30)
- dotnet: use snupkg format for dotnet symbol packages (#830) (d2724f0), closes NuGet/Home#6082
0.17.0 (2019-09-18)
- dotnet: fix deep type conversion across the process boundary, intelisense docs, set target to netcoreapp2.1 (#772) (ecf8d3b)
- kernel: stack overflow in KernelHost.run() (#780) (41a8c2f), closes #778
- java: Indicate if method param is required (#762) (cb7e11f), closes #365
- java: use immutable java implementations of JSII primitive collection types array and map (#765) (5e713e3)
0.16.0 (2019-08-29)
- dotnet: Fix property set for nested Dictionaries (#736) (04bab47)
- jsii-diff: handle violations in Enums (#730) (934b5c8)
- kernel: correctly serialize enum values (#754) (41ed25d), closes #753
- dotnet: [JsiiOptional] attribute on properties that are optionals + Roslyn Analyzer (#717) (bece042)
- dotnet: drop the useless I prefix for non datatype interfaces (#728) (b9621f1), closes #109
- dotnet: Support for JSII_DEBUG and JSII_RUNTIME (#724) (1816740)
- jsii: improve locality of warnings emitted for reserved words (#739) (e762da6)
- superchain: bundle which in the Docker image (#751) (50c9152)
- superchain: ship with openssl CLI tools (#740) (9fb32ad)
- dotnet: names of .NET behavioral interfaces have changed (the duplicate prefix I was removed).
0.15.2 (2019-08-28)
- jsii: pin TypeScript compiler dependency to minor version (22c61c2)
0.15.1 (2019-08-18)
- dotnet: add missing GetInterfaceType in the .NET runtime (#703) (56617b1)
- superchain: fix python distribution due to old setuptools (#709) (b37790d), closes #708
- java: detect & rename members named after reserved words (#705) (32bc117)
- jsii: emit warnings when using reserved words (#704) (ca44537), closes #701
- python: check distribution artifacts with
twine
(#711) (f3d1da0), closes #710
0.15.0 (2019-08-12)
- dotnet: stop mutating Dictionary when iterating on it (#691) (8aedfc9), closes #690
- java: improve property override detection (#692) (d90b304)
- dotnet: handling optional and variadic parameters (#680) (e8b5a35), closes #153 #210
- java: overhauled structs with native implementation, builders, ... (#694) (b0b3fd2), closes #525
- java: remove dependency on google Guava (#681) (e86bfdc)
- superchain: add
mono
toolchain (#687) (3defca3)
0.14.3 (2019-08-01)
0.14.2 (2019-07-19)
0.14.1 (2019-07-17)
- build: fix python runtime BaseProvider signatures (#601) (6526469)
- kernel: validate presence of required struct properties (#591) (90135f9)
- jsii: configure outDir and rootDir for tsc (#593) (21855e2)
- jsii-diff: also check stability transitions (#592) (15f77b5)
- add support for "external" stability (#596) (dd66afb)
0.14.0 (2019-07-08)
0.13.4 (2019-07-03)
Note: Version bump only for package jsii
0.13.3 (2019-07-01)
- .net: occasional incorrect param type cast (#568) (c89d0fa), closes awslabs/aws-cdk#3093
- jsii: correctly inherit initializer stability (#569) (a4de2d8)
0.13.2 (2019-07-01)
- pacmak: support adding a suffix to Java package version (#552) (dfde37a)
- pacmak: support adding suffix to .NET package versions (#557) (99adf19)
0.12.1 (2019-06-25)
0.12.0 (2019-06-24)
- jsii: Validate overriding does not affect optionality (#549) (8c826c1)
- python: parameter names in docstrings should be snake_case, not camelCase (#539) (a91a315)
- jsii: enforce enum member names to be ALL_CAPS (#541) (c88080d), closes awslabs/aws-cdk#2287
- jsii-diff: extend reporting options (#547) (719be24)
- jsii: Enum members are now expected to be
ALL_CAPS
0.11.3 (2019-06-18)
- jsii: Correctly handle singleton enums (#535) (01aed03), closes #231
- jsii: Correctly ignore private properties from ctor (#531) (e804cab)
0.11.2 (2019-06-07)
- java: Escape
*/
in package-info.java (#526) (4e7ea98) - kernel: Correct null handling in JSON types (#523) (7ffa98d)
0.11.1 (2019-06-07)
- jsii-diff: crash when changing method to a property (#521) (28241cd), closes #520
- jsii-pacmak: retry .NET build a couple of times (#509) (d1ef618)
- python: support variadic arguments (#513) (695ca6b)
- Register module-level stability (#515) (efae447), closes awslabs/cdk-ops#367
- jsii: Propagate stability to members (#522) (20507e6)
- jsii-spec: Add optional metadata field (#512) (10e2bfe)
0.11.0 (2019-05-21)
- assembler: handle unknown types without crashing (#501) (7ba1aab)
- jsii: deduplicate interfaces (#497) (05f5189), closes #496
- jsii-diff: catch exception if type disappeared from other assembly (#504) (8d11900)
- jsii-diff: correctly handle assignability of type unions (#500) (04c061e)
- jsii-diff: don't fail on new packages (#502) (d1d0633)
- jsii: The
equals
andhashCode
method names may no longer be used on JSII classes and interfaces, due to their colliding with "special meaning" methods in other languages (Java, .NET, ...).
0.10.5 (2019-05-06)
0.10.4 (2019-05-05)
0.10.3 (2019-04-24)
- java: fix illegal arguments passed to JavaDoc generator (#475) (4456138)
- jsii-diff: be nicer about validation errors (#481) (fa4d000)
- python: fix indentation for multiline bullets in RST generator (#479) (3a79142), closes #478
- python: maintain inheritance chain for structs (#482) (607f151), closes #473
0.10.2 (2019-04-18)
0.10.1 (2019-04-17)
0.10.0 (2019-04-16)
- exit with non-zero exit code if there are compilation errors (#442) (6265bf6), closes #383 #441
- dotnet: fix doc comment model parsing in .NET generator (#455) (ae85aa5)
- java: Stop using Streams to render params (#459) (a5e8a93)
- jsii: check that static and nonstatic members don't share a name (#430) (a0741cc), closes #427
- jsii: flatten out dependency list (#454) (ebdd10d), closes #453
- jsii-reflect: don't load same assembly multiple times (#461) (3a6b21c)
- jsii-spec: show deep validation errors (#452) (4d84e0b)
- kernel: Set
this
in static contexts (#460) (c81b4c1), closes awslabs/aws-cdk#2304 - pacmak: fix Maven dependency collector. (#449) (675b86a), closes #447
- jsii-spec: JSII assemblies generated by older versions of the tool will fail loading with this new version, and vice-versa. Re-compile your projects in order to fix this.
0.9.0 (2019-04-04)
- jsii: check that referenced @params exist (#431) (265c304), closes #422
- jsii: Enforce use of peerDependencies (#421) (e72fea5), closes #361
- jsii: Erase un-exported base classes instead of prohibiting those (#425) (d006f5c), closes #417
- jsii: Erase un-exported base interfaces instead of prohibiting those (#426) (afbabff), closes #417
- jsii: record source locations in assembly (#429) (e601c0c)
- jsii: Tag the jsii compiler version in the .jsii assemblies (#420) (42dece1), closes #412
- jsii-diff: standardize doc comments, add API compatibility tool (#415) (9cfd867)
- kernel: Normalize empty structs to undefined (#416) (a8ee954), closes #411
- jsii: All direct dependencies must be duplicated in peerDependencies unless they are in bundledDependencies.
0.8.2 (2019-03-28)
- kernel: Transitively consider properties when deserializing structs (#409) (66789e8)
- python: Lift the entire data class hierarchy (#408) (f813620)
0.8.1 (2019-03-28)
- kernel: make type serialization explicit and recursive (#401) (0a83d52), closes awslabs/aws-cdk#1981
- runtime: Passing 'this' to a callback from constructor (#395) (850f42b)
0.8.0 (2019-03-20)
- jsii: prohibit exported const enums (#372) (5a94825), closes awslabs/aws-cdk#1969
- jsii: show jsii diagnostics in watch mode and support $tsc problem matcher (#383) (0275944), closes #382
- copy non-hidden bases when erasing hidden interfaces (#392) (5af84b6), closes #390
- Fix Async function support in Python (b5d49de)
- Fix permissions error in pipeline when generating Python runtime (af1346f)
- Proxy interface literals in the generated Python code (10242eb)
- Python's abstract class proxies now inherit from parent's proxy (6f1c9c0)
- Add Python Support (cc3ec87)
- internal accessibility (#390) (e232cb5), closes #287 #388
- pass data types (structs) by-value instead of by-ref (#376) (db3ccdf), closes awslabs/aws-cdk#965 #375
- all properties in interfaces which represent data types must be marked as
readonly
. Otherwise, jsii compilation will fail. - member names that begin with underscore now must be marked as "@internal" in their jsdocs, which will cause them to disappear from type declaration files and jsii APIs.
0.7.15 (2019-02-27)
- jsii-pacmack: default to target directory mode (#363) (967d917)
- java-runtime: Bump version of Jackson because of CVEs (#362) (140aa4d)
- jsii: detect double interface member declarations (#360) (b2b2c89), closes #340
0.7.14 (2019-02-04)
- remove use of private API (#351) (874cbac), closes #350
- jsii-dotnet-runtime: Fix EPIPE on Windows. (1d7cc8b), closes #341
- jsii-dotnet-runtime: Redirect to STDERR. (e20f401)
- kernel: Improve tagged type of wire values (#346) (8ea39ac), closes #345
- jsii: support multiple class declaration sites (#348) (4ecf28c)
- Generate NuGet symbol and source packages (#243) (aafd405)
0.7.13 (2019-01-03)
0.7.12 (2018-12-11)
- JSII_AGENT (#325) (cf1d0c3), closes #324
- jsii-reflect: library for exploring jsii type systems (#328) (69cdb32)
0.7.11 (2018-11-18)
- jsii-dotnet-runtime: Build projects, not solutions. (dc3be5e)
- jsii-dotnet-runtime: Proxy parameters should not throw exception. (#317) (acc8f22), closes #316
- jsii-dotnet-runtime-test: Floating calculator package version (40881f0)
0.7.10 (2018-11-12)
0.7.9 (2018-11-12)
- docs: improve docs rendering (#303) (094a215), closes #301 #298 #302 #300 #299
- dotnet/runtime: Incorrect callback response format (#286) (1b851e1), closes #285
- jsii: do not mark "any" or "unknown" as optional (unless "?") (#295) (cdf5a53), closes #284
- jsii-runtime: treat "null" as "undefined" (#297) (43fb16a), closes awslabs/aws-cdk#157 #282
- runtime/dotnet: Correct a number of type mappings (#291) (0d59dab), closes #290 awslabs/aws-cdk#1027
- accept variadic arguments after optional arguments (#307) (c1af1d6)
- remove overly strict checks on peer versions (#306) (7b89d01)
- jsii: enforce peer dependencies (#294) (1753910), closes awslabs/aws-cdk#979
0.7.8 (2018-10-23)
- jsii: use base interfaces for 'datatype' property (#265) (1c56902), closes #264
- jsii: use default jsx compiler options (#261) (bf1f586), closes awslabs/aws-cdk#830
- match behavioral interface to 'I'-prefix (#271) (03103f3)
- require distinct argument and property names (#272) (4d2f268), closes #268
0.7.7 (2018-10-10)
- dotnet: abstract classes should have proxy implementations (#241) (828a26f), closes #223
- jsii: better usage reporting of private types (#247) (96ac5d6)
- jsii: support public autoproperties in private constructor (#256) (181012e)
- jsii: use default jsx compiler options (#260) (660ae79), closes awslabs/aws-cdk#830
- jsii-dotnet-generator: Use FQ type returns in conflict. (#258) (a78784a), closes #252
- jsii-runtime: Use buffer factory methods instead of constructor. (#246) (6ad6b9d)
- kernel: Return object literals as references (#249) (61cb3a4), closes #248 awslabs/aws-cdk#774
0.7.6 (2018-09-20)
- Sphinx generated incorrect type references for display (#232) (b664805)
- jsii: Defaulted parameters were not rendered as optional (#234) (578bf9c), closes #233
- jsii: Don't skip emit on TS errors when in "watch" mode (#236) (30d1491), closes #235
- jsii: Optional
any
represented as required (#237) (91074f3), closes #230
- sphinx: allow readme file to define sphinx header and reorganize topic (#229) (405da9c), closes #228 #185
- Document overriden/inherited members (#238) (7a6278a), closes #196
0.7.5 (2018-09-13)
- dotnet: unable to instantiate objects when return type is abstract (#223)
- java: support abstract return types (#224) (3257223), closes #220 #223 awslabs/aws-cdk#680
0.7.4 (2018-09-10)
- jsii: Force generated assemblies to reference jsii-only dependencies (cf62773)
0.7.3 (2018-09-06)
- jsii: add readme and restore missing files in jsii tarball (09f9fc9)
0.7.2 (2018-09-06)
0.7.1 (2018-08-28)
- jsii-pacmak: Output .NET build artifacts to
dist/dotnet/
instead of justdist/
(#192) (f25c8c4) - jsii-kernel: Fix module loading on systems that use '' instead of '/' as the path separator (#193) (9e42991)
0.7.0 (2018-08-21)
0.6.4 (2018-08-08)
- jsii-pacmak refers to private dependencies (e61efc0)
0.6.3 (2018-08-08)
- Denote the optional aspect of types when describing them (#159)
0.6.2 (2018-08-07)
0.6.0 (2018-08-06)
- First public release
- Support variadics in methods.
- Support for static methods, properties and constants
- Emit strongly-typed
setXxx
/withXxx
overloads for union properties - Embed
jsii-runtime.js
as a webpack'd resource into the the java runtime client