Merge branch 'main' into avm99963-monorail

Merged commit 34d8229ae2b51fb1a15bd208e6fe6185c94f6266

GitOrigin-RevId: 7ee0917f93a577e475f8e09526dd144d245593f4
diff --git a/.vpython3 b/.vpython3
index 9cc9d49..17cbcb1 100644
--- a/.vpython3
+++ b/.vpython3
@@ -9,7 +9,7 @@
 
 wheel: <
   name: "infra/python/wheels/appengine-python-standard-py3"
-  version: "version:0.3.1"
+  version: "version:1.1.1"
 >
 wheel: <
   name: "infra/python/wheels/ezt-py2_py3"
@@ -47,6 +47,11 @@
 >
 
 wheel: <
+  name: "infra/python/wheels/gunicorn-py3"
+  version: "version:20.1.0"
+>
+
+wheel: <
   name: "infra/python/wheels/httpagentparser-py2_py3"
   version: "version:1.9.3"
 >
@@ -83,10 +88,25 @@
 >
 
 wheel: <
+  name: "infra/python/wheels/parameterized-py2_py3"
+  version: "version:0.8.1"
+>
+
+wheel: <
   name: "infra/python/wheels/pytest-py3"
   version: "version:6.2.2"
 >
 
+wheel: <
+  name: "infra/python/wheels/pytest-rerunfailures-py3"
+  version: "version:11.1.2"
+>
+
+wheel: <
+  name: "infra/python/wheels/webtest-py2_py3"
+  version: "version:2.0.35"
+>
+
 # Required by appengine-python-standard==0.3.1
 wheel: <
   name: "infra/python/wheels/attrs-py2_py3"
@@ -114,7 +134,7 @@
 # Required by appengine-python-standard==0.3.1
 wheel: <
   name: "infra/python/wheels/protobuf-py3"
-  version: "version:3.19.3"
+  version: "version:3.20.1"
 >
 
 # Required by appengine-python-standard==0.3.1
@@ -129,6 +149,12 @@
   version: "version:0.17.16"
 >
 
+# Required by beautifulsoup4==4.9.0
+wheel: <
+  name: "infra/python/wheels/soupsieve-py2_py3"
+  version: "version:1.9.5"
+>
+
 # Required by Flask==1.0.2
 wheel: <
   name: "infra/python/wheels/click-py2_py3"
@@ -186,8 +212,8 @@
 
 # Required by google-api-core==1.25.1
 wheel: <
-  name: "infra/python/wheels/requests-py2_py3"
-  version: "version:2.25.1"
+  name: "infra/python/wheels/requests-py3"
+  version: "version:2.31.0"
 >
 
 # Required by google-auth==1.29.0
@@ -293,8 +319,8 @@
 
 # Required by pytest==6.2.2
 wheel: <
-  name: "infra/python/wheels/packaging-py2_py3"
-  version: "version:16.8"
+  name: "infra/python/wheels/packaging-py3"
+  version: "version:23.0"
 >
 
 # Required by pytest==6.2.2
@@ -315,25 +341,31 @@
   version: "version:0.10.1"
 >
 
-# Required by requests==2.25.1
+# Required by requests==2.31.0
 wheel: <
   name: "infra/python/wheels/certifi-py2_py3"
   version: "version:2020.12.5"
 >
 
-# Required by requests==2.25.1
+# Required by requests==2.31.0
 wheel: <
   name: "infra/python/wheels/chardet-py2_py3"
   version: "version:4.0.0"
 >
 
-# Required by requests==2.25.1
+# Required by requests==2.31.0
+wheel: <
+  name: "infra/python/wheels/charset_normalizer-py3"
+  version: "version:2.0.4"
+>
+
+# Required by requests==2.31.0
 wheel: <
   name: "infra/python/wheels/idna-py2_py3"
   version: "version:2.8"
 >
 
-# Required by requests==2.25.1
+# Required by requests==2.31.0
 wheel: <
   name: "infra/python/wheels/urllib3-py2_py3"
   version: "version:1.26.4"
@@ -344,3 +376,21 @@
   name: "infra/python/wheels/ruamel_yaml_clib/${vpython_platform}"
   version: "version:0.2.6"
 >
+
+# Required by webtest==2.0.35
+wheel: <
+  name: "infra/python/wheels/beautifulsoup4-py3"
+  version: "version:4.9.0"
+>
+
+# Required by webtest==2.0.35
+wheel: <
+  name: "infra/python/wheels/waitress-py2_py3"
+  version: "version:1.4.3"
+>
+
+# Required by webtest==2.0.35
+wheel: <
+  name: "infra/python/wheels/webob-py2_py3"
+  version: "version:1.8.6"
+>