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 c81059fb246 Drop Flink 1.17,1.18 support (#39006)
c81059fb246 is described below

commit c81059fb246970582d1332fbb22e07697cbcaf26
Author: Yi Hu <[email protected]>
AuthorDate: Thu Jun 18 10:07:15 2026 -0400

    Drop Flink 1.17,1.18 support (#39006)
---
 .../test-properties.json                           |  2 +-
 .../workflows/beam_PreCommit_Flink_Container.yml   |  2 +-
 gradle.properties                                  |  2 +-
 runners/flink/1.17/build.gradle                    | 25 -------
 .../flink/1.17/job-server-container/build.gradle   | 26 -------
 runners/flink/1.17/job-server/build.gradle         | 31 ---------
 runners/flink/1.18/build.gradle                    | 25 -------
 .../flink/1.18/job-server-container/build.gradle   | 26 -------
 runners/flink/1.18/job-server/build.gradle         | 31 ---------
 .../flink/streaming/MemoryStateBackendWrapper.java | 80 ----------------------
 .../runners/flink/streaming/StreamSources.java     | 61 -----------------
 .../flink/streaming/MemoryStateBackendWrapper.java | 28 ++++----
 .../runners/flink/streaming/StreamSources.java     |  7 ++
 sdks/go/examples/wasm/README.md                    |  2 +-
 .../python/apache_beam/options/pipeline_options.py |  2 +-
 sdks/typescript/src/apache_beam/runners/flink.ts   |  2 +-
 16 files changed, 29 insertions(+), 323 deletions(-)

diff --git a/.github/actions/setup-default-test-properties/test-properties.json 
b/.github/actions/setup-default-test-properties/test-properties.json
index 7a3f9890a29..ddb4a8b73ff 100644
--- a/.github/actions/setup-default-test-properties/test-properties.json
+++ b/.github/actions/setup-default-test-properties/test-properties.json
@@ -14,7 +14,7 @@
   },
   "JavaTestProperties": {
     "SUPPORTED_VERSIONS": ["8", "11", "17", "21", "25"],
-    "FLINK_VERSIONS": ["1.17", "1.18", "1.19", "1.20", "2.0", "2.1"],
+    "FLINK_VERSIONS": ["1.19", "1.20", "2.0", "2.1"],
     "SPARK_VERSIONS": ["3"]
   },
   "GoTestProperties": {
diff --git a/.github/workflows/beam_PreCommit_Flink_Container.yml 
b/.github/workflows/beam_PreCommit_Flink_Container.yml
index 9d4ff5e9636..1f6c209cfd2 100644
--- a/.github/workflows/beam_PreCommit_Flink_Container.yml
+++ b/.github/workflows/beam_PreCommit_Flink_Container.yml
@@ -173,7 +173,7 @@ jobs:
           gradle-command: :sdks:java:testing:load-tests:run
           arguments: |
             -PloadTest.mainClass=org.apache.beam.sdk.loadtests.CombineLoadTest 
\
-            -Prunner=:runners:flink:1.17 \
+            -Prunner=:runners:flink:2.0 \
             '-PloadTest.args=${{ 
env.beam_PreCommit_Flink_Container_test_arguments_3 }} 
--jobName=flink-tests-java11-${{env.NOW_UTC}}'
 
       - name: Teardown Flink
diff --git a/gradle.properties b/gradle.properties
index 0289d02722b..c20a8373cb6 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -39,7 +39,7 @@ docker_image_default_repo_root=apache
 docker_image_default_repo_prefix=beam_
 
 # supported flink versions
-flink_versions=1.17,1.18,1.19,1.20,2.0,2.1
+flink_versions=1.19,1.20,2.0,2.1
 # supported spark versions
 spark_versions=3,4
 # supported python versions
