Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
5df8544
Squash PR for fixing conflicts with upstream ivy branch (#7)
tresf Dec 10, 2024
72726cc
Move away from "Monocle" in favor of "Headless" (#1225)
tresf Dec 10, 2024
f0cbadf
Temporarily switch to JDK23
tresf Dec 10, 2024
99af1c8
Merge branch 'master' into ivy
tresf Mar 4, 2025
4574ad8
Bump dependencies
tresf Mar 4, 2025
348733e
Organize dependencies
tresf Mar 4, 2025
9429b37
Bump javafx
tresf Mar 4, 2025
7ff20a1
Bump to JDK25
tresf Oct 6, 2025
307cfe6
Bump to JDK25 (GitHub Actions)
tresf Oct 6, 2025
9bc13c0
Try to fix CI error
tresf Oct 6, 2025
4e33aa0
Merge branch 'master' into ivy
tresf Oct 6, 2025
8590d48
Bump dependencies and qz version
tresf Oct 7, 2025
fc3d545
Fix RISC-V builds
tresf Oct 9, 2025
462c0a4
Move jsign to ivy too, cleanup icu4j
tresf Oct 9, 2025
ea32103
Whitespace
tresf Oct 9, 2025
bddaf5f
Merge remote-tracking branch 'origin' into ivy
tresf Oct 10, 2025
822e62b
Switch to modern theming engine
tresf Oct 10, 2025
453a7f5
Fix LinkLabel background
tresf Oct 10, 2025
2e31b3c
Bump JFX, use maven central
tresf Oct 22, 2025
51a996c
Merge branch 'master' into ivy
tresf Nov 1, 2025
3ba9d78
Remove Java 8 workarounds; assume Java 11+
tresf Nov 1, 2025
43cd93e
Merge branch 'master' into ivy
tresf Dec 11, 2025
4883541
Attempt to fix java downloads
tresf Dec 11, 2025
4d00820
Bump javac.source|javac.target to 25
tresf Dec 14, 2025
fae32da
Merge remote-tracking branch 'origin' into ivy
tresf Jan 19, 2026
16294e7
Bump TestNG version, cleanup XML
tresf Jan 19, 2026
bfd7c41
Update mac raw unit tests for JavaFX 26ea
tresf Jan 20, 2026
a119a65
Update linux raw unit tests for JavaFX 26ea
tresf Jan 20, 2026
76fb138
Attempt to fix testing dependencies
tresf Jan 20, 2026
19a1eb5
Update windows raw unit tests for JavaFX 26ea
tresf Jan 20, 2026
b25564e
Add back Linux tests
tresf Jan 20, 2026
79fdc82
Attempt to fix html windows raw unit tests again
tresf Jan 21, 2026
1f4d767
Add mslinks
tresf Feb 16, 2026
04f03fe
Add semver
tresf Feb 16, 2026
669af6f
Merge remote-tracking branch 'origin' into ivy
tresf Apr 4, 2026
fc573b0
Fixes after merge conflict
tresf Apr 4, 2026
fc2a0cf
Bump dependencies, add "ant check-updates"
tresf Apr 4, 2026
f33e27b
Merge master into ivy
tresf Apr 14, 2026
d29fd35
Rework dependency file for future automation efforts
tresf Apr 14, 2026
43307af
Capture installation errors in CI
tresf Apr 14, 2026
ab86363
- Simplify deps
tresf Apr 14, 2026
5d4d42a
add slf4j-nop logger, JettisonTests, bump deps
tresf Apr 15, 2026
44caf1c
Fix testng error caused by upstream bug https://github.com/testng-tea…
tresf Apr 15, 2026
d883ed5
Fix testng-ant property names
tresf Apr 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 15 additions & 18 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,21 +7,17 @@ jobs:
runs-on: [ubuntu-latest]
strategy:
matrix:
java: [11]
java: [25]
arch: [x86_64, aarch64, riscv64]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v6
- uses: actions/setup-java@v5
with:
java-version: ${{ matrix.java }}
distribution: 'liberica'
- run: sudo apt-get install makeself
- if: ${{ matrix.arch == 'riscv64' }}
run: |
# TODO: remove after migrating to JDK21+
echo "ANT_ARGS=-Djlink.java.version=21.0.9+15" >> $GITHUB_ENV
- run: ant -Dtarget.arch=${{ matrix.arch }} makeself
- uses: actions/upload-artifact@v4
- uses: actions/upload-artifact@v7
with:
name: qz-tray-linux-${{ matrix.arch }}
path: out/qz-tray-*.run
Expand All @@ -31,7 +27,8 @@ jobs:
sudo apt-get install firefox chromium
ant testng
# Run policy tests again, but as root
sudo ant -Dtestng.pattern="**/policy/**" testng
# FIXME: Uncomment when fixed upstream https://github.com/actions/setup-java/issues/997
# sudo ant -Dtestng.pattern="**/policy/**" testng
sudo DEBUG=true out/qz-tray-*.run
/opt/qz-tray/qz-tray --version
sudo apt-get install nsis
Expand All @@ -41,16 +38,16 @@ jobs:
runs-on: [macos-latest]
strategy:
matrix:
java: [11]
java: [25]
arch: [x86_64, aarch64]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v6
- uses: actions/setup-java@v5
with:
java-version: ${{ matrix.java }}
distribution: 'liberica'
- run: ant -Dtarget.arch=${{ matrix.arch }} pkgbuild
- uses: actions/upload-artifact@v4
- uses: actions/upload-artifact@v7
with:
name: qz-tray-macos-${{ matrix.arch }}
path: out/qz-tray-*.pkg
Expand All @@ -61,7 +58,7 @@ jobs:
ant testng
# Run policy tests again, but as root
sudo ant -Dtestng.pattern="**/policy/**" testng
sudo installer -pkg out/qz-tray-*.pkg -target /
sudo installer -pkg out/qz-tray-*.pkg -target / || (cat /tmp/qz-install.log && false)
"/Applications/QZ Tray.app/Contents/MacOS/QZ Tray" --version
brew install nsis makeself
ant makeself
Expand All @@ -71,17 +68,17 @@ jobs:
runs-on: [windows-latest]
strategy:
matrix:
java: [11]
java: [25]
arch: [x86_64, aarch64]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
- uses: actions/checkout@v6
- uses: actions/setup-java@v5
with:
java-version: ${{ matrix.java }}
distribution: 'liberica'
- run: choco install nsis
- run: ant "-Dtarget.arch=${{ matrix.arch }}" nsis
- uses: actions/upload-artifact@v4
- uses: actions/upload-artifact@v7
with:
name: qz-tray-windows-${{ matrix.arch }}
path: out/qz-tray-*.exe
Expand Down
8 changes: 6 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,13 +1,17 @@
/out/
/js/node_modules
/lib/javafx*
/lib/*
/deps/*
!/deps/manual/
/.idea/workspace.xml
/.idea/misc.xml
/.idea/uiDesigner.xml
/.idea/compiler.xml
/reports/
/fx.zip
/README.md
/provision.json
.DS_Store
windows-debug-launcher.nsi.in
/ant/private/qz.ks
/ant/private/qz.ks
/ant/deps/ivy
2 changes: 1 addition & 1 deletion .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion .idea/runConfigurations/App.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion .idea/startup.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 5 additions & 8 deletions .idea/tray.iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM openjdk:11 as build
FROM openjdk:25 as build
RUN apt-get update
RUN apt-get install -y ant nsis makeself
COPY . /usr/src/tray
Expand Down
6 changes: 2 additions & 4 deletions ant/apple/apple.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
# Apple build properties
apple.packager.signid=P5DMU6659X
# jdk9+ flags
# - Tray icon requires workaround https://github.com/dyorgio/macos-tray-icon-fixer/issues/9
# - Dark theme requires workaround https://github.com/bobbylight/Darcula/issues/8
apple.launch.jigsaw=--add-opens java.desktop/sun.lwawt.macosx=ALL-UNNAMED --add-opens java.desktop/java.awt=ALL-UNNAMED --add-exports java.desktop/com.apple.laf=ALL-UNNAMED
# Apple launcher options
apple.launch.opts=
2 changes: 2 additions & 0 deletions ant/apple/installer.xml
Original file line number Diff line number Diff line change
Expand Up @@ -324,6 +324,8 @@
<include name="**/darwin-aarch64/*" if="target.arch.aarch64"/> <!-- jna/hid4java -->
<include name="**/osx-aarch64/*" if="target.arch.aarch64"/> <!-- usb4java -->
<include name="**/osx_arm64/*" if="target.arch.aarch64"/> <!-- jssc -->
<!--javafx-->
<include name="*.dylib"/>
</fileset>
</copy>
</target>
Expand Down
132 changes: 132 additions & 0 deletions ant/dependencies.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
# For renovate to be able to update version information
# it needs the org and name to look up the latest rev

#------------------------------#
# Main app dependency versions #
#------------------------------#
bc.org=org.bouncycastle
bc.name=bcprov-jdk18on
bc.rev=1.84

flatlaf.org=com.formdev
flatlaf.name=flatlaf
flatlaf.rev=3.7.1

hid4java.org=org.hid4java
hid4java.name=hid4java
hid4java.rev=0.8.0

icu4j.org=com.ibm.icu
icu4j.name=icu4j
icu4j.rev=78.3

jai.org=com.github.jai-imageio
jai.name=jai-imageio-core
jai.rev=1.4.0

javafx.org=org.openjfx
javafx.name=javafx-base
javafx.rev=27-ea+12

semver.org=com.github.zafarkhaja
semver.name=java-semver
semver.rev=0.10.2

jettison.org=org.codehaus.jettison
jettison.name=jettison
jettison.rev=1.5.5

jbig2.org=org.apache.pdfbox
jbig2.name=jbig2-imageio
jbig2.rev=3.0.4

jetty.org=org.eclipse.jetty
jetty.name=jetty-server
jetty.rev=10.0.26

jna.org=net.java.dev.jna
jna.name=jna-platform
jna.rev=5.18.1

jssc.org=io.github.java-native
jssc.name=jssc
jssc.rev=2.10.2

libusb4java.org=org.usb4java
libusb4java.name=libusb4java
libusb4java.rev=1.2.0

log4j.org=org.apache.logging.log4j
log4j.name=log4j-core
log4j.rev=2.25.4

mslinks.org=org.jabref
mslinks.name=mslinks
mslinks.rev=1.1.1

pdfbox.org=org.apache.pdfbox
pdfbox.name=pdfbox
pdfbox.rev=2.0.36

purejavahidapi.org=nyholku
purejavahidapi.name=purejavahidapi
purejavahidapi.rev=0.0.10

servlet-api.org=org.eclipse.jetty.toolchain
servlet-api.name=jetty-servlet-api
servlet-api.rev=4.0.9

slf4j-nop.org=org.slf4j
slf4j-nop.name=slf4j-nop
slf4j-nop.rev=2.0.17

twelvemonkeys.org=com.twelvemonkeys.imageio
twelvemonkeys.name=imageio-core
twelvemonkeys.rev=3.13.1

usb-api.org=javax.usb
usb-api.name=usb-api
usb-api.rev=1.0.2

usb4java.org=org.usb4java
usb4java.name=usb4java
usb4java.rev=1.3.0

# TODO: Switch to jakarta org=jakarta.websocket, name=jakarta.websocket, rev=2.3.0-M2
websocket-api.org=javax.websocket
websocket-api.name=javax.websocket-api
websocket-api.rev=1.1

commons-codec.org=commons-codec
commons-codec.name=commons-codec
commons-codec.rev=1.21.0

commons-io.org=commons-io
commons-io.name=commons-io
commons-io.rev=2.21.0

commons-pool2.org=org.apache.commons
commons-pool2.name=commons-pool2
commons-pool2.rev=2.13.1

commons-ssl.org=com.narupley
commons-ssl.name=not-going-to-be-commons-ssl
commons-ssl.rev=0.3.20

#------------------------------#
# Ant-only dependency versions #
#------------------------------#
jsign.org=net.jsign
jsign.name=jsign
jsign.rev=7.4

testng.org=org.testng
testng.name=testng
testng.rev=7.12.0

testng-ant.org=org.testng
testng-ant.name=testng-ant
testng-ant.rev=1.0.0

# General configuration
ivy.report.todir=${basedir}/reports
9 changes: 9 additions & 0 deletions ant/deps/ivy-ant.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<ivy-module version="2.0" xmlns:m="antlib:org.apache.ivy.ant">
<info organisation="io.qz" module="qz-tray-ant"/>
<dependencies>
<dependency name="${jsign.name}" org="${jsign.org}" conf="*->default" rev="${jsign.rev}"/>
<dependency name="${slf4j-nop.name}" org="${slf4j-nop.org}" conf="*->default" rev="${slf4j-nop.rev}"/>
<dependency name="${testng.name}" org="${testng.org}" conf="*->default" rev="${testng.rev}"/>
<dependency name="${testng-ant.name}" org="${testng-ant.org}" conf="*->default" rev="${testng-ant.rev}"/>
</dependencies>
</ivy-module>
Binary file added ant/deps/manual/ivy-2.5.3.jar
Binary file not shown.
25 changes: 25 additions & 0 deletions ant/ivy-settings.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
<ivysettings>
<settings defaultResolver="default"/>

<!-- These "magic lines" are pulled from: https://ant.apache.org/ivy/history/latest-milestone/tutorial/defaultconf.html -->
<include url="${ivy.default.settings.dir}/ivysettings-public.xml"/>
<include url="${ivy.default.settings.dir}/ivysettings-shared.xml"/>
<include url="${ivy.default.settings.dir}/ivysettings-local.xml"/>
<include url="${ivy.default.settings.dir}/ivysettings-main-chain.xml"/>
<include url="${ivy.default.settings.dir}/ivysettings-default-chain.xml"/>
<resolvers>
<!-- Custom Repos here -->
<ibiblio name="gluonhq" m2compatible="true" root="https://nexus.gluonhq.com/nexus/content/repositories/releases/"/>
</resolvers>
<chain name="default" returnFirst="true" checkmodified="true" changingPattern=".*SNAPSHOT">
<!-- These two are magic lines from the default conf -->
<resolver ref="local"/>
<resolver ref="main" />

<!-- Custom Repos here -->
<!-- <resolver ref="gluonhq" /> -->
</chain>
<modules>
<!-- <module organisation="org.openjfx" name=".*" resolver="gluonhq"/> -->
</modules>
</ivysettings>
Loading
Loading