Skip to content

Fetch dependencies using Ivy - #1216

Merged
tresf merged 77 commits into
masterfrom
ivy
Jul 29, 2026
Merged

Fetch dependencies using Ivy#1216
tresf merged 77 commits into
masterfrom
ivy

Conversation

@tresf

@tresf tresf commented Nov 11, 2023

Copy link
Copy Markdown
Contributor

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

tresf commented Dec 7, 2024

Copy link
Copy Markdown
Contributor Author

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

tresf commented Dec 11, 2024

Copy link
Copy Markdown
Contributor Author

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

tresf commented Mar 4, 2025

Copy link
Copy Markdown
Contributor Author

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

tresf commented Mar 4, 2025

Copy link
Copy Markdown
Contributor Author

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

tresf commented Mar 5, 2025

Copy link
Copy Markdown
Contributor Author

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

tresf commented Mar 25, 2025

Copy link
Copy Markdown
Contributor Author

Tested macOS, Windows 11, Ubuntu 24.04.

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

@tresf

tresf commented Aug 1, 2025

Copy link
Copy Markdown
Contributor Author

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

tresf commented Sep 23, 2025

Copy link
Copy Markdown
Contributor Author

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

tresf commented Oct 6, 2025

Copy link
Copy Markdown
Contributor Author

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 and others added 17 commits May 7, 2026 11:32
Fix inconsistent snapshot sizes when height is unknown

* Simplify doUpdatePeer handling
* Use API to remove scrollbars instead of CSS
* Fix blank vector prints

Co-authored-by: IdelsTak <contact.kamau@gmail.com>
* Use NodeHelper for WebView peer sync

- Replace reflective `WebView` peer-update invocation in `WebApp` with JavaFX internal helpers
- Fix `*** unexpected PG access` diagnostics seen during resize/capture timing
- Align closer with JavaFX internal peer-update pattern while retaining existing behavior

Closes #1449
@tresf
tresf merged commit c2d1349 into master Jul 29, 2026
14 checks passed
@tresf
tresf deleted the ivy branch July 29, 2026 17:52
@tresf
tresf restored the ivy branch July 29, 2026 18:00
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

2 participants