diff --git a/.github/workflows/ci-build-next-java.yml b/.github/workflows/ci-build-next-java.yml index e8302fe..712a7cb 100644 --- a/.github/workflows/ci-build-next-java.yml +++ b/.github/workflows/ci-build-next-java.yml @@ -1,36 +1,39 @@ -# Generated by Project Keeper -# https://github.com/exasol/project-keeper/blob/main/project-keeper/src/main/resources/templates/.github/workflows/ci-build-next-java.yml +# This file was generated by Project Keeper. name: CI Build next Java on: push: - branches: - - main - pull_request: - + branches: [ + main + ] + + pull_request: null jobs: - java-17-compatibility: + next-java-compatibility: runs-on: ubuntu-latest defaults: - run: - shell: "bash" - permissions: + run: { + shell: bash + } + permissions: { contents: read - concurrency: - group: ${{ github.workflow }}-${{ github.ref }} + } + concurrency: { + group: '${{ github.workflow }}-${{ github.ref }}', cancel-in-progress: true + } steps: - name: Checkout the repository uses: actions/checkout@v4 - with: + with: { fetch-depth: 0 + } - name: Set up JDK 17 uses: actions/setup-java@v4 - with: - distribution: "temurin" - java-version: 17 - cache: "maven" - - name: Run tests and build with Maven + with: { + distribution: temurin, + java-version: '17', + cache: maven + } + - name: Run tests and build with Maven 17 run: | - mvn --batch-mode --update-snapshots clean package -DtrimStackTrace=false \ - -Djava.version=17 \ - -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn + mvn --batch-mode clean package -DtrimStackTrace=false -Djava.version=17 diff --git a/.github/workflows/ci-build.yml b/.github/workflows/ci-build.yml index 6966fbd..7e0f267 100644 --- a/.github/workflows/ci-build.yml +++ b/.github/workflows/ci-build.yml @@ -50,7 +50,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: temurin - java-version: | + java-version: |- 11 17 cache: maven @@ -127,7 +127,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: temurin - java-version: | + java-version: |- 11 17 cache: maven diff --git a/.github/workflows/dependencies_check.yml b/.github/workflows/dependencies_check.yml index 9c2365c..02c5aa0 100644 --- a/.github/workflows/dependencies_check.yml +++ b/.github/workflows/dependencies_check.yml @@ -35,7 +35,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: temurin - java-version: | + java-version: |- 11 17 cache: maven diff --git a/.github/workflows/dependencies_update.yml b/.github/workflows/dependencies_update.yml index 0fa7180..c901506 100644 --- a/.github/workflows/dependencies_update.yml +++ b/.github/workflows/dependencies_update.yml @@ -35,7 +35,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: temurin - java-version: | + java-version: |- 11 17 cache: maven diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 2a8bbf7..750fe45 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -52,7 +52,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: temurin - java-version: | + java-version: |- 11 17 cache: maven @@ -67,7 +67,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: temurin - java-version: | + java-version: |- 11 17 cache: maven diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs index bb40c3f..43365b0 100644 --- a/.settings/org.eclipse.jdt.core.prefs +++ b/.settings/org.eclipse.jdt.core.prefs @@ -1,15 +1,19 @@ eclipse.preferences.version=1 +org.eclipse.jdt.core.builder.annotationPath.allLocations=disabled org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore -org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull +org.eclipse.jdt.core.compiler.annotation.nonnull=javax.annotation.Nonnull org.eclipse.jdt.core.compiler.annotation.nonnull.secondary= -org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault +org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=javax.annotation.ParametersAreNonnullByDefault org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary= -org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable +org.eclipse.jdt.core.compiler.annotation.notowning=org.eclipse.jdt.annotation.NotOwning +org.eclipse.jdt.core.compiler.annotation.nullable=javax.annotation.Nullable org.eclipse.jdt.core.compiler.annotation.nullable.secondary= -org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled +org.eclipse.jdt.core.compiler.annotation.nullanalysis=enabled +org.eclipse.jdt.core.compiler.annotation.owning=org.eclipse.jdt.annotation.Owning +org.eclipse.jdt.core.compiler.annotation.resourceanalysis=disabled org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate +org.eclipse.jdt.core.compiler.codegen.methodParameters=generate org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve org.eclipse.jdt.core.compiler.compliance=11 @@ -17,6 +21,7 @@ org.eclipse.jdt.core.compiler.debug.lineNumber=generate org.eclipse.jdt.core.compiler.debug.localVariable=generate org.eclipse.jdt.core.compiler.debug.sourceFile=generate org.eclipse.jdt.core.compiler.problem.APILeak=warning +org.eclipse.jdt.core.compiler.problem.annotatedTypeArgumentToUnannotated=info org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning org.eclipse.jdt.core.compiler.problem.assertIdentifier=error org.eclipse.jdt.core.compiler.problem.autoboxing=ignore @@ -39,8 +44,10 @@ org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning +org.eclipse.jdt.core.compiler.problem.incompatibleOwningContract=warning org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore +org.eclipse.jdt.core.compiler.problem.insufficientResourceAnalysis=warning org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore @@ -56,15 +63,15 @@ org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning -org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error +org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=warning org.eclipse.jdt.core.compiler.problem.nullReference=warning -org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error -org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning +org.eclipse.jdt.core.compiler.problem.nullSpecViolation=warning +org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=ignore org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore -org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore +org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning @@ -78,7 +85,8 @@ org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled -org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled +org.eclipse.jdt.core.compiler.problem.suppressWarningsNotFullyAnalysed=info +org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=enabled org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore org.eclipse.jdt.core.compiler.problem.terminalDeprecation=warning org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning diff --git a/.settings/org.eclipse.jdt.ui.prefs b/.settings/org.eclipse.jdt.ui.prefs index 1add06a..54d02ac 100644 --- a/.settings/org.eclipse.jdt.ui.prefs +++ b/.settings/org.eclipse.jdt.ui.prefs @@ -76,6 +76,7 @@ sp_cleanup.add_missing_nls_tags=false sp_cleanup.add_missing_override_annotations=true sp_cleanup.add_missing_override_annotations_interface_methods=true sp_cleanup.add_serial_version_id=false +sp_cleanup.also_simplify_lambda=false sp_cleanup.always_use_blocks=true sp_cleanup.always_use_parentheses_in_expressions=true sp_cleanup.always_use_this_for_non_static_field_access=true @@ -130,6 +131,7 @@ sp_cleanup.one_if_rather_than_duplicate_blocks_that_fall_through=false sp_cleanup.operand_factorization=false sp_cleanup.organize_imports=true sp_cleanup.overridden_assignment=false +sp_cleanup.overridden_assignment_move_decl=false sp_cleanup.plain_replacement=false sp_cleanup.precompile_regex=false sp_cleanup.primitive_comparison=false @@ -159,10 +161,12 @@ sp_cleanup.remove_unnecessary_casts=true sp_cleanup.remove_unnecessary_nls_tags=true sp_cleanup.remove_unused_imports=true sp_cleanup.remove_unused_local_variables=false +sp_cleanup.remove_unused_method_parameters=false sp_cleanup.remove_unused_private_fields=true sp_cleanup.remove_unused_private_members=false sp_cleanup.remove_unused_private_methods=true sp_cleanup.remove_unused_private_types=true +sp_cleanup.replace_deprecated_calls=false sp_cleanup.return_expression=false sp_cleanup.simplify_lambda_expression_and_method_ref=false sp_cleanup.single_used_field=false @@ -174,6 +178,8 @@ sp_cleanup.strictly_equal_or_different=false sp_cleanup.stringbuffer_to_stringbuilder=false sp_cleanup.stringbuilder=false sp_cleanup.stringbuilder_for_local_vars=false +sp_cleanup.stringconcat_stringbuffer_stringbuilder=false +sp_cleanup.stringconcat_to_textblock=false sp_cleanup.substring=false sp_cleanup.switch=false sp_cleanup.system_property=false diff --git a/dependencies.md b/dependencies.md index 1f3a747..eeb07fc 100644 --- a/dependencies.md +++ b/dependencies.md @@ -19,61 +19,62 @@ | [SLF4J API Module][15] | [MIT License][16] | | [Logback Classic Module][17] | [Eclipse Public License - v 1.0][18]; [GNU Lesser General Public License][19] | | [Apache Kafka][20] | [The Apache License, Version 2.0][14] | -| [snappy-java][21] | [Apache-2.0][22] | ### Test Dependencies -| Dependency | License | -| ------------------------------------------ | --------------------------------------------------------------------------------------- | -| [scalatest][23] | [the Apache License, ASL Version 2.0][24] | -| [scalatestplus-mockito][25] | [Apache-2.0][24] | -| [mockito-core][26] | [MIT][27] | -| [Test containers for Exasol on Docker][28] | [MIT License][29] | -| [Test Database Builder for Java][30] | [MIT License][31] | -| [Matcher for SQL Result Sets][32] | [MIT License][33] | -| [Extension integration tests library][34] | [MIT License][35] | -| [embedded-kafka-schema-registry][36] | [MIT][27] | -| [Apache Kafka][20] | [The Apache License, Version 2.0][14] | -| [JSON in Java][37] | [Public Domain][38] | -| [Apache ZooKeeper - Server][39] | [Apache License, Version 2.0][5] | -| [jose4j][40] | [The Apache Software License, Version 2.0][14] | -| [Jetty :: HTTP2 :: Server][41] | [Apache Software License - Version 2.0][24]; [Eclipse Public License - Version 1.0][42] | -| [kafka-streams-avro-serde][43] | [Apache License 2.0][11] | -| [avro4s-core][44] | [MIT][27] | -| [Testcontainers :: Kafka][45] | [MIT][46] | -| [Joda-Time][47] | [Apache License, Version 2.0][5] | -| [ClassGraph][48] | [The MIT License (MIT)][46] | -| [Protocol Buffers [Core]][49] | [BSD-3-Clause][50] | +| Dependency | License | +| ------------------------------------------- | --------------------------------------------------------------------------------------- | +| [scalatest][21] | [the Apache License, ASL Version 2.0][22] | +| [scalatestplus-mockito][23] | [Apache-2.0][22] | +| [mockito-core][24] | [MIT][25] | +| [Test containers for Exasol on Docker][26] | [MIT License][27] | +| [Test Database Builder for Java][28] | [MIT License][29] | +| [Matcher for SQL Result Sets][30] | [MIT License][31] | +| [Extension integration tests library][32] | [MIT License][33] | +| [embedded-kafka-schema-registry][34] | [MIT][25] | +| [Jetty :: Http Utility][35] | [Apache Software License - Version 2.0][22]; [Eclipse Public License - Version 1.0][36] | +| [Jetty :: Server Core][37] | [Apache Software License - Version 2.0][22]; [Eclipse Public License - Version 1.0][36] | +| [Jetty :: Utility Servlets and Filters][38] | [Apache Software License - Version 2.0][22]; [Eclipse Public License - Version 1.0][36] | +| [kafka-streams-avro-serde][39] | [Apache License 2.0][11] | +| [avro4s-core][40] | [MIT][25] | +| [Testcontainers :: Kafka][41] | [MIT][42] | +| [ClassGraph][43] | [The MIT License (MIT)][42] | +| [Protocol Buffers [Core]][44] | [BSD-3-Clause][45] | ### Plugin Dependencies | Dependency | License | | ------------------------------------------------------- | --------------------------------------------- | -| [SonarQube Scanner for Maven][51] | [GNU LGPL 3][52] | -| [Apache Maven Toolchains Plugin][53] | [Apache-2.0][5] | -| [Apache Maven Compiler Plugin][54] | [Apache-2.0][5] | -| [Apache Maven Enforcer Plugin][55] | [Apache-2.0][5] | -| [Maven Flatten Plugin][56] | [Apache Software Licenese][5] | -| [org.sonatype.ossindex.maven:ossindex-maven-plugin][57] | [ASL2][14] | -| [scala-maven-plugin][58] | [Public domain (Unlicense)][59] | -| [ScalaTest Maven Plugin][60] | [the Apache License, ASL Version 2.0][24] | -| [Apache Maven Javadoc Plugin][61] | [Apache-2.0][5] | -| [Maven Surefire Plugin][62] | [Apache-2.0][5] | -| [Versions Maven Plugin][63] | [Apache License, Version 2.0][5] | -| [duplicate-finder-maven-plugin Maven Mojo][64] | [Apache License 2.0][11] | -| [Apache Maven Assembly Plugin][65] | [Apache-2.0][5] | -| [Apache Maven JAR Plugin][66] | [Apache-2.0][5] | -| [Artifact reference checker and unifier][67] | [MIT License][68] | -| [Maven Failsafe Plugin][69] | [Apache-2.0][5] | -| [JaCoCo :: Maven Plugin][70] | [EPL-2.0][71] | -| [error-code-crawler-maven-plugin][72] | [MIT License][73] | -| [Reproducible Build Maven Plugin][74] | [Apache 2.0][14] | -| [Project Keeper Maven plugin][75] | [The MIT License][76] | -| [OpenFastTrace Maven Plugin][77] | [GNU General Public License v3.0][78] | -| [Scalastyle Maven Plugin][79] | [Apache 2.0][11] | -| [spotless-maven-plugin][80] | [The Apache Software License, Version 2.0][5] | -| [scalafix-maven-plugin][81] | [BSD-3-Clause][50] | -| [Exec Maven Plugin][82] | [Apache License 2][5] | +| [Apache Maven Clean Plugin][46] | [Apache-2.0][5] | +| [Apache Maven Install Plugin][47] | [Apache-2.0][5] | +| [Apache Maven Resources Plugin][48] | [Apache-2.0][5] | +| [Apache Maven Site Plugin][49] | [Apache License, Version 2.0][5] | +| [SonarQube Scanner for Maven][50] | [GNU LGPL 3][51] | +| [Apache Maven Toolchains Plugin][52] | [Apache-2.0][5] | +| [Apache Maven Compiler Plugin][53] | [Apache-2.0][5] | +| [Apache Maven Enforcer Plugin][54] | [Apache-2.0][5] | +| [Maven Flatten Plugin][55] | [Apache Software Licenese][5] | +| [org.sonatype.ossindex.maven:ossindex-maven-plugin][56] | [ASL2][14] | +| [scala-maven-plugin][57] | [Public domain (Unlicense)][58] | +| [ScalaTest Maven Plugin][59] | [the Apache License, ASL Version 2.0][22] | +| [Apache Maven Javadoc Plugin][60] | [Apache-2.0][5] | +| [Maven Surefire Plugin][61] | [Apache-2.0][5] | +| [Versions Maven Plugin][62] | [Apache License, Version 2.0][5] | +| [duplicate-finder-maven-plugin Maven Mojo][63] | [Apache License 2.0][11] | +| [Apache Maven Assembly Plugin][64] | [Apache-2.0][5] | +| [Apache Maven JAR Plugin][65] | [Apache-2.0][5] | +| [Artifact reference checker and unifier][66] | [MIT License][67] | +| [Maven Failsafe Plugin][68] | [Apache-2.0][5] | +| [JaCoCo :: Maven Plugin][69] | [EPL-2.0][70] | +| [Quality Summarizer Maven Plugin][71] | [MIT License][72] | +| [error-code-crawler-maven-plugin][73] | [MIT License][74] | +| [Reproducible Build Maven Plugin][75] | [Apache 2.0][14] | +| [Project Keeper Maven plugin][76] | [The MIT License][77] | +| [OpenFastTrace Maven Plugin][78] | [GNU General Public License v3.0][79] | +| [Scalastyle Maven Plugin][80] | [Apache 2.0][11] | +| [spotless-maven-plugin][81] | [The Apache Software License, Version 2.0][5] | +| [scalafix-maven-plugin][82] | [BSD-3-Clause][45] | +| [Exec Maven Plugin][83] | [Apache License 2][5] | ## Extension @@ -81,7 +82,7 @@ | Dependency | License | | ----------------------------------------- | ------- | -| [@exasol/extension-manager-interface][83] | MIT | +| [@exasol/extension-manager-interface][84] | MIT | [0]: https://www.scala-lang.org/ [1]: https://www.apache.org/licenses/LICENSE-2.0 @@ -104,66 +105,67 @@ [18]: http://www.eclipse.org/legal/epl-v10.html [19]: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html [20]: https://kafka.apache.org -[21]: https://github.com/xerial/snappy-java -[22]: https://www.apache.org/licenses/LICENSE-2.0.html -[23]: http://www.scalatest.org -[24]: http://www.apache.org/licenses/LICENSE-2.0 -[25]: https://github.com/scalatest/scalatestplus-mockito -[26]: https://github.com/mockito/mockito -[27]: https://opensource.org/licenses/MIT -[28]: https://github.com/exasol/exasol-testcontainers/ -[29]: https://github.com/exasol/exasol-testcontainers/blob/main/LICENSE -[30]: https://github.com/exasol/test-db-builder-java/ -[31]: https://github.com/exasol/test-db-builder-java/blob/main/LICENSE -[32]: https://github.com/exasol/hamcrest-resultset-matcher/ -[33]: https://github.com/exasol/hamcrest-resultset-matcher/blob/main/LICENSE -[34]: https://github.com/exasol/extension-manager/ -[35]: https://github.com/exasol/extension-manager/blob/main/LICENSE -[36]: https://github.com/embeddedkafka/embedded-kafka-schema-registry -[37]: https://github.com/douglascrockford/JSON-java -[38]: https://github.com/stleary/JSON-java/blob/master/LICENSE -[39]: http://zookeeper.apache.org/zookeeper -[40]: https://bitbucket.org/b_c/jose4j/ -[41]: https://eclipse.org/jetty/http2-parent/http2-server -[42]: https://www.eclipse.org/org/documents/epl-v10.php -[43]: http://confluent.io/kafka-streams-avro-serde -[44]: https://github.com/sksamuel/avro4s -[45]: https://java.testcontainers.org -[46]: http://opensource.org/licenses/MIT -[47]: https://www.joda.org/joda-time/ -[48]: https://github.com/classgraph/classgraph -[49]: https://developers.google.com/protocol-buffers/protobuf-java/ -[50]: https://opensource.org/licenses/BSD-3-Clause -[51]: http://sonarsource.github.io/sonar-scanner-maven/ -[52]: http://www.gnu.org/licenses/lgpl.txt -[53]: https://maven.apache.org/plugins/maven-toolchains-plugin/ -[54]: https://maven.apache.org/plugins/maven-compiler-plugin/ -[55]: https://maven.apache.org/enforcer/maven-enforcer-plugin/ -[56]: https://www.mojohaus.org/flatten-maven-plugin/ -[57]: https://sonatype.github.io/ossindex-maven/maven-plugin/ -[58]: http://github.com/davidB/scala-maven-plugin -[59]: http://unlicense.org/ -[60]: https://www.scalatest.org/user_guide/using_the_scalatest_maven_plugin -[61]: https://maven.apache.org/plugins/maven-javadoc-plugin/ -[62]: https://maven.apache.org/surefire/maven-surefire-plugin/ -[63]: https://www.mojohaus.org/versions/versions-maven-plugin/ -[64]: https://basepom.github.io/duplicate-finder-maven-plugin -[65]: https://maven.apache.org/plugins/maven-assembly-plugin/ -[66]: https://maven.apache.org/plugins/maven-jar-plugin/ -[67]: https://github.com/exasol/artifact-reference-checker-maven-plugin/ -[68]: https://github.com/exasol/artifact-reference-checker-maven-plugin/blob/main/LICENSE -[69]: https://maven.apache.org/surefire/maven-failsafe-plugin/ -[70]: https://www.jacoco.org/jacoco/trunk/doc/maven.html -[71]: https://www.eclipse.org/legal/epl-2.0/ -[72]: https://github.com/exasol/error-code-crawler-maven-plugin/ -[73]: https://github.com/exasol/error-code-crawler-maven-plugin/blob/main/LICENSE -[74]: http://zlika.github.io/reproducible-build-maven-plugin -[75]: https://github.com/exasol/project-keeper/ -[76]: https://github.com/exasol/project-keeper/blob/main/LICENSE -[77]: https://github.com/itsallcode/openfasttrace-maven-plugin -[78]: https://www.gnu.org/licenses/gpl-3.0.html -[79]: http://www.scalastyle.org -[80]: https://github.com/diffplug/spotless -[81]: https://github.com/evis/scalafix-maven-plugin -[82]: https://www.mojohaus.org/exec-maven-plugin -[83]: https://registry.npmjs.org/@exasol/extension-manager-interface/-/extension-manager-interface-0.4.1.tgz +[21]: http://www.scalatest.org +[22]: http://www.apache.org/licenses/LICENSE-2.0 +[23]: https://github.com/scalatest/scalatestplus-mockito +[24]: https://github.com/mockito/mockito +[25]: https://opensource.org/licenses/MIT +[26]: https://github.com/exasol/exasol-testcontainers/ +[27]: https://github.com/exasol/exasol-testcontainers/blob/main/LICENSE +[28]: https://github.com/exasol/test-db-builder-java/ +[29]: https://github.com/exasol/test-db-builder-java/blob/main/LICENSE +[30]: https://github.com/exasol/hamcrest-resultset-matcher/ +[31]: https://github.com/exasol/hamcrest-resultset-matcher/blob/main/LICENSE +[32]: https://github.com/exasol/extension-manager/ +[33]: https://github.com/exasol/extension-manager/blob/main/LICENSE +[34]: https://github.com/embeddedkafka/embedded-kafka-schema-registry +[35]: https://jetty.org/jetty-http/ +[36]: https://www.eclipse.org/org/documents/epl-v10.php +[37]: https://jetty.org/jetty-server/ +[38]: https://jetty.org/jetty-servlets/ +[39]: http://confluent.io/kafka-streams-avro-serde +[40]: https://github.com/sksamuel/avro4s +[41]: https://java.testcontainers.org +[42]: http://opensource.org/licenses/MIT +[43]: https://github.com/classgraph/classgraph +[44]: https://developers.google.com/protocol-buffers/protobuf-java/ +[45]: https://opensource.org/licenses/BSD-3-Clause +[46]: https://maven.apache.org/plugins/maven-clean-plugin/ +[47]: https://maven.apache.org/plugins/maven-install-plugin/ +[48]: https://maven.apache.org/plugins/maven-resources-plugin/ +[49]: https://maven.apache.org/plugins/maven-site-plugin/ +[50]: http://sonarsource.github.io/sonar-scanner-maven/ +[51]: http://www.gnu.org/licenses/lgpl.txt +[52]: https://maven.apache.org/plugins/maven-toolchains-plugin/ +[53]: https://maven.apache.org/plugins/maven-compiler-plugin/ +[54]: https://maven.apache.org/enforcer/maven-enforcer-plugin/ +[55]: https://www.mojohaus.org/flatten-maven-plugin/ +[56]: https://sonatype.github.io/ossindex-maven/maven-plugin/ +[57]: http://github.com/davidB/scala-maven-plugin +[58]: http://unlicense.org/ +[59]: https://www.scalatest.org/user_guide/using_the_scalatest_maven_plugin +[60]: https://maven.apache.org/plugins/maven-javadoc-plugin/ +[61]: https://maven.apache.org/surefire/maven-surefire-plugin/ +[62]: https://www.mojohaus.org/versions/versions-maven-plugin/ +[63]: https://basepom.github.io/duplicate-finder-maven-plugin +[64]: https://maven.apache.org/plugins/maven-assembly-plugin/ +[65]: https://maven.apache.org/plugins/maven-jar-plugin/ +[66]: https://github.com/exasol/artifact-reference-checker-maven-plugin/ +[67]: https://github.com/exasol/artifact-reference-checker-maven-plugin/blob/main/LICENSE +[68]: https://maven.apache.org/surefire/maven-failsafe-plugin/ +[69]: https://www.jacoco.org/jacoco/trunk/doc/maven.html +[70]: https://www.eclipse.org/legal/epl-2.0/ +[71]: https://github.com/exasol/quality-summarizer-maven-plugin/ +[72]: https://github.com/exasol/quality-summarizer-maven-plugin/blob/main/LICENSE +[73]: https://github.com/exasol/error-code-crawler-maven-plugin/ +[74]: https://github.com/exasol/error-code-crawler-maven-plugin/blob/main/LICENSE +[75]: http://zlika.github.io/reproducible-build-maven-plugin +[76]: https://github.com/exasol/project-keeper/ +[77]: https://github.com/exasol/project-keeper/blob/main/LICENSE +[78]: https://github.com/itsallcode/openfasttrace-maven-plugin +[79]: https://www.gnu.org/licenses/gpl-3.0.html +[80]: http://www.scalastyle.org +[81]: https://github.com/diffplug/spotless +[82]: https://github.com/evis/scalafix-maven-plugin +[83]: https://www.mojohaus.org/exec-maven-plugin +[84]: https://registry.npmjs.org/@exasol/extension-manager-interface/-/extension-manager-interface-0.4.1.tgz diff --git a/doc/changes/changelog.md b/doc/changes/changelog.md index aef1096..f395d8d 100644 --- a/doc/changes/changelog.md +++ b/doc/changes/changelog.md @@ -1,5 +1,6 @@ # Changes +* [1.7.8](changes_1.7.8.md) * [1.7.7](changes_1.7.7.md) * [1.7.6](changes_1.7.6.md) * [1.7.5](changes_1.7.5.md) diff --git a/doc/changes/changes_1.7.8.md b/doc/changes/changes_1.7.8.md new file mode 100644 index 0000000..e67773c --- /dev/null +++ b/doc/changes/changes_1.7.8.md @@ -0,0 +1,57 @@ +# Kafka Connector Extension 1.7.8, released 2024-10-24 + +Code name: Fix several CVEs in transitive dependencies, upgrade version of Kafka libs + +## Summary + +This release upgrades kafka client dependency (to 7.7.1) and fixes several CVEs in transitive dependencies: + +* CVE-2024-47561 in org.apache.avro:avro:jar:1.11.3:compile +* CVE-2024-9823 and CVE-2024-6762 in org.eclipse.jetty:jetty-servlets:jar:9.4.53.v20231009:test +* CVE-2024-8184 in org.eclipse.jetty:jetty-server:jar:9.4.54.v20240208:test + +## Security + +* #106: CVE-2024-47561: org.apache.avro:avro:jar:1.11.3:compile +* #109: CVE-2024-9823: org.eclipse.jetty:jetty-servlets:jar:9.4.53.v20231009:test +* #112: CVE-2024-6762: org.eclipse.jetty:jetty-servlets:jar:9.4.53.v20231009:test +* #113: CVE-2024-8184: org.eclipse.jetty:jetty-server:jar:9.4.54.v20240208:test + +## Dependency Updates + +### Exasol Kafka Connector Extension + +#### Compile Dependency Updates + +* Updated `io.confluent:kafka-avro-serializer:7.6.0` to `7.7.1` +* Updated `org.apache.avro:avro:1.11.3` to `1.11.4` +* Updated `org.apache.kafka:kafka-clients:3.6.0` to `3.7.1` +* Removed `org.xerial.snappy:snappy-java:1.1.10.5` + +#### Test Dependency Updates + +* Updated `io.confluent:kafka-streams-avro-serde:7.6.0` to `7.7.1` +* Updated `io.github.embeddedkafka:embedded-kafka-schema-registry_2.13:7.6.0` to `7.7.1` +* Removed `joda-time:joda-time:2.12.7` +* Removed `org.apache.kafka:kafka-metadata:3.6.2` +* Removed `org.apache.zookeeper:zookeeper:3.9.2` +* Removed `org.bitbucket.b_c:jose4j:0.9.6` +* Removed `org.eclipse.jetty.http2:http2-server:9.4.54.v20240208` +* Added `org.eclipse.jetty:jetty-http:9.4.56.v20240826` +* Added `org.eclipse.jetty:jetty-server:9.4.56.v20240826` +* Added `org.eclipse.jetty:jetty-servlets:9.4.56.v20240826` +* Removed `org.json:json:20240303` + +#### Plugin Dependency Updates + +* Updated `com.exasol:project-keeper-maven-plugin:4.3.3` to `4.4.0` +* Added `com.exasol:quality-summarizer-maven-plugin:0.2.0` +* Updated `io.github.zlika:reproducible-build-maven-plugin:0.16` to `0.17` +* Updated `org.apache.maven.plugins:maven-clean-plugin:2.5` to `3.4.0` +* Updated `org.apache.maven.plugins:maven-failsafe-plugin:3.2.5` to `3.5.1` +* Updated `org.apache.maven.plugins:maven-install-plugin:2.4` to `3.1.3` +* Updated `org.apache.maven.plugins:maven-jar-plugin:3.4.1` to `3.4.2` +* Updated `org.apache.maven.plugins:maven-resources-plugin:2.6` to `3.3.1` +* Updated `org.apache.maven.plugins:maven-site-plugin:3.3` to `3.9.1` +* Updated `org.apache.maven.plugins:maven-surefire-plugin:3.2.5` to `3.5.1` +* Updated `org.codehaus.mojo:versions-maven-plugin:2.16.2` to `2.17.1` diff --git a/doc/user_guide/user_guide.md b/doc/user_guide/user_guide.md index 46d868d..d2fc59c 100644 --- a/doc/user_guide/user_guide.md +++ b/doc/user_guide/user_guide.md @@ -61,7 +61,7 @@ checksum provided together with the jar file. To check the SHA256 sum of the downloaded jar, run the command: ```sh -sha256sum exasol-kafka-connector-extension-1.7.7.jar +sha256sum exasol-kafka-connector-extension-1.7.8.jar ``` ### Building From Source @@ -84,7 +84,7 @@ sbt assembly ``` The packaged jar file should be located at -`target/scala-2.12/exasol-kafka-connector-extension-1.7.7.jar`. +`target/scala-2.12/exasol-kafka-connector-extension-1.7.8.jar`. ### Create an Exasol BucketFS Bucket @@ -106,7 +106,7 @@ jar, please make sure the BucketFS ports are open. Upload the jar file using the `curl` command: ```bash -curl -X PUT -T exasol-kafka-connector-extension-1.7.7.jar \ +curl -X PUT -T exasol-kafka-connector-extension-1.7.8.jar \ http://w:@:2580// ``` @@ -135,12 +135,12 @@ OPEN SCHEMA KAFKA_EXTENSION; CREATE OR REPLACE JAVA SET SCRIPT KAFKA_CONSUMER(...) EMITS (...) AS %scriptclass com.exasol.cloudetl.kafka.KafkaConsumerQueryGenerator; - %jar /buckets/bfsdefault//exasol-kafka-connector-extension-1.7.7.jar; + %jar /buckets/bfsdefault//exasol-kafka-connector-extension-1.7.8.jar; / CREATE OR REPLACE JAVA SET SCRIPT KAFKA_IMPORT(...) EMITS (...) AS %scriptclass com.exasol.cloudetl.kafka.KafkaTopicDataImporter; - %jar /buckets/bfsdefault//exasol-kafka-connector-extension-1.7.7.jar; + %jar /buckets/bfsdefault//exasol-kafka-connector-extension-1.7.8.jar; / CREATE OR REPLACE JAVA SET SCRIPT KAFKA_METADATA( @@ -150,7 +150,7 @@ CREATE OR REPLACE JAVA SET SCRIPT KAFKA_METADATA( ) EMITS (partition_index DECIMAL(18, 0), max_offset DECIMAL(36,0)) AS %scriptclass com.exasol.cloudetl.kafka.KafkaTopicMetadataReader; - %jar /buckets/bfsdefault//exasol-kafka-connector-extension-1.7.7.jar; + %jar /buckets/bfsdefault//exasol-kafka-connector-extension-1.7.8.jar; / ``` diff --git a/pk_generated_parent.pom b/pk_generated_parent.pom index 12806a6..1da5674 100644 --- a/pk_generated_parent.pom +++ b/pk_generated_parent.pom @@ -3,7 +3,7 @@ 4.0.0 com.exasol kafka-connector-extension-generated-parent - 1.7.7 + 1.7.8 pom UTF-8 @@ -36,6 +36,26 @@ + + org.apache.maven.plugins + maven-clean-plugin + 3.4.0 + + + org.apache.maven.plugins + maven-install-plugin + 3.1.3 + + + org.apache.maven.plugins + maven-resources-plugin + 3.3.1 + + + org.apache.maven.plugins + maven-site-plugin + 3.9.1 + org.sonarsource.scanner.maven sonar-maven-plugin @@ -139,7 +159,7 @@ org.apache.maven.plugins maven-surefire-plugin - 3.2.5 + 3.5.1 @@ -150,7 +170,7 @@ org.codehaus.mojo versions-maven-plugin - 2.16.2 + 2.17.1 display-updates @@ -230,7 +250,7 @@ org.apache.maven.plugins maven-jar-plugin - 3.4.1 + 3.4.2 default-jar @@ -254,7 +274,7 @@ org.apache.maven.plugins maven-failsafe-plugin - 3.2.5 + 3.5.1 -Djava.util.logging.config.file=src/test/resources/logging.properties ${argLine} @@ -312,6 +332,19 @@ + + com.exasol + quality-summarizer-maven-plugin + 0.2.0 + + + summarize-metrics + + summarize + + + + com.exasol error-code-crawler-maven-plugin @@ -328,7 +361,7 @@ io.github.zlika reproducible-build-maven-plugin - 0.16 + 0.17 strip-jar diff --git a/pom.xml b/pom.xml index a0adfb7..8bb1ca2 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.exasol kafka-connector-extension - 1.7.7 + 1.7.8 Exasol Kafka Connector Extension Exasol Kafka Extension for accessing Apache Kafka https://github.com/exasol/kafka-connector-extension/ @@ -48,9 +48,10 @@ + org.apache.avro avro - 1.11.3 + 1.11.4 - org.apache.kafka - kafka-metadata - 3.6.2 - test - - - - org.json - json - 20240303 - test - - - - org.apache.zookeeper - zookeeper - 3.9.2 + + org.eclipse.jetty + jetty-http + 9.4.56.v20240826 test - - org.bitbucket.b_c - jose4j - 0.9.6 + + org.eclipse.jetty + jetty-server + 9.4.56.v20240826 test - - org.eclipse.jetty.http2 - http2-server - 9.4.54.v20240208 + + org.eclipse.jetty + jetty-servlets + 9.4.56.v20240826 test io.confluent kafka-streams-avro-serde - 7.6.0 + 7.7.1 test @@ -250,20 +237,7 @@ org.apache.kafka kafka-clients - 3.6.0 - - - - org.xerial.snappy - snappy-java - 1.1.10.5 - - - - joda-time - joda-time - 2.12.7 - test + 3.7.1 @@ -462,7 +436,7 @@ ossindex-maven-plugin - + CVE-2024-6763 CVE-2023-36479 @@ -470,7 +444,7 @@ com.exasol project-keeper-maven-plugin - 4.3.3 + 4.4.0 @@ -628,7 +602,7 @@ kafka-connector-extension-generated-parent com.exasol - 1.7.7 + 1.7.8 pk_generated_parent.pom