ristretto
v0.21.0
v0.21.0
Jun 20 2025 at 22:15 UTC
Added
- add java.io.ObjectInputStream and java.io.ObjectOutputStream intrinsics
- add intrinsic support for basic file io
- add java/lang/ref/PhantomReference intrinsics
- add OS specific file intrinsics
- implemented java.io.ObjectStreamClass.hasStaticInitializer(Ljava/lang/Class;)Z
Fixed
- correct mutf-8 class file string encoding/decoding as well as add utf-16 Java 9+ string support
- add invokedynamic bootstrap method descriptor verification
Other
- [breaking] change VM parameter types from Vec to &[T] for zero-allocation and improved ergonomics
- optimize Reference enum memory
- [breaking] update ConstantPool try_get_utf8, try_get_class, try_get_string, try_get_module, and try_get_package to return &str instead of &String. Updated Class to use the same class name reference from constant pool instead of copying the string into the struct.
- create compile time intrinsic method registry
- add classfile attributes documentation
- update rust doc formatting
- add constants for java versions
- optimize file reads by removing iterative type conversion from u8->i8. Optimized Reference Vec signed<->unsigned type conversions.
- add java.lang.invoke.DirectMethodHandle$Holder trampoline methods on class definition
- remove unnecessary version file parsing on startup when the full java version is specified
- remove unnecessary call to obtain current directory on initialization
- update to phf=0.12.1
- remove lint warning on windows
- remove unnecessary java version from intrinsics registry
- correct clippy lints