Ikvm Revived Ikvm Versions Save

A Java Virtual Machine and Bytecode-to-IL Converter for .NET

8.7.0-pre.2

7 months ago

What's Changed

  • Return same Lambda where Lambda doesn't have captures by @TheLastRar in https://github.com/ikvmnet/ikvm/pull/376
  • Enable .NET7 builds and tests by @wasabii in https://github.com/ikvmnet/ikvm/pull/378
  • IKVM.Runtime cleanup by @wasabii in https://github.com/ikvmnet/ikvm/pull/383
  • Remove existing CLASSGC support by @wasabii in https://github.com/ikvmnet/ikvm/pull/384
  • RuntimeJavaType by @wasabii in https://github.com/ikvmnet/ikvm/pull/385
  • Runtime Context by @wasabii in https://github.com/ikvmnet/ikvm/pull/393
  • .NET 6.0 by @wasabii in https://github.com/ikvmnet/ikvm/pull/401
  • OS X ARM64 by @wasabii in https://github.com/ikvmnet/ikvm/pull/402
  • .NET 4.7.2 and .NET 6.0 by @wasabii in https://github.com/ikvmnet/ikvm/pull/406
  • libnet and libnio by @wasabii in https://github.com/ikvmnet/ikvm/pull/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.

New Contributors

Full Changelog: https://github.com/ikvmnet/ikvm/compare/8.6.4...8.7.0-pre.2

8.7.0-pre.1

7 months ago

What's Changed

  • Return same Lambda where Lambda doesn't have captures by @TheLastRar in https://github.com/ikvmnet/ikvm/pull/376
  • Enable .NET7 builds and tests by @wasabii in https://github.com/ikvmnet/ikvm/pull/378
  • IKVM.Runtime cleanup by @wasabii in https://github.com/ikvmnet/ikvm/pull/383
  • Remove existing CLASSGC support by @wasabii in https://github.com/ikvmnet/ikvm/pull/384
  • RuntimeJavaType by @wasabii in https://github.com/ikvmnet/ikvm/pull/385
  • Runtime Context by @wasabii in https://github.com/ikvmnet/ikvm/pull/393
  • .NET 6.0 by @wasabii in https://github.com/ikvmnet/ikvm/pull/401
  • OS X ARM64 by @wasabii in https://github.com/ikvmnet/ikvm/pull/402
  • .NET 4.7.2 and .NET 6.0 by @wasabii in https://github.com/ikvmnet/ikvm/pull/406
  • libnet and libnio by @wasabii in https://github.com/ikvmnet/ikvm/pull/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.

New Contributors

Full Changelog: https://github.com/ikvmnet/ikvm/compare/8.6.4...8.7.0-pre.1


This discussion was created from the release 8.7.0-pre.1.

8.6.4

8 months ago

8.6.3

9 months ago
  • Add serialization support to MSBuild tasks to fix issue with appdomain.

8.6.3-pre.24

9 months ago

8.6.3-pre.11

9 months ago
  • Make Task exceptions serializable to prevent failure during failure.

8.6.2

10 months ago

Include ikvm.runtime dir in boot library path.

8.6.1

10 months ago

8.6.0

10 months ago

What's Changed

Full Changelog: https://github.com/ikvmnet/ikvm/compare/8.5.2...8.6.0

8.5.2

11 months ago