JavaCpp v1.5.6 Release Notes
Release Date: 2021-08-02 // over 2 years ago-
- Add missing export to
module-info.java
file for presets package (pull #508) - Add
@NoException(true)
value to support overridingvirtual noexcept
functions - Bundle more DLLs from UCRT to fix the systems presets on Windows
- Fix
Pointer.sizeof()
method for subclasses of subclasses for primitive types (issue bytedeco/javacpp-presets#1064) - Throw more accurate
UnsatisfiedLinkError
whenLoader.load()
fails to find JNI libraries - Let
Parser
checkInfo.skipDefaults
also for types to ignore default constructors (issue #493) - Fix
Parser
failure onenum
declarations without enumerators - Let
Generator
use the third element of@Cast(value)
on return values passed to adapters (issue tensorflow/java#345) - Prevent
Generator
from swallowing exceptions caught onBuffer.array()
(pull #504) - Add
enum
classes as well as resources missing from config files required by GraalVM Native Image - Let
Parser
annotate&&
parameters with new@ByRef(true)
value used byGenerator
to callstd::move()
- Fix
Parser
overlooking anonymousclass
,struct
orunion
with comments after}
(issue #501) - Add
Info.beanify
to haveParser
generate JavaBeans-style getters and setters (pull #495) - Allow
Parser
to useInfo.javaNames
for function names containing parameters as well (issue #492) - Fix
Parser
producing incorrect calls to function templates with non-type parameters (issue #491) - Add missing
presets/package-info.java
required for OSGi and add profile for M2Eclipse (pull #490) - Remove unnecessary mutex lock for pthreads on callbacks in
Generator
(pull #489) - Fix
@AsUtf16
handling for setter methods paired with getters inGenerator
(pull #488) - Allow defining
NO_JNI_DETACH_THREAD
to avoid overhead from pthreads on callbacks (issue #486) - Pick up
@Allocator
,@CriticalRegion
,@NoException
inGenerator
from@Properties(inherit=classes)
as well (issue #484) - Add support for
Deleter
of pointer types toUniquePtrAdapter
- Add
@Platform(pattern=...)
annotation value to allow matching with regular expressions as well - Allow
Parser
to consider function pointers declared withusing
but without indirections - Let
Parser
map to annotations whole expressions starting with the__attribute__
keyword - Fix
Parser
sometimes failing to create template instances with default arguments (issue #478) - Enhance
Parser
to handletypedef
correctly in the case ofenum
as well (issue #477) - Upon
Pointer.getPointer(Class<P>)
scaleposition
,limit
, andcapacity
withsizeof()
(pull #476) - Fix
Parser
incorrectly translating non-documentation comments as part of documentation comments (issue #475) - Set
Pointer.maxPhysicalBytes
to4 * Runtime.maxMemory()
by default as workaround for Android, memory-mapped files, ZGC, etc (issue #468) - Ensure
synchronized
code inPointer
gets skipped with "org.bytedeco.javacpp.nopointergc" (issue tensorflow/java#313) - Add
protected Pointer.offsetAddress()
and use it forgetPointer()
instead ofposition()
- Fix potential infinite loop in
Parser
when processingclass
,struct
, orunion
declarations - Have
Parser
wrap theerase()
methods of basic containers with iterators to allow removing from maps - Let
Parser
output the content ofInfo.javaText
in the case of basic containers as well - Fix
Parser
failure on arguments containing multiple array accesses ending with]]
- Fix
Parser
incorrectly considering some array definitions with expressions as multidimensional - Log loading errors of optional
jnijavacpp
as debug messages instead of warnings (issue tensorflow/java#189) - Fix memory leak in
Pointer.releaseReference()
with "org.bytedeco.javacpp.nopointergc" (issue awslabs/djl#690) - Fix
Parser
not stripping annotations fromInfo.pointerTypes
when creating Java peer classes - Fix
Parser
not inheriting constructors with existingInfo
or with nested templates - Add support for
std::tuple
,std::optional
, andstd::variant
basic containers and fix variousParser
failures - Add parameter for
Loader.load()
to return path of a specific executable (pull #466) - Use
std::uninitialized_copy
inVectorAdapter
to make sure copy constructors get called (pull #465)
- Add missing export to