Skip to content

Build updates for v5 - #1587

Merged
catilac merged 5 commits into
processing:mainfrom
catilac:build_updates_for_v5
Oct 25, 2026
Merged

catilac merged 5 commits into
processing:mainfrom
catilac:build_updates_for_v5

Conversation

@catilac

@catilac catilac commented Oct 23, 2026

Copy link
Copy Markdown
Collaborator

We no longer need enableWebGPU. Updated code to reflect that. Review each commit.

You can now just run ./gradlew run or from IntelliJ you should be able to just build (after specifying correct build settings)

@tychedelia tychedelia left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We probably should have a mechanism to download pre-built libprocessing binaries at some point but that can be a follow up. Thanks for doing htis!

Comment thread core/build.gradle.kts

onlyIf { !jextractDirectory.exists() }
}
val jextractVersionString = "22-jextract+6-47"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not a big deal for this but there might be a jextract for java 25 available at this point.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see there is an early build with the string "25-jextract+2-4"
(listed here: https://jdk.java.net/jextract/)

should be fine to use an early build at this point. but I can put it in a follow on !

@SableRaf

Copy link
Copy Markdown
Collaborator

How does one test this PR? Anything specific I should be trying?

@catilac

catilac commented Oct 23, 2026

Copy link
Copy Markdown
Collaborator Author

@tychedelia yes! will follow up
build broken bc of linux i will try to fix before merging

@SableRaf can you run locally? and use BUILD.md to to update your intellij config?

@catilac
catilac merged commit c2e7cb6 into processing:main Oct 25, 2026
6 checks passed
@SableRaf

Copy link
Copy Markdown
Collaborator

Hi @catilac,

I followed the instructions in BUILD.md but, after switching to JVM 25, I get the following build error:

16:36:42: Executing 'updateDaemonJvm --jvm-version "25" --jvm-vendor "adoptium"'…

Starting Gradle Daemon...
Gradle Daemon started in 1 s 961 ms
Kotlin does not yet support 25 JDK target, falling back to Kotlin JVM_24 JVM target
> Task :buildSrc:checkKotlinGradlePluginConfigurationErrors SKIPPED
> Task :buildSrc:pluginDescriptors UP-TO-DATE
> Task :buildSrc:processResources NO-SOURCE

> Task :buildSrc:compileKotlin
Kotlin does not yet support 25 JDK target, falling back to Kotlin JVM_24 JVM target
w: Inconsistent JVM Target Compatibility Between Java and Kotlin Tasks
Inconsistent JVM-target compatibility detected for tasks 'compileJava' (25) and 'compileKotlin' (24).
This will become an error in Gradle 8.0.
Solution: Consider using JVM Toolchain: https://kotl.in/gradle/jvm/toolchain
Learn more about JVM-target validation: https://kotl.in/gradle/jvm/target-validation


> Task :buildSrc:compileJava NO-SOURCE
> Task :buildSrc:compileGroovy NO-SOURCE
> Task :buildSrc:classes UP-TO-DATE
> Task :buildSrc:jar UP-TO-DATE
> Task :plugins:library:checkKotlinGradlePluginConfigurationErrors SKIPPED
> Task :plugins:library:compileKotlin UP-TO-DATE
> Task :plugins:library:compileJava NO-SOURCE
> Task :plugins:library:pluginDescriptors UP-TO-DATE
> Task :plugins:library:processResources UP-TO-DATE
> Task :plugins:library:classes UP-TO-DATE
> Task :plugins:library:jar UP-TO-DATE
> Task :updateDaemonJvm

[Incubating] Problems report is available at: file:///Users/raphael/Documents/GitHub/processing4/.build/reports/problems/problems-report.html

Deprecated Gradle features were used in this build, making it incompatible with Gradle 10.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

For more on this, please refer to https://docs.gradle.org/9.1.0/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.
7 actionable tasks: 1 executed, 6 up-to-date

FAILURE: Build failed with an exception.

* What went wrong:
Class org.gradle.jvm.toolchain.JvmVendorSpec does not have member field 'org.gradle.jvm.toolchain.JvmVendorSpec IBM_SEMERU'

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to generate a Build Scan (Powered by Develocity).
> Get more help at https://help.gradle.org.

BUILD FAILED in 25s
16:37:07: Execution finished 'updateDaemonJvm --jvm-version "25" --jvm-vendor "adoptium"'.

@SableRaf

SableRaf commented Oct 25, 2026 •

Copy link
Copy Markdown
Collaborator

Bumping the foojay resolver plugin to 1.0.0 seems to fix it (as suggested by Claude)

plugins {
    id("org.gradle.toolchains.foojay-resolver-convention") version "1.0.0"
}

Claude wrote:

This is a version incompatibility between Gradle and the Foojay resolver plugin. JvmVendorSpec.IBM_SEMERU was deprecated in Gradle 8 and removed in Gradle 9. Older versions of the Foojay resolver still reference it, and the failure shows up as soon as you pass a vendor, here adoptium. Your main branch most likely declares something like 0.8.0 or 0.9.0 in settings.gradle.kts.

@catilac

catilac commented Oct 25, 2026

Copy link
Copy Markdown
Collaborator Author

@SableRaf thanks so much for checking this. foojay is already pinned to 1.0.0 in main. could you try this again? I'm wondering why it's not in this branch though...

➜  processing4 git:(main) rg foojay
gradle/plugins/settings.gradle.kts
2:    id("org.gradle.toolchains.foojay-resolver-convention") version "1.0.0"

@catilac
catilac deleted the build_updates_for_v5 branch October 25, 2026 20:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants