Your one stop shop to do anything with Kafka. Producing, consuming, transacting, administrating; 0.8.0 through 3.2+
BSD-3-CLAUSE License
Bot releases are hidden (Show)
kcl misc raw-req
to obey a version in the input json, if a version is specifiedPublished by twmb 9 months ago
kadm admin user-scram alter
typokcl misc api-versions --version
for all Kafka versions -- and makes it so no code changes are needed in kcl when franz-go adds support for newer Kafka versionsPublished by twmb about 1 year ago
tls_insecure
option (thank you @dbudworth!)kcl admin topic create
stopped supporting --config-path
(turns out, the bug was isolated to this command only)Published by twmb over 1 year ago
This release bumps alls deps, builds with Go 1.20, and disables CGO entirely. Ideally, disabling CGO should resolve #28.
Published by twmb over 1 year ago
This release fixes one minor issues, one feature improvement, and now can detect Kafka 3.4.
Issue: previously, an empty tls struct would be omitted when marshaled, now it is not (meaning tls with no custom certs is preserved). Feature: the myconfig command now can autocomplete available configuration files (thanks @robsonpeixoto, as well for the bug fix!). Kafka 3.4: all deps have been bumped, and the latest franz-go can detect Kafka 3.4 from kcl misc probe-version
.
Published by twmb almost 2 years ago
This release adds --proto-file
and --proto-message
to kcl consume
, allowing consume to deserialize protobuf encoded values before printing the value (thanks @moming00)!. This release also recognizes 3.3 in kcl misc probe-version
. Lastly, all deps have been bumped.
Published by twmb over 2 years ago
This release contains some nice improvements to kcl produce
and kcl consume
from @Zach-Johnson:
kcl produce -Z
now produces tombstoneskcl produce -p
can now produce to a specific partitionkcl consume
's offset flag is now more intelligent and has consume-until semanticsAs well, kcl now detects (through kcl misc probe-versions
) Kafka 3.0, 3.1, and 3.2. Lastly, modules have been updated, most significantly bumping franz-go from v1.2.3 to v1.6.0, which contains many bug fixes and improvements.
Published by twmb almost 3 years ago
This release pulls in some small patches from franz-go.
Published by twmb about 3 years ago
This is a small release that bumps franz-go to its now stable v1.0.0, and drops -t from flags from the partas commands.
Published by twmb about 3 years ago
This release contains some new useful features, and as always bumps the franz-go deps to pull in important fixes.
kcl topic list
as an alias for kcl metadata -t
(thanks @SteadBytes!)kcl misc offset-for-leader-epoch
, which is a useful command for deep debuggingkcl misc list-offsets
and kcl misc offset-for-leader-epoch
to dump all topics if none are specifiedkcl group describe
to describe all topics if none are specified; fixes up the -v
outputkcl transact
and adds a new mirror
modePublished by twmb over 3 years ago
This release contains one bugfix in kcl
itself. franz-go v0.8.1 fixed an ACL off-by-one bug, but I did not mirror the fix into kcl's string parsing. Now, we properly parse the operation
option, which allows any
but more importantly allows ACLs to be created correctly.
This also bumps all deps, which pulls in a few other minor bug fixes from franz-go.
Published by twmb over 3 years ago
This is a comparatively small release that has two notable kcl-focused changes: AWS_MSK_IAM
now exists loads credentials from your ~/.aws/credentials
file, so you do not need to duplicate credentials into a kcl config, and the topic
and group
admin subcommands are now also top level kcl subcommands. I figured that I used topic/group so much that having them not be gated behind admin
was quite convenient.
This also updates the franz-go library from v0.7.3 to v0.8.3, which contains numerous fixes. Most of the bugs would not be noticeable within kcl itself, though. For more details on the franz-go library changes, see its changelog.
Published by twmb over 3 years ago
Published by twmb over 3 years ago
This release contains major updates to the franz-go library, particularly around edge case bug fixes.
Some requests that were inherently split and issued to many brokers now have the broker node ID printed with the output (see list groups, list offsets, etc). The notable omissions are altering and describing configs, because the requests built from kcl itself only go to one broker.
The only change to the kcl api itself is that plaintext
is now plain
in the sasl options in the toml config. This was done to mirror RFC 4616, in which the option is literally named "PLAIN", as well to mirror how it is referred to everywhere in Kafka.
Published by twmb about 4 years ago
This is a quick release right after v0.2.1 for a more long-term stable organization of commands. See v0.2.0 for the important changelog.
Published by twmb about 4 years ago
This is a "major" bump while on the 0 version due to all admin related commands moving under admin. The kafka-go dep has been bumped again for better auto request sharding fixes and further audits to producer id recoverability. The new user scram APIs for 2.7.0 have been implemented, but will not work on 2.6.0 because Kafka does not recognize them. Lastly, for QoL, there is a new misc errtext command, the describe-log-dirs output has been improved, and some commands now have aliases (admin => adm or a, describe => d).
Significant commits copied directly from the CHANGELOG:
64aea537c
: adds alter & describe user-scram (will not work until 2.7.0 is released)7843319fa
: changes global flag --no-config to --no-config-pathb004217a0
: move all admin commands under 'admin'b0bd7baf5
: enhanced describe-log-dirs05451336d
: add misc errtext commandf72facd71
: fix output on unrecognized prefixPublished by twmb about 4 years ago
This release completes features for Kafka 2.6.0, adds some helpful flags to various commands and configuration options, adds ascii number parsing for producing messages, and brings in a few minor bug fixes from the kafka-go library.
Significant commits copied directly from the CHANGELOG:
admin {describe,alter}-client-quotas
--format
in kcl group list
--with-types
and --with-docs
flags to kcl configs describe
kcl misc probe-version
KCL_CONFIG_{DIR,FILE,PATH}
Minor other changes (formatting, documentation, kafka-go bumps).
Published by twmb over 4 years ago
This is the initial release of kcl.