Deprecate quic_version_information flag

This CL deprecates gfe2_reloadable_flag_quic_version_information.

PiperOrigin-RevId: 434613725
diff --git a/quic/core/crypto/transport_parameters.cc b/quic/core/crypto/transport_parameters.cc
index b2dd3fa..4417d23 100644
--- a/quic/core/crypto/transport_parameters.cc
+++ b/quic/core/crypto/transport_parameters.cc
@@ -158,9 +158,8 @@
     case TransportParameters::kGoogleConnectionOptions:
     case TransportParameters::kGoogleQuicVersion:
     case TransportParameters::kMinAckDelay:
-      return true;
     case TransportParameters::kVersionInformation:
-      return GetQuicReloadableFlag(quic_version_information);
+      return true;
   }
   return false;
 }
@@ -1444,20 +1443,6 @@
         }
       } break;
       case TransportParameters::kVersionInformation: {
-        if (!GetQuicReloadableFlag(quic_version_information)) {
-          // This duplicates the default case and will be removed when this flag
-          // is deprecated.
-          if (out->custom_parameters.find(param_id) !=
-              out->custom_parameters.end()) {
-            *error_details = "Received a second unknown parameter" +
-                             TransportParameterIdToString(param_id);
-            return false;
-          }
-          out->custom_parameters[param_id] =
-              std::string(value_reader.ReadRemainingPayload());
-          break;
-        }
-        QUIC_RELOADABLE_FLAG_COUNT_N(quic_version_information, 2, 2);
         if (out->version_information.has_value()) {
           *error_details = "Received a second version_information";
           return false;
diff --git a/quic/core/crypto/transport_parameters_test.cc b/quic/core/crypto/transport_parameters_test.cc
index c9df18a..0019774 100644
--- a/quic/core/crypto/transport_parameters_test.cc
+++ b/quic/core/crypto/transport_parameters_test.cc
@@ -298,9 +298,7 @@
   orig_params.perspective = Perspective::IS_CLIENT;
   orig_params.legacy_version_information =
       CreateFakeLegacyVersionInformationClient();
-  if (GetQuicReloadableFlag(quic_version_information)) {
-    orig_params.version_information = CreateFakeVersionInformation();
-  }
+  orig_params.version_information = CreateFakeVersionInformation();
   orig_params.max_idle_timeout_ms.set_value(kFakeIdleTimeoutMilliseconds);
   orig_params.max_udp_payload_size.set_value(kMaxPacketSizeForTest);
   orig_params.initial_max_data.set_value(kFakeInitialMaxData);
@@ -344,9 +342,7 @@
   orig_params.perspective = Perspective::IS_SERVER;
   orig_params.legacy_version_information =
       CreateFakeLegacyVersionInformationServer();
-  if (GetQuicReloadableFlag(quic_version_information)) {
-    orig_params.version_information = CreateFakeVersionInformation();
-  }
+  orig_params.version_information = CreateFakeVersionInformation();
   orig_params.original_destination_connection_id =
       CreateFakeOriginalDestinationConnectionId();
   orig_params.max_idle_timeout_ms.set_value(kFakeIdleTimeoutMilliseconds);
@@ -593,11 +589,9 @@
             new_params.legacy_version_information.value().version);
   EXPECT_TRUE(
       new_params.legacy_version_information.value().supported_versions.empty());
-  if (GetQuicReloadableFlag(quic_version_information)) {
-    ASSERT_TRUE(new_params.version_information.has_value());
-    EXPECT_EQ(new_params.version_information.value(),
-              CreateFakeVersionInformation());
-  }
+  ASSERT_TRUE(new_params.version_information.has_value());
+  EXPECT_EQ(new_params.version_information.value(),
+            CreateFakeVersionInformation());
   EXPECT_FALSE(new_params.original_destination_connection_id.has_value());
   EXPECT_EQ(kFakeIdleTimeoutMilliseconds,
             new_params.max_idle_timeout_ms.value());
@@ -853,11 +847,9 @@
   EXPECT_EQ(
       kFakeVersionLabel2,
       new_params.legacy_version_information.value().supported_versions[1]);
-  if (GetQuicReloadableFlag(quic_version_information)) {
-    ASSERT_TRUE(new_params.version_information.has_value());
-    EXPECT_EQ(new_params.version_information.value(),
-              CreateFakeVersionInformation());
-  }
+  ASSERT_TRUE(new_params.version_information.has_value());
+  EXPECT_EQ(new_params.version_information.value(),
+            CreateFakeVersionInformation());
   ASSERT_TRUE(new_params.original_destination_connection_id.has_value());
   EXPECT_EQ(CreateFakeOriginalDestinationConnectionId(),
             new_params.original_destination_connection_id.value());
diff --git a/quic/core/http/end_to_end_test.cc b/quic/core/http/end_to_end_test.cc
index b881dcd..f2c2bf7 100644
--- a/quic/core/http/end_to_end_test.cc
+++ b/quic/core/http/end_to_end_test.cc
@@ -4208,7 +4208,6 @@
     ASSERT_TRUE(Initialize());
     return;
   }
