All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.
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