使用uv运行pre-commit
项目描述
pre-commit-uv
使用uv
为pre-commit
创建虚拟环境和安装软件包。
安装
使用pipx
pipx install pre-commit
pipx inject pre-commit pre-commit-uv
使用uv
uv tool install pre-commit --with pre-commit-uv --force-reinstall
为什么?
与上游的 pre-commit
相比,将加速初始种子操作。通常,上游建议缓存 pre-commit
缓存,然而,这并不总是可能,但拥有一个更高效的初始缓存创建仍然是很有帮助的。以下是在本项目自己的 pre-commit 设置(带有一个热的 uv
缓存)上可能期望的示例。
❯ hyperfine 'pre-commit install-hooks' 'pre-commit-uv install-hooks'
Benchmark 1: pre-commit install-hooks
Time (mean ± σ): 54.132 s ± 8.827 s [User: 15.424 s, System: 9.359 s]
Range (min … max): 45.972 s … 66.506 s 10 runs
Benchmark 2: pre-commit-uv install-hooks
Time (mean ± σ): 41.695 s ± 7.395 s [User: 7.614 s, System: 6.133 s]
Range (min … max): 32.198 s … 58.467 s 10 runs
Summary
pre-commit-uv install-hooks ran 1.30 ± 0.31 times faster than pre-commit install-hooks
配置
一旦安装,将默认使用 uv
,但如果设置了 DISABLE_PRE_COMMIT_UV_PATCH
环境变量,它将作为逃生舱来禁用新行为。
为了避免补丁时的解释器启动开销,我们只在检测到您调用 pre-commit
时才执行此操作。如果此逻辑失败,您可以通过设置 FORCE_PRE_COMMIT_UV_PATCH
变量来强制进行补丁。如果您遇到这种情况,请提交一个包含 sys.argv
内容的问题。请注意,如果两个都设置了,DISABLE_PRE_COMMIT_UV_PATCH
将会覆盖此标志。
项目详情
关闭
pre_commit_uv-4.1.3.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3102dc8ac5abe2b26622c09fcc5396c80e23503a1e9bde24de25f29e23c8098b |
|
MD5 | ac2e733be2fe621adf8d47d56bda0f80 |
|
BLAKE2b-256 | 31f7fc6193f5884a987dbbd3cc04e514c1789e4f896e2c488fd1594d2807b5ed |
关闭
pre_commit_uv-4.1.3-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 2143c78cdf7797c17e8e344dfcfb83b27b3fad051a9aeb432f82c31e09678860 |
|
MD5 | 484b70e9aeebbc33caebecae7d7578fa |
|
BLAKE2b-256 | 66c6cec7fc1d018832add6221254408a7f11165224e79edd32a1601bcabc395b |