uv/scripts
Zanie Blue 21577ad002
Add bootstrapping and isolation of development Python versions (#1105)
Replaces https://github.com/astral-sh/puffin/pull/1068 and #1070 which
were more complicated than I wanted.

- Introduces a `.python-versions` file which defines the Python versions
needed for development
- Adds a Bash script at `scripts/bootstrap/install` which installs the
required Python versions from `python-build-standalone` to `./bin`
- Checks in a `versions.json` file with metadata about available
versions on each platform and a `fetch-version` Python script derived
from `rye` for updating the versions
- Updates CI to use these Python builds instead of the `setup-python`
action
- Updates to the latest packse scenarios which require Python 3.8+
instead of 3.7+ since we cannot use 3.7 anymore and includes new test
coverage of patch Python version requests
- Adds a `PUFFIN_PYTHON_PATH` variable to prevent lookup of system
Python versions for isolation during development

Tested on Linux (via CI) and macOS (locally) — presumably it will be a
bit more complicated to do proper Windows support.
2024-01-26 12:12:48 -06:00
..
bench Make bench script requirements Poetry-only (#1093) 2024-01-25 09:48:00 -05:00
benchmarks Rename puffin-cli crate to puffin (#976) 2024-01-18 19:02:52 -05:00
bootstrap Add bootstrapping and isolation of development Python versions (#1105) 2024-01-26 12:12:48 -06:00
compare_with_pip Update compare_with_pip.py (#828) 2024-01-08 09:46:30 +00:00
editable-installs Support extras in editable requirements (#1113) 2024-01-26 12:07:51 +00:00
popular_packages Finish install-many with pypi 10k most dependents (#732) 2023-12-27 09:42:51 -05:00
requirements Move Puffin subcommands to a pip namespace (#921) 2024-01-15 16:36:45 +00:00
scenarios Add bootstrapping and isolation of development Python versions (#1105) 2024-01-26 12:12:48 -06:00
wheels Implement --find-links as flat indexes (directories in pip-compile) (#912) 2024-01-15 02:04:10 +00:00