1 # This is a vpython "spec" file.
3 # It describes patterns for python wheel dependencies of the python scripts in
4 # the chromium repo, particularly for dependencies that have compiled components
5 # (since pure-python dependencies can be easily vendored into third_party).
7 # When vpython is invoked, it finds this file and builds a python VirtualEnv,
8 # containing all of the dependencies described in this file, fetching them from
9 # CIPD (the "Chrome Infrastructure Package Deployer" service). Unlike `pip`,
10 # this never requires the end-user machine to have a working python extension
11 # compilation environment. All of these packages are built using:
12 # https://chromium.googlesource.com/infra/infra/+/main/infra/tools/dockerbuild/
14 # All python scripts in the repo share this same spec, to avoid dependency
17 # If you have depot_tools installed in your $PATH, you can invoke python scripts
18 # in this repo by running them as you normally would run them, except
19 # substituting `vpython` instead of `python` on the command line, e.g.:
20 # vpython path/to/script.py some --arguments
22 # Read more about `vpython` and how to modify this file here:
23 # https://chromium.googlesource.com/infra/infra/+/main/doc/users/vpython.md
27 # The default set of platforms vpython checks does not yet include mac-arm64.
28 # Setting `verify_pep425_tag` to the list of platforms we explicitly must support
29 # allows us to ensure that vpython specs stay mac-arm64-friendly
31 {python: "cp38", abi: "cp38", platform: "manylinux1_x86_64"},
32 {python: "cp38", abi: "cp38", platform: "linux_arm64"},
34 {python: "cp38", abi: "cp38", platform: "macosx_10_10_intel"},
35 {python: "cp38", abi: "cp38", platform: "macosx_11_0_arm64"},
37 {python: "cp38", abi: "cp38", platform: "win32"},
38 {python: "cp38", abi: "cp38", platform: "win_amd64"}
41 # TODO(https://crbug.com/898348): Add in necessary wheels as Python3 versions
44 name: "infra/python/wheels/six-py2_py3"
45 version: "version:1.15.0"
49 name: "infra/python/wheels/coverage/${vpython_platform}"
50 version: "version:5.5.chromium.3"
54 name: "infra/python/wheels/pbr-py2_py3"
55 version: "version:3.0.0"
59 name: "infra/python/wheels/funcsigs-py2_py3"
60 version: "version:1.0.2"
64 name: "infra/python/wheels/mock-py2_py3"
65 version: "version:2.0.0"
69 name: "infra/python/wheels/numpy/${vpython_platform}"
70 version: "version:1.2x.supported.1"
74 name: "infra/python/wheels/protobuf-py3"
75 version: "version:3.19.3"
78 # requests and its dependencies.
80 name: "infra/python/wheels/requests-py3"
81 version: "version:2.31.0"
84 name: "infra/python/wheels/urllib3-py2_py3"
85 version: "version:1.26.6"
88 name: "infra/python/wheels/idna-py2_py3"
89 version: "version:2.8"
92 name: "infra/python/wheels/certifi-py2_py3"
93 version: "version:2020.11.8"
96 name: "infra/python/wheels/charset_normalizer-py3"
97 version: "version:2.0.4"