11cb0ef41Sopenharmony_ci# This is a vpython "spec" file.
21cb0ef41Sopenharmony_ci#
31cb0ef41Sopenharmony_ci# It describes patterns for python wheel dependencies of the python scripts in
41cb0ef41Sopenharmony_ci# the chromium repo, particularly for dependencies that have compiled components
51cb0ef41Sopenharmony_ci# (since pure-python dependencies can be easily vendored into third_party).
61cb0ef41Sopenharmony_ci#
71cb0ef41Sopenharmony_ci# When vpython is invoked, it finds this file and builds a python VirtualEnv,
81cb0ef41Sopenharmony_ci# containing all of the dependencies described in this file, fetching them from
91cb0ef41Sopenharmony_ci# CIPD (the "Chrome Infrastructure Package Deployer" service). Unlike `pip`,
101cb0ef41Sopenharmony_ci# this never requires the end-user machine to have a working python extension
111cb0ef41Sopenharmony_ci# compilation environment. All of these packages are built using:
121cb0ef41Sopenharmony_ci#   https://chromium.googlesource.com/infra/infra/+/main/infra/tools/dockerbuild/
131cb0ef41Sopenharmony_ci#
141cb0ef41Sopenharmony_ci# All python scripts in the repo share this same spec, to avoid dependency
151cb0ef41Sopenharmony_ci# fragmentation.
161cb0ef41Sopenharmony_ci#
171cb0ef41Sopenharmony_ci# If you have depot_tools installed in your $PATH, you can invoke python scripts
181cb0ef41Sopenharmony_ci# in this repo by running them as you normally would run them, except
191cb0ef41Sopenharmony_ci# substituting `vpython` instead of `python` on the command line, e.g.:
201cb0ef41Sopenharmony_ci#   vpython path/to/script.py some --arguments
211cb0ef41Sopenharmony_ci#
221cb0ef41Sopenharmony_ci# Read more about `vpython` and how to modify this file here:
231cb0ef41Sopenharmony_ci#   https://chromium.googlesource.com/infra/infra/+/main/doc/users/vpython.md
241cb0ef41Sopenharmony_ci
251cb0ef41Sopenharmony_cipython_version: "3.8"
261cb0ef41Sopenharmony_ci
271cb0ef41Sopenharmony_ci# The default set of platforms vpython checks does not yet include mac-arm64.
281cb0ef41Sopenharmony_ci# Setting `verify_pep425_tag` to the list of platforms we explicitly must support
291cb0ef41Sopenharmony_ci# allows us to ensure that vpython specs stay mac-arm64-friendly
301cb0ef41Sopenharmony_civerify_pep425_tag: [
311cb0ef41Sopenharmony_ci    {python: "cp38", abi: "cp38", platform: "manylinux1_x86_64"},
321cb0ef41Sopenharmony_ci    {python: "cp38", abi: "cp38", platform: "linux_arm64"},
331cb0ef41Sopenharmony_ci
341cb0ef41Sopenharmony_ci    {python: "cp38", abi: "cp38", platform: "macosx_10_10_intel"},
351cb0ef41Sopenharmony_ci    {python: "cp38", abi: "cp38", platform: "macosx_11_0_arm64"},
361cb0ef41Sopenharmony_ci
371cb0ef41Sopenharmony_ci    {python: "cp38", abi: "cp38", platform: "win32"},
381cb0ef41Sopenharmony_ci    {python: "cp38", abi: "cp38", platform: "win_amd64"}
391cb0ef41Sopenharmony_ci]
401cb0ef41Sopenharmony_ci
411cb0ef41Sopenharmony_ci# TODO(https://crbug.com/898348): Add in necessary wheels as Python3 versions
421cb0ef41Sopenharmony_ci# become available.
431cb0ef41Sopenharmony_ciwheel: <
441cb0ef41Sopenharmony_ci  name: "infra/python/wheels/six-py2_py3"
451cb0ef41Sopenharmony_ci  version: "version:1.15.0"
461cb0ef41Sopenharmony_ci>
471cb0ef41Sopenharmony_ci
481cb0ef41Sopenharmony_ciwheel: <
491cb0ef41Sopenharmony_ci  name: "infra/python/wheels/coverage/${vpython_platform}"
501cb0ef41Sopenharmony_ci  version: "version:5.5.chromium.2"
511cb0ef41Sopenharmony_ci>
521cb0ef41Sopenharmony_ci
531cb0ef41Sopenharmony_ciwheel: <
541cb0ef41Sopenharmony_ci name: "infra/python/wheels/pbr-py2_py3"
551cb0ef41Sopenharmony_ci version: "version:3.0.0"
561cb0ef41Sopenharmony_ci>
571cb0ef41Sopenharmony_ci
581cb0ef41Sopenharmony_ciwheel: <
591cb0ef41Sopenharmony_ci name: "infra/python/wheels/funcsigs-py2_py3"
601cb0ef41Sopenharmony_ci version: "version:1.0.2"
611cb0ef41Sopenharmony_ci>
621cb0ef41Sopenharmony_ci
631cb0ef41Sopenharmony_ciwheel: <
641cb0ef41Sopenharmony_ci  name: "infra/python/wheels/mock-py2_py3"
651cb0ef41Sopenharmony_ci  version: "version:2.0.0"
661cb0ef41Sopenharmony_ci>
671cb0ef41Sopenharmony_ci
681cb0ef41Sopenharmony_ciwheel: <
691cb0ef41Sopenharmony_ci  name: "infra/python/wheels/numpy/${vpython_platform}"
701cb0ef41Sopenharmony_ci  version: "version:1.2x.supported.1"
711cb0ef41Sopenharmony_ci>
72