Skip to content

Conversation

apalan60
Copy link
Contributor

@apalan60 apalan60 commented Oct 14, 2025

Related
discussion:#20561 (comment)

This PR primarily upgrades release tooling to JDK 25, and includes two
fixes identified while dry-running release.py locally.

  1. JDK upgrade: Switches release.py to run under JDK 25.

  2. Pre‑req check false negative in git clean‑state verification task

  • When running release.py with a clean working tree, the script
    incorrectly failed the pre‑requisite check.
$ git status
On branch MINOR-1014
nothing to commit, working tree clean

$ python release.py
...
FAILURE: Pre-requisite not met: Verifying that you have no unstaged git
changes.
  • Root cause: the checks used has_unstaged_changes() /
    has_staged_changes() in a way that treated success as “has changes”.
    The fix inverts the logic to assert no changes.
  1. Gradle 9 aggregatedJavadoc failure
  • With Gradle 9, aggregatedJavadoc currently fails in parallel
    mode.
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':aggregatedJavadoc'.
> Resolution of the configuration ':connect:compileClasspath' was
attempted without an exclusive lock. This is unsafe and not allowed.

@github-actions github-actions bot added triage PRs from the community small Small PRs labels Oct 14, 2025
@apalan60
Copy link
Contributor Author

I ran python release.py locally to verify the changes.
The script executed successfully up to the artifact upload / verification step, where I stopped the run since it already confirmed the flow works as expected.

image

full execution log: release-script.log

@apalan60 apalan60 changed the title [WIP] MINOR: Upgrade release.py to run with JDK 25 MINOR: Upgrade release.py to run with JDK 25 Oct 14, 2025
@apalan60 apalan60 marked this pull request as ready for review October 15, 2025 18:08
@apalan60
Copy link
Contributor Author

apalan60 commented Oct 15, 2025

I reran release.py after some recent updates.
Here are the results:

