From b5d214c64a9ec465bd2f55c6e6c20c8d83b150bb Mon Sep 17 00:00:00 2001 From: Alan O'Callaghan Date: Wed, 25 Jun 2025 17:50:11 +0100 Subject: [PATCH 1/9] Use new actions --- .github/workflows/build.yml | 31 +++---------- .github/workflows/github_release.yml | 17 +------ .github/workflows/maven.yml | 44 ------------------- .github/workflows/maven_snapshot.yml | 2 + .../java/qupath/ext/djl/DjlExtension.java | 6 +++ 5 files changed, 15 insertions(+), 85 deletions(-) delete mode 100644 .github/workflows/maven.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 062c8f0..1bd4fc7 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -8,34 +8,15 @@ on: branches: - "main" workflow_dispatch: - workflow_call: permissions: contents: read jobs: build: - runs-on: ubuntu-latest - - steps: - - - uses: actions/checkout@v4 - - - name: Set up JDK 21 - uses: actions/setup-java@v4 - with: - java-version: '21' - distribution: 'temurin' - - - name: Setup Gradle - uses: gradle/actions/setup-gradle@v4 - - - name: Build with Gradle - run: | - ./gradlew build - - - uses: actions/upload-artifact@v4 - with: - path: build/libs/*.jar - name: build - retention-days: 7 + uses: qupath/actions/.github/workflows/gradle.yml@main + with: + java-version: 17 + java-distribution: liberica + artifact-name: my-silly-artifact-name + gradle-args: build diff --git a/.github/workflows/github_release.yml b/.github/workflows/github_release.yml index 498ac53..d8c7c0a 100644 --- a/.github/workflows/github_release.yml +++ b/.github/workflows/github_release.yml @@ -5,21 +5,6 @@ on: jobs: build: - name: Run build - uses: ./.github/workflows/build.yml - - release: - needs: build permissions: contents: write - runs-on: ubuntu-latest - steps: - - - uses: actions/checkout@v4 - - - uses: actions/download-artifact@v4 - - - name: Release - env: - GH_TOKEN: ${{ github.token }} - run: gh release create --draft ${{ github.ref_name }} --title ${{ github.ref_name }} build/*.jar + uses: qupath/actions/.github/workflows/github-release.yml@main diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml deleted file mode 100644 index e4577cd..0000000 --- a/.github/workflows/maven.yml +++ /dev/null @@ -1,44 +0,0 @@ -name: Publish to SciJava Maven - -on: - workflow_call: - inputs: - release: - required: false - type: boolean - default: false - -jobs: - publish: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - uses: actions/setup-java@v4 - with: - java-version: '21' - distribution: 'temurin' - - - name: Setup Gradle - uses: gradle/actions/setup-gradle@v4 - - - name: Add release flag if input variable is set - if: ${{ inputs.release }} - shell: bash - run: | - echo "RELEASE_FLAG=-Prelease" >> $GITHUB_ENV - - - name: Publish - shell: bash - run: | - ./gradlew publish -Ptoolchain=21 $RELEASE_FLAG - env: - MAVEN_USER: ${{ secrets.MAVEN_USER }} - MAVEN_PASS: ${{ secrets.MAVEN_PASS }} - - - uses: actions/upload-artifact@v4 - if: ${{ inputs.release }} - with: - name: ${{ github.event.repository.name }}-release-jar - path: build/libs - retention-days: 7 diff --git a/.github/workflows/maven_snapshot.yml b/.github/workflows/maven_snapshot.yml index 458d45e..3461b6f 100644 --- a/.github/workflows/maven_snapshot.yml +++ b/.github/workflows/maven_snapshot.yml @@ -8,3 +8,5 @@ jobs: name: Publish snapshot uses: ./.github/workflows/maven.yml secrets: inherit + with: + release: true diff --git a/src/main/java/qupath/ext/djl/DjlExtension.java b/src/main/java/qupath/ext/djl/DjlExtension.java index 2161973..d7ca519 100644 --- a/src/main/java/qupath/ext/djl/DjlExtension.java +++ b/src/main/java/qupath/ext/djl/DjlExtension.java @@ -27,6 +27,7 @@ import qupath.lib.gui.extensions.GitHubProject; import qupath.lib.gui.extensions.QuPathExtension; import qupath.lib.gui.tools.MenuTools; +import qupath.lib.scripting.QP; import qupath.opencv.dnn.DnnModelBuilder; import qupath.opencv.dnn.DnnModels; @@ -50,6 +51,11 @@ public class DjlExtension implements QuPathExtension, GitHubProject { @Override public void installExtension(QuPathGUI qupath) { + if (Version.COMPARATOR_MAJOR_MINOR_PATCH.compare(QuPathGUI.getVersion(), Version.parse("0.6.0")) < 0) { + QP.removeDetections(); + } else { + QP.clearDetections(); + } if (Version.COMPARATOR_MAJOR_MINOR_PATCH.compare(QuPathGUI.getVersion(), getQuPathVersion()) < 0) { throw new UnsupportedOperationException("This extension version is incompatible with QuPath < v" + getQuPathVersion()); } From 77b7c83ede691043796362c3518e4865f6bb5b39 Mon Sep 17 00:00:00 2001 From: Alan O'Callaghan Date: Wed, 25 Jun 2025 17:54:22 +0100 Subject: [PATCH 2/9] Use new actions --- .github/workflows/build.yml | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 1bd4fc7..bce6eb3 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -5,7 +5,7 @@ on: branches: - "main" pull_request: - branches: + branches: - "main" workflow_dispatch: @@ -15,8 +15,3 @@ permissions: jobs: build: uses: qupath/actions/.github/workflows/gradle.yml@main - with: - java-version: 17 - java-distribution: liberica - artifact-name: my-silly-artifact-name - gradle-args: build From a8ce40174b4823b057658001a5f78227a7c449a8 Mon Sep 17 00:00:00 2001 From: Alan O'Callaghan Date: Wed, 25 Jun 2025 17:55:44 +0100 Subject: [PATCH 3/9] Update DjlExtension.java --- src/main/java/qupath/ext/djl/DjlExtension.java | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/main/java/qupath/ext/djl/DjlExtension.java b/src/main/java/qupath/ext/djl/DjlExtension.java index d7ca519..eb0b111 100644 --- a/src/main/java/qupath/ext/djl/DjlExtension.java +++ b/src/main/java/qupath/ext/djl/DjlExtension.java @@ -51,11 +51,6 @@ public class DjlExtension implements QuPathExtension, GitHubProject { @Override public void installExtension(QuPathGUI qupath) { - if (Version.COMPARATOR_MAJOR_MINOR_PATCH.compare(QuPathGUI.getVersion(), Version.parse("0.6.0")) < 0) { - QP.removeDetections(); - } else { - QP.clearDetections(); - } if (Version.COMPARATOR_MAJOR_MINOR_PATCH.compare(QuPathGUI.getVersion(), getQuPathVersion()) < 0) { throw new UnsupportedOperationException("This extension version is incompatible with QuPath < v" + getQuPathVersion()); } From 6b22ff3e07bb1da540dedbc0d23511c9f227ab83 Mon Sep 17 00:00:00 2001 From: Alan O'Callaghan Date: Wed, 25 Jun 2025 22:17:32 +0100 Subject: [PATCH 4/9] Update DjlExtension.java --- src/main/java/qupath/ext/djl/DjlExtension.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main/java/qupath/ext/djl/DjlExtension.java b/src/main/java/qupath/ext/djl/DjlExtension.java index eb0b111..2161973 100644 --- a/src/main/java/qupath/ext/djl/DjlExtension.java +++ b/src/main/java/qupath/ext/djl/DjlExtension.java @@ -27,7 +27,6 @@ import qupath.lib.gui.extensions.GitHubProject; import qupath.lib.gui.extensions.QuPathExtension; import qupath.lib.gui.tools.MenuTools; -import qupath.lib.scripting.QP; import qupath.opencv.dnn.DnnModelBuilder; import qupath.opencv.dnn.DnnModels; From eb48d0824f5bcc71fa2b9b3e1f41efd5ac08b478 Mon Sep 17 00:00:00 2001 From: Alan O'Callaghan Date: Wed, 25 Jun 2025 22:57:51 +0100 Subject: [PATCH 5/9] Simplify maven config --- .github/workflows/maven_release.yml | 12 ------------ .github/workflows/maven_snapshot.yml | 12 ------------ .github/workflows/scijava-maven.yml | 17 +++++++++++++++++ 3 files changed, 17 insertions(+), 24 deletions(-) delete mode 100644 .github/workflows/maven_release.yml delete mode 100644 .github/workflows/maven_snapshot.yml create mode 100644 .github/workflows/scijava-maven.yml diff --git a/.github/workflows/maven_release.yml b/.github/workflows/maven_release.yml deleted file mode 100644 index dc0b76c..0000000 --- a/.github/workflows/maven_release.yml +++ /dev/null @@ -1,12 +0,0 @@ -name: Publish release to SciJava Maven - -on: - workflow_dispatch: - -jobs: - build: - name: Publish release - uses: ./.github/workflows/maven.yml - secrets: inherit - with: - release: true diff --git a/.github/workflows/maven_snapshot.yml b/.github/workflows/maven_snapshot.yml deleted file mode 100644 index 3461b6f..0000000 --- a/.github/workflows/maven_snapshot.yml +++ /dev/null @@ -1,12 +0,0 @@ -name: Publish snapshot to SciJava Maven - -on: - workflow_dispatch: - -jobs: - build: - name: Publish snapshot - uses: ./.github/workflows/maven.yml - secrets: inherit - with: - release: true diff --git a/.github/workflows/scijava-maven.yml b/.github/workflows/scijava-maven.yml new file mode 100644 index 0000000..41b1ac9 --- /dev/null +++ b/.github/workflows/scijava-maven.yml @@ -0,0 +1,17 @@ +name: Publish release to SciJava Maven + +on: + workflow_dispatch: + inputs: + release: + type: boolean + description: Whether to make a release, or if not a snapshot + required: true + +jobs: + build: + name: Publish release + uses: qupath/actions/.github/workflows/scijava-maven.yml@main + secrets: inherit + with: + release: ${{ inputs.release }} From acf7b52fd2634008d68b205e07794faa9bc565ba Mon Sep 17 00:00:00 2001 From: Alan O'Callaghan Date: Wed, 2 Jul 2025 12:35:43 +0100 Subject: [PATCH 6/9] Update gradle via qupath/actions/.github/workflows/update-gradle.yml From f02296a9283e17624ce09e0a70c61e10bb12f890 Mon Sep 17 00:00:00 2001 From: Alan O'Callaghan Date: Wed, 2 Jul 2025 12:38:30 +0100 Subject: [PATCH 7/9] Update gradle via qupath/actions/.github/workflows/update-gradle.yml --- .github/workflows/update-gradle.yml | 33 +++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 .github/workflows/update-gradle.yml diff --git a/.github/workflows/update-gradle.yml b/.github/workflows/update-gradle.yml new file mode 100644 index 0000000..cf43bf3 --- /dev/null +++ b/.github/workflows/update-gradle.yml @@ -0,0 +1,33 @@ +name: Update gradle version + +on: + workflow_dispatch: + inputs: + gradle-version: + description: Gradle version + default: latest + type: string + required: false + +jobs: + update: + env: + GH_TOKEN: ${{ github.token }} + runs-on: ubuntu-latest + defaults: + run: + shell: bash + steps: + - uses: actions/checkout@v4 + - name: Update gradlew + run: | + ./gradlew wrapper --gradle-version ${{ inputs.gradle-version }} + - name: Commit and push + run: | + git config user.name "github-actions[bot]" + git config user.email "github-actions[bot]@users.noreply.github.com" + git checkout -b gradle-update + git add . + git commit --allow-empty -m "Update gradle via qupath/actions/.github/workflows/update-gradle.yml" + git push -u origin gradle-update + gh pr create --title "Update gradle via actions" --body "$(./gradlew --version)" From 068b1d87b14b62022b100d6f360bf0112b4049b9 Mon Sep 17 00:00:00 2001 From: Alan O'Callaghan Date: Wed, 2 Jul 2025 12:39:10 +0100 Subject: [PATCH 8/9] Update gradle via qupath/actions/.github/workflows/update-gradle.yml From 15b05ea201d60b51b994d6de1bc052489b83bc5b Mon Sep 17 00:00:00 2001 From: Alan O'Callaghan Date: Wed, 2 Jul 2025 15:29:32 +0100 Subject: [PATCH 9/9] Reword --- .github/workflows/scijava-maven.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/scijava-maven.yml b/.github/workflows/scijava-maven.yml index 41b1ac9..b1668b4 100644 --- a/.github/workflows/scijava-maven.yml +++ b/.github/workflows/scijava-maven.yml @@ -5,7 +5,7 @@ on: inputs: release: type: boolean - description: Whether to make a release, or if not a snapshot + description: Should this be a release? (if not, do a snapshot) required: true jobs: