Skip to content

Latest commit

 

History

History
2053 lines (1030 loc) · 147 KB

CHANGELOG.md

File metadata and controls

2053 lines (1030 loc) · 147 KB

Changelog

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

1.59.0 (2022-05-16)

Features

  • jsii: enable source maps for declaration files (#3521) (2751ca8)

Bug Fixes

  • 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)

⚠ BREAKING CHANGES

  • 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).

Features

Bug Fixes

1.57.0 (2022-04-19)

Bug Fixes

1.56.0 (2022-04-08)

Features

  • 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)

Bug Fixes

1.55.1 (2022-03-16)

1.55.0 (2022-03-10)

Features

Bug Fixes

  • go: lots of documentation is missing from generated code (#3409) (69d28bb)

1.54.0 (2022-02-15)

Bug Fixes

  • jsii: dependencies' README files are unnecessarily re-rendered (#3380) (ec4edc5)

1.53.0 (2022-02-09)

Features

Bug Fixes

  • 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)

Bug Fixes

  • jsii: breaks due to faulty version of colors (#3328) (5bd5e04)

1.52.0 (2022-01-07)

Bug Fixes

  • rosetta: transliterate tries to recompile samples from tablets (#3324) (7aa69a7), closes #3262

1.51.0 (2022-01-06)

Features

Bug Fixes

1.50.0 (2021-12-24)

Bug Fixes

  • 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)

Bug Fixes

  • 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 after rosetta 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)

Features

  • 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 for extract (#3210) (ccb3c57)

Bug Fixes

  • 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)

Features

  • 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 for extract (#3210) (ccb3c57)

Bug Fixes

  • 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)

