diff --git a/.github/workflows/ci-build.yml b/.github/workflows/ci-build.yml index f5ef6e9..e43cf83 100644 --- a/.github/workflows/ci-build.yml +++ b/.github/workflows/ci-build.yml @@ -33,12 +33,13 @@ jobs: fail-fast: false matrix: exasol_db_version: [ - 2025.1.11, - 2026.1.0 + 2026.1.1, + 2025.1.16, + 8.29.13 ] env: { - DEFAULT_EXASOL_DB_VERSION: 2025.1.11 + DEFAULT_EXASOL_DB_VERSION: 2026.1.1 } steps: - name: Free Disk Space @@ -61,7 +62,7 @@ jobs: distribution: temurin java-version: |- 11 - 17 + 21 cache: maven - name: Cache SonarCloud packages id: cache-sonar @@ -226,7 +227,7 @@ jobs: distribution: temurin java-version: |- 11 - 17 + 21 cache: maven server-id: ossindex server-username: OSSINDEX_USERNAME @@ -304,7 +305,7 @@ jobs: distribution: temurin java-version: |- 11 - 17 + 21 cache: maven - name: Check if release is needed id: check-release diff --git a/.github/workflows/dependencies_check.yml b/.github/workflows/dependencies_check.yml index b48d014..fa5164f 100644 --- a/.github/workflows/dependencies_check.yml +++ b/.github/workflows/dependencies_check.yml @@ -38,7 +38,7 @@ jobs: distribution: temurin java-version: |- 11 - 17 + 21 cache: maven server-id: ossindex server-username: OSSINDEX_USERNAME diff --git a/.github/workflows/dependencies_update.yml b/.github/workflows/dependencies_update.yml index 283d8b9..1986eae 100644 --- a/.github/workflows/dependencies_update.yml +++ b/.github/workflows/dependencies_update.yml @@ -47,7 +47,7 @@ jobs: distribution: temurin java-version: |- 11 - 17 + 21 cache: maven - name: Print issues id: debug-print-issues diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 66a8723..515d750 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -88,7 +88,7 @@ jobs: distribution: temurin java-version: |- 11 - 17 + 21 server-id: maven-central-portal server-username: MAVEN_USERNAME server-password: MAVEN_PASSWORD @@ -102,7 +102,7 @@ jobs: distribution: temurin java-version: |- 11 - 17 + 21 cache: maven - name: Fail if not running on main or release branch id: check-main-or-release-branch diff --git a/.project-keeper.yml b/.project-keeper.yml index 65a7f2b..46fac0c 100644 --- a/.project-keeper.yml +++ b/.project-keeper.yml @@ -7,8 +7,9 @@ sources: build: runnerOs: ubuntu-24.04 exasolDbVersions: - - "2025.1.11" # LTS - - "2026.1.0" + - "2026.1.1" # Latest version + - "2025.1.16" # LTS + - "8.29.13" # v8 LTS workflows: - name: ci-build.yml stepCustomizations: diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs index f5f6a72..6e2bc99 100644 --- a/.settings/org.eclipse.jdt.core.prefs +++ b/.settings/org.eclipse.jdt.core.prefs @@ -120,7 +120,7 @@ org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning org.eclipse.jdt.core.compiler.processAnnotations=disabled -org.eclipse.jdt.core.compiler.release=disabled +org.eclipse.jdt.core.compiler.release=enabled org.eclipse.jdt.core.compiler.source=11 org.eclipse.jdt.core.formatter.align_arrows_in_switch_on_columns=false org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false @@ -504,6 +504,7 @@ org.eclipse.jdt.core.formatter.parentheses_positions_in_record_declaration=commo org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true +org.eclipse.jdt.core.formatter.put_text_block_quotes_on_new_line=false org.eclipse.jdt.core.formatter.tabulation.char=space org.eclipse.jdt.core.formatter.tabulation.size=4 org.eclipse.jdt.core.formatter.text_block_indentation=0 diff --git a/.settings/org.eclipse.jdt.ui.prefs b/.settings/org.eclipse.jdt.ui.prefs index 14b7a65..37cc471 100644 --- a/.settings/org.eclipse.jdt.ui.prefs +++ b/.settings/org.eclipse.jdt.ui.prefs @@ -1,211 +1,9 @@ -cleanup.add_default_serial_version_id=true -cleanup.add_generated_serial_version_id=false -cleanup.add_missing_annotations=true -cleanup.add_missing_deprecated_annotations=true -cleanup.add_missing_methods=false -cleanup.add_missing_nls_tags=false -cleanup.add_missing_override_annotations=true -cleanup.add_missing_override_annotations_interface_methods=true -cleanup.add_serial_version_id=false -cleanup.always_use_blocks=true -cleanup.always_use_parentheses_in_expressions=false -cleanup.always_use_this_for_non_static_field_access=true -cleanup.always_use_this_for_non_static_method_access=false -cleanup.convert_functional_interfaces=true -cleanup.convert_to_enhanced_for_loop=true -cleanup.correct_indentation=true -cleanup.format_source_code=true -cleanup.format_source_code_changes_only=false -cleanup.insert_inferred_type_arguments=false -cleanup.make_local_variable_final=true -cleanup.make_parameters_final=true -cleanup.make_private_fields_final=true -cleanup.make_type_abstract_if_missing_method=false -cleanup.make_variable_declarations_final=true -cleanup.never_use_blocks=false -cleanup.never_use_parentheses_in_expressions=true -cleanup.organize_imports=false -cleanup.qualify_static_field_accesses_with_declaring_class=false -cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true -cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true -cleanup.qualify_static_member_accesses_with_declaring_class=true -cleanup.qualify_static_method_accesses_with_declaring_class=false -cleanup.remove_private_constructors=true -cleanup.remove_redundant_modifiers=false -cleanup.remove_redundant_semicolons=true -cleanup.remove_redundant_type_arguments=true -cleanup.remove_trailing_whitespaces=true -cleanup.remove_trailing_whitespaces_all=true -cleanup.remove_trailing_whitespaces_ignore_empty=false -cleanup.remove_unnecessary_casts=true -cleanup.remove_unnecessary_nls_tags=true -cleanup.remove_unused_imports=true -cleanup.remove_unused_local_variables=false -cleanup.remove_unused_private_fields=true -cleanup.remove_unused_private_members=true -cleanup.remove_unused_private_methods=true -cleanup.remove_unused_private_types=true -cleanup.sort_members=false -cleanup.sort_members_all=false -cleanup.use_anonymous_class_creation=false -cleanup.use_blocks=true -cleanup.use_blocks_only_for_return_and_throw=false -cleanup.use_lambda=true -cleanup.use_parentheses_in_expressions=true -cleanup.use_this_for_non_static_field_access=true -cleanup.use_this_for_non_static_field_access_only_if_necessary=false -cleanup.use_this_for_non_static_method_access=false -cleanup.use_this_for_non_static_method_access_only_if_necessary=true -cleanup_profile=_Exasol cleanup_settings_version=2 eclipse.preferences.version=1 -editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true formatter_profile=_Exasol formatter_settings_version=23 org.eclipse.jdt.ui.ignorelowercasenames=true org.eclipse.jdt.ui.importorder=java;javax;org;com; org.eclipse.jdt.ui.ondemandthreshold=3 org.eclipse.jdt.ui.staticondemandthreshold=3 -sp_cleanup.add_all=false -sp_cleanup.add_default_serial_version_id=true -sp_cleanup.add_generated_serial_version_id=false -sp_cleanup.add_missing_annotations=true -sp_cleanup.add_missing_deprecated_annotations=true -sp_cleanup.add_missing_methods=false -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 -sp_cleanup.always_use_this_for_non_static_method_access=false -sp_cleanup.array_with_curly=false -sp_cleanup.arrays_fill=false -sp_cleanup.bitwise_conditional_expression=false -sp_cleanup.boolean_literal=false -sp_cleanup.boolean_value_rather_than_comparison=false -sp_cleanup.break_loop=false -sp_cleanup.collection_cloning=false -sp_cleanup.comparing_on_criteria=false -sp_cleanup.comparison_statement=false -sp_cleanup.controlflow_merge=false -sp_cleanup.convert_functional_interfaces=true -sp_cleanup.convert_to_enhanced_for_loop=true -sp_cleanup.convert_to_enhanced_for_loop_if_loop_var_used=false -sp_cleanup.convert_to_switch_expressions=false -sp_cleanup.correct_indentation=true -sp_cleanup.do_while_rather_than_while=false -sp_cleanup.double_negation=false -sp_cleanup.else_if=false -sp_cleanup.embedded_if=false -sp_cleanup.evaluate_nullable=false -sp_cleanup.extract_increment=false -sp_cleanup.format_source_code=true -sp_cleanup.format_source_code_changes_only=false -sp_cleanup.hash=false -sp_cleanup.if_condition=false -sp_cleanup.insert_inferred_type_arguments=false -sp_cleanup.instanceof=false -sp_cleanup.instanceof_keyword=false -sp_cleanup.invert_equals=false -sp_cleanup.join=false -sp_cleanup.lazy_logical_operator=false -sp_cleanup.make_local_variable_final=true -sp_cleanup.make_parameters_final=true -sp_cleanup.make_private_fields_final=true -sp_cleanup.make_type_abstract_if_missing_method=false -sp_cleanup.make_variable_declarations_final=true -sp_cleanup.map_cloning=false -sp_cleanup.merge_conditional_blocks=false -sp_cleanup.multi_catch=false -sp_cleanup.never_use_blocks=false -sp_cleanup.never_use_parentheses_in_expressions=false -sp_cleanup.no_string_creation=false -sp_cleanup.no_super=false -sp_cleanup.number_suffix=false -sp_cleanup.objects_equals=false -sp_cleanup.on_save_use_additional_actions=true -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 -sp_cleanup.primitive_parsing=false -sp_cleanup.primitive_rather_than_wrapper=false -sp_cleanup.primitive_serialization=false -sp_cleanup.pull_out_if_from_if_else=false -sp_cleanup.pull_up_assignment=false -sp_cleanup.push_down_negation=false -sp_cleanup.qualify_static_field_accesses_with_declaring_class=false -sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true -sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true -sp_cleanup.qualify_static_member_accesses_with_declaring_class=true -sp_cleanup.qualify_static_method_accesses_with_declaring_class=false -sp_cleanup.reduce_indentation=false -sp_cleanup.redundant_comparator=false -sp_cleanup.redundant_falling_through_block_end=false -sp_cleanup.remove_private_constructors=true -sp_cleanup.remove_redundant_modifiers=false -sp_cleanup.remove_redundant_semicolons=true -sp_cleanup.remove_redundant_type_arguments=true -sp_cleanup.remove_trailing_whitespaces=true -sp_cleanup.remove_trailing_whitespaces_all=true -sp_cleanup.remove_trailing_whitespaces_ignore_empty=false -sp_cleanup.remove_unnecessary_array_creation=false -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 -sp_cleanup.sort_members=false -sp_cleanup.sort_members_all=false -sp_cleanup.standard_comparison=false -sp_cleanup.static_inner_class=false -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 -sp_cleanup.system_property_boolean=false -sp_cleanup.system_property_file_encoding=false -sp_cleanup.system_property_file_separator=false -sp_cleanup.system_property_line_separator=false -sp_cleanup.system_property_path_separator=false -sp_cleanup.ternary_operator=false -sp_cleanup.try_with_resource=false -sp_cleanup.unlooped_while=false -sp_cleanup.unreachable_block=false -sp_cleanup.use_anonymous_class_creation=false -sp_cleanup.use_autoboxing=false -sp_cleanup.use_blocks=true -sp_cleanup.use_blocks_only_for_return_and_throw=false -sp_cleanup.use_directly_map_method=false -sp_cleanup.use_lambda=true -sp_cleanup.use_parentheses_in_expressions=true -sp_cleanup.use_string_is_blank=false -sp_cleanup.use_this_for_non_static_field_access=true -sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=false -sp_cleanup.use_this_for_non_static_method_access=false -sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true -sp_cleanup.use_unboxing=false -sp_cleanup.use_var=false -sp_cleanup.useless_continue=false -sp_cleanup.useless_return=false -sp_cleanup.valueof_rather_than_instantiation=false +org.eclipse.jdt.ui.text.custom_code_templates= diff --git a/doc/changes/changelog.md b/doc/changes/changelog.md index b9d17d2..88a79ff 100644 --- a/doc/changes/changelog.md +++ b/doc/changes/changelog.md @@ -1,5 +1,6 @@ # Changes +* [0.6.21](changes_0.6.21.md) * [0.6.20](changes_0.6.20.md) * [0.6.19](changes_0.6.19.md) * [0.6.18](changes_0.6.18.md) diff --git a/doc/changes/changes_0.6.21.md b/doc/changes/changes_0.6.21.md new file mode 100644 index 0000000..7b7e0cb --- /dev/null +++ b/doc/changes/changes_0.6.21.md @@ -0,0 +1,40 @@ +# Udf Debugging Java 0.6.21, released 2026-09-14 + +Code name: Fixed vulnerability CVE-2026-86231 in com.github.mwiede:jsch:jar:2.28.4:provided + +## Summary + +This release fixes the following vulnerability: + +### CVE-2026-86231 (CWE-298) in dependency `com.github.mwiede:jsch:jar:2.28.4:provided` +A security flaw has been discovered in mwiede jsch up to 2.28.5. Affected is the function getRevokedKeys of the file src/main/java/com/jcraft/jsch/KnownHosts.java. Performing a manipulation of the argument known_hosts results in improper check for certificate revocation. The attack is possible to be carried out remotely. The attack is considered to have high complexity. The exploitability is told to be difficult. The exploit has been released to the public and may be used for attacks. Upgrading to version 2.28.6 is able to address this issue. The patch is named 194a2f76a5c0f1c3f778565be3fd66bcafc42d23. You should upgrade the affected component. +#### References +* https://guide.sonatype.com/vulnerability/CVE-2026-86231?component-type=maven&component-name=com.github.mwiede%2Fjsch&utm_source=ossindex-client&utm_medium=integration&utm_content=1.8.1 +* http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2026-86231 +* https://github.com/mwiede/jsch/issues/1091 +* https://github.com/mwiede/jsch/pull/1098 +* https://github.com/mwiede/jsch/releases/tag/jsch-2.28.6 + +## Security + +* #88: Fixed vulnerability CVE-2026-86231 in dependency `com.github.mwiede:jsch:jar:2.28.4:provided` + +## Dependency Updates + +### Compile Dependency Updates + +* Updated `com.exasol:bucketfs-java:4.0.0` to `5.0.0` +* Updated `org.slf4j:slf4j-jdk14:2.0.18` to `2.0.19` + +### Test Dependency Updates + +* Updated `com.exasol:exasol-testcontainers:7.3.0` to `8.0.2` +* Updated `com.exasol:test-db-builder-java:4.0.1` to `4.0.2` + +### Plugin Dependency Updates + +* Updated `com.exasol:error-code-crawler-maven-plugin:2.1.0` to `2.1.1` +* Updated `com.exasol:project-keeper-maven-plugin:5.7.3` to `5.7.5` +* Updated `io.github.git-commit-id:git-commit-id-maven-plugin:10.0.0` to `10.0.1` +* Updated `org.apache.maven.plugins:maven-toolchains-plugin:3.2.0` to `3.3.0` +* Updated `org.codehaus.mojo:flatten-maven-plugin:1.7.3` to `1.8.0` diff --git a/pk_generated_parent.pom b/pk_generated_parent.pom index d776ad2..77b3187 100644 --- a/pk_generated_parent.pom +++ b/pk_generated_parent.pom @@ -3,7 +3,7 @@ 4.0.0 com.exasol udf-debugging-java-generated-parent - 0.6.20 + 0.6.21 pom UTF-8 @@ -85,7 +85,7 @@ org.apache.maven.plugins maven-toolchains-plugin - 3.2.0 + 3.3.0 @@ -140,7 +140,7 @@ org.codehaus.mojo flatten-maven-plugin - 1.7.3 + 1.8.0 true oss @@ -467,7 +467,7 @@ com.exasol error-code-crawler-maven-plugin - 2.1.0 + 2.1.1 verify @@ -480,7 +480,7 @@ io.github.git-commit-id git-commit-id-maven-plugin - 10.0.0 + 10.0.1 get-the-git-infos diff --git a/pom.xml b/pom.xml index 685740a..5429798 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 udf-debugging-java - 0.6.20 + 0.6.21 udf-debugging-java Utilities for debugging, profiling and code coverage measure for UDFs. https://github.com/exasol/udf-debugging-java/ @@ -41,12 +41,12 @@ com.exasol bucketfs-java - 4.0.0 + 5.0.0 com.exasol exasol-test-setup-abstraction-java - 3.0.0 + 3.0.1 org.slf4j slf4j-jdk14 - 2.0.18 + 2.0.19 @@ -133,7 +133,7 @@ com.exasol project-keeper-maven-plugin - 5.7.3 + 5.7.5 @@ -147,7 +147,7 @@ udf-debugging-java-generated-parent com.exasol - 0.6.20 + 0.6.21 pk_generated_parent.pom