All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.
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
anyserialization (#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
engineswithnode >= 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
monotoolchain (#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
equalsandhashCodemethod 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
thisin 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
anyrepresented 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/withXxxoverloads for union properties - Embed
jsii-runtime.jsas a webpack'd resource into the the java runtime client