diff --git a/runners/flink/1.17/build.gradle b/runners/flink/1.17/build.gradle
deleted file mode 100644
index ae69b879eba..00000000000
--- a/runners/flink/1.17/build.gradle
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * License); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-project.ext {
-  flink_major = '1.17'
-  flink_version = '1.17.0'
-}
-
-// Load the main build script which contains all build logic.
-apply from: "../flink_runner.gradle"
diff --git a/runners/flink/1.17/job-server-container/build.gradle 
b/runners/flink/1.17/job-server-container/build.gradle
deleted file mode 100644
index afdb68a0fc9..00000000000
--- a/runners/flink/1.17/job-server-container/build.gradle
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * License); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-def basePath = '../../job-server-container'
-
-project.ext {
-  resource_path = basePath
-}
-
-// Load the main build script which contains all build logic.
-apply from: "$basePath/flink_job_server_container.gradle"
diff --git a/runners/flink/1.17/job-server/build.gradle 
b/runners/flink/1.17/job-server/build.gradle
deleted file mode 100644
index 89915349ae9..00000000000
--- a/runners/flink/1.17/job-server/build.gradle
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * License); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-def basePath = '../../job-server'
-
-project.ext {
-  // Look for the source code in the parent module
-  main_source_dirs = ["$basePath/src/main/java"]
-  test_source_dirs = ["$basePath/src/test/java"]
-  main_resources_dirs = ["$basePath/src/main/resources"]
-  test_resources_dirs = ["$basePath/src/test/resources"]
-  archives_base_name = 'beam-runners-flink-1.17-job-server'
-}
-
-// Load the main build script which contains all build logic.
-apply from: "$basePath/flink_job_server.gradle"
diff --git a/runners/flink/1.18/build.gradle b/runners/flink/1.18/build.gradle
deleted file mode 100644
index ab6e6b63b77..00000000000
--- a/runners/flink/1.18/build.gradle
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * License); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-project.ext {
-  flink_major = '1.18'
-  flink_version = '1.18.0'
-}
-
-// Load the main build script which contains all build logic.
-apply from: "../flink_runner.gradle"
diff --git a/runners/flink/1.18/job-server-container/build.gradle 
b/runners/flink/1.18/job-server-container/build.gradle
deleted file mode 100644
index afdb68a0fc9..00000000000
--- a/runners/flink/1.18/job-server-container/build.gradle
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * License); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-def basePath = '../../job-server-container'
-
-project.ext {
-  resource_path = basePath
-}
-
-// Load the main build script which contains all build logic.
-apply from: "$basePath/flink_job_server_container.gradle"
diff --git a/runners/flink/1.18/job-server/build.gradle 
b/runners/flink/1.18/job-server/build.gradle
deleted file mode 100644
index e70fdcc0c58..00000000000
--- a/runners/flink/1.18/job-server/build.gradle
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * License); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an AS IS BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-def basePath = '../../job-server'
-
-project.ext {
-  // Look for the source code in the parent module
-  main_source_dirs = ["$basePath/src/main/java"]
-  test_source_dirs = ["$basePath/src/test/java"]
-  main_resources_dirs = ["$basePath/src/main/resources"]
-  test_resources_dirs = ["$basePath/src/test/resources"]
-  archives_base_name = 'beam-runners-flink-1.18-job-server'
-}
-
-// Load the main build script which contains all build logic.
-apply from: "$basePath/flink_job_server.gradle"
diff --git 
a/runners/flink/1.19/src/test/java/org/apache/beam/runners/flink/streaming/MemoryStateBackendWrapper.java
 