-  SetQuicReloadableFlag(quic_version_information, true);
   connect_to_server_on_initialize_ = false;
   client_supported_versions_.insert(client_supported_versions_.begin(),
                                     target_version);
diff --git a/quic/core/quic_flags_list.h b/quic/core/quic_flags_list.h
index 7128d84..33f9bc8 100644
--- a/quic/core/quic_flags_list.h
+++ b/quic/core/quic_flags_list.h
@@ -103,8 +103,6 @@
 QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_tls_use_token_in_session_cache, true)
 // When the flag is true, exit STARTUP after the same number of loss events as PROBE_UP.
 QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_bbr2_startup_probe_up_loss_events, true)
-// When true, QUIC will both send and validate the version_information transport parameter.
-QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_version_information, true)
 // When true, defaults to BBR congestion control instead of Cubic.
 QUIC_FLAG(FLAGS_quic_reloadable_flag_quic_default_to_bbr, false)
 // When true, prevents QUIC\'s PacingSender from generating bursts when the congestion controller is CWND limited and not pacing limited.
diff --git a/quic/core/quic_versions.cc b/quic/core/quic_versions.cc
index 21ec163..a0957fa 100644
--- a/quic/core/quic_versions.cc
+++ b/quic/core/quic_versions.cc
@@ -648,7 +648,6 @@
 
 void QuicVersionInitializeSupportForIetfDraft() {
   // Enable necessary flags.
-  SetQuicReloadableFlag(quic_version_information, true);
 }
 
 void QuicEnableVersion(const ParsedQuicVersion& version) {
diff --git a/quic/core/tls_server_handshaker.cc b/quic/core/tls_server_handshaker.cc
index f622d56..00db13d 100644
--- a/quic/core/tls_server_handshaker.cc
+++ b/quic/core/tls_server_handshaker.cc
@@ -535,15 +535,11 @@
       CreateQuicVersionLabelVector(session()->supported_versions());
   server_params.legacy_version_information.value().version =
       CreateQuicVersionLabel(session()->connection()->version());
-  if (GetQuicReloadableFlag(quic_version_information)) {
-    QUIC_RELOADABLE_FLAG_COUNT_N(quic_version_information, 1, 2);
-    server_params.version_information =
-        TransportParameters::VersionInformation();
-    server_params.version_information.value().chosen_version =
-        CreateQuicVersionLabel(session()->version());
-    server_params.version_information.value().other_versions =
-        CreateQuicVersionLabelVector(session()->supported_versions());
-  }
+  server_params.version_information = TransportParameters::VersionInformation();
+  server_params.version_information.value().chosen_version =
+      CreateQuicVersionLabel(session()->version());
+  server_params.version_information.value().other_versions =
+      CreateQuicVersionLabelVector(session()->supported_versions());
 
   if (!handshaker_delegate()->FillTransportParameters(&server_params)) {
     return result;