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 >
