All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
- Java 21+ Foreign Function & Memory (FFM) API:
FastCore.getNativeLinker()for direct system C ABI downcalls.FastCore.loadNativeLookup()for registering off-heap native library symbols.FastCore.lookupFunction()producing zero-overhead, inlinableMethodHandleinstances.FastCore.asMemorySegment()for zero-copy conversion of 64-bit native pointers (e.g.FastPointer).
- Filesystem Path Resolution & Local Probing:
LibraryLoader.resolveLibraryPath()to locate or extract native DLLs without forcingSystem.load.- Added multi-tier local folder candidate probing (
app.dir,fastjava.native.dir,.,dll,bin,native) to prioritize developer DLLs before falling back to JAR extraction.
- Hero Demo & Automation:
- Standalone runner
run-demo.batfor quick verification. - Enhanced
Demo.javatesting both traditional JNI and Java 21+ FFM Linkers.
- Standalone runner
- Upgraded Java language baseline from 17 to 21 LTS (
--enable-preview). - Overhauled documentation (
README.md,REFERENCE.md,PHILOSOPHY.md,ROADMAP.md,COMPILE.md) to reflect FastJava Blueprint standards.
- Initial project release.
- Core JNI native extraction and loading engine (
LibraryLoader). - Cross-platform architecture and OS validation (
Platform).