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/+/master/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/+/master/doc/users/vpython.md
28 # build/chromeos/run_vm_test.py
29 # third_party/catapult
31 # This version must be compatible with the version range specified by
32 # //third_party/catapult/telemetry/telemetry/internal/util/external_modules.py
34 name: "infra/python/wheels/psutil/${vpython_platform}"
35 version: "version:5.2.2"
39 # third_party/catapult
41 # This version must be compatible with the version range specified by
42 # //third_party/catapult/telemetry/telemetry/internal/util/external_modules.py
44 # This version must also be compatible with the "numpy" version, as "cv2"
45 # depends on "numpy". In this case, OpenCV@2.4.13.2 has been built against
48 name: "infra/python/wheels/opencv_python/${vpython_platform}"
49 version: "version:2.4.13.2"
58 platform: "manylinux1_i686"
62 platform: "manylinux1_x86_64"
65 platform: "macosx_10_6_intel"
70 # third_party/catapult
71 # chrome/test/vr/perf/latency/run_latency_test.py
73 # This version must be compatible with the version range specified by
74 # //third_party/catapult/telemetry/telemetry/internal/util/external_modules.py
76 name: "infra/python/wheels/numpy/${vpython_platform}"
77 version: "version:1.11.3"
81 # third_party/catapult
83 name: "infra/python/wheels/pypiwin32/${vpython_platform}"
84 version: "version:219"
94 # tools/perf/fetch_benchmark_deps.py
96 name: "infra/python/wheels/google_compute_engine-py2_py3"
97 version: "version:2.6.2"
100 name: "infra/python/wheels/boto-py2_py3"
101 version: "version:2.48.0"
105 # testing/buildbot/generate_buildbot_json_coveragetest.py
107 name: "infra/python/wheels/coverage/${vpython_platform}"
108 version: "version:4.3.4"
112 # chrome/browser/policy/test/policy_testserver.py
114 name: "infra/python/wheels/protobuf-py2_py3"
115 version: "version:3.2.0"
118 name: "infra/python/wheels/six-py2_py3"
119 version: "version:1.10.0"
122 name: "infra/python/wheels/pyftpdlib-py2_py3"
123 version: "version:0.7.0"
126 name: "infra/python/wheels/simplejson/${vpython_platform}"
127 version: "version:3.13.2"
131 # tools/perf/core/results_dashboard.py
133 name: "infra/python/wheels/httplib2-py2_py3"
134 version: "version:0.10.3"
138 # tools/perf/flakiness_cli
140 name: "infra/python/wheels/pandas/${vpython_platform}"
141 version: "version:0.23.4"
146 platform: "win_amd64"
150 platform: "manylinux1_i686"
154 platform: "manylinux1_x86_64"
157 platform: "macosx_10_6_intel"
161 name: "infra/python/wheels/pytz-py2_py3"
162 version: "version:2018.4"
165 name: "infra/python/wheels/python-dateutil-py2_py3"
166 version: "version:2.7.3"
170 # chrome/test/vr/perf/latency/run_latency_test.py
172 name: "infra/python/wheels/peakutils-py2_py3"
173 version: "version:1.0.3"
176 platform: "manylinux1_i686"
180 platform: "manylinux1_x86_64"
184 name: "infra/python/wheels/pyserial-py2_py3"
185 version: "version:3.4"
188 name: "infra/python/wheels/scipy/${vpython_platform}"
189 version: "version:0.19.0"
192 platform: "manylinux1_i686"
196 platform: "manylinux1_x86_64"
201 # content/test/gpu/gpu_tests/color_profile_manager_mac.py
202 # Note: there's a version of this wheel for even older OS versions,
203 # but we don't need it for the GPU tests, and it looks like there are
204 # bugs in the not_match_tag implementation.
206 name: "infra/python/wheels/pyobjc/${vpython_platform}"
207 version: "version:4.1"
208 match_tag: < platform: "macosx_10_10_intel" >
212 # third_party/catapult
214 name: "infra/python/wheels/six-py2_py3"
215 version: "version:1.10.0"
218 name: "infra/python/wheels/pbr-py2_py3"
219 version: "version:3.0.0"
222 name: "infra/python/wheels/funcsigs-py2_py3"
223 version: "version:1.0.2"
226 name: "infra/python/wheels/mock-py2_py3"
227 version: "version:2.0.0"