Releases: heremaps/gluecodium
Releases · heremaps/gluecodium
Release version 13.10.1 (#1635)
Bug fixes:
- Dart: fixed race condition between garbage collector (which could trigger finalizer) and native method calls in finalizable classes.
Release version 13.10.0 (#1631)
Features:
- Implemented the new way of documenting properties via
@value
and@description
annotations in structured comments. - Implemented validation, which requires the users to use at least
@value
annotation when documenting a property. - Implemented validation of comments used for accessors of properties: parameter of setter and return value of getter. When the required description is missing, then warning is generated. The user may also treat the warning as error via 'werror' flag.
- Implemented validation of comments used for lambdas. When the description of parameters or return value is missing, then warning is generated. The user may also treat the warning as error via 'werror' flag.
- Implemented validation of comments used for functions. When the description of parameters or return value is missing, then warning is generated. The user may also treat the warning as error via 'werror' flag.
Bug fixes:
- C++: fixed a bug related to invalid default value of nullable field, which uses struct type. When field was nullable and its default value was set to default-constructed structure, then the generated code was invalid, because the field was initialized to std::nullopt instead to default-constructed struct.
- Gluecodium.kt: fixed a bug related to running 'LimeFunctionsValidator' twice. It was not needed - running the validator once is sufficient.
- Dart: fixed a bug related to missing 'const' keyword usage in definition of default values in constructors that used immutable structure types when
@Immutable
or@PositionalDefaults
were specified. - Dart: fixed a bug related to missing/superflous 'const' keyword usage in definition of default values in constructors that used collections when
@Immutable
or@PositionalDefaults
were specified.
Release version 13.9.7 (#1616)
Bug fixes:
- Fixed visibilty of symbols from common code (JNI, Dart FFI) in order to resolve problems with build that uses hidden visibility preset.
- Fixed conversion of platforms for 'Internal' annotation to work correctly also when arguments are not in quotation marks.
- Dart: generate omitted documentation of properties.
Release version 13.9.6 (#1609)
Bug fixes:
- C++: Fixed generation of getters and setters for accessors attribute -- non-trivial types use references now.
- Swift: Added missing generation of conversion functions for lambdas defined in structs.
- Dart: Fixed a bug related to exporting nested types defined in a type annotated as internal.
Release version 13.9.5 (#1604)
Features:
- Stop callback queue on main isolate exit
Release version 13.9.4 (#1600)
Features:
- Adds missing includes for Android
Release version 13.9.3 (#1598)
Features:
- Preserves assigned thread name when attaching it to the JVM.
Release 13.9.2 (#1596)
Features:
- Adds possibility to synchronise access to class cache in code for JNI. It's necessary to support case when several shared
libraries contain generated code so class cache can be concurrently modified.
Release version 13.9.1 (#1592)
Features:
- Refactors generated code as described below to make compiled code smaller.
- Moves implementations of JniExceptionThrower, JniReference, CppProxyBase from headers to cpp files.
- Moves repeated functionality like throwing exception and retrieving native handle to functions.
- Moves caching mechanism in JNI and Dart ffi related generated code to cpp.
- Makes several classes
final
. - Makes many generated JNI related functions
noexcept
. - Avoids passing of useless parameter like
(SomeType*)nullptr
to converters. Now emptyTypeId
template is passing. - Removes unused headers.
13.9.0: Move implementation of CppProxyBase to cpp (#1579)
- Bridging headers from linked frameworks are used. It solves problem with some cases, for example when interface inherts (extends) another one in lime.
- Fixes forward declaration in C++ for types when contain nested types and both type and nested type are referred.