Liberica Native Image Kit 22.3.0 Release Notes

Liberica Native Image Kit 22.3.0

Liberica Native Image Kit is based on Liberica JDK 11.0.16+8, Liberica JDK 11.0.17+7 versions. Please, find the release notes below:

Liberica NIK distribution includes the following runtimes components:

  • LLVM - 14.0.6 (GraalVM CE Native 22.3.0)
  • Python - 3.8.5 (GraalVM CE Native 22.3.0)
  • Node - v16.14.2
  • Java - Liberica JDK 11.0.16+8, LTS and Liberica JDK 11.0.17+7, LTS
  • Java Script - GraalVM JavaScript (GraalVM CE Native 22.3.0)
  • R - 4.0.3 (FastR)
  • TruffleRuby - 22.3.0 (Ruby 3.0.3)
  • Native Image - GraalVM Version 22.3.0 (Liberica JDK 11.0.16+8, LTS and Liberica JDK 11.0.17+7, LTS)
  • Wasm - WebAssembly (GraalVM CE Native 22.3.0)

Issues fixed

Issue Description
[GR-41417] Fix host class linkage error handling.
[GR-41406] Fix eval in with statement.
[GR-40880] Fix [[DefineOwnProperty]] on dictionary object with a not fully populated property descriptor.
[GR-41361] Backports for 22.3 batch 2
[GR-41537] Workaround for dsymutil bug on Darwin
[GR-41361] Backports for 22.3
[GR-41472] Use better logging level in get_toolchain_tools_for_venv.
[GR-39662] Upgrading the underlying Node.js to version 16.17.1.
[GR-41129] Prepare 22.3 release branch.
[GR-40444] Backport: Correction of the quoting in npm/npx.cmd.
[GR-40533] Update python community benchmarks to run a subset
[GR-40848] [GR-40714] Fix detection of the executable name and pyvenv.cfg support.
[GR-41068] Truffle TCK regards BigInteger.multiply(BigInteger) as a privileged call on JDK 19.
[GR-40422] GraalJSEngineFactory should return a compliant engine when js is not available.
[GR-40843] Partial evaluation tests failing on JDK 19.
[GR-40811] Ignore @llvm.used and @llvm.compiler.used globals during module init
[GR-21590] Update Python imports.
[GR-40959] Remove racy shape.isValid() assertion.
[GR-21590] Update imports
[GR-23997] Periodic update of the graal import (2022-09-09).
[GR-39982] Revert "Disable NEON feature in Sulong toolchain for AArch64"
[GR-40766] Optimize conversion of j.l.String to TruffleString via InteropLibrary#asTruffleString()
[GR-40743] Fix condition profile in TruffleString.checkContentEquals.
[GR-40221] [GR-40486] Fix transient testrffi failure.
[GR-40181] Implement global native variables API.
[GR-23997] Periodic update of the graal import (2022-09-02).
[GR-40655] Don't duplicate **.md exclusion guard.
[GR-40655] Tools gate guard for tools, sdk and truffle.
[GR-19768] Update Truffle import.
[GR-38179] [darwin] Restore stack size for JVM main thread in launcher
[GR-23997] Periodic update of the graal import (2022-08-28).
[GR-21590] [GR-40608] Update imports
[GR-32314] Phase plan fuzzing.
[GR-38979] Post rebase fixes.
[GR-38979] Detach host thread from the polyglot isolate when the thread is terminating.
[GR-39031] Add nodejs components for darwin-aarch64
[GR-23997] Periodic update of the graal import (2022-08-16).
[GR-19768] Update Truffle import.
[GR-40022] System thread examples are using a blocking queue with tasks to process.
[GR-40022] Resolved review comments.
[GR-40022] Fixed gates.
[GR-40022] Don't call TruffleLanguage#disposeContext with context lock.
[GR-40022] Added unit tests for TruffleInstrument.Env#createSystemThread.
[GR-40022] Fixed review comments.
[GR-40022] Added unit tests for TruffleLanguage.Env#createSystemThread.
[GR-40022] Added service thread API for TruffleLanguage.
[GR-40022] SandboxingInstrument uses service thread to cancel execution.
[GR-32314] Formalize compiler phase ordering constraints.
[GR-40148] Add hsdis for darwin-aarch64
[GR-40028] Compile libsulongxx on Windows
[GR-23997] Periodic update of the graal import (2022-08-05).
[GR-21590] Update imports
[GR-39689] Add regression test.
[GR-39689] Fix race condition in SourceBuilder.
[GR-39450] Increased Truffle xcomp gate time.
[GR-19768] Update Truffle import.
[GR-28769] Adding image compression option to native image benchmark mixin.
[GR-40079] Fixed test language names.
[GR-21590] Update imports
[GR-40079] Fixed Source#url marshalling.
[GR-40079] Extend the SourceAPITest to test the over the boundary marshalling.
[GR-21590] Update imports
[GR-23997] Periodic update of the graal import (2022-07-29).
[GR-19691] Pass --cpusampler* before the script in cpusampler docs
[GR-19768] Update Truffle import.
[GR-40012] Source#path is not transferred to the Truffle isolate.
[GR-39982] Disable NEON feature in Sulong toolchain for AArch64
[GR-38179] [darwin] Keep main thread for UI operations in JVM mode.
[GR-27685] Add graalpy for linux-aarch64
[GR-23997] Periodic update of the graal import (2022-07-15).
[GR-21590] Update Python imports.
[GR-38927] Runtime detect ld64.lld binary and use it on darwin-aarch64
[GR-37259] Enable graalpy image, and remove bash launcher
[GR-39805] Fix catalog components priority.
[GR-39662] Upgrading the underlying Node.js to version 16.16.0.
[GR-32968] Fixed Value#getMetaParents error message.
[GR-39684] Transient AssertionError in ContextAPITest#testMultithreadedEnterLeave.
[GR-23997] Periodic update of the graal import (2022-07-08).
[GR-19768] Update Truffle import.
[GR-39319] Removing the temporary workaround for foreignObject instanceof Date.
[GR-39568] Fix polybench warmup forkcount spec
[GR-23997] Periodic update of the graal import (2022-07-01).
[GR-21590] [GR-39548] [GR-39516] Update imports
[GR-35797] TCK tests do not handle IAE on Value#execute.
[GR-39531] Gate timeout of gate-vm-libgraal-truffle-17-linux-amd64.
[GR-39450] Gate timeout of gate-compiler-test-truffle-xcomp-labsjdk-17-linux-amd64 seems too short.
[GR-36824] Resolved review comments.
[GR-23997] Periodic update of the graal import (2022-06-24).
[GR-39067] Fixes for foreign prototype.
[GR-34390] Fixed gates.
[GR-36824] Fixed gates.
[GR-21590] Update imports
[GR-34390] Fixed review comments.
[GR-36824] Update ProcessBuilderTest to work with Truffle isolate.
[GR-36747] Document how to embed and obtain SBOMs using Native Image.
[GR-39316] Add larger python benchmarks to polybench
[GR-39238] Next dev cycle.
[GR-34390] Added a bulk version of the GCUtils#assertGc
[GR-34390] Fixed GR30288Test memory leak.
[GR-34390] Added stack trace for Java frame GC roots.
[GR-34390] Added a shortest GC root path when GCUtils.assertGc fails.
[GR-34390] Updated to latest jfluid library.
[GR-34390] GCUtils are using heap dump to detect strongly reachable objects.
[GR-39155] Resolved review comments.
[GR-23997] Periodic update of the graal import (2022-06-17).
[GR-39216] Add support for boolean to IVar cast
[GR-39072] DarwinStackOverflowSupport: Account for potential guard pages
[GR-39155] Reduced a number of instances needed for a native object cleaner.
[GR-31917] Differentiate duplicated methods from the original ones for the compilation.
[GR-31439] Clone the hot methods specialized. Compile the hot methods in parallel before cold compilations.
[GR-29683] Add more tests, check seqlock value in tests, and eliminate seqlock increments in slow-path reads.
[GR-26223] Create pgo-aot-inline config for tracking and comparing benchmark performance.
[GR-41406] Add regression test.
[GR-41406] Fix eval in with statement.
[GR-40880] Add regression test.
[GR-40878] Add regression test.
[GR-40878] Avoid appending a statement for the rhs expression of an always-true delete expression.
[GR-40799] Add aux engine cache test.
[GR-40799] Fix repeated deoptimization in Object.getOwnPropertyDescriptors().
[GR-39031] Add nodejs gates for darwin-aarch64
[GR-38058] Node hangs when using AWT on macOS in non-headless mode.
[GR-39719] Active module resolution is confused by block scopes.
[GR-40902] Define os.file manually, since it's commonly queried and we freeze
[GR-38927] Enable darwin-aarch64 gates again
[GR-40390] copy the storage of sets for shallow copy. fixes oracle/graal#4816
[GR-40216] let pip choose our patched versions if possible
[GR-40199] Fix trace module coverage reporting, add smoke test
[GR-27685] Add linux-aarch64 gates
[GR-18163] Use the compatible encoding for String#{sub,gsub,index,rindex} (#2749)
[GR-17457] Fix initializeThread() when called on a different thread than the passed thread
[GR-33155] Implement interop exception messages on RubyException
[GR-18163] UnboundMethod#hash is the same for the same method in subclass and superclass
[GR-17457] Prepare changelog for 23.0 and cleanup 22.3 changelog
[GR-40769] Check for native access when creating a Pointer
[GR-41105] Fix IO#{wait,wait_readable,wait_writable} with a timeout > INT_MAX seconds
[GR-17457] Patch recent versions of nokogiri with system libraries.
[GR-32001] Replace ReadCallerFrameNode by AlwaysInlinedMethodNode
[GR-40738] Add JDK 19 to the CI, remove the deprecated --fiber-pool option and cleanups based on that
[GR-38163] Implement getParentFrameDescriptor()
[GR-38006] [GR-38163] [GR-40290] Update to latest graal
[GR-40419] [GR-40321] Update graal import.
[GR-40759] Exclude test which fails transiently due to a different exception
[GR-38057] Do not always split blocks/Procs
[GR-39953] Skip creating the .tar of GraalVM in all env files
[GR-40207] Update graal, fixes issue with TruffleString intrinsics not being found on SVM
[GR-19691] Update documentation about flamegraphs
[GR-40036] The SVM neverPartOfCompilation() check seems not precise enough so need to use TruffleBoundary instead
[GR-39354] Exclude test which uses a codepoint > 2**31
[GR-39354] Comment out MRI test which is not supported on TruffleString currently
[GR-39718] Tag PE test which requires PEA of the byte[] given to TruffleString
[GR-34937] Initial commit to migrate to TruffleString
[GR-39354] [GR-38179] Update to latest graal for TruffleString and thin launcher fixes
[GR-39857] Set nativeInterruptTimer to null at the end of pre-initialization
[GR-39716] Reapply logic to deal with minitest vs test-unit gem differences
[GR-39186] Update graal to get fixes
[GR-38645] Update graal to get inline assembly support for "dmb ish" on aarch64
[GR-14125] Do not give any permissions to TruffleRubyScriptEngine by default
[GR-40221] Temporarily ignore testrffi package in native tests.
[GR-38806] install.cache.R uses artifact uploader