b/runners/flink/1.19/src/test/java/org/apache/beam/runners/flink/streaming/MemoryStateBackendWrapper.java
deleted file mode 100644
index cbaa6fd3a8c..00000000000
--- 
a/runners/flink/1.19/src/test/java/org/apache/beam/runners/flink/streaming/MemoryStateBackendWrapper.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.beam.runners.flink.streaming;
-
-import java.util.Collection;
-import org.apache.flink.api.common.JobID;
-import org.apache.flink.api.common.typeutils.TypeSerializer;
-import org.apache.flink.core.fs.CloseableRegistry;
-import org.apache.flink.metrics.MetricGroup;
-import org.apache.flink.runtime.execution.Environment;
-import org.apache.flink.runtime.query.TaskKvStateRegistry;
-import org.apache.flink.runtime.state.AbstractKeyedStateBackend;
-import org.apache.flink.runtime.state.BackendBuildingException;
-import org.apache.flink.runtime.state.KeyGroupRange;
-import org.apache.flink.runtime.state.KeyedStateBackendParametersImpl;
-import org.apache.flink.runtime.state.KeyedStateHandle;
-import org.apache.flink.runtime.state.OperatorStateBackend;
-import org.apache.flink.runtime.state.OperatorStateBackendParametersImpl;
-import org.apache.flink.runtime.state.OperatorStateHandle;
-import org.apache.flink.runtime.state.memory.MemoryStateBackend;
-import org.apache.flink.runtime.state.ttl.TtlTimeProvider;
-
-class MemoryStateBackendWrapper {
-  static <K> AbstractKeyedStateBackend<K> createKeyedStateBackend(
-      Environment env,
-      JobID jobID,
-      String operatorIdentifier,
-      TypeSerializer<K> keySerializer,
-      int numberOfKeyGroups,
-      KeyGroupRange keyGroupRange,
-      TaskKvStateRegistry kvStateRegistry,
-      TtlTimeProvider ttlTimeProvider,
-      MetricGroup metricGroup,
-      Collection<KeyedStateHandle> stateHandles,
-      CloseableRegistry cancelStreamRegistry)
-      throws BackendBuildingException {
-
-    MemoryStateBackend backend = new MemoryStateBackend();
-    return backend.createKeyedStateBackend(
-        new KeyedStateBackendParametersImpl<>(
-            env,
-            jobID,
-            operatorIdentifier,
-            keySerializer,
-            numberOfKeyGroups,
-            keyGroupRange,
-            kvStateRegistry,
-            ttlTimeProvider,
-            metricGroup,
-            stateHandles,
-            cancelStreamRegistry));
-  }
-
-  static OperatorStateBackend createOperatorStateBackend(
-      Environment env,
-      String operatorIdentifier,
-      Collection<OperatorStateHandle> stateHandles,
-      CloseableRegistry cancelStreamRegistry)
-      throws Exception {
-    MemoryStateBackend backend = new MemoryStateBackend();
-    return backend.createOperatorStateBackend(
-        new OperatorStateBackendParametersImpl(
-            env, operatorIdentifier, stateHandles, cancelStreamRegistry));
-  }
-}
diff --git 
a/runners/flink/1.19/src/test/java/org/apache/beam/runners/flink/streaming/StreamSources.java
 
