jnigen 0.7.0 jnigen: ^0.7.0 copied to clipboard
A Dart bindings generator for Java and Kotlin that uses JNI under the hood to interop with Java virtual machine.
0.7.0 #
- Breaking Change (#387):
Added
JBuffer
andJByteBuffer
classes as default classes forjava.nio.Buffer
andjava.nio.ByteBuffer
respectively. - Breaking Change: Made the type classes
final
. - Added
ignore_for_file: lines_longer_than_80_chars
to the generated file preamble. - Added an explicit cast in generated
<Interface>.implement
code to allowdart analyze
to pass whenstrict-casts
is set.
0.6.0 #
- Breaking Change (#131):
Renamed
delete*
torelease*
. - Breaking Change (#354):
Renamed constructors from
ctor1
,ctor2
, ... tonew1
,new2
, ... - Breaking Change: Specifying a class always pulls in nested classes by default. If a nested class is specified in config, it will be an error.
- Breaking Change: Removed
suspend_fun_to_async
flag from the config. It's now happening by default since we read the Kotlin's metadata and reliably identify thesuspend fun
s. - Fixed a bug where the nested classes would be generated incorrectly depending on the backend used for generation.
- Fixed a bug where ASM backend would produce the incorrect parent for multi-level nested classes.
- Fixed a bug where the backends would produce different descriptors for the same method.
- Added
enable_experiment
option to config. - Created an experiment called
interface_implementation
which creates a.implement
method for interfaces, so you can implement them using Dart. - Save all
jnigen
logs to a file in.dart_tool/jnigen/logs/
. This is useful for debugging.
0.5.0 #
- Breaking Change (#72):
Removed support for
importMap
in favor of the newly added interop mechanism with importing yaml files. - Breaking Change (#72):
java.util.Set
,java.util.Map
,java.util.List
,java.util.Iterator
and the boxed types likejava.lang.Integer
,java.lang.Double
, ... will be generated as their corresponding classes inpackage:jni
. - Strings now use UTF16.
0.4.0 #
- Breaking Change (#145): Type arguments are now named instead of positional.
- Type parameters can now be inferred when possible.
- Fixed a bug where passing a
long
argument truncated it toint
in pure dart bindings. - Removed array extensions from the generated code.
- Added the ability to use source dependencies from Gradle.
- Fixed an issue with the field setter.
- Fixed an issue where exceptions were not properly thrown in pure Dart bindings.
0.3.0 #
- Added the option to convert Kotlin
suspend fun
to Dart async methods. Addsuspend_fun_to_async: true
tojnigen.yaml
.
0.2.0 #
- Support generating bindings for generics.
0.1.1 #
- Windows support for running tests and examples on development machines.
0.1.0 #
- Initial version: Basic bindings generation, maven and android utilities