From f7fe89ee643f131ceed5fd02abf6631da23a7270 Mon Sep 17 00:00:00 2001 From: Isaiah <16439221+pisaiah@users.noreply.github.com> Date: Fri, 14 Aug 2026 20:20:56 -0400 Subject: [PATCH 1/4] Add GitHub Actions workflow for project build and tests This workflow automatically builds the project and runs tests on every push and pull request, ensuring compatibility across platforms and Java versions. --- .github/build.yml | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 .github/build.yml diff --git a/.github/build.yml b/.github/build.yml new file mode 100644 index 000000000..524fb1bdc --- /dev/null +++ b/.github/build.yml @@ -0,0 +1,30 @@ +# Automatically build the project and run any configured tests for every push +# and submitted pull request. This can help catch issues that only occur on +# certain platforms or Java versions, and provides a first line of defence +# against bad commits. + +name: build +on: [pull_request, push] + +jobs: + build: + runs-on: ubuntu-24.04 + steps: + - name: checkout repository + uses: actions/checkout@v6 + - name: validate gradle wrapper + uses: gradle/actions/wrapper-validation@v6 + - name: setup jdk + uses: actions/setup-java@v5 + with: + java-version: '25' + distribution: 'microsoft' + - name: make gradle wrapper executable + run: chmod +x ./gradlew + - name: build + run: ./gradlew build + - name: capture build artifacts + uses: actions/upload-artifact@v7 + with: + name: Artifacts + path: build/libs/ From 54aef21eb7b85f357f1ddf97cbd13b68b28327f6 Mon Sep 17 00:00:00 2001 From: Isaiah <16439221+pisaiah@users.noreply.github.com> Date: Fri, 14 Aug 2026 20:23:05 -0400 Subject: [PATCH 2/4] Rename .github/build.yml to .github/workflows/build.yml --- .github/{ => workflows}/build.yml | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .github/{ => workflows}/build.yml (100%) diff --git a/.github/build.yml b/.github/workflows/build.yml similarity index 100% rename from .github/build.yml rename to .github/workflows/build.yml From 67748064ea0f4b73ac233e262648f3163e486916 Mon Sep 17 00:00:00 2001 From: Isaiah <16439221+pisaiah@users.noreply.github.com> Date: Fri, 14 Aug 2026 20:33:23 -0400 Subject: [PATCH 3/4] Update GitHub Actions workflow for build process --- .github/workflows/build.yml | 36 ++++++++++++++++++++++++++++-------- 1 file changed, 28 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 524fb1bdc..bb1762c22 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -4,27 +4,47 @@ # against bad commits. name: build -on: [pull_request, push] +on: + pull_request: + paths-ignore: + - '**.md' + - '.gitignore' + - 'docs/**' + push: + paths-ignore: + - '**.md' + - '.gitignore' + - 'docs/**' jobs: build: runs-on: ubuntu-24.04 steps: - name: checkout repository - uses: actions/checkout@v6 + uses: actions/checkout@v4 + with: + fetch-depth: 1 + - name: validate gradle wrapper - uses: gradle/actions/wrapper-validation@v6 - - name: setup jdk - uses: actions/setup-java@v5 + uses: gradle/actions/wrapper-validation@v4 + + - name: setup jdk and cache gradle + uses: actions/setup-java@v4 with: java-version: '25' distribution: 'microsoft' + cache: 'gradle' + - name: make gradle wrapper executable run: chmod +x ./gradlew + - name: build - run: ./gradlew build + run: ./gradlew build --no-daemon --build-cache + - name: capture build artifacts - uses: actions/upload-artifact@v7 + if: success() + uses: actions/upload-artifact@v4 with: name: Artifacts - path: build/libs/ + path: build/libs/*.jar + if-no-files-found: ignore From 8cc1aee78850a8fe29df24b91a82189f3bafdd74 Mon Sep 17 00:00:00 2001 From: Isaiah <16439221+pisaiah@users.noreply.github.com> Date: Fri, 14 Aug 2026 20:39:50 -0400 Subject: [PATCH 4/4] Upgrade GitHub Actions to latest versions --- .github/workflows/build.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index bb1762c22..f406e87ad 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -21,7 +21,7 @@ jobs: runs-on: ubuntu-24.04 steps: - name: checkout repository - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: fetch-depth: 1 @@ -29,7 +29,7 @@ jobs: uses: gradle/actions/wrapper-validation@v4 - name: setup jdk and cache gradle - uses: actions/setup-java@v4 + uses: actions/setup-java@v5 with: java-version: '25' distribution: 'microsoft' @@ -43,7 +43,7 @@ jobs: - name: capture build artifacts if: success() - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: Artifacts path: build/libs/*.jar