b/runners/flink/1.19/src/test/java/org/apache/beam/runners/flink/streaming/StreamSources.java
deleted file mode 100644
index 793959c5e69..00000000000
--- 
a/runners/flink/1.19/src/test/java/org/apache/beam/runners/flink/streaming/StreamSources.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.beam.runners.flink.streaming;
-
-import org.apache.flink.runtime.operators.testutils.MockEnvironmentBuilder;
-import org.apache.flink.streaming.api.functions.source.SourceFunction;
-import org.apache.flink.streaming.api.operators.AbstractStreamOperator;
-import org.apache.flink.streaming.api.operators.Output;
-import org.apache.flink.streaming.api.operators.StreamSource;
-import org.apache.flink.streaming.runtime.streamrecord.RecordAttributes;
-import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
-import org.apache.flink.streaming.runtime.tasks.OperatorChain;
-import org.apache.flink.streaming.runtime.tasks.RegularOperatorChain;
-import org.apache.flink.streaming.runtime.tasks.StreamTask;
-import org.apache.flink.streaming.runtime.watermarkstatus.WatermarkStatus;
-
-/** {@link StreamSource} utilities, that bridge incompatibilities between 
Flink releases. */
-public class StreamSources {
-
-  public static <OutT, SrcT extends SourceFunction<OutT>> void run(
-      StreamSource<OutT, SrcT> streamSource,
-      Object lockingObject,
-      Output<StreamRecord<OutT>> collector)
-      throws Exception {
-    streamSource.run(lockingObject, collector, 
createOperatorChain(streamSource));
-  }
-
-  private static OperatorChain<?, ?> 
createOperatorChain(AbstractStreamOperator<?> operator) {
-    return new RegularOperatorChain<>(
-        operator.getContainingTask(),
-        StreamTask.createRecordWriterDelegate(
-            operator.getOperatorConfig(), new 
MockEnvironmentBuilder().build()));
-  }
-
-  /** The emitWatermarkStatus method was added in Flink 1.14, so we need to 
wrap Output. */
-  public interface OutputWrapper<T> extends Output<T> {
-    @Override
-    default void emitWatermarkStatus(WatermarkStatus watermarkStatus) {}
-
-    /** In Flink 1.19 the {@code recordAttributes} method was added. */
-    @Override
-    default void emitRecordAttributes(RecordAttributes recordAttributes) {
-      throw new UnsupportedOperationException("emitRecordAttributes not 
implemented");
-    }
-  }
-}
diff --git 
a/runners/flink/src/test/java/org/apache/beam/runners/flink/streaming/MemoryStateBackendWrapper.java
 
b/runners/flink/src/test/java/org/apache/beam/runners/flink/streaming/MemoryStateBackendWrapper.java
index 7317788a72e..cbaa6fd3a8c 100644
--- 
a/runners/flink/src/test/java/org/apache/beam/runners/flink/streaming/MemoryStateBackendWrapper.java
+++ 
b/runners/flink/src/test/java/org/apache/beam/runners/flink/streaming/MemoryStateBackendWrapper.java
@@ -27,8 +27,10 @@ import org.apache.flink.runtime.query.TaskKvStateRegistry;
 import org.apache.flink.runtime.state.AbstractKeyedStateBackend;
 import org.apache.flink.runtime.state.BackendBuildingException;
 import org.apache.flink.runtime.state.KeyGroupRange;
+import org.apache.flink.runtime.state.KeyedStateBackendParametersImpl;
 import org.apache.flink.runtime.state.KeyedStateHandle;
 import org.apache.flink.runtime.state.OperatorStateBackend;
+import org.apache.flink.runtime.state.OperatorStateBackendParametersImpl;
 import org.apache.flink.runtime.state.OperatorStateHandle;
 import org.apache.flink.runtime.state.memory.MemoryStateBackend;
 import org.apache.flink.runtime.state.ttl.TtlTimeProvider;
@@ -50,17 +52,18 @@ class MemoryStateBackendWrapper {
 
     MemoryStateBackend backend = new MemoryStateBackend();
     return backend.createKeyedStateBackend(
-        env,
-        jobID,
-        operatorIdentifier,
-        keySerializer,
-        numberOfKeyGroups,
-        keyGroupRange,
-        kvStateRegistry,
-        ttlTimeProvider,
-        metricGroup,
-        stateHandles,
-        cancelStreamRegistry);
+        new KeyedStateBackendParametersImpl<>(
+            env,
+            jobID,
+            operatorIdentifier,
+            keySerializer,
+            numberOfKeyGroups,
+            keyGroupRange,
+            kvStateRegistry,
+            ttlTimeProvider,
+            metricGroup,
+            stateHandles,
+            cancelStreamRegistry));
   }
 
   static OperatorStateBackend createOperatorStateBackend(
@@ -71,6 +74,7 @@ class MemoryStateBackendWrapper {
       throws Exception {
     MemoryStateBackend backend = new MemoryStateBackend();
     return backend.createOperatorStateBackend(
-        env, operatorIdentifier, stateHandles, cancelStreamRegistry);
+        new OperatorStateBackendParametersImpl(
+            env, operatorIdentifier, stateHandles, cancelStreamRegistry));
   }
 }
diff --git 
a/runners/flink/src/test/java/org/apache/beam/runners/flink/streaming/StreamSources.java
 
