Skip to content

Releases: heremaps/gluecodium

Release version 13.10.1 (#1635)

12 Dec 20:10
3213331
Compare
Choose a tag to compare

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)

29 Nov 06:19
97cd521
Compare
Choose a tag to compare

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)

13 Nov 10:27
e8a6a4f
Compare
Choose a tag to compare

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)

31 Oct 08:40
8a53210
Compare
Choose a tag to compare

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)

22 Oct 12:08
57ec8d8
Compare
Choose a tag to compare

Features:

  • Stop callback queue on main isolate exit

Release version 13.9.4 (#1600)

01 Aug 09:59
acf6b82
Compare
Choose a tag to compare

Features:

  • Adds missing includes for Android

Release version 13.9.3 (#1598)

31 Jul 16:05
bc9a2b0
Compare
Choose a tag to compare

Features:

  • Preserves assigned thread name when attaching it to the JVM.

Release 13.9.2 (#1596)

25 Jul 10:30
0f996dd
Compare
Choose a tag to compare

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)

04 Jun 09:58
cddc88a
Compare
Choose a tag to compare

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 empty TypeId template is passing.
  • Removes unused headers.

13.9.0: Move implementation of CppProxyBase to cpp (#1579)

22 Apr 13:47
45b2bb6
Compare
Choose a tag to compare
  • 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.