Hi Jhen-Yung,

Thanks for the KIP! I'm happy to see all the effort to make the command line 
tools more ergonomic and intuitive.

Some questions:

KT1: In mergePropertiesWithPrecedence(), what is the behavior of map entries 
with a null or an empty string? Is the value used verbatim, or does it mean use 
the default?

KT2: Is there any benefit to issuing a warning if a given option is specified 
in more than one of command line, properties on command line, and 
configuration? I could see that being very helpful for troubleshooting if the 
user didn't intend to have the same option specified in multiple places, and 
very annoying if they did.

KT3: Following along with the above question, can you add a proposal regarding 
support for nulls in maps? We've had issues in the client regarding maps with 
nulls in them, since the more modern collections and usage discourages or 
doesn't support them. Maybe that's outside the scope of this KIP, but just 
putting it out there.

KT4: Are there any other naming suggestions for the "modern" option? IMO, the 
name is a bit opaque. I would suggest "use-modern-precedence", but that's long 
in the tooth, and I also find "precedence" hard to type for some reason, so I 
won't suggest it :)

Thanks,
Kirk

On Mon, Nov 3, 2025, at 10:32 AM, Jhen-Yung Hsu wrote:
> Hello everyone,
> 
> I'd like to start the discussion for KIP-1137: Standardize Configuration
> Precedence for Tool Scripts
> https://cwiki.apache.org/confluence/x/2Y5EF
> 
> This will help Kafka tool scripts have more consistent behavior in
> configuration precedence and required argument checking.
> 
> Best Regards,
> Jhen-Yung Hsu
> 

Reply via email to