Skip Navigation

Release Notes

Release Notes

v2.1.19 (30-Oct-2026)

Added

  • Nothing

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • The -b/--blank command-line option, which never had any effect. KafkIO now rejects it as an unknown option

Fixed

  • Command line: --help, --version and --delpr printed their output twice. --help and --version now print once and exit straight away, before preferences are loaded; other options given with them, such as --delpr, are not applied
  • Command line: an unknown option, or -d without a value, exited with code 0 and logged an error with a stack trace. KafkIO now prints the problem and the usage to the error output and exits with code 2. An unexpected error during startup now exits with code 1
  • Consumers: the Delete Topic Offsets confirmation named the consumer group where the topic should be. It now names the topic. The clicked topic's offsets were always the ones deleted
  • Command line: --delpr now names a key it skips ("Unknown preference key 'x', skipped"), and the --help example uses real KafkIO keys (mainFontSize,useProxy)
  • Every start printed a stray "Messages are not initialized before accessing key" line to the console
  • Schema Registry: the Additional HTTP headers on the cluster's Schema Registry tab were saved but never sent to the registry. KafkIO now adds them to every Schema Registry request, including Test Schema Registry. A header named Authorization replaces the one from User:password or OAuth
  • ACLs: in Create ACL Entries > For Kafka Stream Apps, the list under Consume Topic(s) was headed "Give WRITE Access To" and the one under Produce Topic(s) "Give READ Access To". The headings now match what KafkIO grants (READ on consumed topics, WRITE on produced ones), which was always correct. The descriptions beside the helpers' fields (e.g. Application ID, Transaction ID, Idempotency) are also no longer cut off or overlapping when the form is taller than the window; the form scrolls instead
  • ACLs: in Create ACL Entries > For Producer, with Produce Topic(s) on LITERAL, Available Topic(s) listed the cluster's consumer groups instead of its topics
  • JKS Converter: the saved .jks file was a PKCS12 keystore, not a real JKS (keytool -list said Keystore type: PKCS12). It's now a real JKS. A blank New store password gives an empty password
  • JKS Converter: with CRT / PEM / X.509, only the first certificate in a PEM bundle was converted, always under the alias ct_alias_shortlived. Every certificate is now converted, each under an alias made from its common name (e.g. storefront-root-ca, or cert-1 without one). DER and PKCS7 files work too. A private key in the same PEM file is skipped, and the "saved" notification says so and how many certificates were converted
  • JKS Converter: choosing the wrong file type, a private key, a certificate request or a wrong password showed a raw Java message such as "signed fields invalid". The error now says what the file looks like and what to do. A blank Existing key password or New store password could fail with a NullPointerException
  • JKS Converter: choosing Tools > JKS Converter while the converter was already open did nothing; it now brings the open converter to the front
  • Schema Registry: a space after a comma in URL(s) (as in the field's own example, https://somehost:8081, https://anotherhost:8082) made every request to that URL fail with URISyntaxException: Illegal character in scheme name, so failing over to it, or a URL that started with a space, broke Test Schema Registry and schema lookups. KafkIO now ignores spaces around each URL, including in clusters saved before this fix. The field's hint also no longer says the URLs are used round-robin: KafkIO moves on to the next URL only when one can't be reached
  • Cluster Properties: the Schema Registry, Kafka Connect and ksqlDB tabs showed Java KeyStore (JKS) for Truststore type and Keystore type when a cluster was edited, whatever was saved, and saving wrote JKS back, breaking a P12 or PEM setup. The saved types are now shown and kept
  • Basic auth (Schema Registry, Kafka Connect, ksqlDB): a password containing a colon was cut short at it, and a Schema Registry User:password without a colon failed with ArrayIndexOutOfBoundsException (and, once saved, stopped the cluster connecting). Only the first colon now separates the user from the password, and the field is validated as user:password
  • ksqlDB: a URL with a trailing /, such as http://localhost:8088/, failed with "Invalid URL" and, once saved, stopped the whole cluster connecting. A trailing slash is now accepted, and the field rejects a URL with a path, which the ksqlDB client can't use
  • ksqlDB: with a blank Truststore file, an https:// ksqlDB server trusted only Java's certificate authorities, not the certificates added under File > Preferences > Network (Add certificate), so an internal or self-signed certificate failed with "unable to find valid certification path". ksqlDB now trusts the same certificates as Schema Registry and Kafka Connect. A truststore chosen on the ksqlDB tab, and Accept non-trusted certificates automatically, work as before
  • Connecting a cluster: an invalid Schema Registry, Kafka Connect or ksqlDB configuration no longer stops the Kafka connection. KafkIO logs it and connects without that configuration; the tab's test button reports the error
  • Test Kafka Connect / Test ksqlDB: the error didn't say which configuration failed, and configurations were tested in no particular order. They're now tested in the order shown, and the error starts with the failing configuration's name (e.g. "Kafka Connect cluster 'analytics-connect': ...")
  • The Kafka Connect and ksqlDB URL fields showed Schema Registry's example port (https://someurl:8081). They now show 8083 and 8088, the services' default ports
  • ksqlDB > Connectors: Create Connector's Overwrite if exists never overwrote anything. Ticked (the default), a name already in use failed with "already exists"; unticked, KafkIO reported success but the existing connector kept its old configuration. ksqlDB can't replace a connector, so the box is now Skip if exists (unticked by default), with a hint that says what it does
  • ksqlDB > Connectors: a connector name containing - or other characters ksqlDB doesn't allow in plain names (e.g. large-orders-export) failed with "Syntax Error Expecting 'WITH'". KafkIO now quotes the name, so it's created exactly as typed: before, ksqlDB upper-cased a plain name (ordersSink became ORDERSSINK). A name you already wrapped in back-quotes is left as it is. The Name hint no longer says the name is for display only, here or in Kafka Connect's Create Connector
  • ksqlDB > Connectors: a single quote in the connector's JSON configuration (e.g. a JDBC query with WHERE status = 'NEW') broke the statement KafkIO sends to ksqlDB. Quotes are now escaped
  • ksqlDB > Connectors: the dialog after creating a connector was titled "Connector %0created"; it's now "Connector created"
  • Kafka Security (two-way SSL/TLS): Keystore private key password was ignored. When it was filled in, KafkIO sent the Keystore password as ssl.key.password instead, so a client key whose password differs from its keystore's couldn't connect. The value you enter is now sent. Leave it blank if it's the same as the keystore password (the field now says so): KafkIO then uses the keystore password for the key
  • Kafka Security: with a CRT / PEM / X.509 keystore and a Keystore private key password, connecting could fail with a NullPointerException
  • Schema Registry, Kafka Connect and ksqlDB (two-way SSL/TLS): a blank Keystore private key password failed with "Error initializing the ssl context". Left blank, the keystore password is now used for the key, as for Kafka. With a CRT / PEM / X.509 keystore, a Keystore password left over from another keystore type (the field is hidden for PEM) is no longer sent
  • Copy Summary and Copy All Summaries: in the topics list the # Msgs line held a long internal description of the topic (partitions, offsets and every setting) instead of the message count. Consumers, a topic's Consumers tab, Schema Registry and Kafka Connect had the same problem on most columns, Brokers copied Disk Usage as DiskUsage(segmentSize=...), a connector task's State came out as the whole task status including the error trace, and Topic and Broker Settings added Search: and Edit: lines describing the setting. Each line now holds what the table shows (# Msgs gives the exact count, and columns showing N/A copy N/A)
  • Password fields: pressing the eye button on an empty password field, or on a field with a hint such as Truststore password's "Blank for none", removed the hint until the dialog was reopened. The hint now stays

Security

  • Nothing

v2.1.18 (29-Oct-2026)

Added

  • Nothing

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Help > Online help (F1) opened the commercial support page; it's now KafkIO Documentation and opens https://www.kafkio.com/docs/getting-started/introduction, and a separate Help > Commercial Support item opens the support page
  • Edit Cluster was greyed out for a connected cluster with no explanation; the disabled toolbar button now has a tooltip saying it's not available while connected (disconnect first), and the Cluster menu and the cluster's context menu item read "Edit Cluster (disconnect first)"
  • Clear Messages was greyed out for compacted topics with no explanation; the disabled toolbar button now has a tooltip saying it's not available when cleanup.policy is compact only, and the context menu item reads "Clear Messages (compacted topic)"
  • While clearing a topic's messages, the busy overlay said "Deleting topic ..."; it now says "Clearing messages on topic ..."
  • Deserializer info popover listed "Unsigned Int (62)" instead of "Unsigned Int (32)"
  • Message counts in the topic list (and the "Sending N messages" mask) used data-size suffixes such as "1.2G"; they now use count suffixes (K, M, B, T)
  • Consumed data size in the message search stats now shows proper byte units (e.g. "1.5 MB" instead of "1.5M", or a bare number for small sizes)
  • The message table's size column now shows one decimal place (e.g. "1.9 MB" instead of rounding down to "1 MB"), consistent with sizes elsewhere
  • Number formatting used a shared, non-thread-safe formatter from background tasks, which could theoretically produce garbled numbers
  • Linux: the dock/taskbar showed a generic icon for the running window because obfuscation renamed the main class, so its WM_CLASS no longer matched StartupWMClass in the desktop entry
  • Kafka admin clients could leak (a kafka-admin-client-thread and its connections, left running until exit) when several views requested one at the same time, e.g. while a cluster was connecting; concurrent requests now wait for a single client. A client still being created when the cluster disconnects is now closed instead of cached
  • Consumer group and offset reset operations kept using the admin client from before a disconnect, so after editing a cluster's bootstrap servers or credentials they still talked to the old cluster with the old settings (and renaming a cluster left the old client running until exit); the client is now closed on disconnect
  • Preferences > Network: the http.nonProxyHosts value was never applied (it was cleared instead, and leaving it empty replaced Java's default localhost|127.*|[::1] with an empty list), so with Also set JDK proxy system properties on, hosts listed there still went through the proxy
  • The Save Template name prompt (Produce Message(s) dialog) had the window title "Confirmation"; it's now titled "Save Template"
  • An empty ksqlDB cluster name gave the error "Please enter a Kafka Connect cluster name."; it now says ksqlDB. The Memory Stick dialog also described the clusters file as YAML; it's JSON

Security

  • Nothing

v2.1.17 (14-Oct-2026)

Added

  • Click the selected topic, consumer group, broker, connector, schema subject or ACL in the section header to copy it to the clipboard
  • MessagePack serialization/deserialization support
  • Protobuf serialization/deserialization support
  • Produce messages with Schema Registry under any subject naming strategy (TopicNameStrategy, TopicRecordNameStrategy and RecordNameStrategy): pick the subject next to the key/value serializer; re-producing a message pre-selects the subject of its schema ID

Changed

  • Schema Registry is now offered as a key/value deserializer for topics whose schemas are registered under record-based subjects (it's auto-selected when the topic has subjects of its own: {topic}-key/{topic}-value or {topic}-{fully.qualified.Record})

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Producing a message with variable substitution enabled failed with a NullPointerException when a header had a null (or unset) value
  • Linux .deb/.rpm installers showed a generic Duke icon in the app launcher/dock instead of the KafkIO logo

Security

  • Nothing

v2.1.16 (25-May-2026)

Added

  • Apple Silicon native support
  • LICENSE.txt to macOS app bundle and standalone archive

Changed

  • Homebrew cask for macOS installs from DMG instead of PKG (which required sudo)
  • JFX 26 update, with various improvements and bug fixes

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Nothing

Security

  • Nothing

v2.1.15 (22-Mar-2026)

Added

  • WarpStream Schema Registry support
  • Re-create topic option to include or omit DYNAMIC_TOPIC_CONFIG settings

Changed

  • JFX 26 update, with various improvements and bug fixes
  • Improved Aiven Karapace support

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Schema Registry errors in some cases when no default schema compatibility level set
  • Various UI improvements and minor bug fixes
  • Topic re-create no longer re-creates all settings as DYNAMIC_TOPIC_CONFIG

Security

  • Nothing

v2.1.14 (17-Feb-2026)

Added

  • Nothing

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • NullPointerException on consumers tab

Security

  • Nothing

v2.1.13 (11-Feb-2026)

Added

  • Support for Avro 1.12.1
  • Support for timestamp-nanos and local-timestamp-nanos Avro logical types

Changed

  • Improved default naming when saving message templates
  • Topic configuration updates now always attempt incremental updates, even when the broker version is too old or cannot be determined (no assumptions are made about feature support)

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Rare NullPointerException when switching desktops while KafkIO is open without an active cluster selected
  • NullPointerException when no keystore password is provided for Schema Registry SSL connections
  • Resolved an issue where the save message template alert could block the application if another always-on-top window was present
  • Minor display issue on the Produce Message(s) screen
  • Fixed incorrect maximum retained log file handling
  • Prevented automatic long-lived retries when message production fails; the operation now fails fast with a clear error message

Security

  • Nothing

v2.1.12 (31-Jan-2026)

Added

  • Added support for configuring JDK proxy properties to enable OAuth flows in libraries that rely on the JDK HTTP client (e.g. Azure Entra / Microsoft Identity, Kafka OAuth, Strimzi).

Changed

  • Various visual improvements

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Some Azure Event Hubs samples

Security

  • Nothing

v2.1.11 (30-Jan-2026)

Added

  • Single-topic refresh support
  • Topic list message count tooltips now show the exact message count (no abbreviation)
  • Message count updates appear instantly in the topic list when producing messages
  • Avro preference: when enabled, union types display fully qualified names (e.g. com.certak.MyKafkIORecord instead of MyKafkIORecord)
  • Avro preference: when enabled, null fields are explicitly rendered as "field": null (previously omitted)

Changed

  • Improved editing and refreshing of broker and topic settings
  • Topic operations (clear, delete, recreate, refresh) now reload only the affected topic
  • Upgraded to JDK 25.0.2
  • Minor wording and language improvements throughout the UI

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Row reordering or jumping during refresh when column sorting is applied (connectors, schemas, or consumers)
  • Unhelpful errors shown when some Kafka statistics fail to load during initial connection
  • Edge-case issues when rapidly setting favourites with multiple topic tabs open for the same cluster
  • Various minor UI glitches

Security

  • Nothing

v2.1.10 (20-Jan-2026)

Added

  • Nothing

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Critical issue where lack of cluster describe permissions caused various screens to fail to load
  • Prevent option to attempt clearing messages on compacted topics (not supported by Kafka)

Security

  • Nothing

v2.1.9 (17-Jan-2026)

Added

  • Resolved IP address to Network Tool dialog
  • Cluster controller type on Brokers view
  • Better handling of Kafka Connect API and Schema Registry API partial failures
  • Better multi-error reporting of Kafka Connect API and Schema Registry API partial failures
  • Ability to individually refresh a schema, consumer, or connector without reloading entire lists
  • More granular messaging when connecting (particularly useful for slow networks and/or with a large amount of topics)

Changed

  • Topic List panel default width reduced by 11%
  • Network Tool dialog language improved
  • Large reduction Kafka Connect API calls when loading Kafka Connect connectors list

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Correct pro-populated host:port combinations on Network Tool dialog when initiated from error dialog
  • JKS Converter utility now correctly handling empty/null passwords
  • Active controller ID issue for KRaft clusters
  • ToolBar in main screen not masked when masker pane active (regression in last release)
  • Various minor UI and edge-case fixes

Security

  • Nothing

v2.1.8 (31-Dec-2025)

Added

  • Debian installers (.deb) now compatible with more Linux distributions (older and newer)
  • Ability to add delay (up to 5 minutes) between producing messages when producing multiple messages
  • Added scrollbar to Produce Message(s) dialog

Changed

  • Header bars always draggable (on all screens/dialogs) even when masker (loading/busy) pane is active

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • NullPointerException when removing a consumer in cases where a broker executes it particularly quickly (i.e., no DEAD consumer)

Security

  • Nothing

v2.1.7 (28-Dec-2025)

Added

  • Cluster config action button on cluster tree

Changed

  • Config file migrated from .yml to .json
  • Various other minor UI improvements

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Improved KRB5 configuration descriptions
  • Favourites star icon minimum size increased
  • Syntax highlighting when editing a schema while also changing schema type

Security

  • Nothing

v2.1.6 (23-Dec-2025)

Added

  • Nothing

Changed

  • Improved search form expand/collapse options
  • Produce message dialog improvements re: number of messages produced
  • Produce up to 500k messages at once (previously 100k)
  • Other minor UI improvements

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Info popups from table column headers now no longer clipped when in compact mode

Security

  • Nothing

v2.1.5 (20-Dec-2025)

Added

  • Nothing

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Issue where closing as duplicated topic tab would sometimes (visually) clear all favourites on other topic tabs (within the same cluster)
  • "Create Topic" button display issue when using uneven resolution scaling (i.e., 125%) on Windows

Security

  • Nothing

v2.1.4 (20-Dec-2025)

Added

  • Kerberos configuration preferences tab allowing users to configure java.security.krb5.conf, java.security.krb5.realm, and java.security.krb5.kdc system properties
  • KRB5_CONFIG env variable support (for Kerberos configuration file location)
  • Kerberos system properties applied on application startup based on user preferences

Changed

  • Improvements to Produce Message dialog layout and usability
  • Clearer message indicating how to expand when messages search form is collapsed

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Allow to update schema type when editing a schema in Schema Registry (unlikely requirement, but possible)

Security

  • Nothing

v2.1.3 (17-Dec-2025)

Added

  • Message templates for producing messages
  • Open multiple Produce Message dialogs at once
  • Search config from Overview screen
  • Memory stats in status bar
  • Load splash screen from Help menu
  • Homebrew cask for macOS

Changed

  • Various UI improvements
  • Improved topic list layout, to show more of topic names on smaller screens
  • Much better readability of highlighted text/JSON/XML, etc.
  • Improved Schema Registry schemas loading times
  • Improved Kafka Connect connectors loading times
  • More memory improvements

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • NullPointerException if topic dump fails mid-way through retrieving messages (i.e., due to network error)
  • Fixing various edge-case display issues with popover messages (informational tooltips)
  • Issue when switching from memory-stick mode to non-memory-stick mode and selecting topics

Security

  • Nothing

v2.1.2 (05-Dec-2025)

Added

  • Ability to play sound notifications when streaming topic messages
  • Ability to play sound notifications when streaming data from KSQL queries

Changed

  • Major memory usage improvements across several components and under edge-case scenarios
  • Major optimisations (memory & CPU) when streaming data while the screen is not rendering
  • Other optimisations and improvements

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • KSQL Editor now detecting EMIT and EMIT FINAL as streaming queries (previously only EMIT CHANGES detected)
  • KSQL Editor won't confuse a non-streaming a streaming where a query contains EMIT CHANGES (for example) in a comment or string literal
  • KSQL Editor notification when a LIMIT is enforced
  • Other KSQL fixes
  • Some minor memory leaks

Security

  • Nothing

v2.1.1 (01-Dec-2025)

Added

  • Nothing

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Missing jose.4.j (ClassNotFoundException: org.jose4j.keys.resolvers.VerificationKeyResolver)

Security

  • Nothing

v2.1.0 (30-Nov-2025)

Added

  • Confluent Platform 8+ support
  • ACL operation type: TWO_PHASE_COMMIT
  • Ability to clone connector configs
  • Topic dump ability to include headers
  • Regex filtering support for all filterable table/lists, and Kafka message filtering
  • Context menu to consumer group consumers table

Changed

  • Allow multiple ACL operation type selections to create 2+ ACLs at once
  • Various UX improvements/fixes when managing connectors, including better performance

Deprecated

  • Nothing

Removed

  • Removed deprecated fallback "alterConfigs" support (was required when incrementalAlterConfigs unsupported on Kafka versions older than 2.3)

Fixed

  • Schema Registry registries loading performance fix (in particular for SSL connections on slow networks)
  • Fix confirmation dialog message for restarting connector tasks
  • Various layout improvements and tweaks
  • Various ksqlDB issues

Security

  • Nothing

v2.0.14 (26-Nov-2025)

Added

  • Ability to select timezone when viewing topic message timestamps
  • Compact table mode (under View menu) for denser data display
  • Support specifying multiple URLs for Schema Registry configurations, for round-robin or failover
  • Check network availability links to Schema Registry, Kafka Connect, ksqlDB configuration tabs
  • Schema Registry Oauth support (OAUTHBEARER & STATIC_TOKEN)

Changed

  • Some layout improvements on topic messages tab
  • Schema compatibility errors now more descriptive, showing root cause message from Schema Registry
  • More prominent Consumer Partitions & Kafka Connect error expansion/collapse buttons

Deprecated

  • Nothing

Removed

  • Some unnecessary libraries

Fixed

  • Topic dump suggested directory now suggesting last used directory, even if last file created was deleted
  • Always show cluster tree after restart, even if user had hidden it previously (i.e., do not save as preference)
  • Reserved URL characters (such as forward slashes) in schema names no longer causes issues when viewing or managing schemas
  • Some language fixes
  • Text filter poll/page size warning no longer incorrectly appearing if user entered filter text but clicked Next page of previous search

Security

  • Nothing

v2.0.13 (03-Nov-2025)

Added

  • Nothing

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Error during topic creation topic when specifying custom settings

Security

  • Nothing

v2.0.12 (03-Nov-2025)

Added

  • Nothing

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Consumer group error if user has list but not describe permissions to 1...n consumers

Security

  • Nothing

v2.0.11 (02-Nov-2025)

Added

  • Minor Kafka 4 support update
  • Improved Kafka cluster timeout error messages and hints

Changed

  • Several major core library updates
  • Logging rollover based on size (not just startup), to prevent overly large log files accumulating for long-running instances
  • Topic creation / update config improvements (some optimisations around not creating unnecessary config entries when same values are defaulted by broker)
  • Network Tool modality changed to not block main window
  • Upgraded from JDK23 to JDK25

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Custom cleanup policy now correctly set on topic creation / update (had no effect since 2.0.9)
  • Few scenarios where clearing or re-creating a topic may have appeared successful, but actually failed
  • NullPointerException when deleting a topic that no longer exists or which user had no permissions for
  • Potential to fail to inform user if cancelling a ksqlDB stream failed
  • Potential to fail to inform user if removing a consumer failed
  • Restored alert and error dialog icons and headers
  • Infinite popup loop if attempting to change compatibility on a schema registry that is unreachable or denying access
  • Consumer group list/data sped up 6X on various tabs (more improvements to come on this in future releases)
  • Special characters in license changed to standard ASCII equivalents

Security

  • Nothing

v2.0.10 (24-Sept-2025)

Added

  • Nothing

Changed

  • macOS licensing
  • Core library updates
  • Shortened some default panel heights to accommodate smaller displays

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Unwanted KSQL execute button overflow menu when some KSQL is selected
  • Some edge case possible error scenarios related to missing standard Kafka broker configuration (i.e., custom or old builds)

Security

  • Nothing

v2.0.9 (21-Jul-2025)

Added

  • YAML lexer / parser (currently only used for Docker compose sample syntax highlighting)

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Additional edge-case layout glitches on Windows systems
  • Schema examples links change schema type combobox value to relevant type
  • Protobuf constants have better contrast (in dark theme)

Security

  • Nothing

v2.0.8 (20-Jul-2025)

Added

  • Nothing

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Layout glitches on Windows systems using display scaling greater than 100%

Security

  • Nothing

v2.0.7 (19-Jul-2025)

Added

  • Docker notes and sample configuration

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Incorrect consumer group assigned partition count

Security

  • Nothing

v2.0.6 (12-Jul-2025)

Added

  • Color-coding consumer status on topic's consumers tab
  • Topic message count tooltip popup

Changed

  • Allowing cancellation of a bunch more blocking background tasks

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Various issues caused by lacking consumer groups describe access; now KafkIO recovers and uses what data it can

Security

  • Nothing

v2.0.5 (11-Jul-2025)

Added

  • Nothing

Changed

  • Some internal improvements

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Failed connect task restart pop-up message
  • Error when auto-refreshing enabled but no connector selected

Security

  • Nothing

v2.0.4 (09-Jul-2025)

Added

  • Configurable auto-refresh for connector states
  • Automatically refresh task list if operation performed on connector (resume/stop/pause, etc.)
  • New color-coded connector columns covering running, failed, paused & total task counts

Changed

  • Minor updates to about dialog, including link to http://certak.com

Deprecated

  • Nothing

Removed

  • Non-official TASK_FAILED connector status (when connector running but with failed tasks)

Fixed

  • Potential NPE if inter.broker.protocol.version broker settings, exists but has null value
  • Potential NPEs if connector states or tasks states are irretrievable (i.e., deleted elsewhere)
  • Inability to pause/start a connector that had certain combination of task statuses
  • Version check was not always correctly ignoring versions, if chosen
  • Version dialogs could stack if not closed, now preventing multiple new version dialogs
  • Unexpected connector or task statuses could cause errors

Security

  • Nothing

v2.0.3 (02-Jul-2025)

Added

  • Color-coding Connector, Connect tasks, Consumer states
  • Key/message text highlighting field automatically set to search text filter's text

Changed

  • Reducing unnecessary logging

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Improved text filter searching performance/polling
  • Correct number of "checked" messages when using a small page size with a text filter
  • Optimised other searching
  • Preferences pane padding
  • MessageBox obfuscation error, when trying to load second instance

Security

  • Nothing

v2.0.2 (01-Jul-2025)

Added

  • Nothing

Changed

  • Making masker pane "Cancel" link bold

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • "Not on FX application thread" error fix
  • Other critical topic message search fixes / improvements

Security

  • Nothing

v2.0.1 (01-Jul-2025)

Added

  • Nothing

Changed

  • Text filter paging warning now only occurs once (or when a particularly low paging size is chosen)
  • Some language improvements

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Resource hog: duplicated background traversal of a topic when searching
  • Edge case race conditions where some notifications during topic search would erroneously say zero messages were received

Security

  • Nothing

v2.0.0 (30-Jun-2025)

Added

  • Ability to refresh single Connector tasks
  • Ability to test individual Connector/ksqlDB configurations (instead of all configured)
  • Added scrollbar to Message search screen/form, to accommodate smaller resolutions
  • Some prompt texts re: truststore, to Kafka Security tab
  • Message text search filter by key, value, headers, or any combination
  • Select a cluster color, and see it presented on various screens
  • Warning if performing text search filter with small page size

Changed

  • Multiple instance detection now relies on a file mutex rather than port, allowing concurrent usage by multiple users on some terminal
  • First instance window will restore and shake (if hidden), on a second load attempt
  • Allow removal of any Kafka Connect / ksqlDB multi-configuration, not just 2nd+ (remove link now present and all configurations)
  • Messages search button re-located
  • Incorporated the main menu into header bar, saving space
  • Header bar styled according to theme
  • Halving Kafka message/event memory consumption
  • Masker popup "Cancel" button more visible with background
  • Masker popup for message search with text filter contains number of matched records
  • Messages displayed in streaming fashion (as they arrive) even for non-live streaming searches, mostly useful for long-lived searches (i.e., when using text filter on a large topic)
  • Improved Kafka message search stats

Deprecated

  • Nothing

Removed

  • Removed default random color assignment to duplicated tabs; now only configured colors will apply, or none

Fixed

  • Ignore offline nodes from target calculation when altering a replication factor
  • Various topic dump delimiter bugs (particularly when encountering empty values), now parser-friendly
  • Topic dump header for value schema ID now VALUE_SCHEMA_ID instead of VALUE_SCHEMA_VALUE
  • Topic dump now including key/value schema IDs when requested (may have been empty before)
  • Google search (for a setting) no longer disabled if the setting is non-editable (topic / broker settings)
  • __consumer_offsets deserializer now selected by default when viewing __consumer_offsets topic
  • NPE when adding a second Kafka Connect or ksqlDB configuration, if no name exists in first

Security

  • Nothing

v1.2.2 (14-Jun-2025)

Added

  • Edit broker settings from Settings tab
  • Edit topic settings from Settings tab
  • Search button placeholder on Topic messages table
  • Pressing enter key on Messages tab performs search
  • Quickly search (Google) for more info topic or broker setting keys
  • Detect and format non-string headers automatically, display most suitable type
  • Kafka 4.0 support

Changed

  • Library updates
  • Main menu padding & font size

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Minor language bugs
  • Display / styling
  • NullPointerException on Topic overview screen when leader info missing from broker

Security

  • Nothing

v1.2.1 (05-May-2025)

Added

  • Hex serde, to allow deserialization to hex as well as produce binary messages (via hex)

Changed

  • More useful stacktraces in error cases, also for inclusion in bug submissions
  • Some styling/language improvements
  • Better IPV6 support for edge-case scenarios
  • Hex views general improvements, including showing memory offsets
  • Raw view now provides pre-deserialization key and value, as Hex table

Deprecated

  • Nothing

Removed

  • java.net.preferIPv4Stack is now unset/false

Fixed

  • Allow entering of SASL (sasl.*) security properties, such as sasl.oauthbearer.token.endpoint.url
  • Display as: HEX displays pre-deserialization hexadecimal
  • No longer see 'REPLACEMENT CHARACTER' (U+FFFD) in Hex views
  • Duplicating tab via context menu colour-coding parent tab logo correctly

Security

  • Nothing

v1.2.0 (14-April-2025)

Added

  • Ability to create duplicate cluster tabs, for concurrent exploring and easier correlation
  • Ability to clone cluster configuration
  • Ability to refresh topic information on messages panel (i.e., to refresh selectable SerDes and partitions, etc.)
  • Auto-select Schema Registry as key/value deserializer/serializer, if suitable schema found in Schema Registry
  • Ability to auto-detect proxies
  • HTTP and SOCK proxy configuration support
  • Filterable topic lists in ACL create views
  • Topic favourites, easier access to commonly-used topics

Changed

  • Notification popup (bottom right) text now bold
  • Various language improvements
  • Re-worked cluster tab context menus
  • Default ACL host to "*"
  • Default ACL user to "User:my_user"

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • ksqlDB hostname DNS issue (Vert.x) for private internal hostnames, whereby internal DNS servers (such as a router) were not being looked-up via JNDI
  • Topic "other" setting description was replaced with default value rather than description
  • NPE when non-primary mouse clicked on area of a deleted cluster config (rare)
  • Main window split-pane divider always resetted to 50% on Linux
  • Topics list became non-responsive if re-arranged a cluster position in the cluster tree

Security

  • Nothing

v1.1.7 (30-March-2025)

Added

  • New substitution variables: epoch.seconds, epoch.millis
  • Cell-level tooltips for most tables, useful for smaller displays with truncated columns
  • Progress feedback stats on message or dump search: messages and data size
  • Stats on most result pages re: tables
  • Warning popup when loading second instance of app (as opposed to silently shutting down)

Changed

  • Pre-select topic on consumer offsets tweak dialog, if instantiated from topic view
  • Notification popups take up less space
  • Tooltips have smaller font
  • Produce message substitution example button reads "Test" instead of "Substitute", less confusing on impact

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Schema Registry timeouts always set correctly
  • Schema Registry timeout parsing correctly (when also using proxy configuration)
  • Schema Registry "trust all certs" works in all scenarios, if configured on

Security

  • Nothing

v1.1.6 (02-March-2025)

Added

  • Copy summary of all rows in all tables via context menu
  • Reproduce event to message dialog, pre-configuring key, value, headers, and serdes
  • Message/key/header/token variable substitution, supporting various functions

Changed

  • Improved topic streaming performance & high-volume backpressure tweaks
  • Using JFX jmods instead of JARs (irrelevant to user)

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Streaming topics ordering improvements
  • JSON formatter treats floating points as BigDecimals, which avoids scientific-notation for display
  • Windows start menu group now "KafkIO" instead of "Unknown"
  • Confusing/inaccurate tooltips
  • AzureEntraClientCallbackHandler showing correctly on security callback dropdowns
  • Rare Azure connectivity bugs
  • Other minor bugs

Security

  • Nothing

v1.1.5 (16-February-2025)

Added

  • Nothing

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Dialog pane loading issues, particularly with produce message dialog
  • Topic dump suggested paths fix

Security

  • Nothing

v1.1.4 (16-February-2025)

Added

  • Re-arrange clusters either via context-menu or drag & drop
  • Dockable/un-dockable & pinnable windows for better management with large datasets
  • Set message.timestamp.type from topic config dialog
  • Topic dump creates parent directories if non-existent
  • Network reachability testing tool

Changed

  • Look and feel of buttons/controls, and theme colours
  • Performance: all ksqlDB tabs now optionally loaded by the user
  • Performance: data for topic view tabs are loaded upon tab selection only, not preloaded
  • Several more tasks now cancellable
  • Ability to maintain separate persisted views when switching between ksqlDB clusters

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Serialization issues with KafkIO instances communicating with each other (prevent multiple loads)
  • Edge-case with JFX cache of another JFX-based app preventing KafkIO load
  • Topic dump correctly remembers last specified directory
  • ksqlDB statement results table now takes up full available height
  • ksqlDB inefficient or non-necessary/duplicate communication to REST API in some cases

Security

  • Nothing

v1.1.3 (03-February-2025)

Added

  • Kafka Connect: ability to stop, pause, & start connectors, and reset connector offsets
  • Ability to dump a topic to a file, using various criteria and data points

Changed

  • Background jobs disappear from list when finished, rather than stay in list
  • Add larger polling/page size options
  • Default search page/poll size now 2000

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Various Kafka Connect connector management issues
  • Rare display bug which could crash the application, particularly when scrolling
  • Schema Registry REST issue
  • JKS converter utility error if no password supplied
  • Multiple minor bugs and display or language improvements

Security

  • Nothing

v1.1.2 (26-January-2025)

Added

  • Nothing

Changed

  • "Add Cluster" instead of "New Connection"
  • Other minor language improvements
  • Logs no longer stored under a versioned directory, therefore old logs will be cleaned up as per standard rollovers, even after upgrading

Deprecated

  • Nothing

Removed

  • Unused preferences configuration

Fixed

  • IPV6 DNS servers used incorrectly at times for ksqlDB connections, leading to obscure connection errors
  • ksqlDB connection "default" port (if not specified) was 8088; now defaulting to 80 or 443
  • NullPointerException(s) when switching from cluster to cluster in particular sequences

Security

  • Nothing

v1.1.1 (19-January-2025)

Added

  • Ability to copy text from any column or row, from any table
  • Progress masker for KSQL selects (visual feedback that something is happening)

Changed

  • Huge start-up performance boost on Windows, fixing slowness introduced in a previous release (Windows Defender the cause)
  • Reduced package and installation file size by ~25%, and decreased application file count by 244 files (increasing installation speed)
  • Moved "collapse after search" checkbox to minimise wrapping upon horizontally shrinking window
  • Several language improvements changes

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Event key was not being trimmed (i.e., if large), even if size breached user-chosen maximum size
  • NullPointerException if viewing a message with a null (not empty) message
  • Consumer view NullPointerException if offset info from Kafka was null
  • Repeated Kafka background re-connects (noisy logs) if user manually cancelled a connection before it succeeded

Security

  • Nothing

v1.1.0 (14-January-2025)

Added

  • Include message headers in message text filtering
  • ksqlDB management support, with KSQL editor and streaming
  • Kafka Connect connectors management support
  • Live stream topic messages
  • Ability to specify topic messages page or poll size
  • Ability to specify topic key/message size before clipping (save memory)
  • Ability to specify custom headers for any REST API client (i.e., if some cloud or other providers require)
  • Ability to produce up to 100k messages at a time
  • Status bar with memory stats
  • Ability to configure all timeouts for all HTTP and Kafka clients
  • Protobuf3 syntax highlighting
  • Context menu icons
  • Various tips and hints
  • Ability to cancel certain background/loading tasks

Changed

  • Many display improvements
  • Many language improvements
  • Immediately re-create HTTP clients after config changes
  • Improved Overview screen
  • Semantics of many timeouts
  • JSON and XML syntax-highlighting improvements

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Topic config update wasn't updating if value selected from example/suggested hyperlink
  • Many UI edge-case issues
  • Various validations
  • Many memory-consumption improvements

Security

  • Nothing

v1.0.1 (19-December-2024)

Added

  • Some timeouts to prevent infinite waiting screen in rare circumstances

Changed

  • Slight increase in some default Kafka/Schema Registry timeouts

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Health view was blank in some situations

Security

  • Nothing

v1.0.0 (17-December-2024)

Added

  • Oauth support for Strimzi, Azure Event Hub (Microsoft Entra) and AWS (IAM)
  • Ability to remove consumer group topic (start again)
  • View log buttons from various screens
  • Delete icon to Schema Registry versions table
  • Debug Linux/MacOS/Windows scripts
  • Ability to send null headers
  • Ability to export, import, and reset settings on MacOS (previously Windows/Linux only)
  • RPM package for Linux

Changed

  • Using runtime instead of native image
  • Issue submission max chars increase to 40k chars
  • Improved logging format
  • Validation icons coloured
  • MacOS portable ZIP now contains standard app bundle and scripts outside of bundle

Deprecated

  • Nothing

Removed

  • Native image

Fixed

  • ACL producer validation bug
  • Kerberos configuration bug
  • SASL example bug, some values remaining during example switch

Security

  • Nothing

v0.0.11 (28-November-2024)

Added

  • Debug startup scripts batch/shell scripts for Windows, Linux, MacOS
  • Ability to view logs directly from some dialogs
  • Ability to send null headers in an event/message
  • Ability to unsubscribe/delete completely consumer topic offsets
  • EXPERIMENTAL: Strimzi sasl.client.callback.handler.class support (JaasClientOauthLoginCallbackHandler)

Changed

  • Added delete icon on schema versions table column
  • Better logging
  • Ability to alter offsets directly from subscribed topics offsets tab (via context menu)
  • Validation warnings and errors in colour

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Potential NPE when displaying topics if error determining offsets (due to Kafka version incompatibility or other error)
  • ACL producer form validation bug
  • No longer displaying SSL truststore config at times on schema registry or security, if SSL disabled (introduced 0.0.9)

Security

  • Nothing

v0.0.10 (12-November-2024)

Added

  • Open config file in text editor
  • Report issues, feature requests, feedback from GUI or via browser
  • Show logs folder, in console, or latest log in text editor
  • Schema registry creation/update confirmation popup
  • Search messages view tooltips / info
  • Search messages pane collapsable checkbox
  • Warnings if schema-encoded keys or values are detected without Schema Registry deserializer

Changed

  • Rename from KafkaTopical to KafkIO
  • Always create a config file even if no clusters configured
  • Search messages search box right aligned

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Missing JSWBlend_ADDPeer hint on Linux caused errors/display
  • Issue natively opening files on some Linux distros, now fall back to xdg-open
  • Minor display/styling
  • Honouring do not show hints setting in some dialogs

Security

  • Nothing

v0.0.9 (05-November-2024)

Added

  • Copy Kafka event details to clipboard from event/message table context menu
  • Splash screen
  • Full ACL administration capability

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Some style issues to prevent minor movement caused by buttons changing size

Security

  • Nothing

v0.0.8 (24-October-2024)

Added

  • Nothing

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Critical startup FileSystemNotFoundException error, where app fails to load on new installs
  • Fixing run_console.bat on Windows, which incorrectly assumed "cat" exists by default on Windows machines

Security

  • Nothing

v0.0.7 (23-October-2024)

Added

  • Text search for schemas, messages, and produce message dialogs
  • Schema Registry schema creation & editing

Changed

  • Faster display of messages (modal popup time minimised)
  • Cut/undo/redo/delete in produce message context menus
  • Display improvements (compacting) for smaller screens
  • Various performance improvements
  • Various UI improvements

Deprecated

  • Nothing

Removed

  • Some undesired sout logging from time picker control

Fixed

  • Schema ID and type fields' labels were mixed up on key/message value popups
  • Minor performance improvements

Security

  • Nothing

v0.0.6 (29-August-2024)

Added

  • Topic deletion warning in the event where a deleted topic still persists

Changed

  • Partition and offset info on lower message pane view, and popup

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • SASL SCRAM incorrect sasl.mechanism value bug fixed

Security

  • Nothing

v0.0.5 (28-August-2024)

Added

  • Consumer administration (at cluster or topic level)
  • Consumer group delete
  • Consumer offset reset earliest
  • Consumer offset reset latest
  • Consumer offset reset by timestamp
  • Consumer offset reset by specified offsets

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Nothing

Security

  • Nothing

v0.0.4 (13-August-2024)

Added

  • Nothing

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Schema Registry reflection error
  • Adding header to message reflection error
  • macOs portable ZIP README.txt typos

Security

  • Nothing

v0.0.3 (12-August-2024)

Added

  • Create topics
  • Alter topic settings
  • Clear topic messages
  • Delete topics
  • Produce messages with key, value (empty and null), headers, and partition
  • Serializer/deserializer support for unsigned 32-bit and 64-bit integers

Changed

  • Files run.sh and README.txt now in macOS portable ZIP
  • File README.txt now Linux portable ZIP
  • clusters.yml format change seamless migration
  • Clearly show difference between empty and null value in messages table and details views
  • Better visual differentiation between line numbers and contents (i.e., a message)

Deprecated

  • Nothing

Removed

  • Reduced card shadow glow

Fixed

  • Some info popup text improvements
  • Config file reader less sensitive to unknown properties

Security

  • Nothing

v0.0.2 (20-July-2024)

Added

  • Nothing

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Accessibility tools/readers could trigger errors
  • Some embedded binaries would fail to load due to MacOS security (third-party and not signed), and architectural naming conflicts. Notably snappy, lz4 & zstd binaries were affected.

Security

  • Nothing

v0.0.1 (19-July-2024)

Added

  • Configure/delete/edit cluster connections
  • Test broker and schema registry connection
  • SSL and SASL
  • Logs, and rolling logs
  • Event Log UI with ability to report an issue
  • JKS Convert tool, to create JKS from other keystore types
  • Health logger UI
  • Memory-stick mode (configuration file stored by binary)
  • Ability and warning to copy/overwrite existing config when flipping memory-stick mode
  • Various key-bindings and shortcuts (configurable in a later release)
  • Import and export configuration
  • Proxy configuration, including custom SSL certs and ability to trust all
  • Store password in O/S keychain
  • Display settings (theme, font, hints)
  • Global Kafka settings (timeouts, etc.)
  • Cluster overview UI, showing version and enabled features and broker counts, general health, etc.
  • Cluster broker UI
  • Cluster topic and messages UI
  • Advanced messages search, including by offset, dates, partition, and text
  • Choice of key/value deserialization
  • Decompression support for gzip, snappy, lz4, zstd
  • Schema support for JSON, Protobuf, AVRO
  • View keys/values as JSON, XML, Hex, or string, raw view
  • View headers
  • Cluster consumers UI
  • Cluster schema registry UI with ability to see old schemas also
  • Menu-item to show logs or config folders
  • Menu item to open terminal in config folder
  • Automatically check for latest version
  • Opt-out of latest versions
  • Ignore "this" update (until the next one)
  • Debug mode
  • About UI with version information
  • Environment and system properties viewer
  • CLI-mode
  • Auto-detect running instances (prevent multiple instances running)
  • Automatic cluster throttling (prevent too much I/O with brokers)
  • Remember size of screen and various horizon/vertical split-pane positions

Changed

  • Nothing

Deprecated

  • Nothing

Removed

  • Nothing

Fixed

  • Nothing

Security

  • Nothing