Simon Willison publica una receta de uvx con caché para GitHub Actions
El desarrollador Simon Willison publicó una receta concisa para ejecutar herramientas uvx en GitHub Actions sin consultar PyPI en cada build. La clave está en la variable UV_EXCLUDE_NEWER, que fija la resolución de paquetes a una fecha concreta; esa misma fecha se usa como clave de caché en GitHub Actions, eliminando la necesidad de mantener un archivo de dependencias separado.
El workflow combina astral-sh/setup-uv con tres ajustes no predeterminados: cache-dependency-glob en blanco, cache-suffix con la fecha UV_EXCLUDE_NEWER y prune-cache en false. Un paso adicional establece UV_OFFLINE=1 en los cache hits, provocando un fallo explícito si alguna herramienta no está en caché. Willison asume el pequeño coste de rendimiento a cambio de eliminar llamadas a la CDN de PyPI — un tradeoff que muchos equipos de ML que usan herramientas como llm o datasette en CI reconocerán de inmediato.