airspeed-velocity / asv

Airspeed Velocity: A simple Python benchmarking tool with web-based reporting
https://asv.readthedocs.io/
BSD 3-Clause "New" or "Revised" License
875 stars 180 forks source link

Request: Add `uv` as an environment type #1433

Open catanzaromj opened 2 months ago

catanzaromj commented 2 months ago

Thanks for the awesome package!

I'm wondering if anyone has come across the uv package handler. In addition to package dependency resolution speed, it is also optimized for quick iteration of python environments, so that they can be built, re-built, cached (so they're only re-built when required), etc, as well as for running single file scripts, much like the contents of the benchmarks directory. It seems like asv and uv might be a great fit.

Is there any interest in expanding asv to allow for a uv environment type?

HaoZeke commented 2 months ago

Thanks for bringing this up! I think it'd be a good idea, but perhaps it would work better as a plugin? I'm looking to reduce the functionality of the main repository; though I haven't yet thought too much about the design of the "resolvers", and we have (IMO) too many already, virtualenv (now the default, and dependencies come with asv) along with mamba (which has its own dependencies) and conda (which is basically driven by subprocess.

pauloxnet commented 2 weeks ago

@catanzaromj thanks for suggesting this, I came here to do exactly the same, but I agree with the @HaoZeke plan.