# This is a vpython "spec" file.
#
# Read more about `vpython` and how to modify this file here:
#   https://chromium.googlesource.com/infra/infra/+/main/doc/users/vpython.md
# List of available wheels:
#   https://chromium.googlesource.com/infra/infra/+/main/infra/tools/dockerbuild/wheels.md

python_version: "3.8"

wheel: <
  name: "infra/python/wheels/appengine-python-standard-py3"
  version: "version:0.3.1"
>

wheel: <
  name: "infra/python/wheels/flask-py2_py3"
  version: "version:1.0.2"
>

wheel: <
  name: "infra/python/wheels/google-api-python-client-py3"
  version: "version:2.2.0"
>

wheel: <
  name: "infra/python/wheels/google-auth-py2_py3"
  version: "version:1.35.0"
>

wheel: <
  name: "infra/python/wheels/google-cloud-logging-py3"
  version: "version:3.0.0"
>

wheel: <
  name: "infra/python/wheels/google-cloud-storage-py2_py3"
  version: "version:1.41.1"
>

wheel: <
  name: "infra/python/wheels/httplib2-py3"
  version: "version:0.19.1"
>

wheel: <
  name: "infra/python/wheels/oauth2client-py2_py3"
  version: "version:4.1.3"
>

wheel: <
 name: "infra/python/wheels/six-py2_py3"
 version: "version:1.15.0"
>

# Required for testing only.
wheel: <
  name: "infra/python/wheels/pytest-py3"
  version: "version:6.2.2"
>

# Required by appengine-python-standard==0.3.1
wheel: <
  name: "infra/python/wheels/attrs-py2_py3"
  version: "version:21.4.0"
>

# Required by appengine-python-standard==0.3.1
wheel: <
  name: "infra/python/wheels/frozendict-py3"
  version: "version:2.0.6"
>

# Required by appengine-python-standard==0.3.1
wheel: <
  name: "infra/python/wheels/mock-py3"
  version: "version:4.0.3"
>

# Required by appengine-python-standard==0.3.1
wheel: <
  name: "infra/python/wheels/pillow/${vpython_platform}"
  version: "version:8.3.1"
>

# Required by appengine-python-standard==0.3.1
wheel: <
  name: "infra/python/wheels/protobuf-py3"
  version: "version:3.19.3"
>

# Required by appengine-python-standard==0.3.1
wheel: <
  name: "infra/python/wheels/pytz-py2_py3"
  version: "version:2021.1"
>

# Required by appengine-python-standard==0.3.1
wheel: <
  name: "infra/python/wheels/ruamel_yaml-py3"
  version: "version:0.17.16"
>

# Required by Flask==1.0.2
wheel: <
  name: "infra/python/wheels/click-py2_py3"
  version: "version:7.0"
>

# Required by Flask==1.0.2
wheel: <
  name: "infra/python/wheels/itsdangerous-py2_py3"
  version: "version:1.1.0"
>

# Required by Flask==1.0.2
wheel: <
  name: "infra/python/wheels/jinja2-py2_py3"
  version: "version:2.10.1"
>

# Required by Flask==1.0.2
wheel: <
  name: "infra/python/wheels/werkzeug-py2_py3"
  version: "version:1.0.1"
>

# Required by google-api-python-client==2.2.0 and
# google-cloud-core==2.2.2 and google-cloud-logging==3.0.0
wheel: <
  name: "infra/python/wheels/google-api-core-py3"
  version: "version:1.31.5"
>

# Required by google-api-python-client==2.2.0
wheel: <
  name: "infra/python/wheels/google-auth-py2_py3"
  version: "version:1.35.0"
>

# Required by google-api-python-client==2.2.0
wheel: <
  name: "infra/python/wheels/google-auth-httplib2-py2_py3"
  version: "version:0.1.0"
>

# Required by google-api-python-client==2.2.0
wheel: <
  name: "infra/python/wheels/uritemplate-py2_py3"
  version: "version:3.0.0"
>

