Skip to content

Commit d65fe88

Browse files
committed
Release version 14.1.0
All changes are related to Kotlin generator. (1) Use `@JvmSynthetic` annotation for Kotlin internal elements whenever possible to hide them from Java code. (2) Allow the usage of 'RequiresOptIn' and 'OptIn' annotations for internal API via CLI parameters. This way error is generated when the code, which is not intended to access the internal API uses it. Three new CLI parameters are available: (a) 'androidrequiresoptinannotation' (b) 'androidoptinannotation' (c) 'androidinternalapiannotationname' (3) For external types usage in Kotlin, use 'internal' keyword for the types, which are generated by Gluecodium as their 'internal' representation. (4) Minimize the usage of 'JvmSuppressWildcards' annotation for collection parameters. This annotation was used for all generated collection types. It needs to be used only when collection type holds enumeration or open type e.g.: 'open class', 'interface' or 'fun interface'. (5) Raise error when '@internal' elements are defined in interfaces. Kotlin language does not allow usage of 'internal' keyword in interfaces. We need to raise an error, because there is no valid way of generating such code. (6) Make the 'Impl' classes private. Such classes are used to represent C++ implementation of interface/lambda in Kotlin and they should not be accessed by the users. Only JNI layer should access such types. (7) Always handle static properties as get/set pair. Moreover, disallow internal static properties/functions in LimeInterface elements. Signed-off-by: Patryk Wrobel <183546751+pwrobeldev@users.noreply.github.com>
1 parent e1a418b commit d65fe88

2 files changed

Lines changed: 3 additions & 2 deletions

File tree

CHANGELOG.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# Gluecodium project Release Notes
22

3-
## Unreleased
3+
## 14.1.0
4+
Release date 2026-02-21
45
* Kotlin: use `@JvmSynthetic` annotation for Kotlin internal elements whenever possible to hide them from Java code.
56
* Kotlin: allow the usage of 'RequiresOptIn' and 'OptIn' annotations for internal API via CLI parameters. This way error is generated when the code, which is not intended to access the internal API uses it. Three new CLI parameters are available: 'androidrequiresoptinannotation', 'androidoptinannotation' and 'androidinternalapiannotationname'.
67
* Kotlin: for external types usage in Kotlin, use 'internal' keyword for the types, which are generated by Gluecodium as their 'internal' representation.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
version = 14.0.0
1+
version = 14.1.0

0 commit comments

Comments
 (0)