From fb0dfa755261f155eb7e521eee0761f45e7c6f43 Mon Sep 17 00:00:00 2001 From: Mark Rotteveel Date: Tue, 1 Oct 2024 13:07:55 +0200 Subject: [PATCH] #23 Require Java 21 --- .github/workflows/codeql.yml | 6 +++--- .github/workflows/publish.yml | 6 +++--- .github/workflows/run-tests.yml | 6 +++--- build.gradle | 5 +++++ devdoc/adr/2024-03-java-21-minimum-version.adoc | 2 +- src/docs/asciidoc/chapters/_installing.adoc | 10 ++++++---- src/docs/asciidoc/release-notes.adoc | 8 ++++++-- 7 files changed, 27 insertions(+), 16 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index e84167f..fbe0c19 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -1,5 +1,5 @@ # SPDX-FileCopyrightText: GitHub, Inc -# SPDX-FileCopyrightText: 2023-2024 Mark Rotteveel +# SPDX-FileCopyrightText: Copyright 2023-2024 Mark Rotteveel # SPDX-License-Identifier: MIT # # NOTE: Above license was guessed based on the license listed on https://github.com/github/codeql @@ -61,10 +61,10 @@ jobs: # For more details on CodeQL's query packs, refer to: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs # queries: security-extended,security-and-quality - - name: Set up Java 17 + - name: Set up Java 21 uses: actions/setup-java@v4 with: - java-version: '17' + java-version: '21' distribution: 'temurin' - name: Setup Gradle diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index c717f2e..9c68421 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2023-2024 Mark Rotteveel +# SPDX-FileCopyrightText: Copyright 2023-2024 Mark Rotteveel # SPDX-License-Identifier: Apache-2.0 name: Publish documentation and artifacts for tags on: @@ -15,10 +15,10 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - name: Set up Java 17 + - name: Set up Java 21 uses: actions/setup-java@v4 with: - java-version: '17' + java-version: '21' distribution: 'temurin' - name: Setup Gradle uses: gradle/actions/setup-gradle@d156388eb19639ec20ade50009f3d199ce1e2808 diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index 6061065..1e93bd2 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: 2023-2024 Mark Rotteveel +# SPDX-FileCopyrightText: Copyright 2023-2024 Mark Rotteveel # SPDX-License-Identifier: Apache-2.0 name: run-tests @@ -16,10 +16,10 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - name: Set up Java 17 + - name: Set up Java 21 uses: actions/setup-java@v4 with: - java-version: '17' + java-version: '21' distribution: 'temurin' - name: Setup Gradle uses: gradle/actions/setup-gradle@d156388eb19639ec20ade50009f3d199ce1e2808 diff --git a/build.gradle b/build.gradle index 57b0c43..1e3a13a 100644 --- a/build.gradle +++ b/build.gradle @@ -19,6 +19,11 @@ application { mainClass = 'nl.lawinegevaar.exttablegen.ExtTableGenMain' } +java { + sourceCompatibility = JavaVersion.VERSION_21 + targetCompatibility = JavaVersion.VERSION_21 +} + jaxb { javaGen { extTableGenConfig { diff --git a/devdoc/adr/2024-03-java-21-minimum-version.adoc b/devdoc/adr/2024-03-java-21-minimum-version.adoc index b9cf7f5..93eb6b2 100644 --- a/devdoc/adr/2024-03-java-21-minimum-version.adoc +++ b/devdoc/adr/2024-03-java-21-minimum-version.adoc @@ -6,7 +6,7 @@ == Status * Published: 2024-10-01 -* Proposed for: 3.0 +* Implemented in: 3.0 == Type diff --git a/src/docs/asciidoc/chapters/_installing.adoc b/src/docs/asciidoc/chapters/_installing.adoc index 858df4a..3b0b93c 100644 --- a/src/docs/asciidoc/chapters/_installing.adoc +++ b/src/docs/asciidoc/chapters/_installing.adoc @@ -1,15 +1,17 @@ [#install] = Installation -// SPDX-FileCopyrightText: 2023 Mark Rotteveel +// SPDX-FileCopyrightText: Copyright 2024-2023 Mark Rotteveel // SPDX-License-Identifier: Apache-2.0 [#install-req] == Requirements -The "`Firebird External Table Generator`" or _ext-table-gen_ requires Java 17. +The "`Firebird External Table Generator`" or _ext-table-gen_ 3.0 requires Java 21. We have not tested it on higher versions, but expect it to work on higher versions as well. -We will only fix issues reported against Java versions which are in support according to the OpenJDK project, at the time of writing this -- August 2023, that means Java 17 and Java 20. +We will only fix issues reported against Java versions which are in support according to the OpenJDK project, at the time of writing this -- October 2024, that means Java 21 and Java 23. + +The previous versions of _ext-table-gen_ -- 1.0 and 2.0 -- require Java 17. [#install-dist] == Distribution package @@ -49,7 +51,7 @@ It may be necessary to make `bin/ext-table-gen` explicitly executable with `chmo [#install-paths] === Setting environment variables -To be able to call _ext-table-gen_, Java 17 or higher must be on the `PATH` (the `bin` directory of the Java installation), or alternatively, you need to set `JAVA_HOME` to point to the Java 17 installation directory (not its `bin` directory, but the directory which contains the `bin` directory). +To be able to call _ext-table-gen_, Java 21 or higher must be on the `PATH` (the `bin` directory of the Java installation), or alternatively, you need to set `JAVA_HOME` to point to the Java 21 installation directory (not its `bin` directory, but the directory which contains the `bin` directory). If you don't have Java installed, install it using your package manager, https://sdkman.io/[sdkman^] (Linux/macOS), or download it, for example from https://adoptium.net/[Eclipse Adoptium^]. diff --git a/src/docs/asciidoc/release-notes.adoc b/src/docs/asciidoc/release-notes.adoc index 7ee085d..aa7eafd 100644 --- a/src/docs/asciidoc/release-notes.adoc +++ b/src/docs/asciidoc/release-notes.adoc @@ -13,7 +13,7 @@ Mark Rotteveel :sectnums: :link-rfc4180: https://www.rfc-editor.org/rfc/rfc4180 -// SPDX-FileCopyrightText: 2023 Mark Rotteveel +// SPDX-FileCopyrightText: Copyright 2023-2024 Mark Rotteveel // SPDX-License-Identifier: Apache-2.0 Copyright 2023-2024 Mark Rotteveel and all contributing authors under the https://www.apache.org/licenses/LICENSE-2.0[Apache 2.0 license^]. @@ -60,7 +60,7 @@ _ext-table-gen_ supports the following types of columns: [#about-version] == About this version -Firebird External Table Generator version 3.0 is the thirs release of this application. +Firebird External Table Generator version 3.0 is the third release of this application. This version introduces the following new features: @@ -71,6 +71,9 @@ This version introduces the following new features: This application is licensed under the https://www.apache.org/licenses/LICENSE-2.0[Apache 2.0 license^]. +Version 3.0 requires Java 21. +Versions 1.0 and 2.0 require Java 17. + Consult the xref:ext-table-gen-user-manual.adoc[User Manual] for installation, usage examples and reference documentation. For more information, or to report issues or submit pull requests, go to https://github.com/mrotteveel/ext-table-gen[^] @@ -84,6 +87,7 @@ The following changes were made in _ext-table-gen_ 3.0: * Add support for binary floating point types (`FLOAT`, `DOUBLE PRECISION`) (https://github.com/mrotteveel/ext-table-gen/issues/20[#20^]) * Add nullability annotations (https://github.com/mrotteveel/ext-table-gen/issues/22[#22^]) +* Java 21 is now the minimum supported version (https://github.com/mrotteveel/ext-table-gen/issues/23[#23^]) ==== _ext-table-gen_ 2.0