Click to expand
source .venv/bin/activate
export PUSH_REMOTE_NAME=dryrun
python release.py
Using preferences from: /Users/hongyi/IdeaProjects/kafka/release/.release-settings.json
Assuming: did_verify_requirements = True
Assuming: did_verify_gpg_key_39211bbecf355104d85638fa645245ed33b0f7eb1247aff03fd453da8443f6adc32ec862dd86e799aa52fbc9ef0c62a641506715e2f0abc3a01ff7cec0aef954 = True
Assuming: apache_id = [email protected]
Enter the path for JAVA_HOME for a JDK25 compiler (blank to use default JAVA_HOME): 
Saving preferences to /Users/hongyi/IdeaProjects/kafka/release/.release-settings.json
Assuming: did_verify_prerequisites = True
Fetching tags from dryrun
$ git fetch --tags dryrun
> 
Release version 4.2.0 candidate number: 1016
Creating git branch 4.2.0 to track dryrun/4.2
$ git checkout -b 4.2.0 dryrun/4.2
> Switched to a new branch '4.2.0'
> branch '4.2.0' set up to track 'dryrun/4.2'.
Updating version numbers
Updating streams quickstart pom
Updating streams quickstart java pom
Updating streams quickstart archetype pom
Updating ducktape version.py
Updating docs templateData.js
Committing git changes
$ ['git', 'commit', '-a', '-m', 'Bump version to 4.2.0']
> [4.2.0 a10d054a20] Bump version to 4.2.0
>  5 files changed, 5 insertions(+), 5 deletions(-)
Creating git tag 4.2.0-rc1016
$ ['git', 'tag', '-a', '4.2.0-rc1016', '-m', '4.2.0-rc1016']
> 
Merging ref 4.2.0-rc1016
$ git merge 4.2.0-rc1016
> Merge made by the 'ort' strategy.
Temporary build working directory: /Users/hongyi/IdeaProjects/kafka/.release_work_dir
Creating staging area for release artifacts
$ mkdir kafka-4.2.0-rc1016
> 
Creating git branch 4.2.0 to track 4.2.0-rc1016
$ git checkout -b 4.2.0 4.2.0-rc1016
> Switched to a new branch '4.2.0'
Verifying the correct year in NOTICE
$ grep 2025 NOTICE
> Copyright 2025 The Apache Software Foundation.
Checking out https://dist.apache.org/repos/dist/dev/kafka at /Users/hongyi/IdeaProjects/kafka/.release_work_dir/svn_dev
$ svn checkout --depth empty https://dist.apache.org/repos/dist/dev/kafka/ /Users/hongyi/IdeaProjects/kafka/.release_work_dir/svn_dev
> Checked out revision 80082.
Generating release notes
Creating targz /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/kafka-4.2.0-src.tgz from git rev 4.2.0-rc1016
$ git archive --format tar.gz --prefix kafka-4.2.0-src/ --output /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/kafka-4.2.0-src.tgz 4.2.0-rc1016
> 
Building artifacts
$ ./gradlew clean && ./gradlew releaseTarGz -PscalaVersion=2.13
> > Configure project :
> Starting build with version 4.2.0 (commit id a10d054a) using Gradle 9.1.0, Java 25 and Scala 2.13.17
> Build properties: ignoreFailures=false, maxParallelForks=12, maxScalacThreads=8, maxTestRetries=0
> 
> > Task :coordinator-common:clean
> > Task :connect:clean
> > Task :core:clean
> > Task :share-coordinator:clean
> > Task :shell:clean
> > Task :server-common:clean
> > Task :storage:clean
> > Task :streams:clean
> > Task :examples:clean
> > Task :transaction-coordinator:clean
> > Task :tools:clean
> > Task :trogdor:clean
> > Task :connect:api:clean
> > Task :connect:basic-auth-extension:clean
> > Task :connect:file:clean
> > Task :connect:json:clean
> > Task :connect:mirror:clean
> > Task :connect:mirror-client:clean
> > Task :connect:runtime:clean
> > Task :connect:transforms:clean
> > Task :test-common:clean
> > Task :clients:clients-integration-tests:clean
> > Task :generator:clean
> > Task :streams:examples:clean
> > Task :clients:clean
> > Task :streams:integration-tests:clean
> > Task :clean
> > Task :streams:upgrade-system-tests-10:clean
> > Task :streams:upgrade-system-tests-11:clean
> > Task :streams:upgrade-system-tests-20:clean
> > Task :streams:upgrade-system-tests-21:clean
> > Task :streams:upgrade-system-tests-22:clean
> > Task :streams:upgrade-system-tests-23:clean
> > Task :streams:upgrade-system-tests-24:clean
> > Task :streams:upgrade-system-tests-25:clean
> > Task :streams:upgrade-system-tests-0110:clean
> > Task :streams:upgrade-system-tests-27:clean
> > Task :streams:upgrade-system-tests-28:clean
> > Task :streams:upgrade-system-tests-30:clean
> > Task :streams:upgrade-system-tests-31:clean
> > Task :streams:upgrade-system-tests-32:clean
> > Task :streams:upgrade-system-tests-26:clean
> > Task :connect:test-plugins:clean
> > Task :streams:upgrade-system-tests-34:clean
> > Task :group-coordinator:clean
> > Task :raft:clean
> > Task :streams:upgrade-system-tests-36:clean
> > Task :streams:upgrade-system-tests-38:clean
> > Task :streams:test-utils:clean
> > Task :streams:upgrade-system-tests-37:clean
> > Task :group-coordinator:group-coordinator-api:clean
> > Task :streams:upgrade-system-tests-40:clean
> > Task :streams:streams-scala:clean
> > Task :storage:storage-api:clean
> > Task :test-common:test-common-internal-api:clean
> > Task :test-common:test-common-util:clean
> > Task :metadata:clean
> > Task :jmh-benchmarks:clean
> > Task :streams:upgrade-system-tests-35:clean
> > Task :streams:upgrade-system-tests-41:clean
> > Task :test-common:test-common-runtime:clean
> > Task :streams:upgrade-system-tests-33:clean
> > Task :tools:tools-api:clean
> > Task :streams:upgrade-system-tests-39:clean
> > Task :server:clean
> 
> [Incubating] Problems report is available at: file:///Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka/build/reports/problems/problems-report.html
> 
> Deprecated Gradle features were used in this build, making it incompatible with Gradle 10.
> 
> You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
> 
> For more on this, please refer to https://docs.gradle.org/9.1.0/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.
> 
> BUILD SUCCESSFUL in 1s
> 65 actionable tasks: 65 executed
> Consider enabling configuration cache to speed up this build: https://docs.gradle.org/9.1.0/userguide/configuration_cache_enabling.html
> 
> > Configure project :
> Starting build with version 4.2.0 (commit id a10d054a) using Gradle 9.1.0, Java 25 and Scala 2.13.17
> Build properties: ignoreFailures=false, maxParallelForks=12, maxScalacThreads=8, maxTestRetries=0
> 
> > Task :core:processResources NO-SOURCE
> > Task :coordinator-common:processResources NO-SOURCE
> > Task :server:processResources NO-SOURCE
> > Task :server-common:processResources NO-SOURCE
> > Task :storage:storage-api:processResources NO-SOURCE
> > Task :group-coordinator:group-coordinator-api:processResources NO-SOURCE
> > Task :server-common:createVersionFile
> > Task :storage:storage-api:createVersionFile
> > Task :transaction-coordinator:processResources
> > Task :server:createVersionFile
> > Task :coordinator-common:processTestResources NO-SOURCE
> > Task :tools:tools-api:processResources NO-SOURCE
> > Task :storage:storage-api:processTestResources NO-SOURCE
> > Task :server:processTestResources NO-SOURCE
> > Task :share-coordinator:processResources
> > Task :share-coordinator:processTestResources NO-SOURCE
> > Task :tools:tools-api:createVersionFile
> > Task :test-common:test-common-internal-api:processResources NO-SOURCE
> > Task :storage:processResources
> > Task :core:processTestResources
> > Task :storage:createVersionFile
> > Task :streams:processResources
> > Task :test-common:test-common-runtime:processResources
> > Task :connect:api:processResources
> > Task :connect:mirror-client:processResources NO-SOURCE
> > Task :connect:mirror:processResources
> > Task :shell:processResources NO-SOURCE
> > Task :connect:json:processResources
> > Task :tools:processResources NO-SOURCE
> > Task :trogdor:processResources NO-SOURCE
> > Task :group-coordinator:group-coordinator-api:createVersionFile
> > Task :streams:createStreamsVersionFile
> > Task :connect:transforms:processResources
> > Task :connect:runtime:processResources
> > Task :streams:examples:processResources NO-SOURCE
> > Task :streams:streams-scala:processResources NO-SOURCE
> > Task :streams:test-utils:processResources NO-SOURCE
> > Task :connect:file:processResources
> > Task :raft:processResources
> > Task :raft:createVersionFile
> > Task :connect:basic-auth-extension:processResources
> > Task :connect:runtime:setVersionInOpenAPISpec
> > Task :raft:processTestResources
> > Task :metadata:processResources
> > Task :metadata:processTestResources
> > Task :group-coordinator:processResources
> > Task :test-common:test-common-util:compileJava
> > Task :group-coordinator:processTestResources
> > Task :test-common:test-common-util:processResources
> > Task :test-common:test-common-util:classes
> > Task :server-common:processTestResources
> > Task :test-common:test-common-util:jar
> > Task :clients:processResources
> > Task :clients:createVersionFile
> > Task :clients:processTestResources
> > Task :generator:compileJava
> > Task :generator:processResources NO-SOURCE
> > Task :generator:classes
> > Task :generator:jar
> 
> > Task :raft:processMessages
> MessageGenerator: processed 1 Kafka message JSON file(s).
> 
> > Task :storage:processMessages
> MessageGenerator: processed 5 Kafka message JSON file(s).
> 
> > Task :metadata:processMessages
> MessageGenerator: processed 26 Kafka message JSON file(s).
> 
> > Task :share-coordinator:processMessages
> MessageGenerator: processed 4 Kafka message JSON file(s).
> 
> > Task :streams:processMessages
> MessageGenerator: processed 1 Kafka message JSON file(s).
> 
> > Task :transaction-coordinator:processMessages
> MessageGenerator: processed 2 Kafka message JSON file(s).
> 
> > Task :group-coordinator:processMessages
> MessageGenerator: processed 44 Kafka message JSON file(s).
> 
> > Task :clients:processMessages
> MessageGenerator: processed 197 Kafka message JSON file(s).
> 
> > Task :clients:compileJava
> > Task :clients:classes
> > Task :tools:tools-api:compileJava
> > Task :tools:tools-api:classes
> > Task :group-coordinator:group-coordinator-api:compileJava
> > Task :group-coordinator:group-coordinator-api:classes
> > Task :tools:tools-api:jar
> > Task :group-coordinator:group-coordinator-api:jar
> > Task :connect:mirror-client:compileJava
> > Task :connect:mirror-client:classes
> > Task :connect:api:compileJava
> > Task :connect:api:classes
> > Task :connect:file:compileJava
> > Task :connect:file:classes
> > Task :connect:basic-auth-extension:compileJava
> > Task :connect:basic-auth-extension:classes
> > Task :connect:json:compileJava
> > Task :connect:json:classes
> > Task :connect:transforms:compileJava
> > Task :connect:transforms:classes
> > Task :server-common:compileJava
> > Task :server-common:classes
> > Task :server-common:jar
> > Task :test-common:test-common-internal-api:compileJava
> > Task :test-common:test-common-internal-api:classes
> > Task :storage:storage-api:compileJava
> > Task :test-common:test-common-internal-api:jar
> > Task :storage:storage-api:classes
> > Task :storage:storage-api:jar
> > Task :raft:compileJava
> > Task :raft:classes
> > Task :raft:jar
> > Task :connect:runtime:compileJava
> > Task :connect:runtime:classes
> > Task :connect:mirror:compileJava
> > Task :connect:mirror:classes
> > Task :metadata:compileJava
> > Task :metadata:classes
> > Task :metadata:jar
> > Task :storage:compileJava
> > Task :storage:classes
> > Task :storage:jar
> > Task :coordinator-common:compileJava
> > Task :coordinator-common:classes
> > Task :coordinator-common:jar
> > Task :transaction-coordinator:compileJava
> > Task :transaction-coordinator:classes
> > Task :transaction-coordinator:jar
> > Task :share-coordinator:compileJava
> > Task :share-coordinator:classes
> > Task :share-coordinator:jar
> > Task :clients:shadowJar
> > Task :clients:jar SKIPPED
> > Task :group-coordinator:compileJava
> > Task :group-coordinator:classes
> > Task :storage:genRemoteLogManagerConfigDoc
> > Task :connect:mirror-client:copyDependantLibs
> > Task :connect:api:copyDependantLibs
> > Task :group-coordinator:jar
> > Task :connect:mirror-client:jar
> > Task :connect:api:jar
> > Task :storage:genRemoteLogMetadataManagerConfigDoc
> > Task :connect:transforms:copyDependantLibs
> > Task :connect:file:copyDependantLibs
> > Task :connect:basic-auth-extension:copyDependantLibs
> > Task :connect:basic-auth-extension:jar
> > Task :connect:file:jar
> > Task :connect:json:copyDependantLibs
> > Task :connect:transforms:jar
> > Task :connect:json:jar
> > Task :connect:runtime:copyDependantLibs
> 
> > Task :clients:processTestMessages
> MessageGenerator: processed 4 Kafka message JSON file(s).
> 
> > Task :connect:runtime:jar
> > Task :trogdor:compileJava
> > Task :trogdor:classes
> > Task :server:compileJava
> > Task :server:classes
> > Task :core:compileJava NO-SOURCE
> > Task :server:jar
> 
> > Task :connect:mirror:genMirrorCheckpointConfigDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :connect:runtime:genConnectConfigDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :trogdor:copyDependantLibs
> > Task :trogdor:jar
> 
> > Task :connect:runtime:genConnectMetricsDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :connect:mirror:genMirrorConnectorConfigDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :connect:mirror:genMirrorHeartbeatConfigDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :connect:mirror:genMirrorSourceConfigDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :connect:mirror:copyDependantLibs
> > Task :connect:mirror:jar
> > Task :tools:compileJava
> > Task :tools:classes
> WARNING: A terminally deprecated method in sun.misc.Unsafe has been called
> WARNING: sun.misc.Unsafe::arrayBaseOffset has been called by net.openhft.hashing.UnsafeAccess (file:/Users/hongyi/.gradle/caches/modules-2/files-2.1/net.openhft/zero-allocation-hashing/0.16/ca252f328160ed5d027f100a4fe525d6d21daaf/zero-allocation-hashing-0.16.jar)
> WARNING: Please consider reporting this to the maintainers of class net.openhft.hashing.UnsafeAccess
> WARNING: sun.misc.Unsafe::arrayBaseOffset will be removed in a future release
> > Task :tools:copyDependantLibs
> > Task :tools:jar
> 
> > Task :connect:runtime:genConnectOpenAPIDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :connect:runtime:genConnectPredicateDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> WARNING: A terminally deprecated method in sun.misc.Unsafe has been called
> WARNING: sun.misc.Unsafe::invokeCleaner has been called by nonapi.io.github.classgraph.utils.FileUtils (file:/Users/hongyi/.gradle/caches/modules-2/files-2.1/io.github.classgraph/classgraph/4.8.179/f159dd8bbbf381c4006c1f675ec4e648c8317f32/classgraph-4.8.179.jar)
> WARNING: Please consider reporting this to the maintainers of class nonapi.io.github.classgraph.utils.FileUtils
> WARNING: sun.misc.Unsafe::invokeCleaner will be removed in a future release
> 
> > Task :streams:compileJava
> > Task :streams:classes
> > Task :streams:streams-scala:compileJava NO-SOURCE
> 
> > Task :connect:runtime:genConnectTransformationDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :streams:genStreamsConfigDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :connect:runtime:genSinkConnectorConfigDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :connect:runtime:genSourceConnectorConfigDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :streams:copyDependantLibs
> > Task :streams:examples:compileJava
> > Task :streams:examples:classes
> > Task :streams:test-utils:compileJava
> > Task :streams:test-utils:classes
> > Task :streams:jar
> WARNING: A terminally deprecated method in sun.misc.Unsafe has been called
> WARNING: sun.misc.Unsafe::arrayBaseOffset has been called by net.openhft.hashing.UnsafeAccess (file:/Users/hongyi/.gradle/caches/modules-2/files-2.1/net.openhft/zero-allocation-hashing/0.16/ca252f328160ed5d027f100a4fe525d6d21daaf/zero-allocation-hashing-0.16.jar)
> WARNING: Please consider reporting this to the maintainers of class net.openhft.hashing.UnsafeAccess
> WARNING: sun.misc.Unsafe::arrayBaseOffset will be removed in a future release
> > Task :streams:examples:copyDependantLibs
> > Task :streams:examples:jar
> > Task :streams:test-utils:copyDependantLibs
> > Task :streams:test-utils:jar
> 
> > Task :clients:compileTestJava
> Note: Some input files use or override a deprecated API.
> Note: Recompile with -Xlint:deprecation for details.
> 
> > Task :clients:testClasses
> > Task :storage:storage-api:compileTestJava
> > Task :storage:storage-api:testClasses
> > Task :server-common:compileTestJava
> > Task :server-common:testClasses
> > Task :coordinator-common:compileTestJava
> > Task :coordinator-common:testClasses
> > Task :share-coordinator:compileTestJava
> > Task :share-coordinator:testClasses
> > Task :raft:compileTestJava
> > Task :raft:testClasses
> 
> > Task :metadata:compileTestJava
> Note: /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka/metadata/src/test/java/org/apache/kafka/controller/metrics/QuorumControllerMetricsTest.java uses unchecked or unsafe operations.
> Note: Recompile with -Xlint:unchecked for details.
> 
> > Task :metadata:testClasses
> > Task :group-coordinator:compileTestJava
> > Task :group-coordinator:testClasses
> > Task :streams:streams-scala:compileScala
> > Task :streams:streams-scala:classes
> > Task :streams:streams-scala:copyDependantLibs
> > Task :streams:streams-scala:jar
> > Task :core:compileScala
> > Task :core:classes
> > Task :core:copyDependantLibs
> > Task :shell:compileJava
> > Task :shell:classes
> > Task :test-common:test-common-runtime:compileJava
> > Task :test-common:test-common-runtime:classes
> > Task :core:jar
> > Task :test-common:test-common-runtime:jar
> > Task :shell:copyDependantLibs
> > Task :shell:jar
> 
> > Task :core:genAdminClientConfigDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :core:genConsumerConfigDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :core:genGroupConfigDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :server:compileTestJava
> Note: /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka/server/src/test/java/org/apache/kafka/server/AssignmentsManagerTest.java uses or overrides a deprecated API.
> Note: Recompile with -Xlint:deprecation for details.
> 
> > Task :server:testClasses
> 
> > Task :core:genKafkaConfigDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :core:compileTestJava NO-SOURCE
> > Task :core:compileTestScala
> > Task :core:testClasses
> > Task :core:genConsumerMetricsDocs
> 
> > Task :core:genProducerConfigDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :core:genProducerMetricsDocs
> > Task :core:genProtocolApiKeyDocs
> 
> > Task :core:genProtocolErrorDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :core:genProtocolMessageDocs
> > Task :core:genProtocolTypesDocs
> 
> > Task :core:genTopicConfigDocs
> SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
> SLF4J: Defaulting to no-operation (NOP) logger implementation
> SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
> 
> > Task :core:siteDocsTar
> > Task :core:releaseTarGz
> 
> [Incubating] Problems report is available at: file:///Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka/build/reports/problems/problems-report.html
> 
> Deprecated Gradle features were used in this build, making it incompatible with Gradle 10.
> 
> You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
> 
> For more on this, please refer to https://docs.gradle.org/9.1.0/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.
> 
> BUILD SUCCESSFUL in 46s
> 162 actionable tasks: 162 executed
> Consider enabling configuration cache to speed up this build: https://docs.gradle.org/9.1.0/userguide/configuration_cache_enabling.html
Copying artifacts
$ cp /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka/core/build/distributions/* /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016
> 
Building docs
$ ./gradlew clean aggregatedJavadoc --no-parallel
> > Configure project :
> Starting build with version 4.2.0 (commit id a10d054a) using Gradle 9.1.0, Java 25 and Scala 2.13.17
> Build properties: ignoreFailures=false, maxParallelForks=12, maxScalacThreads=8, maxTestRetries=0
> 
> > Task :clean
> > Task :clients:clean
> > Task :connect:clean
> > Task :coordinator-common:clean
> > Task :core:clean
> > Task :examples:clean
> > Task :generator:clean
> > Task :group-coordinator:clean
> > Task :jmh-benchmarks:clean
> > Task :metadata:clean
> > Task :raft:clean
> > Task :server:clean
> > Task :server-common:clean
> > Task :share-coordinator:clean
> > Task :shell:clean
> > Task :storage:clean
> > Task :streams:clean
> > Task :test-common:clean
> > Task :tools:clean
> > Task :transaction-coordinator:clean
> > Task :trogdor:clean
> > Task :clients:clients-integration-tests:clean
> > Task :connect:api:clean
> > Task :connect:basic-auth-extension:clean
> > Task :connect:file:clean
> > Task :connect:json:clean
> > Task :connect:mirror:clean
> > Task :connect:mirror-client:clean
> > Task :connect:runtime:clean
> > Task :connect:test-plugins:clean
> > Task :connect:transforms:clean
> > Task :group-coordinator:group-coordinator-api:clean
> > Task :storage:storage-api:clean
> > Task :streams:examples:clean
> > Task :streams:integration-tests:clean
> > Task :streams:streams-scala:clean
> > Task :streams:test-utils:clean
> > Task :streams:upgrade-system-tests-0110:clean
> > Task :streams:upgrade-system-tests-10:clean
> > Task :streams:upgrade-system-tests-11:clean
> > Task :streams:upgrade-system-tests-20:clean
> > Task :streams:upgrade-system-tests-21:clean
> > Task :streams:upgrade-system-tests-22:clean
> > Task :streams:upgrade-system-tests-23:clean
> > Task :streams:upgrade-system-tests-24:clean
> > Task :streams:upgrade-system-tests-25:clean
> > Task :streams:upgrade-system-tests-26:clean
> > Task :streams:upgrade-system-tests-27:clean
> > Task :streams:upgrade-system-tests-28:clean
> > Task :streams:upgrade-system-tests-30:clean
> > Task :streams:upgrade-system-tests-31:clean
> > Task :streams:upgrade-system-tests-32:clean
> > Task :streams:upgrade-system-tests-33:clean
> > Task :streams:upgrade-system-tests-34:clean
> > Task :streams:upgrade-system-tests-35:clean
> > Task :streams:upgrade-system-tests-36:clean
> > Task :streams:upgrade-system-tests-37:clean
> > Task :streams:upgrade-system-tests-38:clean
> > Task :streams:upgrade-system-tests-39:clean
> > Task :streams:upgrade-system-tests-40:clean
> > Task :streams:upgrade-system-tests-41:clean
> > Task :test-common:test-common-internal-api:clean
> > Task :test-common:test-common-runtime:clean
> > Task :test-common:test-common-util:clean
> > Task :tools:tools-api:clean
> > Task :compileJava NO-SOURCE
> > Task :generator:compileJava
> > Task :generator:processResources NO-SOURCE
> > Task :generator:classes
> > Task :generator:jar
> 
> > Task :clients:processMessages
> MessageGenerator: processed 197 Kafka message JSON file(s).
> 
> > Task :clients:compileJava
> > Task :clients:processResources
> > Task :clients:classes
> > Task :clients:createVersionFile
> > Task :clients:shadowJar
> 
> > Task :metadata:processMessages
> MessageGenerator: processed 26 Kafka message JSON file(s).
> 
> > Task :raft:processMessages
> MessageGenerator: processed 1 Kafka message JSON file(s).
> 
> > Task :server-common:compileJava
> > Task :raft:compileJava
> > Task :metadata:compileJava
> 
> > Task :storage:processMessages
> MessageGenerator: processed 5 Kafka message JSON file(s).
> 
> > Task :storage:storage-api:compileJava
> > Task :storage:compileJava
> > Task :coordinator-common:compileJava
> 
> > Task :group-coordinator:processMessages
> MessageGenerator: processed 44 Kafka message JSON file(s).
> 
> > Task :group-coordinator:group-coordinator-api:compileJava
> > Task :group-coordinator:compileJava
> 
> > Task :share-coordinator:processMessages
> MessageGenerator: processed 4 Kafka message JSON file(s).
> 
> > Task :share-coordinator:compileJava
> 
> > Task :transaction-coordinator:processMessages
> MessageGenerator: processed 2 Kafka message JSON file(s).
> 
> > Task :transaction-coordinator:compileJava
> > Task :server:compileJava
> 
> > Task :streams:processMessages
> MessageGenerator: processed 1 Kafka message JSON file(s).
> 
> > Task :streams:compileJava
> > Task :connect:api:compileJava
> > Task :tools:tools-api:compileJava
> > Task :aggregatedJavadoc
> 
> [Incubating] Problems report is available at: file:///Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka/build/reports/problems/problems-report.html
> 
> Deprecated Gradle features were used in this build, making it incompatible with Gradle 10.
> 
> You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
> 
> For more on this, please refer to https://docs.gradle.org/9.1.0/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.
> 
> BUILD SUCCESSFUL in 17s
> 94 actionable tasks: 94 executed
> Consider enabling configuration cache to speed up this build: https://docs.gradle.org/9.1.0/userguide/configuration_cache_enabling.html
Copying docs
$ cp -R /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka/build/docs/javadoc /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016
> 
Generating MD5    for /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/RELEASE_NOTES.html
$ gpg --print-md md5    RELEASE_NOTES.html > RELEASE_NOTES.html.md5   
> 
Generating SHA1   for /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/RELEASE_NOTES.html
$ gpg --print-md sha1   RELEASE_NOTES.html > RELEASE_NOTES.html.sha1  
> 
Generating SHA512 for /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/RELEASE_NOTES.html
$ gpg --print-md sha512 RELEASE_NOTES.html > RELEASE_NOTES.html.sha512
> 
Generating MD5    for /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/kafka-4.2.0-src.tgz
$ gpg --print-md md5    kafka-4.2.0-src.tgz > kafka-4.2.0-src.tgz.md5   
> 
Generating SHA1   for /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/kafka-4.2.0-src.tgz
$ gpg --print-md sha1   kafka-4.2.0-src.tgz > kafka-4.2.0-src.tgz.sha1  
> 
Generating SHA512 for /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/kafka-4.2.0-src.tgz
$ gpg --print-md sha512 kafka-4.2.0-src.tgz > kafka-4.2.0-src.tgz.sha512
> 
Generating MD5    for /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/kafka_2.13-4.2.0.tgz
$ gpg --print-md md5    kafka_2.13-4.2.0.tgz > kafka_2.13-4.2.0.tgz.md5   
> 
Generating SHA1   for /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/kafka_2.13-4.2.0.tgz
$ gpg --print-md sha1   kafka_2.13-4.2.0.tgz > kafka_2.13-4.2.0.tgz.sha1  
> 
Generating SHA512 for /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/kafka_2.13-4.2.0.tgz
$ gpg --print-md sha512 kafka_2.13-4.2.0.tgz > kafka_2.13-4.2.0.tgz.sha512
> 
Generating MD5    for /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/kafka_2.13-4.2.0-site-docs.tgz
$ gpg --print-md md5    kafka_2.13-4.2.0-site-docs.tgz > kafka_2.13-4.2.0-site-docs.tgz.md5   
> 
Generating SHA1   for /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/kafka_2.13-4.2.0-site-docs.tgz
$ gpg --print-md sha1   kafka_2.13-4.2.0-site-docs.tgz > kafka_2.13-4.2.0-site-docs.tgz.sha1  
> 
Generating SHA512 for /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/kafka_2.13-4.2.0-site-docs.tgz
$ gpg --print-md sha512 kafka_2.13-4.2.0-site-docs.tgz > kafka_2.13-4.2.0-site-docs.tgz.sha512
> 
Listing artifacts to be uploaded:
$ ls -R /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016
> RELEASE_NOTES.html
> RELEASE_NOTES.html.asc
> RELEASE_NOTES.html.md5
> RELEASE_NOTES.html.sha1
> RELEASE_NOTES.html.sha512
> javadoc
> kafka-4.2.0-src.tgz
> kafka-4.2.0-src.tgz.asc
> kafka-4.2.0-src.tgz.md5
> kafka-4.2.0-src.tgz.sha1
> kafka-4.2.0-src.tgz.sha512
> kafka_2.13-4.2.0-site-docs.tgz
> kafka_2.13-4.2.0-site-docs.tgz.asc
> kafka_2.13-4.2.0-site-docs.tgz.md5
> kafka_2.13-4.2.0-site-docs.tgz.sha1
> kafka_2.13-4.2.0-site-docs.tgz.sha512
> kafka_2.13-4.2.0.tgz
> kafka_2.13-4.2.0.tgz.asc
> kafka_2.13-4.2.0.tgz.md5
> kafka_2.13-4.2.0.tgz.sha1
> kafka_2.13-4.2.0.tgz.sha512
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc:
> allclasses-index.html
> allpackages-index.html
> constant-values.html
> deprecated-list.html
> element-list
> help-doc.html
> index-all.html
> index.html
> legal
> member-search-index.js
> module-search-index.js
> org
> overview-summary.html
> overview-tree.html
> package-search-index.js
> resource-files
> script-files
> search.html
> serialized-form.html
> tag-search-index.js
> type-search-index.js
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/legal:
> COPYRIGHT
> LICENSE
> dejavufonts.md
> jquery.md
> jqueryUI.md
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org:
> apache
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache:
> kafka
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka:
> clients
> common
> connect
> coordinator
> server
> streams
> tools
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/clients:
> admin
> consumer
> producer
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/clients/admin:
> AbortTransactionOptions.html
> AbortTransactionResult.html
> AbortTransactionSpec.html
> AbstractOptions.html
> AddRaftVoterOptions.html
> AddRaftVoterResult.html
> Admin.html
> AdminClient.html
> AdminClientConfig.html
> AlterClientQuotasOptions.html
> AlterClientQuotasResult.html
> AlterConfigOp.OpType.html
> AlterConfigOp.html
> AlterConfigsOptions.html
> AlterConfigsResult.html
> AlterConsumerGroupOffsetsOptions.html
> AlterConsumerGroupOffsetsResult.html
> AlterPartitionReassignmentsOptions.html
> AlterPartitionReassignmentsResult.html
> AlterReplicaLogDirsOptions.html
> AlterReplicaLogDirsResult.html
> AlterShareGroupOffsetsOptions.html
> AlterShareGroupOffsetsResult.html
> AlterStreamsGroupOffsetsOptions.html
> AlterStreamsGroupOffsetsResult.html
> AlterUserScramCredentialsOptions.html
> AlterUserScramCredentialsResult.html
> ClassicGroupDescription.html
> ClientMetricsResourceListing.html
> Config.html
> ConfigEntry.ConfigSource.html
> ConfigEntry.ConfigSynonym.html
> ConfigEntry.ConfigType.html
> ConfigEntry.html
> ConsumerGroupDescription.html
> ConsumerGroupListing.html
> CreateAclsOptions.html
> CreateAclsResult.html
> CreateDelegationTokenOptions.html
> CreateDelegationTokenResult.html
> CreatePartitionsOptions.html
> CreatePartitionsResult.html
> CreateTopicsOptions.html
> CreateTopicsResult.TopicMetadataAndConfig.html
> CreateTopicsResult.html
> DeleteAclsOptions.html
> DeleteAclsResult.FilterResult.html
> DeleteAclsResult.FilterResults.html
> DeleteAclsResult.html
> DeleteConsumerGroupOffsetsOptions.html
> DeleteConsumerGroupOffsetsResult.html
> DeleteConsumerGroupsOptions.html
> DeleteConsumerGroupsResult.html
> DeleteRecordsOptions.html
> DeleteRecordsResult.html
> DeleteShareGroupOffsetsOptions.html
> DeleteShareGroupOffsetsResult.html
> DeleteShareGroupsOptions.html
> DeleteShareGroupsResult.html
> DeleteStreamsGroupOffsetsOptions.html
> DeleteStreamsGroupOffsetsResult.html
> DeleteStreamsGroupsOptions.html
> DeleteStreamsGroupsResult.html
> DeleteTopicsOptions.html
> DeleteTopicsResult.html
> DeletedRecords.html
> DescribeAclsOptions.html
> DescribeAclsResult.html
> DescribeClassicGroupsOptions.html
> DescribeClassicGroupsResult.html
> DescribeClientQuotasOptions.html
> DescribeClientQuotasResult.html
> DescribeClusterOptions.html
> DescribeClusterResult.html
> DescribeConfigsOptions.html
> DescribeConfigsResult.html
> DescribeConsumerGroupsOptions.html
> DescribeConsumerGroupsResult.html
> DescribeDelegationTokenOptions.html
> DescribeDelegationTokenResult.html
> DescribeFeaturesOptions.html
> DescribeFeaturesResult.html
> DescribeLogDirsOptions.html
> DescribeLogDirsResult.html
> DescribeMetadataQuorumOptions.html
> DescribeMetadataQuorumResult.html
> DescribeProducersOptions.html
> DescribeProducersResult.PartitionProducerState.html
> DescribeProducersResult.html
> DescribeReplicaLogDirsOptions.html
> DescribeReplicaLogDirsResult.ReplicaLogDirInfo.html
> DescribeReplicaLogDirsResult.html
> DescribeShareGroupsOptions.html
> DescribeShareGroupsResult.html
> DescribeStreamsGroupsOptions.html
> DescribeStreamsGroupsResult.html
> DescribeTopicsOptions.html
> DescribeTopicsResult.html
> DescribeTransactionsOptions.html
> DescribeTransactionsResult.html
> DescribeUserScramCredentialsOptions.html
> DescribeUserScramCredentialsResult.html
> ElectLeadersOptions.html
> ElectLeadersResult.html
> EndpointType.html
> ExpireDelegationTokenOptions.html
> ExpireDelegationTokenResult.html
> FeatureMetadata.html
> FeatureUpdate.UpgradeType.html
> FeatureUpdate.html
> FenceProducersOptions.html
> FenceProducersResult.html
> FinalizedVersionRange.html
> ForwardingAdmin.html
> GroupListing.html
> KafkaAdminClient.html
> ListClientMetricsResourcesOptions.html
> ListClientMetricsResourcesResult.html
> ListConfigResourcesOptions.html
> ListConfigResourcesResult.html
> ListConsumerGroupOffsetsOptions.html
> ListConsumerGroupOffsetsResult.html
> ListConsumerGroupOffsetsSpec.html
> ListConsumerGroupsOptions.html
> ListConsumerGroupsResult.html
> ListGroupsOptions.html
> ListGroupsResult.html
> ListOffsetsOptions.html
> ListOffsetsResult.ListOffsetsResultInfo.html
> ListOffsetsResult.html
> ListPartitionReassignmentsOptions.html
> ListPartitionReassignmentsResult.html
> ListShareGroupOffsetsOptions.html
> ListShareGroupOffsetsResult.html
> ListShareGroupOffsetsSpec.html
> ListStreamsGroupOffsetsOptions.html
> ListStreamsGroupOffsetsResult.html
> ListStreamsGroupOffsetsSpec.html
> ListTopicsOptions.html
> ListTopicsResult.html
> ListTransactionsOptions.html
> ListTransactionsResult.html
> LogDirDescription.html
> MemberAssignment.html
> MemberDescription.html
> MemberToRemove.html
> NewPartitionReassignment.html
> NewPartitions.html
> NewTopic.html
> OffsetSpec.EarliestLocalSpec.html
> OffsetSpec.EarliestPendingUploadSpec.html
> OffsetSpec.EarliestSpec.html
> OffsetSpec.LatestSpec.html
> OffsetSpec.LatestTieredSpec.html
> OffsetSpec.MaxTimestampSpec.html
> OffsetSpec.TimestampSpec.html
> OffsetSpec.html
> PartitionReassignment.html
> ProducerState.html
> QuorumInfo.Node.html
> QuorumInfo.ReplicaState.html
> QuorumInfo.html
> RaftVoterEndpoint.html
> RecordsToDelete.html
> RemoveMembersFromConsumerGroupOptions.html
> RemoveMembersFromConsumerGroupResult.html
> RemoveRaftVoterOptions.html
> RemoveRaftVoterResult.html
> RenewDelegationTokenOptions.html
> RenewDelegationTokenResult.html
> ReplicaInfo.html
> ScramCredentialInfo.html
> ScramMechanism.html
> ShareGroupDescription.html
> ShareMemberAssignment.html
> ShareMemberDescription.html
> StreamsGroupDescription.html
> StreamsGroupMemberAssignment.TaskIds.html
> StreamsGroupMemberAssignment.html
> StreamsGroupMemberDescription.Endpoint.html
> StreamsGroupMemberDescription.TaskOffset.html
> StreamsGroupMemberDescription.html
> StreamsGroupSubtopologyDescription.TopicInfo.html
> StreamsGroupSubtopologyDescription.html
> SupportedVersionRange.html
> TerminateTransactionOptions.html
> TerminateTransactionResult.html
> TopicDescription.html
> TopicListing.html
> TransactionDescription.html
> TransactionListing.html
> TransactionState.html
> UnregisterBrokerOptions.html
> UnregisterBrokerResult.html
> UpdateFeaturesOptions.html
> UpdateFeaturesResult.html
> UserScramCredentialAlteration.html
> UserScramCredentialDeletion.html
> UserScramCredentialUpsertion.html
> UserScramCredentialsDescription.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/clients/consumer:
> AcknowledgeType.html
> AcknowledgementCommitCallback.html
> CloseOptions.GroupMembershipOperation.html
> CloseOptions.html
> CommitFailedException.html
> Consumer.html
> ConsumerConfig.html
> ConsumerGroupMetadata.html
> ConsumerInterceptor.html
> ConsumerPartitionAssignor.Assignment.html
> ConsumerPartitionAssignor.GroupAssignment.html
> ConsumerPartitionAssignor.GroupSubscription.html
> ConsumerPartitionAssignor.RebalanceProtocol.html
> ConsumerPartitionAssignor.Subscription.html
> ConsumerPartitionAssignor.html
> ConsumerRebalanceListener.html
> ConsumerRecord.html
> ConsumerRecords.html
> CooperativeStickyAssignor.html
> GroupProtocol.html
> InvalidOffsetException.html
> KafkaConsumer.html
> KafkaShareConsumer.html
> LogTruncationException.html
> MockConsumer.html
> MockShareConsumer.html
> NoOffsetForPartitionException.html
> OffsetAndMetadata.html
> OffsetAndTimestamp.html
> OffsetCommitCallback.html
> OffsetOutOfRangeException.html
> OffsetResetStrategy.html
> RangeAssignor.html
> RetriableCommitFailedException.html
> RoundRobinAssignor.html
> ShareConsumer.html
> StickyAssignor.html
> SubscriptionPattern.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/clients/producer:
> BufferExhaustedException.html
> Callback.html
> KafkaProducer.html
> MockProducer.html
> Partitioner.html
> PreparedTxnState.html
> Producer.html
> ProducerConfig.html
> ProducerInterceptor.html
> ProducerRecord.html
> RecordMetadata.html
> RoundRobinPartitioner.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common:
> ClassicGroupState.html
> Cluster.html
> ClusterResource.html
> ClusterResourceListener.html
> Configurable.html
> ConsumerGroupState.html
> ElectionType.html
> Endpoint.html
> GroupState.html
> GroupType.html
> InvalidRecordException.html
> IsolationLevel.html
> KafkaException.html
> KafkaFuture.BaseFunction.html
> KafkaFuture.BiConsumer.html
> KafkaFuture.html
> MessageFormatter.html
> Metric.html
> MetricName.html
> MetricNameTemplate.html
> Node.html
> PartitionInfo.html
> Reconfigurable.html
> TopicCollection.TopicIdCollection.html
> TopicCollection.TopicNameCollection.html
> TopicCollection.html
> TopicIdPartition.html
> TopicPartition.html
> TopicPartitionInfo.html
> TopicPartitionReplica.html
> Uuid.html
> acl
> annotation
> config
> errors
> header
> metrics
> package-summary.html
> package-tree.html
> quota
> resource
> security
> serialization
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/acl:
> AccessControlEntry.html
> AccessControlEntryFilter.html
> AclBinding.html
> AclBindingFilter.html
> AclOperation.html
> AclPermissionType.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/annotation:
> InterfaceStability.Evolving.html
> InterfaceStability.Stable.html
> InterfaceStability.Unstable.html
> InterfaceStability.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/config:
> AbstractConfig.html
> Config.html
> ConfigChangeCallback.html
> ConfigData.html
> ConfigDef.CaseInsensitiveValidString.html
> ConfigDef.CompositeValidator.html
> ConfigDef.ConfigKey.html
> ConfigDef.Importance.html
> ConfigDef.LambdaValidator.html
> ConfigDef.ListSize.html
> ConfigDef.NonEmptyString.html
> ConfigDef.NonEmptyStringWithoutControlChars.html
> ConfigDef.NonNullValidator.html
> ConfigDef.Range.html
> ConfigDef.Recommender.html
> ConfigDef.Type.html
> ConfigDef.ValidList.html
> ConfigDef.ValidString.html
> ConfigDef.Validator.html
> ConfigDef.Width.html
> ConfigDef.html
> ConfigException.html
> ConfigResource.Type.html
> ConfigResource.html
> ConfigTransformer.html
> ConfigTransformerResult.html
> ConfigValue.html
> LogLevelConfig.html
> SaslConfigs.html
> SecurityConfig.html
> SslClientAuth.html
> SslConfigs.html
> TopicConfig.html
> package-summary.html
> package-tree.html
> provider
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/config/provider:
> ConfigProvider.html
> DirectoryConfigProvider.html
> EnvVarConfigProvider.html
> FileConfigProvider.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/errors:
> ApiException.html
> ApplicationRecoverableException.html
> AuthenticationException.html
> AuthorizationException.html
> AuthorizerNotReadyException.html
> BrokerIdNotRegisteredException.html
> BrokerNotAvailableException.html
> ClusterAuthorizationException.html
> ConcurrentTransactionsException.html
> ControllerMovedException.html
> CoordinatorLoadInProgressException.html
> CoordinatorNotAvailableException.html
> CorruptRecordException.html
> DelegationTokenAuthorizationException.html
> DelegationTokenDisabledException.html
> DelegationTokenExpiredException.html
> DelegationTokenNotFoundException.html
> DelegationTokenOwnerMismatchException.html
> DisconnectException.html
> DuplicateBrokerRegistrationException.html
> DuplicateResourceException.html
> DuplicateSequenceException.html
> DuplicateVoterException.html
> ElectionNotNeededException.html
> EligibleLeadersNotAvailableException.html
> FeatureUpdateFailedException.html
> FencedInstanceIdException.html
> FencedLeaderEpochException.html
> FencedMemberEpochException.html
> FencedStateEpochException.html
> FetchSessionIdNotFoundException.html
> FetchSessionTopicIdException.html
> GroupAuthorizationException.html
> GroupIdNotFoundException.html
> GroupMaxSizeReachedException.html
> GroupNotEmptyException.html
> GroupSubscribedToTopicException.html
> IllegalGenerationException.html
> IllegalSaslStateException.html
> InconsistentClusterIdException.html
> InconsistentGroupProtocolException.html
> InconsistentTopicIdException.html
> InconsistentVoterSetException.html
> IneligibleReplicaException.html
> InterruptException.html
> InvalidCommitOffsetSizeException.html
> InvalidConfigurationException.html
> InvalidFetchSessionEpochException.html
> InvalidFetchSizeException.html
> InvalidGroupIdException.html
> InvalidMetadataException.html
> InvalidOffsetException.html
> InvalidPartitionsException.html
> InvalidPidMappingException.html
> InvalidPrincipalTypeException.html
> InvalidProducerEpochException.html
> InvalidRecordStateException.html
> InvalidRegistrationException.html
> InvalidRegularExpression.html
> InvalidReplicaAssignmentException.html
> InvalidReplicationFactorException.html
> InvalidRequestException.html
> InvalidRequiredAcksException.html
> InvalidSessionTimeoutException.html
> InvalidShareSessionEpochException.html
> InvalidTimestampException.html
> InvalidTopicException.html
> InvalidTxnStateException.html
> InvalidTxnTimeoutException.html
> InvalidUpdateVersionException.html
> InvalidVoterKeyException.html
> KafkaStorageException.html
> LeaderNotAvailableException.html
> ListenerNotFoundException.html
> LogDirNotFoundException.html
> MemberIdRequiredException.html
> MismatchedEndpointTypeException.html
> NetworkException.html
> NewLeaderElectedException.html
> NoReassignmentInProgressException.html
> NotControllerException.html
> NotCoordinatorException.html
> NotEnoughReplicasAfterAppendException.html
> NotEnoughReplicasException.html
> NotLeaderOrFollowerException.html
> OffsetMetadataTooLarge.html
> OffsetMovedToTieredStorageException.html
> OffsetNotAvailableException.html
> OffsetOutOfRangeException.html
> OperationNotAttemptedException.html
> OutOfOrderSequenceException.html
> PolicyViolationException.html
> PositionOutOfRangeException.html
> PreferredLeaderNotAvailableException.html
> PrincipalDeserializationException.html
> ProducerFencedException.html
> ReassignmentInProgressException.html
> RebalanceInProgressException.html
> RebootstrapRequiredException.html
> RecordBatchTooLargeException.html
> RecordDeserializationException.DeserializationExceptionOrigin.html
> RecordDeserializationException.html
> RecordTooLargeException.html
> RefreshRetriableException.html
> ReplicaNotAvailableException.html
> ResourceNotFoundException.html
> RetriableException.html
> SaslAuthenticationException.html
> SecurityDisabledException.html
> SerializationException.html
> ShareSessionLimitReachedException.html
> ShareSessionNotFoundException.html
> SnapshotNotFoundException.html
> SslAuthenticationException.html
> StaleBrokerEpochException.html
> StaleMemberEpochException.html
> StreamsInvalidTopologyEpochException.html
> StreamsInvalidTopologyException.html
> StreamsTopologyFencedException.html
> TelemetryTooLargeException.html
> ThrottlingQuotaExceededException.html
> TimeoutException.html
> TopicAuthorizationException.html
> TopicDeletionDisabledException.html
> TopicExistsException.html
> TransactionAbortableException.html
> TransactionAbortedException.html
> TransactionCoordinatorFencedException.html
> TransactionalIdAuthorizationException.html
> TransactionalIdNotFoundException.html
> UnacceptableCredentialException.html
> UnknownControllerIdException.html
> UnknownLeaderEpochException.html
> UnknownMemberIdException.html
> UnknownProducerIdException.html
> UnknownServerException.html
> UnknownSubscriptionIdException.html
> UnknownTopicIdException.html
> UnknownTopicOrPartitionException.html
> UnreleasedInstanceIdException.html
> UnstableOffsetCommitException.html
> UnsupportedAssignorException.html
> UnsupportedByAuthenticationException.html
> UnsupportedCompressionTypeException.html
> UnsupportedEndpointTypeException.html
> UnsupportedForMessageFormatException.html
> UnsupportedSaslMechanismException.html
> UnsupportedVersionException.html
> VoterNotFoundException.html
> WakeupException.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/header:
> Header.html
> Headers.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/metrics:
> CompoundStat.NamedMeasurable.html
> CompoundStat.html
> Gauge.html
> JmxReporter.html
> KafkaMetric.html
> KafkaMetricsContext.html
> Measurable.html
> MeasurableStat.html
> MetricConfig.html
> MetricValueProvider.html
> Metrics.html
> MetricsContext.html
> MetricsReporter.html
> Monitorable.html
> PluginMetrics.html
> Quota.html
> QuotaViolationException.html
> Sensor.RecordingLevel.html
> Sensor.html
> Stat.html
> package-summary.html
> package-tree.html
> stats
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/metrics/stats:
> Avg.html
> CumulativeCount.html
> CumulativeSum.html
> Frequencies.html
> Frequency.html
> Histogram.BinScheme.html
> Histogram.ConstantBinScheme.html
> Histogram.LinearBinScheme.html
> Histogram.html
> Max.html
> Meter.html
> Min.html
> Percentile.html
> Percentiles.BucketSizing.html
> Percentiles.html
> Rate.html
> SampledStat.html
> SimpleRate.html
> TokenBucket.html
> Value.html
> WindowedCount.html
> WindowedSum.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/quota:
> ClientQuotaAlteration.Op.html
> ClientQuotaAlteration.html
> ClientQuotaEntity.html
> ClientQuotaFilter.html
> ClientQuotaFilterComponent.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/resource:
> PatternType.html
> Resource.html
> ResourcePattern.html
> ResourcePatternFilter.html
> ResourceType.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/security:
> auth
> oauthbearer
> plain
> scram
> token
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/security/auth:
> AuthenticateCallbackHandler.html
> AuthenticationContext.html
> KafkaPrincipal.html
> KafkaPrincipalBuilder.html
> KafkaPrincipalSerde.html
> Login.html
> PlaintextAuthenticationContext.html
> SaslAuthenticationContext.html
> SaslExtensions.html
> SaslExtensionsCallback.html
> SecurityProtocol.html
> SecurityProviderCreator.html
> SslAuthenticationContext.html
> SslEngineFactory.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/security/oauthbearer:
> BrokerJwtValidator.ClaimSupplier.html
> BrokerJwtValidator.html
> ClientCredentialsJwtRetriever.html
> ClientJwtValidator.html
> DefaultJwtRetriever.html
> DefaultJwtValidator.html
> FileJwtRetriever.html
> JwtBearerJwtRetriever.html
> JwtRetriever.html
> JwtRetrieverException.html
> JwtValidator.html
> JwtValidatorException.html
> OAuthBearerExtensionsValidatorCallback.html
> OAuthBearerLoginCallbackHandler.html
> OAuthBearerLoginModule.html
> OAuthBearerToken.html
> OAuthBearerTokenCallback.html
> OAuthBearerValidatorCallback.html
> OAuthBearerValidatorCallbackHandler.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/security/plain:
> PlainAuthenticateCallback.html
> PlainLoginModule.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/security/scram:
> ScramCredential.html
> ScramCredentialCallback.html
> ScramExtensionsCallback.html
> ScramLoginModule.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/security/token:
> delegation
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/security/token/delegation:
> DelegationToken.html
> TokenInformation.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/common/serialization:
> BooleanDeserializer.html
> BooleanSerializer.html
> ByteArrayDeserializer.html
> ByteArraySerializer.html
> ByteBufferDeserializer.html
> ByteBufferSerializer.html
> BytesDeserializer.html
> BytesSerializer.html
> Deserializer.html
> DoubleDeserializer.html
> DoubleSerializer.html
> FloatDeserializer.html
> FloatSerializer.html
> IntegerDeserializer.html
> IntegerSerializer.html
> ListDeserializer.html
> ListSerializer.html
> LongDeserializer.html
> LongSerializer.html
> Serde.html
> Serdes.BooleanSerde.html
> Serdes.ByteArraySerde.html
> Serdes.ByteBufferSerde.html
> Serdes.BytesSerde.html
> Serdes.DoubleSerde.html
> Serdes.FloatSerde.html
> Serdes.IntegerSerde.html
> Serdes.ListSerde.html
> Serdes.LongSerde.html
> Serdes.ShortSerde.html
> Serdes.StringSerde.html
> Serdes.UUIDSerde.html
> Serdes.VoidSerde.html
> Serdes.WrapperSerde.html
> Serdes.html
> Serializer.html
> ShortDeserializer.html
> ShortSerializer.html
> StringDeserializer.html
> StringSerializer.html
> UUIDDeserializer.html
> UUIDSerializer.html
> VoidDeserializer.html
> VoidSerializer.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/connect:
> components
> connector
> data
> errors
> header
> health
> mirror
> rest
> sink
> source
> storage
> tools
> transforms
> util
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/connect/components:
> Versioned.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/connect/connector:
> ConnectRecord.html
> Connector.html
> ConnectorContext.html
> Task.html
> package-summary.html
> package-tree.html
> policy
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/connect/connector/policy:
> ConnectorClientConfigOverridePolicy.html
> ConnectorClientConfigRequest.ClientType.html
> ConnectorClientConfigRequest.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/connect/data:
> ConnectSchema.html
> Date.html
> Decimal.html
> Field.html
> Schema.Type.html
> Schema.html
> SchemaAndValue.html
> SchemaBuilder.html
> SchemaProjector.html
> Struct.html
> Time.html
> Timestamp.html
> Values.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/connect/errors:
> AlreadyExistsException.html
> ConnectException.html
> DataException.html
> IllegalWorkerStateException.html
> NotFoundException.html
> RetriableException.html
> SchemaBuilderException.html
> SchemaProjectorException.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/connect/header:
> ConnectHeaders.html
> Header.html
> Headers.HeaderTransform.html
> Headers.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/connect/health:
> AbstractState.html
> ConnectClusterDetails.html
> ConnectClusterState.html
> ConnectorHealth.html
> ConnectorState.html
> ConnectorType.html
> TaskState.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/connect/mirror:
> Checkpoint.html
> DefaultReplicationPolicy.html
> Heartbeat.html
> IdentityReplicationPolicy.html
> MirrorClient.html
> MirrorClientConfig.html
> RemoteClusterUtils.html
> ReplicationPolicy.html
> SourceAndTarget.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/connect/rest:
> ConnectRestExtension.html
> ConnectRestExtensionContext.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/connect/sink:
> ErrantRecordReporter.html
> SinkConnector.html
> SinkConnectorContext.html
> SinkRecord.html
> SinkTask.html
> SinkTaskContext.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/connect/source:
> ConnectorTransactionBoundaries.html
> ExactlyOnceSupport.html
> SourceConnector.html
> SourceConnectorContext.html
> SourceRecord.html
> SourceTask.TransactionBoundary.html
> SourceTask.html
> SourceTaskContext.html
> TransactionContext.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/connect/storage:
> Converter.html
> ConverterConfig.html
> ConverterType.html
> HeaderConverter.html
> OffsetStorageReader.html
> SimpleHeaderConverter.html
> StringConverter.html
> StringConverterConfig.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/connect/tools:
> MockConnector.html
> MockSinkConnector.html
> MockSinkTask.html
> MockSourceConnector.html
> MockSourceTask.html
> SchemaSourceConnector.html
> SchemaSourceTask.html
> VerifiableSinkConnector.html
> VerifiableSinkTask.html
> VerifiableSourceConnector.html
> VerifiableSourceTask.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/connect/transforms:
> Transformation.html
> package-summary.html
> package-tree.html
> predicates
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/connect/transforms/predicates:
> Predicate.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/connect/util:
> ConnectorUtils.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/coordinator:
> group
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/coordinator/group:
> api
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/coordinator/group/api:
> assignor
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/coordinator/group/api/assignor:
> ConsumerGroupPartitionAssignor.html
> GroupAssignment.html
> GroupSpec.html
> MemberAssignment.html
> MemberSubscription.html
> PartitionAssignor.html
> PartitionAssignorException.html
> ShareGroupPartitionAssignor.html
> SubscribedTopicDescriber.html
> SubscriptionType.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/server:
> authorizer
> log
> policy
> quota
> telemetry
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/server/authorizer:
> AclCreateResult.html
> AclDeleteResult.AclBindingDeleteResult.html
> AclDeleteResult.html
> Action.html
> AuthorizableRequestContext.html
> AuthorizationResult.html
> Authorizer.html
> AuthorizerServerInfo.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/server/log:
> remote
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/server/log/remote:
> storage
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/server/log/remote/storage:
> LogSegmentData.html
> RemoteLogMetadata.html
> RemoteLogMetadataManager.html
> RemoteLogSegmentId.html
> RemoteLogSegmentMetadata.CustomMetadata.html
> RemoteLogSegmentMetadata.html
> RemoteLogSegmentMetadataUpdate.html
> RemoteLogSegmentState.html
> RemotePartitionDeleteMetadata.html
> RemotePartitionDeleteState.html
> RemoteResourceNotFoundException.html
> RemoteStorageException.html
> RemoteStorageManager.IndexType.html
> RemoteStorageManager.html
> RemoteStorageMetrics.html
> RemoteStorageNotReadyException.html
> RetriableRemoteStorageException.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/server/policy:
> AlterConfigPolicy.RequestMetadata.html
> AlterConfigPolicy.html
> CreateTopicPolicy.RequestMetadata.html
> CreateTopicPolicy.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/server/quota:
> ClientQuotaCallback.html
> ClientQuotaEntity.ConfigEntity.html
> ClientQuotaEntity.ConfigEntityType.html
> ClientQuotaEntity.html
> ClientQuotaType.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/server/telemetry:
> ClientTelemetry.html
> ClientTelemetryPayload.html
> ClientTelemetryReceiver.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/streams:
> AutoOffsetReset.html
> ClientInstanceIds.html
> CloseOptions.GroupMembershipOperation.html
> CloseOptions.html
> GroupProtocol.html
> KafkaClientSupplier.html
> KafkaStreams.CloseOptions.html
> KafkaStreams.State.html
> KafkaStreams.StateListener.html
> KafkaStreams.html
> KeyQueryMetadata.html
> KeyValue.html
> LagInfo.html
> StoreQueryParameters.html
> StreamsBuilder.html
> StreamsConfig.InternalConfig.html
> StreamsConfig.html
> StreamsMetadata.html
> StreamsMetrics.html
> TaskMetadata.html
> TestInputTopic.html
> TestOutputTopic.html
> ThreadMetadata.html
> Topology.AutoOffsetReset.html
> Topology.html
> TopologyConfig.InternalConfig.html
> TopologyConfig.TaskConfig.html
> TopologyConfig.html
> TopologyDescription.GlobalStore.html
> TopologyDescription.Node.html
> TopologyDescription.Processor.html
> TopologyDescription.Sink.html
> TopologyDescription.Source.html
> TopologyDescription.Subtopology.html
> TopologyDescription.html
> TopologyTestDriver.html
> errors
> kstream
> package-summary.html
> package-tree.html
> processor
> query
> state
> test
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/streams/errors:
> BrokerNotFoundException.html
> DefaultProductionExceptionHandler.html
> DeserializationExceptionHandler.DeserializationHandlerResponse.html
> DeserializationExceptionHandler.Response.html
> DeserializationExceptionHandler.Result.html
> DeserializationExceptionHandler.html
> ErrorHandlerContext.html
> InternalTopicsAlreadySetupException.html
> InvalidStateStoreException.html
> InvalidStateStorePartitionException.html
> LockException.html
> LogAndContinueExceptionHandler.html
> LogAndContinueProcessingExceptionHandler.html
> LogAndFailExceptionHandler.html
> LogAndFailProcessingExceptionHandler.html
> MisconfiguredInternalTopicException.html
> MissingInternalTopicsException.html
> MissingSourceTopicException.html
> ProcessingExceptionHandler.ProcessingHandlerResponse.html
> ProcessingExceptionHandler.Response.html
> ProcessingExceptionHandler.Result.html
> ProcessingExceptionHandler.html
> ProcessorStateException.html
> ProductionExceptionHandler.ProductionExceptionHandlerResponse.html
> ProductionExceptionHandler.Response.html
> ProductionExceptionHandler.Result.html
> ProductionExceptionHandler.SerializationExceptionOrigin.html
> ProductionExceptionHandler.html
> StateStoreMigratedException.html
> StateStoreNotAvailableException.html
> StreamsException.html
> StreamsNotStartedException.html
> StreamsRebalancingException.html
> StreamsStoppedException.html
> StreamsUncaughtExceptionHandler.StreamThreadExceptionResponse.html
> StreamsUncaughtExceptionHandler.html
> TaskAssignmentException.html
> TaskCorruptedException.html
> TaskIdFormatException.html
> TaskMigratedException.html
> TopologyException.html
> UnknownStateStoreException.html
> UnknownTopologyException.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/streams/kstream:
> Aggregator.html
> Branched.html
> BranchedKStream.html
> CogroupedKStream.html
> Consumed.html
> EmitStrategy.StrategyType.html
> EmitStrategy.html
> ForeachAction.html
> ForeachProcessor.html
> GlobalKTable.html
> Grouped.html
> Initializer.html
> JoinWindows.html
> Joined.html
> KGroupedStream.html
> KGroupedTable.html
> KStream.html
> KTable.html
> KeyValueMapper.html
> Materialized.StoreType.html
> Materialized.html
> Merger.html
> Named.html
> Predicate.html
> Printed.html
> Produced.html
> Reducer.html
> Repartitioned.html
> SessionWindowedCogroupedKStream.html
> SessionWindowedDeserializer.html
> SessionWindowedKStream.html
> SessionWindowedSerializer.html
> SessionWindows.html
> SlidingWindows.html
> StreamJoined.html
> Suppressed.BufferConfig.html
> Suppressed.EagerBufferConfig.html
> Suppressed.StrictBufferConfig.html
> Suppressed.html
> TableJoined.html
> TimeWindowedCogroupedKStream.html
> TimeWindowedDeserializer.html
> TimeWindowedKStream.html
> TimeWindowedSerializer.html
> TimeWindows.html
> Transformer.html
> TransformerSupplier.html
> UnlimitedWindows.html
> ValueJoiner.html
> ValueJoinerWithKey.html
> ValueMapper.html
> ValueMapperWithKey.html
> ValueTransformer.html
> ValueTransformerSupplier.html
> ValueTransformerWithKey.html
> ValueTransformerWithKeySupplier.html
> Window.html
> Windowed.html
> WindowedSerdes.SessionWindowedSerde.html
> WindowedSerdes.TimeWindowedSerde.html
> WindowedSerdes.html
> Windows.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/streams/processor:
> BatchingStateRestoreCallback.html
> Cancellable.html
> CommitCallback.html
> ConnectedStoreProvider.html
> FailOnInvalidTimestamp.html
> LogAndSkipOnInvalidTimestamp.html
> MockProcessorContext.CapturedForward.html
> MockProcessorContext.CapturedPunctuator.html
> MockProcessorContext.html
> ProcessorContext.html
> PunctuationType.html
> Punctuator.html
> RecordContext.html
> StandbyUpdateListener.SuspendReason.html
> StandbyUpdateListener.html
> StateRestoreCallback.html
> StateRestoreListener.html
> StateStore.html
> StateStoreContext.html
> StreamPartitioner.html
> TaskId.html
> TimestampExtractor.html
> To.html
> TopicNameExtractor.html
> UsePartitionTimeOnInvalidTimestamp.html
> WallclockTimestampExtractor.html
> api
> assignment
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/streams/processor/api:
> ContextualFixedKeyProcessor.html
> ContextualProcessor.html
> FixedKeyProcessor.html
> FixedKeyProcessorContext.html
> FixedKeyProcessorSupplier.html
> FixedKeyRecord.html
> InternalFixedKeyRecordFactory.html
> MockProcessorContext.CapturedForward.html
> MockProcessorContext.CapturedPunctuator.html
> MockProcessorContext.html
> ProcessingContext.html
> Processor.html
> ProcessorContext.html
> ProcessorSupplier.html
> ProcessorWrapper.html
> Record.html
> RecordMetadata.html
> WrappedFixedKeyProcessorSupplier.html
> WrappedProcessorSupplier.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/streams/processor/assignment:
> ApplicationState.html
> AssignmentConfigs.html
> KafkaStreamsAssignment.AssignedTask.Type.html
> KafkaStreamsAssignment.AssignedTask.html
> KafkaStreamsAssignment.html
> KafkaStreamsState.html
> ProcessId.html
> TaskAssignmentUtils.MoveStandbyTaskPredicate.html
> TaskAssignmentUtils.RackAwareOptimizationParams.html
> TaskAssignmentUtils.html
> TaskAssignor.AssignmentError.html
> TaskAssignor.TaskAssignment.html
> TaskAssignor.html
> TaskInfo.html
> TaskTopicPartition.html
> assignors
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/streams/processor/assignment/assignors:
> StickyTaskAssignor.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/streams/query:
> FailureReason.html
> KeyQuery.html
> MultiVersionedKeyQuery.html
> Position.html
> PositionBound.html
> Query.html
> QueryConfig.html
> QueryResult.html
> RangeQuery.html
> ResultOrder.html
> StateQueryRequest.InStore.html
> StateQueryRequest.html
> StateQueryResult.html
> TimestampedKeyQuery.html
> TimestampedRangeQuery.html
> VersionedKeyQuery.html
> WindowKeyQuery.html
> WindowRangeQuery.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/streams/state:
> BuiltInDslStoreSuppliers.InMemoryDslStoreSuppliers.html
> BuiltInDslStoreSuppliers.RocksDBDslStoreSuppliers.html
> BuiltInDslStoreSuppliers.html
> DslKeyValueParams.html
> DslSessionParams.html
> DslStoreSuppliers.html
> DslWindowParams.html
> HostInfo.html
> KeyValueBytesStoreSupplier.html
> KeyValueIterator.html
> KeyValueStore.html
> QueryableStoreType.html
> QueryableStoreTypes.KeyValueStoreType.html
> QueryableStoreTypes.SessionStoreType.html
> QueryableStoreTypes.WindowStoreType.html
> QueryableStoreTypes.html
> ReadOnlyKeyValueStore.html
> ReadOnlySessionStore.html
> ReadOnlyWindowStore.html
> RocksDBConfigSetter.html
> SessionBytesStoreSupplier.html
> SessionStore.html
> StateSerdes.html
> StoreBuilder.html
> StoreSupplier.html
> Stores.html
> TimestampedBytesStore.html
> TimestampedKeyValueStore.html
> TimestampedWindowStore.html
> ValueAndTimestamp.html
> VersionedBytesStore.html
> VersionedBytesStoreSupplier.html
> VersionedKeyValueStore.html
> VersionedRecord.html
> VersionedRecordIterator.html
> WindowBytesStoreSupplier.html
> WindowStore.html
> WindowStoreIterator.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/streams/test:
> TestRecord.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/tools:
> api
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/org/apache/kafka/tools/api:
> Decoder.html
> DefaultDecoder.html
> IntegerDecoder.html
> LongDecoder.html
> RecordReader.html
> StringDecoder.html
> package-summary.html
> package-tree.html
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/resource-files:
> copy.svg
> fonts
> glass.svg
> jquery-ui.min.css
> left.svg
> link.svg
> right.svg
> stylesheet.css
> x.svg
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/resource-files/fonts:
> DejaVuLGCSans-Bold.woff
> DejaVuLGCSans-Bold.woff2
> DejaVuLGCSans-BoldOblique.woff
> DejaVuLGCSans-BoldOblique.woff2
> DejaVuLGCSans-Oblique.woff
> DejaVuLGCSans-Oblique.woff2
> DejaVuLGCSans.woff
> DejaVuLGCSans.woff2
> DejaVuLGCSansMono-Bold.woff
> DejaVuLGCSansMono-Bold.woff2
> DejaVuLGCSansMono-BoldOblique.woff
> DejaVuLGCSansMono-BoldOblique.woff2
> DejaVuLGCSansMono-Oblique.woff
> DejaVuLGCSansMono-Oblique.woff2
> DejaVuLGCSansMono.woff
> DejaVuLGCSansMono.woff2
> DejaVuLGCSerif-Bold.woff
> DejaVuLGCSerif-Bold.woff2
> DejaVuLGCSerif-BoldItalic.woff
> DejaVuLGCSerif-BoldItalic.woff2
> DejaVuLGCSerif-Italic.woff
> DejaVuLGCSerif-Italic.woff2
> DejaVuLGCSerif.woff
> DejaVuLGCSerif.woff2
> dejavu.css
> 
> /Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka-4.2.0-rc1016/javadoc/script-files:
> jquery-3.7.1.min.js
> jquery-ui.min.js
> script.js
> search-page.js
> search.js
Zipping artifacts
$ tar -czf kafka-4.2.0-rc1016.tar.gz kafka-4.2.0-rc1016
> 
Going to check in artifacts to svn under https://dist.apache.org/repos/dist/dev/kafka/4.2.0-rc1016. OK? (y/n): 

prereq("svn CLI in PATH", lambda: "svn" in execute("svn --version"))
prereq("Verifying that you have no unstaged git changes", lambda: git.has_unstaged_changes())
prereq("Verifying that you have no staged git changes", lambda: git.has_staged_changes())
prereq("Verifying that you have no unstaged git changes", lambda: not git.has_unstaged_changes())
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@clolov Did you encounter this issue during the 4.0.1 release?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mimaison FYI

This issue is straightforward, but I'm not sure why it wasn't exposed during the recent release

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This error was introduced in 30ffd42#diff-241bcfc06fc20c009b77012a614513cc634006b8557f4d9cdcdc8fb8d44178e240 when if result == False was changed to if not result.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should fix this by fixing the function's return value in this PR since if not result is more Pythonic.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree both

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My bad, good catch!
+1 of fixing the return value

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the review and for helping confirm the issue.
I’ve applied the related changes, and here’s how to reproduce the problem and verify the fix:
#20699 (comment)

@github-actions github-actions bot removed the triage PRs from the community label Oct 17, 2025
Copy link
Collaborator

@mingyen066 mingyen066 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks for the PR. Left some comments

release/git.py Outdated
__defaults(kwargs)
execute("git diff --cached --exit-code --quiet", **kwargs)
try:
# 0: no staged changes; non-zero: there are staged changes
Copy link
Collaborator

@mingyen066 mingyen066 Oct 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is wrong.
non-zero(has diff) will raise exception since function execute use subprocess.check_output

release/git.py Outdated
__defaults(kwargs)
execute("git diff --exit-code --quiet", **kwargs)
try:
# 0: no unstaged changes; non-zero: there are unstaged changes
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto

@apalan60
Copy link
Contributor Author

apalan60 commented Oct 18, 2025

This PR introduces multiple fixes. Below are some steps for easier error reproduction and fix validation.

Pre‑setup: apply a patch to simplify local runs

This patch removes checks unrelated to the error and JDK change:

  • Skip Maven CLI presence check
  • Skip SVN CLI presence check
  • Skip unfixed JIRA tickets check while generating release notes.
  • Skip GPG key verification

Alternatively, you can skip this patch and follow the full configuration steps described in the release process guide to set up a complete environment before running release.py.
This patch is only provided to simplify local verification and reduce the review burden.

# Switch to dryrun branch
git switch dryrun 2>/dev/null || git switch -c dryrun

# Apply pre-setup patch as a commit
cat <<'PATCH' | git am -3
From 392a6f60db1f79cfa5ef064fae382f34be7a33ce Mon Sep 17 00:00:00 2001
From: Hong-Yi Chen <[email protected]>
Date: Sat, 18 Oct 2025 20:40:35 +0800
Subject: [PATCH] pre-setup

---
 release/notes.py   | 14 --------------
 release/release.py |  7 +++++--
 2 files changed, 5 insertions(+), 16 deletions(-)

diff --git a/release/notes.py b/release/notes.py
index e561fa03a2..aaf25dd4ec 100644
--- a/release/notes.py
+++ b/release/notes.py
@@ -144,20 +144,6 @@ def generate(version):
     at all for the specified version.
     """
     issues = query(f"project=KAFKA and fixVersion={version}")
-    if not issues:
-        raise Exception(f"Didn't find any issues for version {version}")
-    unresolved_issues = filter_unresolved(issues)
-    if unresolved_issues:
-        issue_list = "\n".join([issue_str(issue) for issue in unresolved_issues])
-        raise Exception(f"""
-Release {version} is not complete since there are unresolved or improperly
-resolved issues tagged {version} as the fix version:
-
-{issue_list}
-
-Note that for some resolutions, you should simply remove the fix version
-as they have not been truly fixed in this release.
-        """)
     return render(version, issues)
 
 
diff --git a/release/release.py b/release/release.py
index 92b76dee1e..5cb7d4e8fb 100644
--- a/release/release.py
+++ b/release/release.py
@@ -226,7 +226,6 @@ global_gradle_props = os.path.expanduser("~/.gradle/gradle.properties")
 gpg_key_id = textfiles.prop(global_gradle_props, "signing.keyId")
 gpg_passphrase = textfiles.prop(global_gradle_props, "signing.password")
 gpg_key_pass_id = gpg.key_pass_id(gpg_key_id, gpg_passphrase)
-preferences.once(f"verify_gpg_key_{gpg_key_pass_id}", verify_gpg_key)
 
 apache_id = preferences.get('apache_id', lambda: prompt("Please enter your apache-id: "))
 jdk21_env = get_jdk(21)
@@ -242,7 +241,11 @@ def verify_prerequisites():
             else:
                 print(f"Pre-requisite met: {name}")
         except Exception as e:
-            fail(f"Pre-requisite not met: {name}. Error: {e}")
+            #skip mvn CLI and snn check
+            if name in ['Apache Maven CLI (mvn) in PATH', "svn CLI in PATH"]:
+                print(f"Pre-requisite skipped: {name}. Error: {e}")
+            else:
+                fail(f"Pre-requisite not met: {name}. Error: {e}")
     prereq('Apache Maven CLI (mvn) in PATH', lambda: "Apache Maven" in execute("mvn -v"))
     prereq("svn CLI in PATH", lambda: "svn" in execute("svn --version"))
     prereq("Verifying that you have no unstaged git changes", lambda: git.has_unstaged_changes())
-- 
2.51.1

PATCH

Commands

# directory setup 
# cd <project-root>/release

# Create a temporary remote for dry runs
export DRYRUN_REMOTE_DIR="$(mktemp -d /tmp/kafka-release-remote.XXXXXX)"
git init --bare "$DRYRUN_REMOTE_DIR"
git remote remove dryrun 2>/dev/null || true
git remote add dryrun "$DRYRUN_REMOTE_DIR"

# seed 4.2 branch
git fetch origin 4.2:4.2 || git push dryrun HEAD:refs/heads/4.2

python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

source .venv/bin/activate
export PUSH_REMOTE_NAME=dryrun
python release.py

Expected Error 1: Git check false negative

Before

Begin to check if you have met all the pre-requisites for the release process
Pre-requisite met: Apache Maven CLI (mvn) in PATH
Pre-requisite met: svn CLI in PATH
FAILURE: Pre-requisite not met: Verifying that you have no unstaged git changes

Apply the patch

curl -L https://github.com/apache/kafka/commit/b715387d1838dbff636ac0bbf8d7074114d30e79.patch \
     -L https://github.com/apache/kafka/commit/e04d1e12cbb8abc0e9e50f1daa3b2ca74ba3a1c7.patch \
  | git am -3

then run python release.py again

After

Begin to check if you have met all the pre-requisites for the release process
Pre-requisite met: Apache Maven CLI (mvn) in PATH
Pre-requisite met: svn CLI in PATH
Pre-requisite met: Verifying that you have no unstaged git changes
Pre-requisite met: Verifying that you have no staged git changes

Expected Error 2: Gradle aggregatedJavadoc failure

With Gradle 9, aggregatedJavadoc fails when executed in parallel:

Before

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':aggregatedJavadoc'.
> Resolution of the configuration ':connect:compileClasspath' was attempted without an exclusive lock. This is unsafe and not allowed.

Apply the patch

(Also upgrade JDK25 together in these patches since these commits have dependencies. If needed, I can rebase and force push to make it easier to review.)

curl -L https://github.com/apache/kafka/commit/3941f3f7bf7fed66ccda37a9d5c088c9cf0285d4.patch \
     -L https://github.com/apache/kafka/commit/ddacb45cd9f22a7414387f463a73054d9cb949a5.patch \
     -L https://github.com/apache/kafka/commit/33dcc69e69c863ad33a3306ada1751af56165812.patch \
  | git am -3

switch to use JDK25 and then run python release.py again

After

> > Task :streams:compileJava
> > Task :connect:api:compileJava
> > Task :tools:tools-api:compileJava
> > Task :aggregatedJavadoc
> 
> [Incubating] Problems report is available at: file:///Users/hongyi/IdeaProjects/kafka/.release_work_dir/kafka/build/reports/problems/problems-report.html
> 
> Deprecated Gradle features were used in this build, making it incompatible with Gradle 10.
> 
> You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
> 
> For more on this, please refer to https://docs.gradle.org/9.1.0/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.
> 
> BUILD SUCCESSFUL in 18s

Cleanup

# --- Remove the 'dryrun' remote and the temporary bare repo ---

# Force-delete the local 'dryrun' branch if it exists
git switch trunk
git branch -D dryrun 2>/dev/null || true

# Remove the local git remote named 'dryrun' (ignore if it doesn't exist)
git remote remove dryrun 2>/dev/null || true

# If DRYRUN_REMOTE_DIR is set and exists, delete it
if [ -n "${DRYRUN_REMOTE_DIR:-}" ] && [ -d "$DRYRUN_REMOTE_DIR" ]; then
  rm -rf "$DRYRUN_REMOTE_DIR"
fi

# Fallback: remove any /tmp/kafka-release-remote.* directories created by mktemp
rm -rf /tmp/kafka-release-remote.* 2>/dev/null || true


# Deactivate the current Python virtual environment if active
deactivate 2>/dev/null || true

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants