Skip to content

Fetch dependencies using Ivy#1216

Open
tresf wants to merge 57 commits intomasterfrom
ivy
Open

Fetch dependencies using Ivy#1216
tresf wants to merge 57 commits intomasterfrom
ivy

Conversation

@tresf
Copy link
Copy Markdown
Contributor

@tresf tresf commented Nov 11, 2023

Removes dependant libraries from the source repository and fetches them from Maven Central using ivy.

Closes #1387 #1253

@tresf

This comment was marked as outdated.

@tresf

This comment was marked as outdated.

@tresf
Copy link
Copy Markdown
Contributor Author

tresf commented Dec 7, 2024

Once mainline has received the new Headless support, we can move to Ivy for good.

This has progressed since opening this PR: #1225 (comment). Since "Headless" requires Java 21 or higher, this PR must be merged with #1222 in order to test the headless libraries.

@tresf tresf changed the base branch from master to jdk21 December 7, 2024 19:02
Base automatically changed from jdk21 to master December 10, 2024 21:35
@tresf
Copy link
Copy Markdown
Contributor Author

tresf commented Dec 11, 2024

This PR is in surprisingly good shape... One outstanding issue is that the JavaFX version that we bundle is currently broken for vector (rasterize: false) prints. We're tracking this with the FX team in SUPQZ-20. We'll need a patch to JavaFX before we can continue testing.

javafx.version=24-headless+0-2024-12-02-101029

@tresf
Copy link
Copy Markdown
Contributor Author

tresf commented Mar 4, 2025

We're tracking this with the FX team in SUPQZ-20. We'll need a patch to JavaFX before we can continue testing.

The FX team has provided a patch for vector HTML prints, bumping the version and re-testing.

@tresf
Copy link
Copy Markdown
Contributor Author

tresf commented Mar 4, 2025

We're tracking this with the FX team in SUPQZ-20. We'll need a patch to JavaFX before we can continue testing.

The FX team has provided a patch for vector HTML prints, bumping the version and re-testing.

So vector prints are fixed, but I've found a bug with raster prints. From what I can tell this issue existed in the last FX snapshot version and I missed it. @akberenz and I spent an hour or so on it, but something with setZoom seems to cause the height on our rasterized-fitted tests to render way too tall. Our tests didn't catch this because the snapshot is actually succeeding, just at an unusual height. Something with the page height calculation is returning values that appear to be using zoom levels from previous snapshots.

@tresf
Copy link
Copy Markdown
Contributor Author

tresf commented Mar 5, 2025

We're tracking this with the FX team in SUPQZ-20. We'll need a patch to JavaFX before we can continue testing.

The FX team has provided a patch for vector HTML prints, bumping the version and re-testing.

So vector prints are fixed, but I've found a bug with raster prints. From what I can tell this issue existed in the last FX snapshot version and I missed it. @akberenz and I spent an hour or so on it, but something with setZoom seems to cause the height on our rasterized-fitted tests to render way too tall. Our tests didn't catch this because the snapshot is actually succeeding, just at an unusual height. Something with the page height calculation is returning values that appear to be using zoom levels from previous snapshots.

I was able to reproduce this bug on master branch, so this is no longer a blocker; testing is ready to continue.

@tresf
Copy link
Copy Markdown
Contributor Author

tresf commented Mar 25, 2025

Tested macOS, Windows 11, Ubuntu 24.04.

No regressions found. Now we wait for a JDK21 JavaFX "Headless" backport.

@tresf
Copy link
Copy Markdown
Contributor Author

tresf commented Aug 1, 2025

Tested macOS, Windows 11, Ubuntu 24.04.

No regressions found. Now we wait for a JDK21 JavaFX "Headless" backport.

Update from the JavaFX team:

Hi Tres, the Headless platform is now merged, and it will be part of JavaFX 26. It goes a bit against the spirit of LTS releases to backport this to 17/21, but there will be little to no technical issues to backport this to 17/21, and even 11 should be doable, I believe. Might be better that we do this in specific versions though. Almost all code for the headless platform is new code in a separate package, so there won't be merge conflicts. The only changes that need to be applied when backporting are due to API changes in parent or related classes.

... so now we await an LTS release.

@tresf
Copy link
Copy Markdown
Contributor Author

tresf commented Sep 23, 2025

Slight update... JDK25 LTS has been released! This means we can update to JavaFX 26-ea. Sadly, testing is failing for vector HTML prints (using the maven mirrors). I've reached out to Gluon for help.

@tresf
Copy link
Copy Markdown
Contributor Author

tresf commented Oct 6, 2025

Slight update... JDK25 LTS has been released! This means we can update to JavaFX 26-ea. Sadly, testing is failing for vector HTML prints (using the maven mirrors). I've reached out to Gluon for help.

Filed upstream bug report SUPQZ-23. Meanwhile, I've bumped this branch to use the last-working-snapshot version so we can proceed with this branch.

@tresf
Copy link
Copy Markdown
Contributor Author

tresf commented Jan 20, 2026

Windows tests are still failing... Weird.

@tresf
Copy link
Copy Markdown
Contributor Author

tresf commented Apr 4, 2026

Hmm... CI is failing but from what I can tell, there's something wrong with the JDK version in the runner. I've opened a dedicated issue with the setup-java@v5 repo here: actions/setup-java#997

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.

Linux Headless: Unable to start JavaFX service

1 participant