[go: up one dir, main page]

blob: bdb3aa2e9504d2b9a979a570ab35e26cd9e7787c [file] [log] [blame]
Jamie Madillb99bbba2020-09-13 14:34:541# This is a vpython "spec" file.
2#
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).
6#
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:
Jamie Madille1bc8de2021-09-08 11:59:3712# https://chromium.googlesource.com/infra/infra/+/main/infra/tools/dockerbuild/
Jamie Madillb99bbba2020-09-13 14:34:5413#
14# All python scripts in the repo share this same spec, to avoid dependency
15# fragmentation.
16#
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
21#
22# Read more about `vpython` and how to modify this file here:
Jamie Madille1bc8de2021-09-08 11:59:3723# https://chromium.googlesource.com/infra/infra/+/main/doc/users/vpython.md
Jamie Madillb99bbba2020-09-13 14:34:5424
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:0225python_version: "3.11"
Jamie Madillb99bbba2020-09-13 14:34:5426
Roman Lavrov8fe5fd52022-08-17 18:44:2127# Used by:
28# build/android/pylib/local/emulator/avd.py
29wheel: <
30 name: "infra/python/wheels/protobuf-py3"
31 version: "version:3.20.0"
32>
33
Jamie Madillb99bbba2020-09-13 14:34:5434# TODO(https://crbug.com/898348): Add in necessary wheels as Python3 versions
35# become available.
36wheel: <
37 name: "infra/python/wheels/six-py2_py3"
Jamie Madille0b4cf62021-11-26 15:23:2438 version: "version:1.15.0"
Jamie Madillb99bbba2020-09-13 14:34:5439>
Jamie Madill60d76ec2021-06-25 21:35:2240
Roman Lavrov8fe5fd52022-08-17 18:44:2141# These wheels are necessary to run pytype, i.e. enforce Python 3 type hinting.
42# We currently use 2021.11.2 instead of the 2022.5.5 available in CIPD because
43# 2022.5.5 seems to have issues when analyzing code that imports the asyncio
44# module. 2021.11.2 only has Linux wheels available, so restrict to that
45# platform.
46wheel: <
47 name: "infra/python/wheels/pytype/${vpython_platform}"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:0248 version: "version:2024.9.13"
Roman Lavrov8fe5fd52022-08-17 18:44:2149 match_tag: <
50 platform: "manylinux1_x86_64"
51 >
52>
53wheel: <
54 name: "infra/python/wheels/importlab-py3"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:0255 version: "version:0.8.1"
Roman Lavrov8fe5fd52022-08-17 18:44:2156 match_tag: <
57 platform: "manylinux1_x86_64"
58 >
59>
60wheel: <
61 name: "infra/python/wheels/networkx-py3"
62 version: "version:2.5"
63 match_tag: <
64 platform: "manylinux1_x86_64"
65 >
66>
67wheel: <
68 name: "infra/python/wheels/decorator-py3"
69 version: "version:5.0.9"
70 match_tag: <
71 platform: "manylinux1_x86_64"
72 >
73>
74wheel: <
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:0275 name: "infra/python/wheels/libcst/${vpython_platform}"
76 version: "version:1.1.0"
Roman Lavrov8fe5fd52022-08-17 18:44:2177>
78wheel: <
79 name: "infra/python/wheels/pyyaml/${vpython_platform}"
80 version: "version:5.4.1.chromium.1"
81 match_tag: <
82 platform: "manylinux1_x86_64"
83 >
84>
85wheel: <
86 name: "infra/python/wheels/typing-inspect-py3"
87 version: "version:0.7.1"
88 match_tag: <
89 platform: "manylinux1_x86_64"
90 >
91>
92wheel: <
93 name: "infra/python/wheels/typing-extensions-py3"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:0294 version: "version:4.14.0"
Roman Lavrov8fe5fd52022-08-17 18:44:2195>
96wheel: <
97 name: "infra/python/wheels/tabulate-py3"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:0298 version: "version:0.9.0"
Roman Lavrov8fe5fd52022-08-17 18:44:2199 match_tag: <
100 platform: "manylinux1_x86_64"
101 >
102>
103wheel: <
104 name: "infra/python/wheels/ninja/${vpython_platform}"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02105 version: "version:1.10.2.4.chromium.1"
Roman Lavrov8fe5fd52022-08-17 18:44:21106 match_tag: <
107 platform: "manylinux1_x86_64"
108 >
109>
110wheel: <
111 name: "infra/python/wheels/mypy-extensions-py3"
112 version: "version:0.4.3"
Roman Lavrov8fe5fd52022-08-17 18:44:21113>
114
115# Common utilities.
116# Use the same versions specified by //third_party/catapult/.vpython3 so that
117# Chromium tests using Telemetry function properly.
118wheel: <
119 name: "infra/python/wheels/numpy/${vpython_platform}"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02120 version: "version:1.23.5.chromium.4"
Roman Lavrov8fe5fd52022-08-17 18:44:21121>
122wheel: <
123 name: "infra/python/wheels/pexpect/${vpython_platform}"
124 version: "version:4.8.0.chromium.1"
125>
Jamie Madill60d76ec2021-06-25 21:35:22126wheel: <
127 name: "infra/python/wheels/psutil/${vpython_platform}"
Roman Lavrov8fe5fd52022-08-17 18:44:21128 version: "version:5.8.0.chromium.3"
129>
130wheel: <
Brian Sheedy1a1ee212023-05-31 23:28:31131 name: "infra/python/wheels/requests-py3"
132 version: "version:2.31.0"
Roman Lavrov8fe5fd52022-08-17 18:44:21133>
134wheel: <
135 name: "infra/python/wheels/pillow/${vpython_platform}"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02136 version: "version:10.4.0"
Roman Lavrov8fe5fd52022-08-17 18:44:21137 # There is currently no Linux arm/arm64 version in CIPD.
138 not_match_tag <
139 platform: "linux_aarch64"
140 >
141>
142wheel: <
143 name: "infra/python/wheels/opencv_python/${vpython_platform}"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02144 version: "version:4.8.1.78.chromium.1"
Roman Lavrov8fe5fd52022-08-17 18:44:21145 # There is currently no Linux arm/arm64 version in CIPD.
146 not_match_tag <
147 platform: "linux_aarch64"
148 >
149>
150
151# Used by various python unit tests.
152wheel: <
153 name: "infra/python/wheels/mock-py2_py3"
154 version: "version:2.0.0"
155>
156wheel: <
157 name: "infra/python/wheels/parameterized-py2_py3"
158 version: "version:0.7.1"
159>
160wheel: <
161 name: "infra/python/wheels/pbr-py2_py3"
162 version: "version:3.0.0"
163>
164
165wheel: <
166 name: "infra/python/wheels/pyfakefs-py2_py3"
167 version: "version:3.7.2"
168>
169
170# Used by:
171# build/chromeos/test_runner.py
172wheel: <
173 name: "infra/python/wheels/jsonlines-py2_py3"
174 version: "version:1.2.0"
175>
176wheel: <
177 name: "infra/python/wheels/python-dateutil-py2_py3"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02178 version: "version:2.9.0"
Roman Lavrov8fe5fd52022-08-17 18:44:21179>
180
181# Used by WPT importer
182wheel: <
183 name: "infra/python/wheels/charset_normalizer-py3"
184 version: "version:2.0.4"
185>
186wheel: <
187 name: "infra/python/wheels/pyasn1-py2_py3"
188 version: "version:0.4.5"
189>
190wheel: <
191 name: "infra/python/wheels/pyasn1_modules-py2_py3"
192 version: "version:0.2.4"
193>
194wheel: <
195 name: "infra/python/wheels/rsa-py2_py3"
196 version: "version:3.4.2"
197>
198wheel: <
199 name: "infra/python/wheels/cachetools-py2_py3"
200 version: "version:2.0.1"
201>
202wheel: <
203 name: "infra/python/wheels/uritemplate-py2_py3"
204 version: "version:3.0.0"
205>
206wheel: <
207 name: "infra/python/wheels/google-auth-py2_py3"
208 version: "version:1.25.0"
209>
210wheel: <
211 name: "infra/python/wheels/googleapis-common-protos-py2_py3"
212 version: "version:1.52.0"
213>
214wheel: <
215 name: "infra/python/wheels/google-api-core-py3"
216 version: "version:1.31.5"
217>
218wheel: <
219 name: "infra/python/wheels/google-auth-httplib2-py2_py3"
220 version: "version:0.1.0"
221>
222wheel: <
223 name: "infra/python/wheels/google-api-python-client-py3"
224 version: "version:2.2.0"
225>
226wheel: <
227 name: "infra/python/wheels/oauth2client-py2_py3"
228 version: "version:3.0.0"
229>
230
231# Used by:
232# //third_party/blink/tools/wpt_upload.py
233wheel: <
234 name: "infra/python/wheels/crcmod/${vpython_platform}"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02235 version: "version:1.7.chromium.4"
Roman Lavrov8fe5fd52022-08-17 18:44:21236>
237
238wheel: <
239 name: "infra/python/wheels/grpcio/${vpython_platform}"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02240 version: "version:1.69.0"
Roman Lavrov8fe5fd52022-08-17 18:44:21241>
242
243wheel: <
244 name: "infra/python/wheels/grpc-google-iam-v1-py3"
245 version: "version:0.12.3"
246>
247
248wheel: <
249 name: "infra/python/wheels/proto-plus-py3"
250 version: "version:1.20.3"
251>
252
253wheel: <
254 name: "infra/python/wheels/google-cloud-kms-py3"
255 version: "version:2.11.1"
256>
257
258# Used by Web Platform Tests (WPT) codebase in
259# //third_party/wpt_tools
260wheel: <
261 name: "infra/python/wheels/html5lib-py2_py3"
262 version: "version:1.0.1"
263>
264wheel: <
265 name: "infra/python/wheels/mozdebug-py3"
266 version: "version:0.3.0"
267>
268wheel: <
269 name: "infra/python/wheels/mozinfo-py2_py3"
270 version: "version:1.2.2"
271>
272wheel: <
273 name: "infra/python/wheels/mozlog-py2_py3"
274 version: "version:7.1.0"
275>
276wheel: <
277 name: "infra/python/wheels/mozprocess-py3"
278 version: "version:1.3.0"
279>
280wheel: <
281 name: "infra/python/wheels/urllib3-py2_py3"
282 version: "version:1.24.3"
283>
284wheel: <
285 name: "infra/python/wheels/blessings-py2_py3"
286 version: "version:1.7"
287>
288wheel: <
289 name: "infra/python/wheels/mozfile-py2_py3"
290 version: "version:2.0.0"
291>
292wheel: <
293 name: "infra/python/wheels/mozterm-py2_py3"
294 version: "version:1.0.0"
295>
296wheel: <
297 name: "infra/python/wheels/webencodings-py2_py3"
298 version: "version:0.5.1"
299>
300wheel: <
301 name: "infra/python/wheels/certifi-py2_py3"
302 version: "version:2020.11.8"
303>
304wheel: <
305 name: "infra/python/wheels/chardet-py2_py3"
306 version: "version:3.0.4"
307>
308wheel: <
309 name: "infra/python/wheels/idna-py2_py3"
310 version: "version:2.8"
311>
312wheel: <
313 name: "infra/python/wheels/distro-py2_py3"
314 version: "version:1.4.0"
315>
316wheel: <
317 name: "infra/python/wheels/aioquic/${vpython_platform}"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02318 version: "version:1.2.0.chromium.1"
Roman Lavrov8fe5fd52022-08-17 18:44:21319>
320wheel: <
321 name: "infra/python/wheels/pylsqpack/${vpython_platform}"
322 version: "version:0.3.12"
323>
324wheel: <
325 name: "infra/python/wheels/cryptography/${vpython_platform}"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02326 version: "version:43.0.0"
Roman Lavrov8fe5fd52022-08-17 18:44:21327>
328wheel: <
329 name: "infra/python/wheels/cffi/${vpython_platform}"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02330 version: "version:1.15.1.chromium.2"
Roman Lavrov8fe5fd52022-08-17 18:44:21331>
332wheel: <
333 name: "infra/python/wheels/pycparser-py2_py3"
334 version: "version:2.19"
335>
336wheel: <
337 name: "infra/python/wheels/ecdsa-py2_py3"
338 version: "version:0.17.0"
339>
340
341# Used by:
342# chrome/test/chromedriver/test/run_webdriver_tests.py
343wheel: <
344 name: "infra/python/wheels/iniconfig-py3"
345 version: "version:1.1.1"
346>
347
348wheel: <
349 name: "infra/python/wheels/packaging-py2_py3"
350 version: "version:16.8"
351>
352
353wheel: <
354 name: "infra/python/wheels/pyparsing-py2_py3"
355 version: "version:2.4.7"
356>
357
358wheel: <
359 name: "infra/python/wheels/toml-py3"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02360 version: "version:0.10.2"
Roman Lavrov8fe5fd52022-08-17 18:44:21361>
362
363wheel <
364 name: "infra/python/wheels/pytest-py3"
365 version: "version:6.2.2"
366>
367
368wheel <
369 name: "infra/python/wheels/pytest-asyncio-py3"
370 version: "version:0.14.0"
371>
372
373wheel <
374 name: "infra/python/wheels/attrs-py2_py3"
375 version: "version:21.4.0"
376>
377
378wheel <
379 name: "infra/python/wheels/six-py2_py3"
380 version: "version:1.15.0"
381>
382
383wheel <
384 name: "infra/python/wheels/more-itertools-py2_py3"
385 version: "version:4.1.0"
386>
387
388wheel <
389 name: "infra/python/wheels/pluggy-py3"
390 version: "version:0.13.1"
391>
392
393wheel <
394 name: "infra/python/wheels/py-py2_py3"
395 version: "version:1.10.0"
396>
397
398wheel <
399 name: "infra/python/wheels/funcsigs-py2_py3"
400 version: "version:1.0.2"
401>
402
403wheel: <
404 name: "infra/python/wheels/atomicwrites-py2_py3"
405 version: "version:1.3.0"
406>
407
408wheel: <
409 name: "infra/python/wheels/colorama-py2_py3"
410 version: "version:0.4.1"
411>
412
413# Used by:
414# testing/buildbot/generate_buildbot_json_coveragetest.py
415wheel: <
416 name: "infra/python/wheels/coverage/${vpython_platform}"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02417 version: "version:7.3.1"
Roman Lavrov8fe5fd52022-08-17 18:44:21418>
419
420# Used by:
421# //content/test/gpu
422wheel: <
423 name: "infra/python/wheels/pathos/${vpython_platform}"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02424 version: "version:0.3.0.chromium.2"
Roman Lavrov8fe5fd52022-08-17 18:44:21425 not_match_tag <
426 abi: "cp27mu"
427 platform: "manylinux1_i686"
428 >
429 not_match_tag <
430 abi: "cp27mu"
431 platform: "linux_mips64"
432 >
433 not_match_tag <
434 abi: "cp27mu"
435 platform: "linux_armv6l"
436 >
437 not_match_tag <
438 abi: "cp27mu"
439 platform: "linux_armv7l"
440 >
441>
442
443wheel: <
444 name: "infra/python/wheels/websockets-py3"
445 version: "version:10.1"
446>
447
448# Used by:
449# //tools/infra/find_bad_builds.py
450wheel: <
451 name: "infra/python/wheels/pytz-py2_py3"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02452 version: "version:2024.1"
Roman Lavrov8fe5fd52022-08-17 18:44:21453>
454
455# Used by:
456# //third_party/blink/tools/blinkpy/web_tests/port/server_process.py
457wheel: <
458 name: "infra/python/wheels/pywin32/${vpython_platform}"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02459 version: "version:308"
Roman Lavrov8fe5fd52022-08-17 18:44:21460 match_tag: <
461 platform: "win32"
462 >
463 match_tag: <
464 platform: "win_amd64"
465 >
466>
467
468# Used by:
469# //content/test/gpu/gpu_tests/color_profile_manager_mac.py
470wheel: <
471 name: "infra/python/wheels/pyobjc/${vpython_platform}"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02472 version: "version:10.0"
Roman Lavrov8fe5fd52022-08-17 18:44:21473 match_tag: <
474 platform: "macosx_10_10_intel"
475 >
476 match_tag: <
477 platform: "macosx_11_0_arm64"
478 >
479>
480
481# Used by:
482# tools/perf/core/results_dashboard.py
483wheel: <
484 name: "infra/python/wheels/httplib2-py3"
485 version: "version:0.19.1"
486>
487
488# Used by:
489# tools/perf/flakiness_cli
490wheel: <
491 name: "infra/python/wheels/pandas/${vpython_platform}"
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02492 version: "version:2.2.3.chromium.1"
Roman Lavrov8fe5fd52022-08-17 18:44:21493 not_match_tag: <
494 platform: "linux_aarch64"
495 >
496>
497
498# Used by:
499# testing/script/run_variations_smoke_tests.py
500wheel: <
501 name: "infra/python/wheels/selenium-py3"
502 version: "version:3.14.0"
Jamie Madill60d76ec2021-06-25 21:35:22503>
Jamie Madill41184c22022-09-29 14:50:39504
505# Used by meson
506wheel: <
507 name: "infra/python/wheels/markupsafe/${vpython_platform}"
508 version: "version:2.0.1"
509>
510
511wheel: <
512 name: "infra/python/wheels/mako-py3"
513 version: "version:1.2.3"
514>
Victor Hugo Vianna Silva0eb8d8c2025-09-03 14:13:02515
516wheel: <
517 name: "infra/python/wheels/immutabledict-py3"
518 version: "version:4.1.0"
519>
520
521wheel: <
522 name: "infra/python/wheels/jinja2-py3"
523 version: "version:3.1.2"
524>
525
526wheel: <
527 name: "infra/python/wheels/msgspec/${vpython_platform}"
528 version: "version:0.18.6"
529>
530
531wheel: <
532 name: "infra/python/wheels/pycnite-py3"
533 version: "version:2024.07.31"
534>
535
536wheel: <
537 name: "infra/python/wheels/pydot-py2_py3"
538 version: "version:1.4.2"
539>
540
541wheel: <
542 name: "infra/python/wheels/pyopenssl-py3"
543 version: "version:24.2.1"
544>
545
546wheel: <
547 name: "infra/python/wheels/service-identity-py3"
548 version: "version:24.1.0"
549>
550
551wheel: <
552 name: "infra/python/wheels/typing-inspect-py3"
553 version: "version:0.7.1"
554>
555
556wheel: <
557 name: "infra/python/wheels/pyyaml/${vpython_platform}"
558 version: "version:5.4.1.chromium.1"
559>
560
561wheel: <
562 name: "infra/python/wheels/tzdata-py2_py3"
563 version: "version:2023.4"
564>