From 85debd81bc83f5615d2b6615d303eb8ab2854387 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 29 Aug 2025 02:43:11 +0000 Subject: [PATCH 1/7] Initial plan From cccf0559ebb87d6ebe6b320d8ac24f78d019772d Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 29 Aug 2025 02:50:39 +0000 Subject: [PATCH 2/7] Enable Gradle cache in GitHub Actions workflows Co-authored-by: yutaro-sakamoto <80912876+yutaro-sakamoto@users.noreply.github.com> --- .github/workflows/javadoc.yml | 5 +++ .github/workflows/static-analysis.yml | 5 +++ .github/workflows/update-github-pages.yml | 5 +++ .github/workflows/windows-build.yml | 5 +++ libcobj/app/testController.java | 42 +++++++++++++++++++++++ libcobj/app/testRecord.java | 6 ++++ 6 files changed, 68 insertions(+) create mode 100644 libcobj/app/testController.java create mode 100644 libcobj/app/testRecord.java diff --git a/.github/workflows/javadoc.yml b/.github/workflows/javadoc.yml index ef5dae7a..423b9098 100644 --- a/.github/workflows/javadoc.yml +++ b/.github/workflows/javadoc.yml @@ -18,6 +18,11 @@ jobs: - name: Checkout opensource COBOL 4J uses: actions/checkout@v5 + - name: Setup Gradle + uses: gradle/gradle-build-action@v3 + with: + gradle-version: wrapper + - name: Run javadoc working-directory: libcobj run: | diff --git a/.github/workflows/static-analysis.yml b/.github/workflows/static-analysis.yml index 128069ef..57db1617 100644 --- a/.github/workflows/static-analysis.yml +++ b/.github/workflows/static-analysis.yml @@ -36,6 +36,11 @@ jobs: run: | ./check-format + - name: Setup Gradle + uses: gradle/gradle-build-action@v3 + with: + gradle-version: wrapper + - name: Run SpotBugs working-directory: libcobj run: | diff --git a/.github/workflows/update-github-pages.yml b/.github/workflows/update-github-pages.yml index 516ccc74..687ba3d3 100644 --- a/.github/workflows/update-github-pages.yml +++ b/.github/workflows/update-github-pages.yml @@ -41,6 +41,11 @@ jobs: distribution: 'temurin' java-version: '21' + - name: Setup Gradle + uses: gradle/gradle-build-action@v3 + with: + gradle-version: wrapper + - name: Build Javadoc working-directory: libcobj run: | diff --git a/.github/workflows/windows-build.yml b/.github/workflows/windows-build.yml index f367e55c..617c9a50 100644 --- a/.github/workflows/windows-build.yml +++ b/.github/workflows/windows-build.yml @@ -29,6 +29,11 @@ jobs: - name: Restore NuGet packages run: nuget restore ./win/ + - name: Setup Gradle + uses: gradle/gradle-build-action@v3 + with: + gradle-version: wrapper + - name: Install opensource COBOL 4J working-directory: libcobj run: ./gradlew shadowJar diff --git a/libcobj/app/testController.java b/libcobj/app/testController.java new file mode 100644 index 00000000..176fa2b6 --- /dev/null +++ b/libcobj/app/testController.java @@ -0,0 +1,42 @@ +package com.example.restservice; +import java.util.concurrent.atomic.AtomicLong; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; +import jp.osscons.opensourcecobol.libcobj.ui.*; + +@RestController +@RequestMapping("/test") +public class testController { + + @GetMapping + public testRecord testController( + @RequestParam(value = "param1", defaultValue = "0") int param1, + @RequestParam(value = "param2", defaultValue = "0") double param2, + @RequestParam(value = "param3", defaultValue = "") String param3 + ) { + return testExecute(param1, param2, param3); + } + + @PostMapping + public testRecord testControllerExecute(@RequestBody testRecord testRecord) { + return testExecute(testRecord.param1(), testRecord.param2(), testRecord.param3()); + } + + private testRecord testExecute(int param1, double param2, String param3) { + int statuscode = 200; + test testCobol = new test(); + CobolResultSet result = testCobol.execute(param1, param2, param3); + try { + param1 = result.getInt(1); + param2 = result.getDouble(2); + param3 = result.getString(3); + } catch (Exception e) { + statuscode = 500; + } + return new testRecord(statuscode, param1, param2, param3); + } +} diff --git a/libcobj/app/testRecord.java b/libcobj/app/testRecord.java new file mode 100644 index 00000000..77f80344 --- /dev/null +++ b/libcobj/app/testRecord.java @@ -0,0 +1,6 @@ +package com.example.restservice; +public record testRecord(int statuscode, int param1, double param2, String param3) { + public testRecord(){ + this(200, 0, 0, ""); + } +} From 7e35f7f12d99542c54b8937585e558a1b7804ccb Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 29 Aug 2025 02:51:10 +0000 Subject: [PATCH 3/7] Remove accidental test files that were not part of the caching changes Co-authored-by: yutaro-sakamoto <80912876+yutaro-sakamoto@users.noreply.github.com> --- libcobj/app/testController.java | 42 --------------------------------- libcobj/app/testRecord.java | 6 ----- 2 files changed, 48 deletions(-) delete mode 100644 libcobj/app/testController.java delete mode 100644 libcobj/app/testRecord.java diff --git a/libcobj/app/testController.java b/libcobj/app/testController.java deleted file mode 100644 index 176fa2b6..00000000 --- a/libcobj/app/testController.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.example.restservice; -import java.util.concurrent.atomic.AtomicLong; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RestController; -import jp.osscons.opensourcecobol.libcobj.ui.*; - -@RestController -@RequestMapping("/test") -public class testController { - - @GetMapping - public testRecord testController( - @RequestParam(value = "param1", defaultValue = "0") int param1, - @RequestParam(value = "param2", defaultValue = "0") double param2, - @RequestParam(value = "param3", defaultValue = "") String param3 - ) { - return testExecute(param1, param2, param3); - } - - @PostMapping - public testRecord testControllerExecute(@RequestBody testRecord testRecord) { - return testExecute(testRecord.param1(), testRecord.param2(), testRecord.param3()); - } - - private testRecord testExecute(int param1, double param2, String param3) { - int statuscode = 200; - test testCobol = new test(); - CobolResultSet result = testCobol.execute(param1, param2, param3); - try { - param1 = result.getInt(1); - param2 = result.getDouble(2); - param3 = result.getString(3); - } catch (Exception e) { - statuscode = 500; - } - return new testRecord(statuscode, param1, param2, param3); - } -} diff --git a/libcobj/app/testRecord.java b/libcobj/app/testRecord.java deleted file mode 100644 index 77f80344..00000000 --- a/libcobj/app/testRecord.java +++ /dev/null @@ -1,6 +0,0 @@ -package com.example.restservice; -public record testRecord(int statuscode, int param1, double param2, String param3) { - public testRecord(){ - this(200, 0, 0, ""); - } -} From 77527aff392776f136e1636683966f5d16aa44bc Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 29 Aug 2025 03:03:09 +0000 Subject: [PATCH 4/7] Add Gradle cache to create-release.yml workflow The create-release.yml workflow also uses Gradle for publishing packages but was missing the gradle-build-action caching configuration. This adds the proper setup step with gradle-version: wrapper to enable caching for the publish job as well. Co-authored-by: yutaro-sakamoto <80912876+yutaro-sakamoto@users.noreply.github.com> --- .github/workflows/create-release.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/create-release.yml b/.github/workflows/create-release.yml index d101109c..1633510a 100644 --- a/.github/workflows/create-release.yml +++ b/.github/workflows/create-release.yml @@ -64,9 +64,11 @@ jobs: distribution: 'temurin' - name: Validate Gradle wrapper uses: gradle/wrapper-validation-action@v3 - - name: Publish package + - name: Setup Gradle uses: gradle/gradle-build-action@v3 with: - arguments: publish + gradle-version: wrapper + - name: Publish package + run: ./gradlew publish env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} From adbbf7d7505e3cca988cbd344b8a499723ab652f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 29 Aug 2025 05:09:40 +0000 Subject: [PATCH 5/7] Replace deprecated gradle/gradle-build-action with gradle/actions/setup-gradle Co-authored-by: yutaro-sakamoto <80912876+yutaro-sakamoto@users.noreply.github.com> --- .github/workflows/create-release.yml | 2 +- .github/workflows/javadoc.yml | 2 +- .github/workflows/static-analysis.yml | 2 +- .github/workflows/update-github-pages.yml | 2 +- .github/workflows/windows-build.yml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/create-release.yml b/.github/workflows/create-release.yml index 1633510a..bf14f026 100644 --- a/.github/workflows/create-release.yml +++ b/.github/workflows/create-release.yml @@ -65,7 +65,7 @@ jobs: - name: Validate Gradle wrapper uses: gradle/wrapper-validation-action@v3 - name: Setup Gradle - uses: gradle/gradle-build-action@v3 + uses: gradle/actions/setup-gradle@v3 with: gradle-version: wrapper - name: Publish package diff --git a/.github/workflows/javadoc.yml b/.github/workflows/javadoc.yml index 423b9098..be960324 100644 --- a/.github/workflows/javadoc.yml +++ b/.github/workflows/javadoc.yml @@ -19,7 +19,7 @@ jobs: uses: actions/checkout@v5 - name: Setup Gradle - uses: gradle/gradle-build-action@v3 + uses: gradle/actions/setup-gradle@v3 with: gradle-version: wrapper diff --git a/.github/workflows/static-analysis.yml b/.github/workflows/static-analysis.yml index 57db1617..a2654523 100644 --- a/.github/workflows/static-analysis.yml +++ b/.github/workflows/static-analysis.yml @@ -37,7 +37,7 @@ jobs: ./check-format - name: Setup Gradle - uses: gradle/gradle-build-action@v3 + uses: gradle/actions/setup-gradle@v3 with: gradle-version: wrapper diff --git a/.github/workflows/update-github-pages.yml b/.github/workflows/update-github-pages.yml index 687ba3d3..5e9deb67 100644 --- a/.github/workflows/update-github-pages.yml +++ b/.github/workflows/update-github-pages.yml @@ -42,7 +42,7 @@ jobs: java-version: '21' - name: Setup Gradle - uses: gradle/gradle-build-action@v3 + uses: gradle/actions/setup-gradle@v3 with: gradle-version: wrapper diff --git a/.github/workflows/windows-build.yml b/.github/workflows/windows-build.yml index 617c9a50..077b2ada 100644 --- a/.github/workflows/windows-build.yml +++ b/.github/workflows/windows-build.yml @@ -30,7 +30,7 @@ jobs: run: nuget restore ./win/ - name: Setup Gradle - uses: gradle/gradle-build-action@v3 + uses: gradle/actions/setup-gradle@v3 with: gradle-version: wrapper From 86477782733dd93c5cb1847b9c132e8ac34ef94a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 2 Sep 2025 01:21:22 +0000 Subject: [PATCH 6/7] Limit Gradle cache to windows-build.yml only as requested Co-authored-by: yutaro-sakamoto <80912876+yutaro-sakamoto@users.noreply.github.com> --- .github/workflows/create-release.yml | 8 +++----- .github/workflows/javadoc.yml | 5 ----- .github/workflows/static-analysis.yml | 5 ----- .github/workflows/update-github-pages.yml | 5 ----- 4 files changed, 3 insertions(+), 20 deletions(-) diff --git a/.github/workflows/create-release.yml b/.github/workflows/create-release.yml index bf14f026..d101109c 100644 --- a/.github/workflows/create-release.yml +++ b/.github/workflows/create-release.yml @@ -64,11 +64,9 @@ jobs: distribution: 'temurin' - name: Validate Gradle wrapper uses: gradle/wrapper-validation-action@v3 - - name: Setup Gradle - uses: gradle/actions/setup-gradle@v3 - with: - gradle-version: wrapper - name: Publish package - run: ./gradlew publish + uses: gradle/gradle-build-action@v3 + with: + arguments: publish env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/javadoc.yml b/.github/workflows/javadoc.yml index be960324..ef5dae7a 100644 --- a/.github/workflows/javadoc.yml +++ b/.github/workflows/javadoc.yml @@ -18,11 +18,6 @@ jobs: - name: Checkout opensource COBOL 4J uses: actions/checkout@v5 - - name: Setup Gradle - uses: gradle/actions/setup-gradle@v3 - with: - gradle-version: wrapper - - name: Run javadoc working-directory: libcobj run: | diff --git a/.github/workflows/static-analysis.yml b/.github/workflows/static-analysis.yml index a2654523..128069ef 100644 --- a/.github/workflows/static-analysis.yml +++ b/.github/workflows/static-analysis.yml @@ -36,11 +36,6 @@ jobs: run: | ./check-format - - name: Setup Gradle - uses: gradle/actions/setup-gradle@v3 - with: - gradle-version: wrapper - - name: Run SpotBugs working-directory: libcobj run: | diff --git a/.github/workflows/update-github-pages.yml b/.github/workflows/update-github-pages.yml index 5e9deb67..516ccc74 100644 --- a/.github/workflows/update-github-pages.yml +++ b/.github/workflows/update-github-pages.yml @@ -41,11 +41,6 @@ jobs: distribution: 'temurin' java-version: '21' - - name: Setup Gradle - uses: gradle/actions/setup-gradle@v3 - with: - gradle-version: wrapper - - name: Build Javadoc working-directory: libcobj run: | From 7e9923332c37dbab606e736496cb832f822ae8a2 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 2 Sep 2025 01:25:51 +0000 Subject: [PATCH 7/7] Enable Gradle cache in build.yml workflow for make command optimization Co-authored-by: yutaro-sakamoto <80912876+yutaro-sakamoto@users.noreply.github.com> --- .github/workflows/build.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f5f72046..7044067f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -53,6 +53,11 @@ jobs: - name: Checkout opensource COBOL 4J uses: actions/checkout@v5 + - name: Setup Gradle + uses: gradle/actions/setup-gradle@v3 + with: + gradle-version: wrapper + - name: Install opensource COBOL 4J if: inputs.configure-args == '' run: |