Bug Fixes

  • rosetta: extract ignores --compile option (#3193) (639c510)
  • rosetta: enum resolution breaks for properties (#3190) (3b49066)

1.45.0 (2021-11-18)

Bug Fixes

  • 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)

Bug Fixes

  • jsii: require statement for the warning file is generated when it's not used (#3184) (8f53f89)

1.44.1 (2021-11-16)

  • revert "fix: dependency submodules may not be discovered" (#3170) (0449dd9)

1.44.0 (2021-11-15)

Features

Bug Fixes

  • 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)

Features

Bug Fixes

1.42.0 (2021-11-02)

Features

  • rosetta: reuse translation results from a cache (#3101) (b08a50e)

Bug Fixes

  • 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)

Features

Bug Fixes

  • deprecation-warnings includes TS-only import (#3094) (edfdc48)

1.40.0 (2021-10-19)

Features

  • jsii: added warnings for usage of deprecated elements (#3051) (8c0dd3b)
  • jsii: allow customizing tsconfig.json file name (#3076) (c611f26)

Bug Fixes

  • 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)

Features

Bug Fixes

1.38.0 (2021-10-07)

Bug Fixes

  • jsii-pacmak: modules not packed in topological order (3f6db2c)

1.37.0 (2021-10-06)

Features

1.36.0 (2021-10-04)

1.35.0 (2021-09-28)

⚠ BREAKING CHANGES

  • the minimum supported version of node changed from 10.3.0 to 12.7.0. We recommend using 16.x if possible.

Features

  • rosetta: propagate max heap size to worker threads (#3002) (9c7f63e)

Bug Fixes

1.34.0 (2021-08-25)

⚠ BREAKING CHANGES

  • 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.

Features

Bug Fixes

1.33.0 (2021-08-16)

Features

Bug Fixes

1.32.0 (2021-07-22)

Features

  • 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)

Bug Fixes

1.31.0 (2021-07-09)

Features

  • jsii-rosetta transliterate: transliterate a jsii assembly (#2869) (d9028c8)
  • rosetta: transliterate loose mode (#2892) (43e6dfd)

Bug Fixes

  • 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)

Features

  • rosetta: JSII_ROSETTA_MAX_WORKER_COUNT limits max workers (#2816) (c478da4)

Bug Fixes

1.29.0 (2021-04-21)

Features

Bug Fixes

1.28.0 (2021-04-13)

Features

Bug Fixes

1.27.1 (2021-04-12)

Bug Fixes

1.27.0 (2021-04-02)

Features

  • go: variadic type helpers to build slices (#2755) (16b6546)
  • superchain: also build a superchain image with Node 14 (#2741) (6364d51)

Bug Fixes

1.26.0 (2021-03-22)

⚠ BREAKING CHANGES

  • 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.

Features

Bug Fixes

  • 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)

Features

Bug Fixes

1.24.0 (2021-03-03)

Features

  • go: support direct implementation of jsii interfaces (#2614) (9da3282), closes #2048

Bug Fixes

  • 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)

Features

Bug Fixes

  • 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)

Bug Fixes

  • 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)

Bug Fixes

1.20.1 (2021-02-05)

Bug Fixes

  • python: ValueError: write to closed file (#2541) (64c6853)

1.20.0 (2021-02-03)

Features

  • runtime: use a dedicated file descriptor for sync IPC (#2411) (0413081)

Bug Fixes

1.19.0 (2021-02-02)

Features

Bug Fixes

  • go: major version suffix is missing in module names for >=v2 (#2507) (32c0add), closes #2509

1.18.0 (2021-01-28)

Features

Bug Fixes

1.17.1 (2021-01-13)

Bug Fixes

  • python: process.terminate() got an unexpected keyword argument 'timeout' (#2421), closes #2398

1.17.0 (2021-01-13)

Features

  • add support for bin-scripts (python only) (#1941) (61ef5ed)
  • dotnet,java: kernel process inherits host's STDERR (#2248) (70ce153)

Bug Fixes

  • 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)

Bug Fixes

1.15.0 (2020-11-25)

Features

Bug Fixes

1.14.1 (2020-11-04)

Bug Fixes

1.14.0 (2020-10-29)

⚠ BREAKING CHANGES

  • The jsii/superchain Docker image no longer includes ruby and gcc. Users who need those should install them as part of their initialization script.

Features

Bug Fixes

  • dotnet: abundant nullability warnings in generated code (#2061) (01a2951)

  • go: fix generation of readonly and static properties (#2133) (57b7d56), closes #2093

  • go: runtime api json invalid tags (#2115) (a9d96db)

  • go: Submodule File Paths (#2147) (8863493)

  • 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)

  • rosetta: duplicated problem markers (#2130) (21c6fb5)

  • removes unused software from superchain to reduce image size (#2092) (fe2c597)

1.13.0 (2020-09-29)

Features

Bug Fixes

1.12.0 (2020-08-27)

Features

Bug Fixes

1.11.0 (2020-08-18)

Features

Bug Fixes

1.10.0 (2020-08-05)

Bug Fixes

  • 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)

Bug Fixes

  • 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)

Bug Fixes

1.7.0 (2020-06-18)

Features

Bug Fixes

1.6.0 (2020-06-02)

Features

Bug Fixes

  • 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)

Bug Fixes

  • jsii: unable to use type from dependencies' submodules (#1557) (ba7fac2)

1.4.1 (2020-04-22)

Bug Fixes

  • java: compilation fails with "code too large" (#1605) (b9ec853)

1.4.0 (2020-04-22)

Features

1.3.2 (2020-04-20)

Bug Fixes

1.3.1 (2020-04-18)

Bug Fixes

  • jsii-pacmak: invalid dotnet version suffixes (#1568) (9ef8f17)

1.3.0 (2020-04-16)

Features

  • compliance: produce compliance test reports (#1368) (11ef55d)

Bug Fixes

  • 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)

Features

Bug Fixes

1.1.0 (2020-03-10)

Bug Fixes

  • dotnet: missing ? on nullable interface members (#1287) (9299db2), closes #1285
  • jsii: missing context on "Message" diagnostics (#1298) (c44f5f3)

1.0.0 (2020-02-17)

Features

0.22.0 (2020-02-06)

Bug Fixes

  • java: invalid collections returned with non-class elements (#1197) (bbc2302), closes #1196

Features

0.21.2 (2020-01-22)

Bug Fixes

  • 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)

Features

0.21.1 (2020-01-03)

Bug Fixes

  • rosetta: crashes on behavioral interfaces (#1169) (5f3e9e0)

0.21.0 (2020-01-02)

Bug Fixes

Features

  • 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)

Bug Fixes

  • rosetta: "Rosetta configured for live conversion to undefined" (#1120) (10e9d38)

0.20.10 (2019-12-13)

Bug Fixes

  • reflect: failure to load assembly from "npm pack" (#1117) (a2b11f1)

0.20.9 (2019-12-11)

Bug Fixes

Features

0.20.8 (2019-11-24)

Bug Fixes

0.20.7 (2019-11-18)

Bug Fixes

Features

  • jsii-config: introducing jsii-config (#981) (2bbf576), closes #904
  • rosetta: extract and compile samples into "tablets" (#925) (eec44e1)

0.20.6 (2019-11-14)

Bug Fixes

0.20.5 (2019-11-13)

Bug Fixes

  • dotnet: allow down-casting to parent interface type (#983) (8a390e5), closes #982
  • python: correctly handle interface declarations on returned objects (#980) (c2de100)

Features

  • python: add license & classifiers to generated packages (#712) (84fd8bb), closes #707

0.20.4 (2019-11-12)

Bug Fixes

  • python: correctly handle nested structs-as-dict (#973) (9fd2499)

0.20.3 (2019-11-11)

Bug Fixes

  • kernel: correctly de-serialize mappings as JSON (#968) (5d056f4)

0.20.2 (2019-11-08)

Bug Fixes

  • 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)

Bug Fixes

  • 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)

Features

  • jsii-diff: make assembly validation optional (#926) (e2c80f0)

0.20.0 (2019-10-30)

Bug Fixes

Features

  • 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)

Bug Fixes

  • 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)

Features

  • sampiler: translate code samples to Python (#827) (c9a7002)

0.18.0 (2019-10-01)

Bug Fixes

Features

0.17.1 (2019-09-30)

Bug Fixes

0.17.0 (2019-09-18)

Bug Fixes

  • 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

Features

  • 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)

Bug Fixes

  • 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

Features

  • 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)

BREAKING CHANGES

  • dotnet: names of .NET behavioral interfaces have changed (the duplicate prefix I was removed).

0.15.2 (2019-08-28)

Bug Fixes

  • jsii: pin TypeScript compiler dependency to minor version (22c61c2)

0.15.1 (2019-08-18)

Bug Fixes

  • dotnet: add missing GetInterfaceType in the .NET runtime (#703) (56617b1)
  • superchain: fix python distribution due to old setuptools (#709) (b37790d), closes #708

Features

  • 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)

Bug Fixes

  • dotnet: stop mutating Dictionary when iterating on it (#691) (8aedfc9), closes #690
  • java: improve property override detection (#692) (d90b304)

Features

  • 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)

Bug Fixes

Features

0.14.2 (2019-07-19)

Bug Fixes

0.14.1 (2019-07-17)

Bug Fixes

  • build: fix python runtime BaseProvider signatures (#601) (6526469)
  • kernel: validate presence of required struct properties (#591) (90135f9)

Features

  • 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)

Features

0.13.4 (2019-07-03)

Note: Version bump only for package jsii

0.13.3 (2019-07-01)

Bug Fixes

0.13.2 (2019-07-01)

Bug Fixes

Features

  • 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)

Bug Fixes

  • kernel: properly deserialize structs passed in byref (#554) (1e89aab), closes #553

0.12.0 (2019-06-24)

Bug Fixes

  • jsii: Validate overriding does not affect optionality (#549) (8c826c1)
  • python: parameter names in docstrings should be snake_case, not camelCase (#539) (a91a315)

Features

BREAKING CHANGES

  • jsii: Enum members are now expected to be ALL_CAPS

0.11.3 (2019-06-18)

Features

  • jsii-reflect: Expose Assembly metadata field (#542) (9b35e98)

Bug Fixes

  • jsii: Correctly handle singleton enums (#535) (01aed03), closes #231
  • jsii: Correctly ignore private properties from ctor (#531) (e804cab)

0.11.2 (2019-06-07)

Bug Fixes

  • java: Escape */ in package-info.java (#526) (4e7ea98)
  • kernel: Correct null handling in JSON types (#523) (7ffa98d)

0.11.1 (2019-06-07)

Bug Fixes

  • 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)

Features

0.11.0 (2019-05-21)

Bug Fixes

  • 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)

Features

  • jsii: protect against prohibited member names (#506) (2848f76)

BREAKING CHANGES

  • jsii: The equals and hashCode 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)

Bug Fixes

0.10.4 (2019-05-05)

Bug Fixes

  • jsii: consider interfaces from erased base classes (#491) (b03511b), closes #487

0.10.3 (2019-04-24)

Bug Fixes

  • 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

Features

0.10.2 (2019-04-18)

Bug Fixes

  • dotnet: Correctly handle 'void' callback results (#471) (81e41bd)

0.10.1 (2019-04-17)

Bug Fixes

  • dotnet: Correctly generate "optional" markers (#466) (17403dc)

0.10.0 (2019-04-16)

Bug Fixes

Features

BREAKING CHANGES

  • 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)

Bug Fixes

  • jsii: Prohibit illegal uses of structs (aka data types) (#418) (8ff9137), closes #287

Features

  • 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

BREAKING CHANGES

  • jsii: All direct dependencies must be duplicated in peerDependencies unless they are in bundledDependencies.

0.8.2 (2019-03-28)

Bug Fixes

  • kernel: Transitively consider properties when deserializing structs (#409) (66789e8)
  • python: Lift the entire data class hierarchy (#408) (f813620)

Features

  • python: Add support for synchronous callbacks (#407) (4cb91b3)

0.8.1 (2019-03-28)

Bug Fixes

0.8.0 (2019-03-20)

Bug Fixes

  • 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)

Features

BREAKING CHANGES

  • 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)

Bug Fixes

  • 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)

Bug Fixes

  • 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

Features

  • jsii: support multiple class declaration sites (#348) (4ecf28c)
  • Generate NuGet symbol and source packages (#243) (aafd405)

0.7.13 (2019-01-03)

Features

  • add option to generate TypeScript project references (#343) (5eec5dc)

0.7.12 (2018-12-11)

Bug Fixes

  • kernel: Correctly return instances of un-exported types (#321) (9c59acc)

Features

0.7.11 (2018-11-18)

Bug Fixes

  • 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)

Features

  • jsii-dotnet-runtime: Improve .NET Performance (20321af), closes #304

0.7.10 (2018-11-12)

Bug Fixes

  • jsii: jsii-fix-peers missing in npm tarball (#313) (6915455)

0.7.9 (2018-11-12)

Bug Fixes

Features

0.7.8 (2018-10-23)

Bug Fixes

0.7.7 (2018-10-10)

Bug Fixes

0.7.6 (2018-09-20)

Bug Fixes

  • 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

Features

  • 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)

Known Issues

  • dotnet: unable to instantiate objects when return type is abstract (#223)

Bug Fixes

0.7.4 (2018-09-10)

Bug Fixes

  • jsii: Force generated assemblies to reference jsii-only dependencies (cf62773)

0.7.3 (2018-09-06)

Bug Fixes

  • jsii: add readme and restore missing files in jsii tarball (09f9fc9)

0.7.2 (2018-09-06)

Bug Fixes

  • Missing types in JSII assembly, invalid Java code, confusing docs (#208) (b37101f), closes #175

Features

  • jsii: Re-implemented jsii to support --watch and produce better error reporting (#188) (76472be)

0.7.1 (2018-08-28)

Bug Fixes

  • jsii-pacmak: Output .NET build artifacts to dist/dotnet/ instead of just dist/ (#192) (f25c8c4)
  • jsii-kernel: Fix module loading on systems that use '' instead of '/' as the path separator (#193) (9e42991)

Features

  • jsii: Add check against downgrading properties to readonly (#201) (f60b0ac)

0.7.0 (2018-08-21)

Bug Fixes

  • kernel: can't find temp directory on Windows (#184) (1aec545), closes #183

Features

  • jsii: Further normalize assembly outputs (#177) (de3f062), closes #60

0.6.4 (2018-08-08)

Bug Fixes

  • jsii-pacmak refers to private dependencies (e61efc0)

0.6.3 (2018-08-08)

New features

  • Produce .nupkg for .NET targets (#160)
  • Upgrade TypeScript to 3.0.1 (#161)

Bug Fixes

  • Denote the optional aspect of types when describing them (#159)

0.6.2 (2018-08-07)

Bug Fixes

  • "Malformed enum value" when using @scoped packages (#139) (4e70209), closes #138

0.6.0 (2018-08-06)

  • First public release

0.5.0 (2018-06-20)

  • 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