# Required by google-api-core==1.25.1
wheel: <
  name: "infra/python/wheels/googleapis-common-protos-py2_py3"
  version: "version:1.52.0"
>

# Required by google-api-core==1.25.1
wheel: <
  name: "infra/python/wheels/requests-py2_py3"
  version: "version:2.25.1"
>

# Required by google-auth==1.29.0
wheel: <
  name: "infra/python/wheels/cachetools-py3"
  version: "version:4.2.1"
>

# Required by google-auth==1.29.0
wheel: <
  name: "infra/python/wheels/pyasn1_modules-py2_py3"
  version: "version:0.2.8"
>

# Required by google-auth==1.29.0
wheel: <
  name: "infra/python/wheels/rsa-py3"
  version: "version:4.7.2"
>

# Required by google-cloud-logging==3.0.0
wheel: <
  name: "infra/python/wheels/google-cloud-appengine-logging-py2_py3"
  version: "version:1.1.1"
>

# Required by google-cloud-logging==3.0.0
wheel: <
  name: "infra/python/wheels/google-cloud-audit-log-py2_py3"
  version: "version:0.2.0"
>

# Required by google-cloud-logging==3.0.0
wheel: <
  name: "infra/python/wheels/grpc-google-iam-v1-py3"
  version: "version:0.12.3"
>

# Required by google-cloud-logging==3.0.0
wheel: <
  name: "infra/python/wheels/proto-plus-py3"
  version: "version:1.20.3"
>

# Required by google-cloud-storage==1.41.1
wheel: <
  name: "infra/python/wheels/google-resumable-media-py3"
  version: "version:2.2.1"
>

# Required by google-cloud-storage==1.41.1
wheel: <
  name: "infra/python/wheels/google-cloud-core-py3"
  version: "version:2.2.2"
>

# Required by google-cloud-storage==1.41.1
wheel: <
  name: "infra/python/wheels/google-crc32c/${vpython_platform}"
  version: "version:1.3.0"
>

# Required by grpc-google-iam-v1==0.12.3
wheel: <
  name: "infra/python/wheels/grpcio/${vpython_platform}"
  version: "version:1.44.0"
>

# Required by httplib2==0.19.1
wheel: <
  name: "infra/python/wheels/pyparsing-py2_py3"
  version: "version:2.4.7"
>

# Required by Jinja2==2.10.1
wheel: <
  name: "infra/python/wheels/markupsafe/${vpython_platform}"
  version: "version:1.1.1"
>

# Required by oauth2client==4.1.3
wheel: <
  name: "infra/python/wheels/pyasn1-py2_py3"
  version: "version:0.4.8"
>

# Required by pytest==6.2.2
wheel: <
  name: "infra/python/wheels/iniconfig-py3"
  version: "version:1.1.1"
>

# Required by pytest==6.2.2
wheel: <
  name: "infra/python/wheels/packaging-py2_py3"
  version: "version:16.8"
>

# Required by pytest==6.2.2
wheel: <
  name: "infra/python/wheels/pluggy-py3"
  version: "version:0.13.1"
>

# Required by pytest==6.2.2
wheel: <
  name: "infra/python/wheels/py-py2_py3"
  version: "version:1.10.0"
>

# Required by pytest==6.2.2
wheel: <
  name: "infra/python/wheels/toml-py3"
  version: "version:0.10.1"
>

# Required by requests==2.25.1
wheel: <
  name: "infra/python/wheels/certifi-py2_py3"
  version: "version:2020.12.5"
>

# Required by requests==2.25.1
wheel: <
  name: "infra/python/wheels/chardet-py2_py3"
  version: "version:4.0.0"
>

# Required by requests==2.25.1
wheel: <
  name: "infra/python/wheels/idna-py2_py3"
  version: "version:2.8"
>

# Required by requests==2.25.1
wheel: <
  name: "infra/python/wheels/urllib3-py2_py3"
  version: "version:1.26.4"
>

# Required by ruamel.yaml==0.17.16
wheel: <
  name: "infra/python/wheels/ruamel_yaml_clib/${vpython_platform}"
  version: "version:0.2.6"
>
