All notable changes to Tools for Apache Kafka®
are documented in this file.
=======
- Added offset nodes to Consumer Group nodes. See #225.
- Added inline command activation to Produce Record / Start Consumer. See Doc, #220.
- Updated KafkaJS to 2.0.1 . See #223.
- Send and print headers of message. See #209
- Cluster Wizard fails loading assets ERR_ABORTED 404. See #211.
- Show cluster state in kafka file. See #175.
- Validation for available topics in
.kafka
files. See #153. - Hover support in
.kafka
files. See #149. - String encoding serialization support. See #181.
- Refresh Cluster Provider API when extensions are installed/uninstalled. See #137.
- Edit cluster configuration. See #25.
- Added SSL configuration. See #86.
Select Cluster
command provides the option to create a new cluster. See #103.- Expose new internal commands (
vscode-kafka.api.saveclusters
andvscode-kafka.api.deleteclusters
) to programmatically add/delete clusters (from 3rd party extensions). See #182.
- Changed cluster wizard to use a Webview. See #88.
- Hide internal strimzi topics/consumers by default. See #176.
- Simplify snippets. See #180.
- Allow non-SSL configuration with SASL authentication. See #200.
- Extension API to contribute clusters. See #123 and #160.
- New
Discover Cluster Providers
command to search for extensions contributing cluster providers. See #165. - Declare key/value formats for CONSUMER in kafka file. See #112.
- Declare key/value formats for PRODUCER in kafka file. See #113.
- Completion support for property names and values of CONSUMER and PRODUCER blocks. See #146.
- Completion support for FakerJS PRODUCER key and value. See #152.
- Completion support for available topics for CONSUMER and PRODUCER blocks. See #150.
- Validation support for property names and values of CONSUMER and PRODUCER blocks. See #152.
- Validation support for FakerJS PRODUCER key and value. See #154.
- Renamed extension as
Tools for Apache Kafka®
- Improved the "New topic" wizard: the replication factor is now read from the broker configuration. Input will be skipped if value can't be higher than 1. See #64.
- The "Kafka Producer Log" output view is no longer shown automatically when producing messages. See #134.
- A progress notification is displayed when producing messages. See #117.
- Fix bad highlighting when declaring json messages with fakerjs placeholders. See #132.
- Fix .kafka comments which breaks syntax coloration in producers and consumers. See #161.
- Fix .kafka comments snippet to insert
--
instead of---
. See #163. - Use kafka clients pooling for starting consumer. See #138.
- Newly created topic or cluster is automatically selected in the Kafka Explorer. See #61.
- Click on empty Kafka explorer to add a new cluster. See #87.
- Added glob patterns to filter topics (
kafka.explorer.topics.filters
) and consumer groups (kafka.explorer.consumers.filters
) out of the Kafka explorer. See #74. - Kafka Explorer item labels can now be copied to the clipboard (supports multi selection). See #68.
- Selected Cluster or Topic can now be deleted via the Delete shortcut (Cmd+Backspace on Mac). See #79
- Added SASL/SCRAM-256 and SASL/SCRAM-512 authentication support. See #3.
- Added the option to enable basic SSL support for clusters without authentication. See #84.
- The consumer view now provides a
Clear Consumer View
command. See #84. - Added support for consumer group deletion. See #26.
- .kafka files can define a
CONSUMER
block, to start a consumer group with a given offset, partitions. See #96. - .kafka files show the selected cluster as a codelens on the first line. See #102.
- Improved the "New cluster" and "New topic" wizards: now include validation and a back button. See #21.
- Newly created topic or cluster is automatically selected in the Kafka Explorer. See #61.
- Internal topics are now hidden by default. See #29 and #74.
- Elements are now sorted alphabetically in the Kafka explorer. See #63.
- Clusters are now sorted in the cluster selection wizard. See #83.
- Currently selected cluster is now visible in the explorer and the
Select Cluster
menu is displayed only for unselected clusters. See #82. - Message keys can now be randomized in *.kafka producer files. See #66.
- Added confirmation before deleting a cluster.
- Added support for topic deletion. Right-click on a topic and select
Delete Topic
. Be aware that, depending on the cluster configuration (auto.create.topics.enable:true
), deleted topics might be recreated automatically after a few moments. - Added support for randomized record templates, in *.kafka producer files. Simply inject mustache-like placeholders of kafka.js properties, like
{{name.lastName}}
or{{random.number}}
. Some randomized properties can be localized via thekafka.producers.fakerjs.locale
setting. - Added *.kafka producer snippets
- Added instructions to manually install CI builds.
- Syntax coloration for Kafka consumer view.
- Fixed Kafka cluster wizard, no longer disappears when losing focus.
- Moved the underlying Kafka library to KafkaJS (https://kafka.js.org/) (brings a heap of benefits such as larger API surface, less dependencies and is generally more maintained).
- Refresh Kafka Explorer when producing messages, so new topics can be discovered automatically.
- Refresh Kafka Explorer when starting a consumer.
- Automatically select cluster when there's only one available.
- Starting an already started consumer no longer displays an error, opens corresponding view instead
- Fixed restarting a stopped consumer would not display the
Consumer started
message until the next message was consumed. - Minimize the chances of opening duplicate consumer views.
- Support for registering multiple clusters is here! As a result, some of the the VS Code settings are now gone (kafka host, username and password) and any cluster should be added from the explorer. For some actions (such as producing records) a specific cluster must be selected either via the explorer or the command palette.
- No longer shows connection status on specific brokers (the extension will move to Kafka.js in the future, which doesen't expose this status + it didn't serve any useful need).
- Use webpack bundling for extension distribution.
- Bump dependencies
- Fix initial offset not being used for new consumer groups (#6).
- Fix installations not always getting required dependencies installed.
- Updated dependencies for latest kafka-node changes. This brings in an upstream fix to configs for clusters with more than 1 broker, which previously failed (#7).
- Updated dependencies for latest kafka-node changes
- Force SSL when using SASL/PLAIN authentication for consumers as well (same as 0.7.1)
- Force SSL when using SASL/PLAIN authentication (thanks @joanrieu)
- New configuration for sorting topics (defaults to name)
- Dump metadata about topics or broke/cluster to YAML by right clicking the resource in explorer (or via command menu)
- Connecting using SASL/PLAIN authentication is now possible
- Bumped kafka-node to 4.1.x
- Consuming is now possible! Activate either by right clicking a topic in the explorer or from the command palette. Make sure to read the README for details.
- Some refactorings that improves things behind the scenes here and there
- Expanding configs for brokers in clusters of more than one broker results in an error. Pending fix in kafka-node (issue).
- Update to latest kafka-node package which fixes an issue when controller id is 0
- Fix handling when unable to connect to cluster
- Fix syntax for topic in kafka file when topic name includes number, dot or underscore
- Producing is now possible using the "Kafka" language mode (.kafka files)
- Show info message instead of error when no host is configured for certain actions (.g. create topic)
- New consumer group view in explorer
- Configuration entries now available for brokers and topics
- Show broker id for brokers in addition to host
- Add create topic action
- Show additional topic partition information in explorer (leader and ISR status)
- Add partition and replica count for topics
- Add port and controller indicator for brokers
- Fix loading hosts setting on startup
- Initial release