AndrewJSchofield commented on code in PR #711: URL: https://github.com/apache/kafka-site/pull/711#discussion_r2298169235
########## blog.html: ########## @@ -22,6 +22,160 @@ <!--#include virtual="includes/_nav.htm" --> <div class="right"> <h1 class="content-title">Blog</h1> + <article> + <h2 class="bullet"> + <a id="apache_kafka_410_release_announcement"></a> + <a href="#apache_kafka_410_release_announcement">Apache Kafka 4.1.0 Release Announcement</a> + </h2> + XXX August 2025 - Mickael Maison (<a href="https://x.com/MickaelMaison">@MickaelMaison</a>) + + <p> + We are proud to announce the release of Apache Kafka® 4.1. This release contains many new + features and improvements. This blog post will highlight some of the more prominent ones. + For a full list of changes, be sure to check the <a href="https://download.apache.org/dist/kafka/4.1.0/RELEASE_NOTES.html">release notes</a>. + </p> + <p> + Queues for Kafka (<a href="https://cwiki.apache.org/confluence/x/4hA0Dw">KIP-932</a>) is now in preview. It's still not ready for + production but you can start evaluating and testing it. See the + <a href="https://cwiki.apache.org/confluence/x/CIq3FQ">preview release notes</a> + for more details. + </p> + <p> + This release also introduces a new Streams Rebalance Protocol (<a href="https://cwiki.apache.org/confluence/x/2BCTEg">KIP-1071</a>) + in early access. It is based on the new consumer group protocol (<a href="https://cwiki.apache.org/confluence/x/HhD1D">KIP-848</a>). + <p> + See the <a href="https://kafka.apache.org/documentation.html#upgrade_4_1_0">Upgrading to 4.1</a> section in the + documentation for the list of notable changes and detailed upgrade steps. + </p> + + <h3>Kafka Broker, Controller, Producer, Consumer and Admin Client</h3> + + <ul> + <li> + <a href="https://cwiki.apache.org/confluence/x/lY3GDQ">KIP-877: Mechanism for plugins and connectors to register metrics</a> + <br> + Many client-side plugins can now implement the <code>Monitorable</code> interface to easily register their own metrics. Tags identifying + the plugin are automatically injected and the metrics use the <code>kafka.CLIENT:type=plugins</code> naming where CLIENT is either producer, consumer or admin. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/8ItyEg">KIP-1050: Consistent error handling for Transactions</a> + <br> + This KIP updates the error handling logic and documentation of all the transaction APIs to make it simpler to build robust applications and build + third party Kafka clients that behave the same way as the Java client. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/JQstEw">KIP-1092: Extend Consumer#close with an option to leave the group or not</a> + <br> + This adds a new <code>Consumer.close(CloseOptions)</code> method which lets define if the consumer should explicitly leave its group when Review Comment: Maybe "lets define if" should be "indicates whether" ########## blog.html: ########## @@ -22,6 +22,160 @@ <!--#include virtual="includes/_nav.htm" --> <div class="right"> <h1 class="content-title">Blog</h1> + <article> + <h2 class="bullet"> + <a id="apache_kafka_410_release_announcement"></a> + <a href="#apache_kafka_410_release_announcement">Apache Kafka 4.1.0 Release Announcement</a> + </h2> + XXX August 2025 - Mickael Maison (<a href="https://x.com/MickaelMaison">@MickaelMaison</a>) + + <p> + We are proud to announce the release of Apache Kafka® 4.1. This release contains many new + features and improvements. This blog post will highlight some of the more prominent ones. + For a full list of changes, be sure to check the <a href="https://download.apache.org/dist/kafka/4.1.0/RELEASE_NOTES.html">release notes</a>. + </p> + <p> + Queues for Kafka (<a href="https://cwiki.apache.org/confluence/x/4hA0Dw">KIP-932</a>) is now in preview. It's still not ready for + production but you can start evaluating and testing it. See the + <a href="https://cwiki.apache.org/confluence/x/CIq3FQ">preview release notes</a> + for more details. + </p> + <p> + This release also introduces a new Streams Rebalance Protocol (<a href="https://cwiki.apache.org/confluence/x/2BCTEg">KIP-1071</a>) + in early access. It is based on the new consumer group protocol (<a href="https://cwiki.apache.org/confluence/x/HhD1D">KIP-848</a>). + <p> + See the <a href="https://kafka.apache.org/documentation.html#upgrade_4_1_0">Upgrading to 4.1</a> section in the + documentation for the list of notable changes and detailed upgrade steps. + </p> + + <h3>Kafka Broker, Controller, Producer, Consumer and Admin Client</h3> + + <ul> + <li> + <a href="https://cwiki.apache.org/confluence/x/lY3GDQ">KIP-877: Mechanism for plugins and connectors to register metrics</a> + <br> + Many client-side plugins can now implement the <code>Monitorable</code> interface to easily register their own metrics. Tags identifying + the plugin are automatically injected and the metrics use the <code>kafka.CLIENT:type=plugins</code> naming where CLIENT is either producer, consumer or admin. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/8ItyEg">KIP-1050: Consistent error handling for Transactions</a> + <br> + This KIP updates the error handling logic and documentation of all the transaction APIs to make it simpler to build robust applications and build + third party Kafka clients that behave the same way as the Java client. Review Comment: nit: third-party ########## blog.html: ########## @@ -22,6 +22,160 @@ <!--#include virtual="includes/_nav.htm" --> <div class="right"> <h1 class="content-title">Blog</h1> + <article> + <h2 class="bullet"> + <a id="apache_kafka_410_release_announcement"></a> + <a href="#apache_kafka_410_release_announcement">Apache Kafka 4.1.0 Release Announcement</a> + </h2> + XXX August 2025 - Mickael Maison (<a href="https://x.com/MickaelMaison">@MickaelMaison</a>) + + <p> + We are proud to announce the release of Apache Kafka® 4.1. This release contains many new + features and improvements. This blog post will highlight some of the more prominent ones. + For a full list of changes, be sure to check the <a href="https://download.apache.org/dist/kafka/4.1.0/RELEASE_NOTES.html">release notes</a>. + </p> + <p> + Queues for Kafka (<a href="https://cwiki.apache.org/confluence/x/4hA0Dw">KIP-932</a>) is now in preview. It's still not ready for + production but you can start evaluating and testing it. See the + <a href="https://cwiki.apache.org/confluence/x/CIq3FQ">preview release notes</a> + for more details. + </p> + <p> + This release also introduces a new Streams Rebalance Protocol (<a href="https://cwiki.apache.org/confluence/x/2BCTEg">KIP-1071</a>) + in early access. It is based on the new consumer group protocol (<a href="https://cwiki.apache.org/confluence/x/HhD1D">KIP-848</a>). + <p> + See the <a href="https://kafka.apache.org/documentation.html#upgrade_4_1_0">Upgrading to 4.1</a> section in the + documentation for the list of notable changes and detailed upgrade steps. + </p> + + <h3>Kafka Broker, Controller, Producer, Consumer and Admin Client</h3> + + <ul> + <li> + <a href="https://cwiki.apache.org/confluence/x/lY3GDQ">KIP-877: Mechanism for plugins and connectors to register metrics</a> + <br> + Many client-side plugins can now implement the <code>Monitorable</code> interface to easily register their own metrics. Tags identifying + the plugin are automatically injected and the metrics use the <code>kafka.CLIENT:type=plugins</code> naming where CLIENT is either producer, consumer or admin. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/8ItyEg">KIP-1050: Consistent error handling for Transactions</a> + <br> + This KIP updates the error handling logic and documentation of all the transaction APIs to make it simpler to build robust applications and build + third party Kafka clients that behave the same way as the Java client. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/JQstEw">KIP-1092: Extend Consumer#close with an option to leave the group or not</a> + <br> + This adds a new <code>Consumer.close(CloseOptions)</code> method which lets define if the consumer should explicitly leave its group when + it's shutting down. This enables Streams to control when to trigger group rebalances. The <code>Consumer.close(Duration)</code> method is now + deprecated. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/FouMEw">KIP-1101: Trigger rebalance on rack topology changes</a> + <br> + This KIP updates the rack-aware partition assignment from the consumer rebalance protocol and makes it a lot more memory efficient, allowing + to have hundreds of members in a consumer group. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/-42MEw">KIP-1109: Unifying Kafka Consumer Topic Metrics</a> + <br> + The consumer used to replace dots in topic names by underscore it its metric names. In this release, topic metrics are also emitted with the topic + names unchanged. Users should transition to these new metrics. In 5.0, the metrics with the changed topic names will be removed. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/LorREw">KIP-1118: Add Deadlock Protection on Producer Network Thread</a> + <br> + From 4.1, if <code>KafkaProducer.flush()</code> is called from the <code>KafkaProducer.send()</code> callback, then an exception is raised. Previously this + could lead to a deadlock in the producer. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/uIxEF">KIP-1139: Add support for OAuth jwt-bearer grant type</a> + <br> + In addition to the client_credentials grant type, Kafka now supports the jwt-bearer grant type for OAuth. This grant type avoids putting secrets in clear + in the configuration and is also supported by many OAuth providers. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/LwqWF">KIP-1143: Deprecated Optional<String> and return String from public Endpoint#listenerName</a> + <br> + This is a cleanup in the <code>Endpoint</code> class. The existing <code>listenerName()</code> method which returns <code>Optional<String></code> is now + deprecated and users should now transition to the new <code>listenerName()</code> method which returns <code>String</code>. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/4gm9F">KIP-1152: Add transactional ID pattern filter to ListTransactions API</a> + <br> + When listing transactions you can now provide a pattern to filter based on the transactional ID. In environments with many transactional IDs, this avoids + having to list all transactions and filter them on the client-side. + </li> + </ul> + + <h3>Kafka Streams</h3> + + <ul> + <li> + <a href="https://cwiki.apache.org/confluence/x/lAtYEQ">KIP-1020: Move window.size.ms and windowed.inner.class.serde from StreamsConfig to TimeWindowedDe/Serializer and SessionWindowedDe/Serializer class</a> + <br> + The <code>window.size.ms</code> and <code>windowed.inner.class.serde</code> configurations are now defined in TimeWindowed and SessionWindowed SerDes. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/2BCTEg">KIP-1071: Streams Rebalance Protocol</a> + <br> + This builds on KIP-848 and makes Streams task assignment a first-class citizen in the Kafka protocol. A lot of logic also moves to the coordinator + such a task assignments, internal topic creations. This is currently in early access and not ready for production use. See the + <a href="/documentation/streams/upgrade-guide#streams_api_changes_410">upgrade guide</a> for more details. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/4Y_MEw">KIP-1111: Enforcing Explicit Naming for Kafka Streams Internal Topics</a> + <br> + Streams stores its state in internal topics whose names are generated. A new configuration, <code>ensure.explicit.internal.resource.naming</code> + allows to enforce explicit naming of all internal resources to make topic names predictable and allow altering a topology and still conserve the + existing topics. + </li> + </ul> + + <h3>Kafka Connect</h3> + + <ul> + <li> + <a href="https://cwiki.apache.org/confluence/x/lY3GDQ">KIP-877: Mechanism for plugins and connectors to register metrics</a> + <br> + All worker and connector plugins can now register their own metrics. For Connectors and tasks this is done via their context. Other plugins Review Comment: nit: "connectors" (lower case) ########## blog.html: ########## @@ -22,6 +22,160 @@ <!--#include virtual="includes/_nav.htm" --> <div class="right"> <h1 class="content-title">Blog</h1> + <article> + <h2 class="bullet"> + <a id="apache_kafka_410_release_announcement"></a> + <a href="#apache_kafka_410_release_announcement">Apache Kafka 4.1.0 Release Announcement</a> + </h2> + XXX August 2025 - Mickael Maison (<a href="https://x.com/MickaelMaison">@MickaelMaison</a>) + + <p> + We are proud to announce the release of Apache Kafka® 4.1. This release contains many new + features and improvements. This blog post will highlight some of the more prominent ones. + For a full list of changes, be sure to check the <a href="https://download.apache.org/dist/kafka/4.1.0/RELEASE_NOTES.html">release notes</a>. + </p> + <p> + Queues for Kafka (<a href="https://cwiki.apache.org/confluence/x/4hA0Dw">KIP-932</a>) is now in preview. It's still not ready for + production but you can start evaluating and testing it. See the + <a href="https://cwiki.apache.org/confluence/x/CIq3FQ">preview release notes</a> + for more details. + </p> + <p> + This release also introduces a new Streams Rebalance Protocol (<a href="https://cwiki.apache.org/confluence/x/2BCTEg">KIP-1071</a>) + in early access. It is based on the new consumer group protocol (<a href="https://cwiki.apache.org/confluence/x/HhD1D">KIP-848</a>). + <p> + See the <a href="https://kafka.apache.org/documentation.html#upgrade_4_1_0">Upgrading to 4.1</a> section in the + documentation for the list of notable changes and detailed upgrade steps. + </p> + + <h3>Kafka Broker, Controller, Producer, Consumer and Admin Client</h3> + + <ul> + <li> + <a href="https://cwiki.apache.org/confluence/x/lY3GDQ">KIP-877: Mechanism for plugins and connectors to register metrics</a> + <br> + Many client-side plugins can now implement the <code>Monitorable</code> interface to easily register their own metrics. Tags identifying + the plugin are automatically injected and the metrics use the <code>kafka.CLIENT:type=plugins</code> naming where CLIENT is either producer, consumer or admin. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/8ItyEg">KIP-1050: Consistent error handling for Transactions</a> + <br> + This KIP updates the error handling logic and documentation of all the transaction APIs to make it simpler to build robust applications and build + third party Kafka clients that behave the same way as the Java client. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/JQstEw">KIP-1092: Extend Consumer#close with an option to leave the group or not</a> + <br> + This adds a new <code>Consumer.close(CloseOptions)</code> method which lets define if the consumer should explicitly leave its group when + it's shutting down. This enables Streams to control when to trigger group rebalances. The <code>Consumer.close(Duration)</code> method is now + deprecated. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/FouMEw">KIP-1101: Trigger rebalance on rack topology changes</a> + <br> + This KIP updates the rack-aware partition assignment from the consumer rebalance protocol and makes it a lot more memory efficient, allowing + to have hundreds of members in a consumer group. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/-42MEw">KIP-1109: Unifying Kafka Consumer Topic Metrics</a> + <br> + The consumer used to replace dots in topic names by underscore it its metric names. In this release, topic metrics are also emitted with the topic + names unchanged. Users should transition to these new metrics. In 5.0, the metrics with the changed topic names will be removed. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/LorREw">KIP-1118: Add Deadlock Protection on Producer Network Thread</a> + <br> + From 4.1, if <code>KafkaProducer.flush()</code> is called from the <code>KafkaProducer.send()</code> callback, then an exception is raised. Previously this + could lead to a deadlock in the producer. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/uIxEF">KIP-1139: Add support for OAuth jwt-bearer grant type</a> + <br> + In addition to the client_credentials grant type, Kafka now supports the jwt-bearer grant type for OAuth. This grant type avoids putting secrets in clear + in the configuration and is also supported by many OAuth providers. + </li> + <li> + <a href="https://cwiki.apache.org/confluence/x/LwqWF">KIP-1143: Deprecated Optional<String> and return String from public Endpoint#listenerName</a> + <br> + This is a cleanup in the <code>Endpoint</code> class. The existing <code>listenerName()</code> method which returns <code>Optional<String></code> is now + deprecated and users should now transition to the new <code>listenerName()</code> method which returns <code>String</code>. Review Comment: nit: remove the second "now" in this sentence. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@kafka.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org