Changelog History
Page 2
-
v0.12.2 Changes
May 02, 2019 -
v0.12.1 Changes
April 27, 2019๐ This release does not bring code changes.
๐ Changed
- ๐ Updated project documentation.
-
v0.12.0 Changes
April 01, 2019๐ Changed
JString
,JMap
andJavaStr
and their respective iterators now require an extra lifetime so that they can now work with&'b JNIEnv<'a>
, where'a: 'b
.
-
v0.11.0 Changes
February 21, 2019Highlights
๐ This release brings various improvements and fixes, outlined below. The most notable changes are:
- ๐ฑ โ ๏ธ
null
is no longer represented as anErr
with error kindNullPtr
if it is a value of some
nullable Java reference (not an indication of an error). Related issues: #136, #148, #163. unsafe
methods, providing a low-level API similar to JNI, has been marked safe and renamed
to have_unchecked
suffix. Such methods can be used to implement caching of class references
๐ and method IDs to improve performance in loops and frequently called Java callbacks.
๐ If you have such, check out the docs and one of early usages
of this feature.
โ Added
- ๐ Invocation API support on Windows and AppVeyor CI (#149)
๐ Changed
push_local_frame
,delete_global_ref
andrelease_string_utf_chars
๐ป no longer check for exceptions as they are safe
๐ป to call if there is a pending exception (#124):push_local_frame
will now work in case of pending exceptions โ as
the spec requires; and fail in case of allocation errorsdelete_global_ref
andrelease_string_utf_chars
won't print incorrect
๐ฒ log messages
๐ Rename some macros to better express their intent (see #123):
- Rename
jni_call
tojni_non_null_call
as it checks the return value
to be non-null.
- Rename
jni_non_null_call
(which may return nulls) tojni_non_void_call
.A lot of public methods of
JNIEnv
have been marked as safe, all unsafe code
๐ has been isolated inside internal macros. Methods with_unsafe
suffixes have
๐ been renamed and now have_unchecked
suffixes (#140)from_str
method of theJavaType
has been replaced by theFromStr
implementation๐ Implemented Sync for GlobalRef (#102).
๐ Improvements in macro usage for JNI methods calls (#136):
call_static_method_unchecked
andget_static_field_unchecked
methods are
๐ allowed to return NULL object- Added checking for pending exception to the
call_static_method_unchecked
โ method (eliminated WARNING messages in log)
Further improvements in macro usage for JNI method calls (#150):
- The new_global_ref() and new_local_ref() functions are allowed to work with NULL objects according to specification.
- Fixed the family of functions new_direct_byte_buffer(), get_direct_buffer_address() and get_direct_buffer_capacity()
by adding checking for null and error codes.
- Increased tests coverage for JNIEnv functions.
๐ฏ Implemented Clone for JNIEnv (#147).
The get_superclass(), get_field_unchecked() and get_object_array_element() are allowed to return NULL object according
to the specification (#163).๐ Fixed
- The issue with early detaching of a thread by nested AttachGuard. (#139)
- ๐ฑ โ ๏ธ
-
v0.10.2 Changes
September 11, 2018๐ Changelog
โ Added
JavaVM#get_java_vm_pointer
to retrieve a JavaVM pointer (#98)- This changelog and other project documents (#106)
๐ Changed
- ๐ The project is moved to an organization (#104)
- โก๏ธ Updated versions of dependencies (#105)
- ๐ Improved project documents (#107)
๐ Fixed
- Crate type of a shared library with native methods
must becdylib
(#100)
-
v0.10.1 Changes
April 23, 2018- ๐ No changes has been made to the Changelog until this release.
๐ [Unreleased]: https://github.com/jni-rs/jni-rs/compare/v0.20.0...HEAD
-
v0.10.0
April 06, 2018 -
v0.9.3
January 12, 2018