github ikvmnet/ikvm 8.7.0

latest releases: 8.10.3, 8.10.2, 8.10.1...
12 months ago

What's Changed

  • Return same Lambda where Lambda doesn't have captures by @TheLastRar in #376
  • Enable .NET7 builds and tests by @wasabii in #378
  • IKVM.Runtime cleanup by @wasabii in #383
  • Remove existing CLASSGC support by @wasabii in #384
  • RuntimeJavaType by @wasabii in #385
  • Runtime Context by @wasabii in #393
  • .NET 6.0 by @wasabii in #401
  • OS X ARM64 by @wasabii in #402
  • .NET 4.7.2 and .NET 6.0 by @wasabii in #406
  • libnet and libnio by @wasabii in #409
  • Rename win7-* packages and RIDs to win-. .NET 8 no longer provides win7- RIDs.
  • IKVM.Image.runtime.* packages for OpenJDK native libraries.
  • Use RAR for resolution of Framework references. Tools no longer package ref assemblies.
  • libiava (libjava). Rename exists because Windows will not let a java.exe load a java.dll.
  • libjvm. No external hosting support presently.
  • Reintroduce libikvm for various platform specific functions that are difficult to P/Invoke.
  • JNI loading logic more accurately behaves according to standard JDKs. IKVM.Image.runtime.* packages deliver native libraries, which are placed in the Image directory, not the .NET search path. Native libraries decorated with RPATH on Linux, and correctly mode rpath lookups on OS X.
  • We lost AppDomain support due to the native libraries. The native OpenJDK libraries retain references to fields and classes in IKVM.Java. Loading two copies of IKVM.Java would use the same native libraries, with references to the fields from the wrong AppDomain. This will also cause issues for AssemblyLoadContext usage. As of now, avoid loading two copies of IKVM into the same process.
  • New documentation structure, which should publish to ikvm.org.
  • IKVM.NET.Sdk should support MUSL.
  • IKVM.NET.Sdk now emits JNI header files by default.
  • IKVM.NET.Sdk build failure with missing target.
  • Fix StackOverflowException.

New Contributors

Full Changelog: 8.6.4...8.7.0

Don't miss a new ikvm release

NewReleases is sending notifications on new releases.