Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Status

Current state: Under Discussion

Discussion thread: https://lists.apache.org/thread/01bs42crlkn5jr1r846vflp293zv2t86

JIRA: KAFKA-19749

Motivation

The `kafka-feature.sh` command-line tool currently has two issues that impact usability and consistency:

...

The `MutuallyExclusiveGroup` for `--bootstrap-server` and `--bootstrap-controller` will be removed from the top-level parser. Instead, this required argument group will be added individually to each of the subcommands that require a live cluster connection: `describe`, `upgrade`, `downgrade`, and `disable`. This change makes the arguments required only when one of these specific subcommands is chosen, allowing offline commands to run without them.

Breaking Change Warning Message

Since this is a breaking change, it should be introduced in 5.0. A warning message will be added to the argument group telling users that the group will be removed from the top level and become arguments under specific commands.

Expose Unstable Version Flag in version-mapping:

...

The `--bootstrap-server` / `--bootstrap-controller` arguments are no longer valid as top-level arguments. They must now be specified after the subcommand (e.g., `kafka-feature.sh describe --bootstrap-server ...`). 

Scripts invoking offline commands will no longer require these arguments.

...

This KIP introduces a breaking change to the command-line interface of kafka-feature.sh. Users must update existing scripts that use `kafka-features.sh`.

...