ristretto

v0.12.3

v0.12.3 Jan 20 2025 at 20:55 UTC

✨ Enhancements

  • implement Value::TryInto and Reference::TryInto for class vec (#221)
  • implement java.lang.Class.getDeclaredMethods0(Z)[Ljava/lang/reflect/Method; (#218)

🐞 Bug fixes

  • remove unnecessary clone() for Value::TryInto and Reference::TryInto (#224)
  • correct java.lang.Class.getComponentType() (#222)
  • correct invalid return value for java.lang.Class.initClassName()Ljava/lang/String; (#220)
  • implement java.lang.Class.getDeclaredConstructors0(Z)[Ljava/lang/reflect/Constructor; (#215)
  • implement java.lang.ref.Finalizer (#212)
  • implement java.lang.Class.getDeclaredClasses0()[Ljava/lang/Class; (#211)
  • implement java.lang.Class.getInterfaces0()[Ljava/lang/Class; (#210)
  • implement sun.nio.ch.IOUtil.iovMax()I and sun.nio.ch.IOUtil.writeMax()J (#208)
  • implement java.lang.ProcessHandleImpl (#207)
  • correct null handling of caller argument in MethodHandleNatives.resolve() (#204)
  • remove unnecessary use of Arc from LocalVariables (#200)

📦 Build system

  • update bitflags, clap, thiserror and cargo dist (#209)
  • update to Rust 1.84.0 (#206)
  • bump reqwest from 0.12.11 to 0.12.12 (#205)
  • upgrade cargo dist to 0.27.0 (#201)

🛠️ Other improvements

  • rename Arguments struct to Parameters (#225)
  • add sun.* native method tests (#223)
  • verify native method definitions (#219)
  • improve test coverage (#216)
  • update dirs and convert-case (#217)
  • limit method creation to require ClassFile references (#214)
  • consolidate method construction (#213)
  • encapsulate OperandStack to Frame and remove unnecessary uses of Arc/RwLock (#203)
  • encapsulate LocalVariables to Frame and remove unnecessary uses of Arc/RwLock (#202)
  • display JAVA_VERSION or default java version for the CLI --version option (#198)