commit | a86a3ece5c7991c3959dee17694c2ea8a51ef2a7 | [log] [tgz] |
---|---|---|
author | Anthony DiGirolamo <tonymd@google.com> | Wed Jul 19 17:04:24 2023 +0000 |
committer | CQ Bot Account <pigweed-scoped@luci-project-accounts.iam.gserviceaccount.com> | Wed Jul 19 17:04:24 2023 +0000 |
tree | 7d8ed30a95480763a3d97c7ca055c07151f7ac4a | |
parent | ed4a2a52130ba58a7a3b1ab934c59eb0209e4570 [diff] |
pw_env_setup: Add Python constraints with hashes - Split some constraints out into their own python_base_requirements.txt file. This contains all packages needed to run pip, wheel, pip-tools. This is installed by default in each pw_python_venv before project 3p deps. - New constraint and requirement files: - `constraint_hashes.list` For downstream project use which contains packges with hashes for these files: - `constraint.list` - `python_base_requirements.txt` - `upstream_requirements_lock.txt` pip-compiled results with hashes for all Upstream Python requirements. This includes these files: - `constraint.list` - `python_base_requirements.txt` - `pigweed_upstream_requirements.txt` Currently this file is only used for Bazel's pip_install step. - Presubmit steps: - check_upstream_python_constraints: Check if constraints need regenerating. - update_upstream_python_constraints: Regenerate all constraint files with hashes. - vendor_python_wheels: Downloads all Python packages to a local path in the out dir. This calls a new top level ninja target which is not run by default. This will download source Python wheels as well as binary wheels for all platforms on Python 3.8, 3.9, 3.10, and 3.11. - Update some old versioned packages that were missing precompiled wheel files for Python 3.11. Bug: b/287302102 Change-Id: I40a0f2c506e363af393c2128c3df683fd7a04487 Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/153470 Commit-Queue: Anthony DiGirolamo <tonymd@google.com> Reviewed-by: Rob Mohr <mohrr@google.com> Reviewed-by: Ted Pudlik <tpudlik@google.com>
Pigweed is an open source collection of embedded-targeted libraries–or as we like to call them, modules. These modules are building blocks and infrastructure that enable faster and more reliable development on small-footprint MMU-less 32-bit microcontrollers like the STMicroelectronics STM32L452 or the Nordic nRF52832.
For more information please see our website: https://pigweed.dev/.