b/runners/flink/src/test/java/org/apache/beam/runners/flink/streaming/StreamSources.java
index d1e38549d8e..793959c5e69 100644
--- 
a/runners/flink/src/test/java/org/apache/beam/runners/flink/streaming/StreamSources.java
+++ 
b/runners/flink/src/test/java/org/apache/beam/runners/flink/streaming/StreamSources.java
@@ -22,6 +22,7 @@ import 
org.apache.flink.streaming.api.functions.source.SourceFunction;
 import org.apache.flink.streaming.api.operators.AbstractStreamOperator;
 import org.apache.flink.streaming.api.operators.Output;
 import org.apache.flink.streaming.api.operators.StreamSource;
+import org.apache.flink.streaming.runtime.streamrecord.RecordAttributes;
 import org.apache.flink.streaming.runtime.streamrecord.StreamRecord;
 import org.apache.flink.streaming.runtime.tasks.OperatorChain;
 import org.apache.flink.streaming.runtime.tasks.RegularOperatorChain;
@@ -50,5 +51,11 @@ public class StreamSources {
   public interface OutputWrapper<T> extends Output<T> {
     @Override
     default void emitWatermarkStatus(WatermarkStatus watermarkStatus) {}
+
+    /** In Flink 1.19 the {@code recordAttributes} method was added. */
+    @Override
+    default void emitRecordAttributes(RecordAttributes recordAttributes) {
+      throw new UnsupportedOperationException("emitRecordAttributes not 
implemented");
+    }
   }
 }
diff --git a/sdks/go/examples/wasm/README.md b/sdks/go/examples/wasm/README.md
index 30fd22f624b..deb2e9196f4 100644
--- a/sdks/go/examples/wasm/README.md
+++ b/sdks/go/examples/wasm/README.md
@@ -68,7 +68,7 @@ cd $BEAM_HOME
 Expected output should include the following, from which you acquire the 
latest flink runner version.
 
 ```shell
-'flink_versions: 1.17,1.18,1.19,1.20,2.0,2.1'
+'flink_versions: 1.19,1.20,2.0,2.1'
 ```
 
 #### 2. Set to the latest flink runner version i.e. 2.1
diff --git a/sdks/python/apache_beam/options/pipeline_options.py 
b/sdks/python/apache_beam/options/pipeline_options.py
index 978a79bf617..8bd22077631 100644
--- a/sdks/python/apache_beam/options/pipeline_options.py
+++ b/sdks/python/apache_beam/options/pipeline_options.py
@@ -2106,7 +2106,7 @@ class JobServerOptions(PipelineOptions):
 class FlinkRunnerOptions(PipelineOptions):
 
   # These should stay in sync with gradle.properties.
-  PUBLISHED_FLINK_VERSIONS = ['1.17', '1.18', '1.19', '1.20', '2.0', '2.1']
+  PUBLISHED_FLINK_VERSIONS = ['1.19', '1.20', '2.0', '2.1']
 
   @classmethod
   def _add_argparse_args(cls, parser):
diff --git a/sdks/typescript/src/apache_beam/runners/flink.ts 
b/sdks/typescript/src/apache_beam/runners/flink.ts
index c8f8f57eb08..bb5137b8f9b 100644
--- a/sdks/typescript/src/apache_beam/runners/flink.ts
+++ b/sdks/typescript/src/apache_beam/runners/flink.ts
@@ -28,7 +28,7 @@ import { JavaJarService } from "../utils/service";
 const MAGIC_HOST_NAMES = ["[local]", "[auto]"];
 
 // These should stay in sync with gradle.properties.
-const PUBLISHED_FLINK_VERSIONS = ["1.17", "1.18", "1.19", "1.20", "2.0", 
"2.1"];
+const PUBLISHED_FLINK_VERSIONS = ["1.19", "1.20", "2.0", "2.1"];
 
 const defaultOptions = {
   flinkMaster: "[local]",

Reply via email to