mirror of
https://github.com/astral-sh/uv.git
synced 2025-07-07 13:25:00 +00:00

First, replace all usages in files in-place. I used my editor for this. If someone wants to add a one-liner that'd be fun. Then, update directory and file names: ``` # Run twice for nested directories find . -type d -print0 | xargs -0 rename s/puffin/uv/g find . -type d -print0 | xargs -0 rename s/puffin/uv/g # Update files find . -type f -print0 | xargs -0 rename s/puffin/uv/g ``` Then add all the files again ``` # Add all the files again git add crates git add python/uv # This one needs a force-add git add -f crates/uv-trampoline ```
39 lines
1.1 KiB
Bash
Executable file
39 lines
1.1 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
###
|
|
# Benchmark the installer against `pip`.
|
|
#
|
|
# Example usage:
|
|
#
|
|
# ./scripts/benchmarks/sync.sh ./scripts/benchmarks/requirements.txt
|
|
###
|
|
|
|
set -euxo pipefail
|
|
|
|
TARGET=${1}
|
|
|
|
###
|
|
# Installation with a cold cache.
|
|
###
|
|
hyperfine --runs 20 --warmup 3 \
|
|
--prepare "virtualenv --clear .venv" \
|
|
"./target/release/uv pip sync ${TARGET} --no-cache" \
|
|
--prepare "rm -rf /tmp/site-packages" \
|
|
"pip install -r ${TARGET} --target /tmp/site-packages --no-cache-dir --no-deps"
|
|
|
|
###
|
|
# Installation with a warm cache, similar to blowing away and re-creating a virtual environment.
|
|
###
|
|
hyperfine --runs 20 --warmup 3 \
|
|
--prepare "virtualenv --clear .venv" \
|
|
"./target/release/uv pip sync ${TARGET}" \
|
|
--prepare "rm -rf /tmp/site-packages" \
|
|
"pip install -r ${TARGET} --target /tmp/site-packages --no-deps"
|
|
|
|
###
|
|
# Installation with all dependencies already installed (no-op).
|
|
###
|
|
hyperfine --runs 20 --warmup 3 \
|
|
--setup "virtualenv --clear .venv && source .venv/bin/activate" \
|
|
"./target/release/uv pip sync ${TARGET}" \
|
|
"pip install -r ${TARGET} --no-deps"
|