8.9.0 #553
wasabii
announced in
Announcements
8.9.0
#553
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
This is the biggest update to IKVM since our initial 8.2 release. The largest and most impactful change is the removal of most of the C# implementations of the OpenJDK backend classes. We no longer run our own implementations of NIO, network support, process launching, etc. Intead we are making use of the OpenJDK C code directly.
A consequence of this is that we now deliver platform-specific versions of IKVM.Java.dll. Four versions are available: Windows, Linux and OSX and a single reference-assembly. Users of the NuGet package should have this handled automatically: for RID-specific deployments the NuGet infrastructure will copy the appropriate version of IKVM.Java to the output directory. For RID-agnostic deployments, all three will be copied into
runtimes/{rid}/lib
and selected at runtime by .NET. For Framework targets, only the Windows version will be output.This is unobtrusive for users of our
IkvmReference
implementation. The reference assembly is used to compile Java code against. And then at runtime the appropriate IKVM.Java implementation is included. The appropriate ikvm/ image directory is copied to the output as well.However, for users not using NuGet and PackageReference, management of the reference assemblies falls to them.
ikvmc
should be run specifying the reference-assembly. And then only the appropriate runtime assemblies should be distributed with the application. This isn't unlike manually using csc.exe to compile .NET code at this point: you have to pick the appropriate reference assemblies. However, that is left as an exercize to the user.This is also our first IKVM release in which we have enabled native-AWT. We include AWT support directly from the OpenJDK C code. We know there are bugs in this: On Windows we've observed Chinese-looking fonts periodically. And we know OS X support doesn't quite work right. This enables a lot of scenarios, but there are still bugs to be worked out. However, AWT is better than no-AWT.
What's Changed
New Contributors
Full Changelog: 8.8.1...8.9.0
This discussion was created from the release 8.9.0.
Beta Was this translation helpful? Give feedback.
All reactions