Repository navigation
Closed
Labels
a:regressionThis used to workThis used to workaffects-version:8.8in:internal-native-librariesbindings for various native APIsbindings for various native APIs
Milestone
Description
Current Behavior
Run ./gradlew :sample:app:assembleDebug --stacktrace
GRADLE_OPTS: -Dorg.gradle.jvmargs=-Xmx4g -Dorg.gradle.daemon=false -Dkotlin.incremental=false -XX:+UseParallelGC -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
JAVA_HOME: /Users/runner/hostedtoolcache/Java_Zulu_jdk/17.0.11-9/x[6](https://github.com/hoc081098/kmp-viewmodel/actions/runs/9393781511/job/25870394801#step:7:6)4
JAVA_HOME_17_X64: /Users/runner/hostedtoolcache/Java_Zulu_jdk/1[7](https://github.com/hoc081098/kmp-viewmodel/actions/runs/9393781511/job/25870394801#step:7:7).0.11-9/x64
GRADLE_ACTION_ID: gradle/actions/setup-gradle
GRADLE_BUILD_ACTION_SETUP_COMPLETED: true
GRADLE_BUILD_ACTION_CACHE_RESTORED: true
DEVELOCITY_INJECTION_INIT_SCRIPT_NAME: gradle-actions.inject-develocity.init.gradle
DEVELOCITY_AUTO_INJECTION_CUSTOM_VALUE: gradle-actions
GITHUB_DEPENDENCY_GRAPH_ENABLED: false
To honour the JVM settings for this build a single-use Daemon process will be forked. For more on this, please refer to https://docs.gradle.org/8.8/userguide/gradle_daemon.html#sec:disabling_the_daemon in the Gradle documentation.
Daemon will be stopped at the end of the build
Configuration on demand is an incubating feature.
The message received from the daemon indicates that the daemon has disappeared.
Build request sent: Build{id=abe64d9a-d9a5-40b4-a5b8-45620bbdd052, currentDir=/Users/runner/work/kmp-viewmodel/kmp-viewmodel}
Attempting to read last messages from the daemon log...
Daemon pid: 2939
log file: /Users/runner/.gradle/daemon/8.8/daemon-2939.out.log
----- Last 20 lines from daemon log file - daemon-2939.out.log -----
2024-06-06T01:44:47.402+0000 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Lock acquired on daemon addresses registry.
2024-06-06T01:44:47.404+0000 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on daemon addresses registry.
2024-06-06T01:44:47.405+0000 [DEBUG] [org.gradle.launcher.daemon.server.DaemonStateCoordinator] resetting idle timer
2024-06-06T01:44:47.406+0000 [DEBUG] [org.gradle.launcher.daemon.server.DaemonStateCoordinator] daemon is running. Sleeping until state changes.
2024-06-06T01:44:47.406+0000 [INFO] [org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy] Daemon is about to start building Build{id=abe64d9a-d9a5-40b4-a5b8-45620bbdd052, currentDir=/Users/runner/work/kmp-viewmodel/kmp-viewmodel}. Dispatching build started information...
2024-06-06T01:44:47.407+0000 [DEBUG] [org.gradle.launcher.daemon.server.SynchronizedDispatchConnection] thread 21: dispatching org.gradle.launcher.daemon.protocol.BuildStarted@680450b8
2024-06-06T01:44:47.410+0000 [DEBUG] [org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment] Configuring env variables: [PATH, GRADLE_BUILD_ACTION_SETUP_COMPLETED, GITHUB_REPOSITORY_OWNER, GITHUB_REPOSITORY_ID, CHROMEWEBDRIVER, GITHUB_RUN_NUMBER, ANDROID_HOME, NUNIT3_PATH, GITHUB_WORKSPACE, GITHUB_RETENTION_DAYS, GITHUB_API_URL, GITHUB_RUN_ATTEMPT, JAVA_MAIN_CLASS_2874, PWD, GITHUB_JOB, GITHUB_ACTIONS, STATS_V3PS, DOTNET_MULTILEVEL_LOOKUP, NVM_CD_FLAGS, STATS_RDCL, RUNNER_ENVIRONMENT, DEVELOCITY_AUTO_INJECTION_CUSTOM_VALUE, ANDROID_NDK, GITHUB_ENV, STATS_VMD, GITHUB_EVENT_PATH, XPC_FLAGS, STATS_D, LC_ALL, GITHUB_DEPENDENCY_GRAPH_ENABLED, GITHUB_ACTOR_ID, GITHUB_REF_TYPE, LC_CTYPE, SHLVL, RUNNER_TOOL_CACHE, GITHUB_SERVER_URL, JAVA_HOME, GITHUB_REF, RUNNER_NAME, BOOTSTRAP_HASKELL_NONINTERACTIVE, STATS_TRP, XCODE_13_DEVELOPER_DIR, NUNIT_BASE_PATH, XCODE_12_DEVELOPER_DIR, GITHUB_OUTPUT, JAVA_HOME_17_X64, GITHUB_REPOSITORY, GITHUB_STEP_SUMMARY, GITHUB_ACTION_REF, GOROOT_1_21_X64, RCT_NO_LAUNCH_PACKAGER, DEVELOCITY_INJECTION_INIT_SCRIPT_NAME, CI, RUNNER_ARCH, STATS_UE, GITHUB_SHA, ImageOS, ImageVersion, XCODE_11_DEVELOPER_DIR, STATS_VMFE, RUNNER_PERFLOG, PERFLOG_LOCATION_SETTING, RUNNER_TRACKING_ID, RUNNER_WORKSPACE, GRADLE_OPTS, GITHUB_REF_PROTECTED, EDGEWEBDRIVER, GITHUB_WORKFLOW, HOMEBREW_NO_INSTALL_CLEANUP, CONDA, GRADLE_BUILD_ACTION_CACHE_RESTORED, PIPX_HOME, GITHUB_BASE_REF, GITHUB_WORKFLOW_SHA, GITHUB_PATH, ACTIONS_RUNNER_ACTION_ARCHIVE_CACHE, LOGNAME, GITHUB_EVENT_NAME, GITHUB_TRIGGERING_ACTOR, SHELL, AGENT_TOOLSDIRECTORY, HOMEBREW_CASK_OPTS, ANDROID_NDK_HOME, ANDROID_NDK_ROOT, VCPKG_INSTALLATION_ROOT, GITHUB_GRAPHQL_URL, GRADLE_ACTION_ID, JAVA_HOME_21_X64, TMPDIR, RUNNER_OS, DOTNET_ROOT, BOOTSTRAP_HASKELL_INSTALL_NO_STACK_HOOK, GITHUB_WORKFLOW_REF, GITHUB_ACTION, POWERSHELL_DISTRIBUTION_CHANNEL, __CF_USER_TEXT_ENCODING, GITHUB_ACTOR, GOROOT_1_19_X64, PIPX_BIN_DIR, VM_ASSETS, GECKOWEBDRIVER, JAVA_HOME_8_X64, LANG, GITHUB_REPOSITORY_OWNER_ID, STATS_D_D, STATS_EXTP, XPC_SERVICE_NAME, GITHUB_STATE, STATS_EXT, GITHUB_REF_NAME, NVM_DIR, ANDROID_NDK_LATEST_HOME, HOMEBREW_NO_AUTO_UPDATE, GITHUB_ACTION_REPOSITORY, GITHUB_RUN_ID, GOROOT_1_20_X64, USER, ANDROID_SDK_ROOT, SSH_AUTH_SOCK, RUNNER_TEMP, GITHUB_HEAD_REF, JAVA_HOME_11_X64, HOME]
2024-06-06T01:44:47.4[16](https://github.com/hoc081098/kmp-viewmodel/actions/runs/9393781511/job/25870394801#step:7:17)+0000 [DEBUG] [org.gradle.launcher.daemon.server.SynchronizedDispatchConnection] thread 19: received class org.gradle.launcher.daemon.protocol.CloseInput
2024-06-06T01:44:47.4[17](https://github.com/hoc081098/kmp-viewmodel/actions/runs/9393781511/job/25870394801#step:7:18)+0000 [DEBUG] [org.gradle.launcher.daemon.server.DefaultDaemonConnection] thread 19: Received IO message from client: org.gradle.launcher.daemon.protocol.CloseInput@437cdb27
2024-06-06T01:44:47.424+0000 [DEBUG] [org.gradle.launcher.daemon.server.exec.LogToClient] About to start relaying all logs to the client via the connection.
[20](https://github.com/hoc081098/kmp-viewmodel/actions/runs/9393781511/job/25870394801#step:7:21)24-06-06T01:44:47.425+0000 [INFO] [org.gradle.launcher.daemon.server.exec.LogToClient] The client will now receive all logging from the daemon (pid: 2939). The daemon log file: /Users/runner/.gradle/daemon/8.8/daemon-2939.out.log
2024-06-06T01:44:47.427+0000 [DEBUG] [org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon] Requesting daemon stop after processing Build{id=abe64d9a-d9a5-40b4-a5b8-45620bbdd052, currentDir=/Users/runner/work/kmp-viewmodel/kmp-viewmodel}
2024-06-06T01:44:47.428+0000 [DEBUG] [org.gradle.launcher.daemon.server.clientinput.ClientInputForwarder] Closing this process' stdin at end of input.
2024-06-06T01:44:47.428+0000 [LIFECYCLE] [org.gradle.launcher.daemon.server.DaemonStateCoordinator] Daemon will be stopped at the end of the build
2024-06-06T01:44:47.428+0000 [DEBUG] [org.gradle.launcher.daemon.server.clientinput.ClientInputForwarder] This process will no longer process any forwarded input.
2024-06-06T01:44:47.429+0000 [DEBUG] [org.gradle.launcher.daemon.server.DaemonStateCoordinator] Stop as soon as idle requested. The daemon is busy: true
2024-06-06T01:44:47.431+0000 [DEBUG] [org.gradle.launcher.daemon.server.DaemonStateCoordinator] daemon stop has been requested. Sleeping until state changes.
2024-06-06T01:44:47.431+0000 [DEBUG] [org.gradle.launcher.daemon.server.exec.ExecuteBuild] The daemon has started executing the build.
2024-06-06T01:44:47.432+0000 [DEBUG] [org.gradle.launcher.daemon.server.exec.ExecuteBuild] Executing build with daemon context: DefaultDaemonContext[uid=23327f6e-7775-4474-ac82-769b506c9f8c,javaHome=/Users/runner/hostedtoolcache/Java_Zulu_jdk/17.0.11-9/x64,javaVersion=17,daemonRegistryDir=/Users/runner/.gradle/daemon,pid=2939,idleTimeout=120000,priority=NORMAL,applyInstrumentationAgent=true,nativeServicesMode=ENABLED,daemonOpts=--add-opens=java.base/java.util=ALL-UNNAMED,--add-opens=java.base/java.lang=ALL-UNNAMED,--add-opens=java.base/java.lang.invoke=ALL-UNNAMED,--add-opens=java.prefs/java.util.prefs=ALL-UNNAMED,--add-opens=java.base/java.nio.charset=ALL-UNNAMED,--add-opens=java.base/java.net=ALL-UNNAMED,--add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED,-Xmx4g,-Dfile.encoding=UTF-8,-Duser.country=US,-Duser.language=en,-Duser.variant]
Configuration on demand is an incubating feature.
----- End of the daemon log -----
JVM crash log found: file:///Users/runner/work/kmp-viewmodel/kmp-viewmodel/hs_err_pid2939.log
FAILURE: Build failed with an exception.
* What went wrong:
Gradle build daemon disappeared unexpectedly (it may have been killed or may have crashed)
* Try:
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.
* Exception is:
org.gradle.launcher.daemon.client.DaemonDisappearedException: Gradle build daemon disappeared unexpectedly (it may have been killed or may have crashed)
at org.gradle.launcher.daemon.client.DaemonClient.handleDaemonDisappearance(DaemonClient.java:284)
at org.gradle.launcher.daemon.client.DaemonClient.monitorBuild(DaemonClient.java:257)
at org.gradle.launcher.daemon.client.DaemonClient.executeBuild(DaemonClient.java:[21](https://github.com/hoc081098/kmp-viewmodel/actions/runs/9393781511/job/25870394801#step:7:22)2)
at org.gradle.launcher.daemon.client.SingleUseDaemonClient.execute(SingleUseDaemonClient.java:65)
at org.gradle.launcher.daemon.client.SingleUseDaemonClient.execute(SingleUseDaemonClient.java:38)
at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:57)
at org.gradle.internal.Actions$RunnableActionAdapter.execute(Actions.java:167)
at org.gradle.launcher.cli.DefaultCommandLineActionFactory$ParseAndBuildAction.execute(DefaultCommandLineActionFactory.java:261)
at org.gradle.launcher.cli.DefaultCommandLineActionFactory$ParseAndBuildAction.execute(DefaultCommandLineActionFactory.java:[23](https://github.com/hoc081098/kmp-viewmodel/actions/runs/9393781511/job/25870394801#step:7:24)2)
at org.gradle.launcher.cli.DebugLoggerWarningAction.execute(DebugLoggerWarningAction.java:74)
at org.gradle.launcher.cli.DebugLoggerWarningAction.execute(DebugLoggerWarningAction.java:30)
at org.gradle.launcher.cli.WelcomeMessageAction.execute(WelcomeMessageAction.java:96)
at org.gradle.launcher.cli.WelcomeMessageAction.execute(WelcomeMessageAction.java:40)
at org.gradle.launcher.cli.NativeServicesInitializingAction.execute(NativeServicesInitializingAction.java:55)
at org.gradle.launcher.cli.NativeServicesInitializingAction.execute(NativeServicesInitializingAction.java:29)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:41)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:[26](https://github.com/hoc081098/kmp-viewmodel/actions/runs/9393781511/job/25870394801#step:7:27))
at org.gradle.launcher.cli.DefaultCommandLineActionFactory$WithLogging.execute(DefaultCommandLineActionFactory.java:365)
at org.gradle.launcher.Main.doAction(Main.java:35)
at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:51)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:60)
at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:37)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.gradle.launcher.GradleMain.main(GradleMain.java:34)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.gradle.wrapper.GradleWrapperMain.main(SourceFile:70)
Error: Process completed with exit code 1.
Expected Behavior
Don't crash.
Version 8.7 still works as expected.
Context (optional)
-
Github Action Log: https://github.com/hoc081098/kmp-viewmodel/actions/runs/9393781511/job/25870394801.
-
Reproduced on local macOS 11.6.1 machine:
- MacBook Pro (13-inch, 2019, Four Thunderbolt 3 ports)
- 2,4 GHz Quad-Core Intel Core i5
- 16 GB 2133 MHz LPDDR3
-
Revert to Gradle 8.7 on MacOS 11, still works.
Steps to Reproduce
- Clone https://github.com/hoc081098/kmp-viewmodel
- Checkout Update dependency gradle to v8.8 hoc081098/kmp-viewmodel#286
- Open in Android Studio on MacOS 11.6.1 machine
Gradle version
8.8
Build scan URL (optional)
No response
Your Environment (optional)
GRADLE_OPTS: -Dorg.gradle.jvmargs=-Xmx4g -Dorg.gradle.daemon=false -Dkotlin.incremental=false -XX:+UseParallelGC -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
JAVA_HOME: /Users/runner/hostedtoolcache/Java_Zulu_jdk/17.0.11-9/x[6](https://github.com/hoc081098/kmp-viewmodel/actions/runs/9393781511/job/25870394801#step:7:6)4
JAVA_HOME_17_X64: /Users/runner/hostedtoolcache/Java_Zulu_jdk/1[7](https://github.com/hoc081098/kmp-viewmodel/actions/runs/9393781511/job/25870394801#step:7:7).0.11-9/x64
GRADLE_ACTION_ID: gradle/actions/setup-gradle
GRADLE_BUILD_ACTION_SETUP_COMPLETED: true
GRADLE_BUILD_ACTION_CACHE_RESTORED: true
DEVELOCITY_INJECTION_INIT_SCRIPT_NAME: gradle-actions.inject-develocity.init.gradle
DEVELOCITY_AUTO_INJECTION_CUSTOM_VALUE: gradle-actions
GITHUB_DEPENDENCY_GRAPH_ENABLED: false
Reacted by Frieder Bluemle
Reacted by Petrus Nguyễn Thái Học
Metadata
Metadata
Assignees
Labels
a:regressionThis used to workThis used to workaffects-version:8.8in:internal-native-librariesbindings for various native APIsbindings for various native APIs
Activity
lWoHvYe commentedon Jun 9, 2024
I face the same issue in my local (MacOS 11.7, Gradle 8.8)
hoc081098 commentedon Jun 9, 2024
Could maintainers of Gradle please check it? Thank you so much 🙇 !
ljacomet commentedon Jun 10, 2024
This issue needs a decision from the team responsible for that area. They have been informed. Response time may vary.
This might be tied to #28259
@hoc081098 Can you share a JVM crash log when this happens?
lptr commentedon Jun 11, 2024
Relevant logs from #29482:
lptr commentedon Jun 11, 2024
If the two issues are the same problem, then we have a reproducer both on macOS 10.15.7 (#29482) and macOS 11.7.10 (this issue)
lptr commentedon Jun 11, 2024
I tried reproducing the problem by assuming it's a null-pointer issue. I tried passing
nullptrto theFileEventconstructor here:https://github.com/gradle/native-platform/blob/master/file-events/src/file-events/cpp/apple_fsnotifier.cpp#L105-L108
And also to
ErrorEventhere:https://github.com/gradle/native-platform/blob/master/file-events/src/file-events/cpp/apple_fsnotifier.cpp#L111
I managed to crash the JVM, but this produced a somewhat different stack trace. So it's unlikely that such a
nullptrissue is behind the problem:lptr commentedon Jun 11, 2024
I managed to reproduce on GitHub with a fork: https://github.com/lptr/kmp-viewmodel/actions/runs/9468537930
Crash logs: https://github.com/lptr/kmp-viewmodel/actions/runs/9468537930/artifacts/1590291032
It is an identical crash to #29482 with the same stacktrace, even though this happens on some machine under VMWare, while #29482 happens on a Mac mini.
2 remaining items
lptr commentedon Jun 11, 2024
I couldn't reproduce on my M1 mac:
$ sw_vers ProductName: macOS ProductVersion: 14.5 BuildVersion: 23F79 $ system_profiler SPHardwareDataType Hardware: Hardware Overview: Model Name: MacBook Pro Model Identifier: MacBookPro18,2 Model Number: Z14V001TCD/A Chip: Apple M1 MaxI also could not reproduce using an Intel Mac mini:
$ sw_vers ProductName: macOS ProductVersion: 14.5 BuildVersion: 23F79 $ system_profiler SPHardwareDataType Hardware: Hardware Overview: Model Name: Mac mini Model Identifier: Macmini8,1 Processor Name: 6-Core Intel Core i7 Processor Speed: 3.2 GHzAlso failed to reproduce with an M1 Mac mini running 13.5.1:
$ sw_vers ProductName: macOS ProductVersion: 13.5.1 BuildVersion: 22G90 $ system_profiler SPHardwareDataType Hardware: Hardware Overview: Model Name: Mac mini Model Identifier: Macmini9,1 Model Number: Z12N00006D/A Chip: Apple M1lptr commentedon Jun 11, 2024
Looks to be working on GitHub with
macos-12andmacos-13, fails consistently withmacos-11:https://github.com/lptr/kmp-viewmodel/actions/runs/9469263655/job/26087535440
lptr commentedon Jun 11, 2024
With
--no-watch-fsthe build works fine even onmacos-11: https://github.com/lptr/kmp-viewmodel/actions/runs/9469336253/job/26087758352So that is a workaround we can offer for Gradle 8.8. Another workaround of course is to upgrade to macOS 12+. Unless there's a need for a specific macOS version, it's probably a good idea to use
macos-latestin GitHub workflows anyway.That said...
It looks like there's some issue in macOS 10 and 11 with something the new file-system watching code we've introduced in #28259 relies on. It also seems that whatever the problem was has been fixed in macOS 12 and later. This might be something with the new GCD-based APIs for file-event subscriptions, or perhaps the issue is with the C++17 features we started using. 🤷 There certainly has been some back-and-forth with
std::variantin macOS 10.13 IIRC...I see the following options going forward:
Revert Use new macOS file-system event delivery in file-system watching #28259 and go back to the non-GCD watching.
We've introduced the GCD/C++17 watching in Gradle 8.8 because in macOS 13 the previous method of setting up file event listeners was deprecated. Reverting it would risk that a future macOS version will remove the deprecated APIs. This is not really an option.
Assuming the problem is with C++17 support, rewrite the code so we don't need to depend on C++17, but keep using the new GCD-based APIs for file watching.
This would be a significant amount of work, and would make our code worse, so I'm not a fan. That said, theoretically this could serve as a long-term solution.
Keep the code as is, but disable file-system watching automatically on macOS 11 and before.
This would be relatively simple to implement. We already do something similar with Alpine Linux (see Detect musl libc on Linux and disable native services #28258). It would be quite hard to test this, though, as we don't currently have means to run tests on macOS 11. We could rely on GitHub Actions, but integrating that into our testing is non-trivial.
Only document that macOS 11 and before do not support file-system watching, and ask users to run with
--no-watch-fsmanually.Given the fact that macOS 11 (not to mention 10) has already reached end-of-life, I would definitely not invest into 2). 1) is not really an option. It's kind of tempting to choose 4)...
I can try to implement 3), but for the testing aspect it would still be a non-trivial change. OTOH, running tests on various macOS versions using GitHub sounds like a good feature to add. 🤔
If we choose to implement the auto-disabling feature, we'll need to release 8.8.1 with it.
lptr commentedon Jun 11, 2024
We could implement the auto-disabling in https://github.com/gradle/native-platform, and then we could use its build to run tests using GitHub. That might be easier to integrate than if we tried to do the same with the
gradle/gradlebuild... 🤔lptr commentedon Jun 12, 2024
GitHub build for
native-platform:Not sure when I'll have the time to finish this, but it runs now.
lptr commentedon Jun 12, 2024
Looks like #29514 fixes the problem: https://github.com/lptr/kmp-viewmodel/actions/runs/9479024243/job/26116663434#step:7:34
lptr commentedon Jun 14, 2024
Fixed via #29514
friederbluemle commentedon Aug 31, 2024
@lptr Is there any chance you could release 8.8.1 with this fix, as you mentioned in one of your comments above? I'm not able to update from 8.8 to 8.9, it doesn't seem to be fully backwards compatible...
ljacomet commentedon Sep 2, 2024
@friederbluemle We will not do patch releases for previous minors in the current major.
Could you file an issue for the reason(s) that blocks your upgrade?
fix: resolve Gradle/JVM socket bind failures in sandbox