This is an automated email from the ASF dual-hosted git repository.

Abacn pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/beam.git


The following commit(s) were added to refs/heads/master by this push:
     new ffcbd7e464f Update IO support matrix after Beam 2.76.0 release (#39982)
ffcbd7e464f is described below

commit ffcbd7e464f8244bd623d23e7fa9fcc750e81bbb
Author: Yi Hu <[email protected]>
AuthorDate: Thu Sep 3 12:01:32 2026 -0400

    Update IO support matrix after Beam 2.76.0 release (#39982)
    
    * Update IO support matrix after Beam 2.76.0 release
    
    * Fix CHANGES.md wrong version
    
    * Fix Yamldoc empty for certain transforms due to expansion service is not 
present
    
    * Remove item that not affect any release
---
 CHANGES.md                                         |  10 +-
 sdks/python/build.gradle                           |   8 +
 website/www/site/content/en/blog/beam-2.76.0.md    |   4 -
 .../site/content/en/documentation/io/connectors.md | 181 +++++++--------------
 website/www/site/data/capability_matrix.yaml       |   1 -
 5 files changed, 71 insertions(+), 133 deletions(-)

diff --git a/CHANGES.md b/CHANGES.md
index 365605c7065..f0d5d06b9d9 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -76,6 +76,9 @@
 * (Java/Python) `Watch` can bound its deduplication state by event time, 
retiring an output key once the greatest emitted timestamp has moved more than 
the allowed lateness past it. Java adds 
`Watch.growthOf(...).withTimestampCursor()`. Python adds `allowed_lateness` for 
the existing `timestamp_cursor` option 
([#18459](https://github.com/apache/beam/issues/18459)).
 * (Java) Spark Structured Streaming runner: stateful ParDo with state, timers, 
`@RequiresTimeSortedInput` and tagged outputs is now supported in batch mode 
([#39779](https://github.com/apache/beam/issues/39779)).
 * (Python) Added support for Vertex AI Model Monitoring V2 in RunInference 
([#39738](https://github.com/apache/beam/issues/39738)).
+* [Flink Runner] Added opt-in static round-robin split assignment for small 
bounded sources via the new `sourceStaticSplitThresholdMb` pipeline option. The 
default of 0 keeps the existing lazy pull-based assignment 
([#39873](https://github.com/apache/beam/issues/39873)).
+* Added automatic caching of bounded, single-pane side-input views for classic 
Java Flink DataStream execution 
([#39866](https://github.com/apache/beam/issues/39866)).
+* (Python) Added `Sample.Any`, the Python equivalent of Java's `Sample.any`, 
which returns up to n arbitrary elements from a PCollection 
([#18552](https://github.com/apache/beam/issues/18552)).
 
 ## Breaking Changes
 
@@ -89,7 +92,6 @@
 
 ## Bugfixes
 
-* (Java) Restored binary compatibility for `CoderTranslatorRegistrar` 
implementations compiled against Beam 2.76 and earlier 
([#38714](https://github.com/apache/beam/issues/38714)).
 * (Java) Fixed the Spark runner firing processing-time timers in reverse 
timestamp order ([#39824](https://github.com/apache/beam/issues/39824)).
 * (Python) Fixed incorrect profiler options handling on portable runners 
([#39613](https://github.com/apache/beam/issues/39613)).
 * (Java) KafkaIO dynamic reads no longer require the obsolete `beam_fn_api` 
experiment ([#29998](https://github.com/apache/beam/issues/29998)).
@@ -124,8 +126,6 @@
 
 ## New Features / Improvements
 
-* [Flink Runner] Added opt-in static round-robin split assignment for small 
bounded sources via the new `sourceStaticSplitThresholdMb` pipeline option. The 
default of 0 keeps the existing lazy pull-based assignment 
([#39873](https://github.com/apache/beam/issues/39873)).
-* Added automatic caching of bounded, single-pane side-input views for classic 
Java Flink DataStream execution 
([#39866](https://github.com/apache/beam/issues/39866)).
 * Added `GroupIntoBatches` transform and the standard
   `beam:coder:sharded_key:v1` coder to the Go SDK, along with
   `beam.Coder.IsDeterministic`, `beam.PCollection.WindowingStrategy`,
@@ -146,7 +146,6 @@
 * (Python) Added `Watch`, a transform that polls a growing set of outputs for 
each input element, deduplicates outputs across poll rounds, and stops per a 
user-supplied termination condition
   ([#21521](https://github.com/apache/beam/issues/21521)).
 * (Python) Added support to analyze core dumps created after python worker 
segmentation faults with `pystack` (or `gdb` if installed) using the 
`--profiler_agent=coredump` pipeline option. 
([#39484](https://github.com/apache/beam/issues/39484)).
-* (Python) Added `Sample.Any`, the Python equivalent of Java's `Sample.any`, 
which returns up to n arbitrary elements from a PCollection 
([#18552](https://github.com/apache/beam/issues/18552)).
 
 ## Breaking Changes
 
@@ -161,9 +160,6 @@
   Use pipeline option `--updateCompatibilityVersion=2.75.0` (or any older 
version) to keep the old behavior 
([#39344](https://github.com/apache/beam/issues/39344)).
 * `DoFn.process` returning a `str`, `bytes`, or `dict` (instead of an iterable 
wrapping one) now raises a `TypeError` rather than silently iterating 
per-character/byte/key (Python) 
([#18712](https://github.com/apache/beam/issues/18712)).
 * (Java) Added `DRAINING` and `DRAINED` states to `PipelineResult`, including 
runner state mappings and Dataflow update handling 
([#39020](https://github.com/apache/beam/issues/39020)).
-* (Python) Typehints of dataclass fields are honored during type inferences. 
To restore the behavior of fallback-to-any,
-  use pipeline option `--exclude_infer_dataclass_field_type` 
([#38797](https://github.com/apache/beam/issues/38797)).
-  However fixing forward is recommended.
 * (Java) IcebergIO and projects that use it must now be built with Java 17 or 
later as a result of Iceberg 1.11.0 upgrade 
([#38925](https://github.com/apache/beam/issues/38925)).
 
 ## Bugfixes
diff --git a/sdks/python/build.gradle b/sdks/python/build.gradle
index 75afa5d7c96..339d87c76cb 100644
--- a/sdks/python/build.gradle
+++ b/sdks/python/build.gradle
@@ -107,16 +107,24 @@ tasks.register("prepareExpansionServicesForYamlDocs") {
 
   dependsOn ":sdks:java:extensions:schemaio-expansion-service:shadowJar"
   dependsOn ":sdks:java:extensions:sql:expansion-service:shadowJar"
+  dependsOn ":sdks:java:io:amazon-web-services2:expansion-service:shadowJar"
+  dependsOn ":sdks:java:io:debezium:expansion-service:shadowJar"
   dependsOn ":sdks:java:io:expansion-service:shadowJar"
   dependsOn ":sdks:java:io:google-cloud-platform:expansion-service:shadowJar"
+  dependsOn ":sdks:java:io:messaging-expansion-service:shadowJar"
+  dependsOn ":sdks:java:io:snowflake:expansion-service:shadowJar"
 
   doLast {
     // Copy expansion service jar into cache path (.apache_beam/cache/jars/).
     copy {
       from 
project.tasks.findByPath(":sdks:java:extensions:schemaio-expansion-service:shadowJar")
       from 
project.tasks.findByPath(":sdks:java:extensions:sql:expansion-service:shadowJar")
+      from 
project.tasks.findByPath(":sdks:java:io:amazon-web-services2:expansion-service:shadowJar")
+      from 
project.tasks.findByPath(":sdks:java:io:debezium:expansion-service:shadowJar")
       from 
project.tasks.findByPath(":sdks:java:io:expansion-service:shadowJar")
       from 
project.tasks.findByPath(":sdks:java:io:google-cloud-platform:expansion-service:shadowJar")
+      from 
project.tasks.findByPath(":sdks:java:io:messaging-expansion-service:shadowJar")
+      from 
project.tasks.findByPath(":sdks:java:io:snowflake:expansion-service:shadowJar")
       into "${System.getProperty('user.home')}/.apache_beam/cache/jars/"
     }
   }
diff --git a/website/www/site/content/en/blog/beam-2.76.0.md 
b/website/www/site/content/en/blog/beam-2.76.0.md
index cea653eaade..240c961cbd9 100644
--- a/website/www/site/content/en/blog/beam-2.76.0.md
+++ b/website/www/site/content/en/blog/beam-2.76.0.md
@@ -63,7 +63,6 @@ For more information on changes in 2.76.0, check out the 
[detailed release notes
 * (Python) Added `Watch`, a transform that polls a growing set of outputs for 
each input element, deduplicates outputs across poll rounds, and stops per a 
user-supplied termination condition
   ([#21521](https://github.com/apache/beam/issues/21521)).
 * (Python) Added support to analyze core dumps created after python worker 
segmentation faults with `pystack` (or `gdb` if installed) using the 
`--profiler_agent=coredump` pipeline option. 
([#39484](https://github.com/apache/beam/issues/39484)).
-* (Python) Added `Sample.Any`, the Python equivalent of Java's `Sample.any`, 
which returns up to n arbitrary elements from a PCollection 
([#18552](https://github.com/apache/beam/issues/18552)).
 
 ### Breaking Changes
 
@@ -78,9 +77,6 @@ For more information on changes in 2.76.0, check out the 
[detailed release notes
   Use pipeline option `--updateCompatibilityVersion=2.75.0` (or any older 
version) to keep the old behavior 
([#39344](https://github.com/apache/beam/issues/39344)).
 * `DoFn.process` returning a `str`, `bytes`, or `dict` (instead of an iterable 
wrapping one) now raises a `TypeError` rather than silently iterating 
per-character/byte/key (Python) 
([#18712](https://github.com/apache/beam/issues/18712)).
 * (Java) Added `DRAINING` and `DRAINED` states to `PipelineResult`, including 
runner state mappings and Dataflow update handling 
([#39020](https://github.com/apache/beam/issues/39020)).
-* (Python) Typehints of dataclass fields are honored during type inferences. 
To restore the behavior of fallback-to-any,
-  use pipeline option `--exclude_infer_dataclass_field_type` 
([#38797](https://github.com/apache/beam/issues/38797)).
-  However fixing forward is recommended.
 * (Java) IcebergIO and projects that use it must now be built with Java 17 or 
later as a result of Iceberg 1.11.0 upgrade 
([#38925](https://github.com/apache/beam/issues/38925)).
 
 ### Bugfixes
diff --git a/website/www/site/content/en/documentation/io/connectors.md 
b/website/www/site/content/en/documentation/io/connectors.md
index 679b6bf1e0e..f3078c6b378 100644
--- a/website/www/site/content/en/documentation/io/connectors.md
+++ b/website/www/site/content/en/documentation/io/connectors.md
@@ -429,7 +429,10 @@ This table provides a consolidated, at-a-glance overview 
of the available built-
       ✔
       <a 
href="https://beam.apache.org/releases/javadoc/current/org/apache/beam/sdk/io/jms/JmsIO.html";>native</a>
     </td>
-    <td>Not available</td>
+    <td class="present">
+      ✔
+      <a 
href="https://beam.apache.org/releases/pydoc/current/apache_beam.transforms.xlang.io.html#apache_beam.transforms.xlang.io.ReadFromJms";>via
 X-language</a>
+    </td>
     <td>Not available</td>
     <td>Not available</td>
     <td>Not available</td>
@@ -790,7 +793,11 @@ This table provides a consolidated, at-a-glance overview 
of the available built-
       <a 
href="https://pkg.go.dev/github.com/apache/beam/sdks/v2/go/pkg/beam/io/xlang/debeziumio";>via
 X-language</a>
     </td>
     <td>Not available</td>
-    <td>Not available</td>
+    <td class="present">
+      ✔
+      <br>
+      <a 
href="https://beam.apache.org/releases/yamldoc/current/#readfromdebezium";>read</a>
+    </td>
     <td class="present">✔</td>
     <td class="present">✔</td>
     <td class="absent">✘</td>
@@ -1322,18 +1329,25 @@ This table provides a consolidated, at-a-glance 
overview of the available built-
   <tr>
     <td>Delta Lake</td>
     <td class="present">✔</td>
-    <td class="present">✘</td>
+    <td class="absent">✘</td>
     <td class="present">
       ✔
       <a 
href="https://beam.apache.org/releases/javadoc/current/org/apache/beam/sdk/managed/Managed.html";>native</a>
     </td>
+    <td class="present">
+      ✔
+      <a 
href="https://beam.apache.org/releases/pydoc/current/apache_beam.transforms.managed.html#module-apache_beam.transforms.managed";>via
 X-language</a>
+    </td>
     <td>Not available</td>
     <td>Not available</td>
-    <td>Not available</td>
-    <td>Not available</td>
+    <td class="present">
+      ✔
+      <br>
+      <a 
href="https://beam.apache.org/releases/yamldoc/current/#readfromdelta";>read</a>
+    </td>
     <td class="present">✔</td>
     <td class="absent">✘</td>
-    <td class="absent">✔</td>
+    <td class="present">✔</td>
   </tr>
 </table>
 </div>
@@ -1346,205 +1360,130 @@ This table provides a consolidated, at-a-glance 
overview of the available built-
     <th>Connector Name</th>
     <th>Source Supported</th>
     <th>Sink Supported</th>
-    <th>Java</th>
-    <th>Python</th>
-    <th>Go</th>
-    <th>Typescript</th>
-    <th>Yaml</th>
+    <th>Language</th>
     <th>Batch Supported</th>
     <th>Streaming Supported</th>
   </tr>
 
   <tr>
     <td>
-      <a href="https://github.com/google/hana-bq-beam-connector";>SAP Hana to 
Google BigQuery</a>
+      <a 
href="https://cloud.google.com/bigtable/docs/hbase-dataflow-java";>Cloud 
Bigtable (HBase based)</a>
     </td>
     <td class="present">✔</td>
     <td class="present">✔</td>
-    <td class="present">
-      ✔
-      native
-    </td>
-    <td>Not available</td>
-    <td>Not available</td>
-    <td>Not available</td>
-    <td>Not available</td>
+    <td>Java</td>
     <td class="present">✔</td>
     <td class="absent">✘</td>
   </tr>
   <tr>
     <td>
-      <a href="https://github.com/esakik/beam-mysql-connector";>MySQL</a>
+      <a href="https://github.com/cognitedata/cdf-beam-connector-java";>Cognite 
Data Fusion</a>
     </td>
     <td class="present">✔</td>
     <td class="present">✔</td>
-    <td>Not available</td>
-    <td class="present">
-      ✔
-      native
-    </td>
-    <td>Not available</td>
-    <td>Not available</td>
-    <td class="present">
-      ✔
-      <br>
-      <a 
href="https://beam.apache.org/releases/yamldoc/current/#readfrommysql";>read</a> 
/ <a 
href="https://beam.apache.org/releases/yamldoc/current/#writetomysql";>write</a>
-    </td>
+    <td>Java</td>
+    <td class="present">✔</td>
     <td class="present">✔</td>
-    <td class="absent">✘</td>
   </tr>
   <tr>
     <td>
-      <a 
href="https://github.com/Refinitiv/trep-websockets-beam-io";>TrepWsIO</a>
+      <a 
href="https://github.com/kineticadb/kinetica-connector-beam";>KineticaDB</a>
     </td>
     <td class="present">✔</td>
-    <td class="absent">✘</td>
-    <td class="present">
-      ✔
-      native
-    </td>
-    <td>Not available</td>
-    <td>Not available</td>
-    <td>Not available</td>
-    <td>Not available</td>
     <td class="present">✔</td>
+    <td>Java</td>
     <td class="present">✔</td>
+    <td class="absent">✘</td>
   </tr>
   <tr>
     <td>
-      <a 
href="https://github.com/kineticadb/kinetica-connector-beam";>KineticaDB</a>
+      <a href="https://github.com/google/hana-bq-beam-connector";>SAP Hana to 
Google BigQuery</a>
     </td>
     <td class="present">✔</td>
     <td class="present">✔</td>
-    <td class="present">
-      ✔
-      native
-    </td>
-    <td>Not available</td>
-    <td>Not available</td>
-    <td>Not available</td>
-    <td>Not available</td>
+    <td>Java</td>
     <td class="present">✔</td>
     <td class="absent">✘</td>
   </tr>
   <tr>
     <td>
-      <a href="https://github.com/cognitedata/cdf-beam-connector-java";>Cognite 
Data Fusion</a>
+      <a 
href="https://github.com/Refinitiv/trep-websockets-beam-io";>TrepWsIO</a>
     </td>
     <td class="present">✔</td>
-    <td class="present">✔</td>
-    <td class="present">
-      ✔
-      native
-    </td>
-    <td>Not available</td>
-    <td>Not available</td>
-    <td>Not available</td>
-    <td>Not available</td>
+    <td class="absent">✘</td>
+    <td>Java</td>
     <td class="present">✔</td>
     <td class="present">✔</td>
   </tr>
   <tr>
     <td>
-      <a href="https://github.com/314e/beam-pyodbc-connector";>Pyodbc</a>
+      <a href="https://github.com/beam-pyio";>Beam PyIO (Collection of Python 
IO connectors)</a>
     </td>
     <td class="present">✔</td>
     <td class="present">✔</td>
-    <td>Not available</td>
-    <td class="present">
-      ✔
-      native
-    </td>
-    <td>Not available</td>
-    <td>Not available</td>
-    <td>Not available</td>
+    <td>Python</td>
+    <td class="present">✔</td>
     <td class="present">✔</td>
-    <td class="absent">✘</td>
   </tr>
   <tr>
     <td>
-      <a href="https://github.com/amient/goconnect";>Go Connect</a>
+      <a href="https://github.com/jccatrinck/dataflow-cloud-sql-python";>Cloud 
SQL</a>
     </td>
     <td class="present">✔</td>
-    <td class="present">✔</td>
     <td class="absent">✘</td>
-    <td class="absent">✘</td>
-    <td class="present">
-      ✔
-      native
-    </td>
-    <td>Not available</td>
-    <td>Not available</td>
-    <td class="present">✔</td>
+    <td>Python</td>
     <td class="present">✔</td>
+    <td class="absent">✘</td>
   </tr>
   <tr>
     <td>
-      <a href="https://github.com/tinybirdco/tinybird-beam";>Tinybird</a>
+      <a href="https://github.com/esakik/beam-mysql-connector";>MySQL</a>
     </td>
-    <td class="absent">✘</td>
     <td class="present">✔</td>
-    <td>Not available</td>
-    <td class="present">
-      ✔
-      native
-    </td>
-    <td>Not available</td>
-    <td>Not available</td>
-    <td>Not available</td>
     <td class="present">✔</td>
+    <td>Python</td>
     <td class="present">✔</td>
+    <td class="absent">✘</td>
   </tr>
   <tr>
     <td>
-      <a href="https://github.com/jccatrinck/dataflow-cloud-sql-python";>Cloud 
SQL</a>
+      <a href="https://github.com/314e/beam-pyodbc-connector";>Pyodbc</a>
     </td>
     <td class="present">✔</td>
-    <td class="absent">✘</td>
-    <td>Not available</td>
-    <td class="present">
-      ✔
-      native
-    </td>
-    <td>Not available</td>
-    <td>Not available</td>
-    <td>Not available</td>
+    <td class="present">✔</td>
+    <td>Python</td>
     <td class="present">✔</td>
     <td class="absent">✘</td>
   </tr>
   <tr>
     <td>
-      <a 
href="https://cloud.google.com/bigtable/docs/hbase-dataflow-java";>Cloud 
Bigtable (HBase based)</a>
+      <a href="https://github.com/tinybirdco/tinybird-beam";>Tinybird</a>
     </td>
+    <td class="absent">✘</td>
     <td class="present">✔</td>
+    <td>Python</td>
     <td class="present">✔</td>
-    <td class="present">
-      ✔
-      native
-    </td>
-    <td>Not available</td>
-    <td>Not available</td>
-    <td>Not available</td>
-    <td>Not available</td>
     <td class="present">✔</td>
-    <td class="absent">✘</td>
   </tr>
   <tr>
     <td>
-      <a href="https://github.com/beam-pyio";>Beam PyIO (Collection of Python 
IO connectors)</a>
+      <a href="https://github.com/amient/goconnect";>Go Connect</a>
     </td>
     <td class="present">✔</td>
     <td class="present">✔</td>
-    <td>Not available</td>
-    <td class="present">
-      ✔
-      native
+    <td>Go</td>
+    <td class="present">✔</td>
+    <td class="present">✔</td>
+  </tr>
+  <tr>
+    <td>
+      <a 
href="https://beam.apache.org/releases/yamldoc/current/#readfrommysql";>MySQL, 
PostgreSQL, Oracle, SQL Server</a>
     </td>
-    <td>Not available</td>
-    <td>Not available</td>
-    <td>Not available</td>
     <td class="present">✔</td>
     <td class="present">✔</td>
+    <td>Yaml</td>
+    <td class="present">✔</td>
+    <td class="absent">✘</td>
   </tr>
 </table>
 </div>
diff --git a/website/www/site/data/capability_matrix.yaml 
b/website/www/site/data/capability_matrix.yaml
index e4db68c0cbe..3f3bf39594c 100644
--- a/website/www/site/data/capability_matrix.yaml
+++ b/website/www/site/data/capability_matrix.yaml
@@ -1736,7 +1736,6 @@ capability-matrix:
               l1: "Unverified"
               l2:
               l3:
-
             - class: kafka-streams
               l1: "No"
               l2: not implemented

Reply via email to