From 935d72f433beaa4f9c2712d176d99ac556e7d1c7 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 19 Aug 2025 05:23:22 +0000 Subject: [PATCH 1/3] Initial plan From dcc8d4e17ce7047565603d518c72525a2e4bc0ff Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 19 Aug 2025 05:27:34 +0000 Subject: [PATCH 2/3] Initial analysis: document plan to upgrade to JDK 23 and add GitHub Actions Co-authored-by: camjjames <21994153+camjjames@users.noreply.github.com> --- mvnw | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 mvnw diff --git a/mvnw b/mvnw old mode 100644 new mode 100755 From bd8a85705f4c4b0fed83e18f9748c97ba1c34be0 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 19 Aug 2025 05:34:30 +0000 Subject: [PATCH 3/3] Upgrade to JDK 23 and add GitHub Actions CI workflow Co-authored-by: camjjames <21994153+camjjames@users.noreply.github.com> --- .circleci/config.yml | 2 +- .github/workflows/ci.yml | 72 ++++++++++++++++++++++++++++++++++++++++ pom.xml | 2 +- 3 files changed, 74 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/ci.yml diff --git a/.circleci/config.yml b/.circleci/config.yml index accc50c..b260e5d 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -3,7 +3,7 @@ version: 2.1 jobs: build: docker: - - image: cimg/openjdk:17.0 + - image: cimg/openjdk:23.0 steps: # Checkout the code as the first step. - checkout diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..607a629 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,72 @@ +name: CI + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + +jobs: + test: + runs-on: ubuntu-latest + strategy: + matrix: + java-version: ['17', '21', '23'] + + steps: + - uses: actions/checkout@v4 + + - name: Set up JDK ${{ matrix.java-version }} + uses: actions/setup-java@v4 + with: + java-version: ${{ matrix.java-version }} + distribution: 'temurin' + + - name: Cache Maven packages + uses: actions/cache@v4 + with: + path: ~/.m2 + key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} + restore-keys: ${{ runner.os }}-m2 + + - name: Run tests + run: mvn clean test + + - name: Generate test report + run: mvn jacoco:report + + - name: Upload coverage to Codecov + if: matrix.java-version == '23' + uses: codecov/codecov-action@v4 + with: + file: ./target/site/jacoco/jacoco.xml + fail_ci_if_error: false + + build: + runs-on: ubuntu-latest + needs: test + + steps: + - uses: actions/checkout@v4 + + - name: Set up JDK 23 + uses: actions/setup-java@v4 + with: + java-version: '23' + distribution: 'temurin' + + - name: Cache Maven packages + uses: actions/cache@v4 + with: + path: ~/.m2 + key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} + restore-keys: ${{ runner.os }}-m2 + + - name: Build with Maven + run: mvn clean compile package -DskipTests + + - name: Upload artifacts + uses: actions/upload-artifact@v4 + with: + name: jar-artifacts + path: target/*.jar \ No newline at end of file diff --git a/pom.xml b/pom.xml index dc8c057..b49be35 100644 --- a/pom.xml +++ b/pom.xml @@ -51,7 +51,7 @@ UTF-8 UTF-8 - 17 + 23 true true true