Sabato 24 ottobre 2026
L’edizione di oggi
Millebit
AI · Software · QA
Il segnale, non il rumore.

Gli articoli di Millebit sono scritti con l’intelligenza artificiale a partire da fonti citate in ogni pezzo. Come lavoriamo

Sviluppo software

Trucco cache-friendly per uvx in GitHub Actions: usare UV_EXCLUDE_NEWER

Testo scritto con l’intelligenza artificiale a partire da una fonte citata, senza revisione umana prima della pubblicazione.

Impostare UV_EXCLUDE_NEWER="2026-07-12" all'inizio del workflow e metterla nella chiave di cache evita download ripetuti da PyPI.

Illustrazione generata con l’intelligenza artificiale

Simon Willison suggerisce di fissare UV_EXCLUDE_NEWER con una data e di includerla nella chiave di cache di GitHub Actions. Così i comandi uvx risolvono gli strumenti “as-of” quella data e aggiornano solo quando alzi la soglia temporale1.

Il post è del 14 luglio 2026. Il fulcro è una variabile d’ambiente: UV_EXCLUDE_NEWER. La imposti a una data precisa. La inserisci nella chiave di cache. uvx seleziona la versione più recente valida a quella data e smette di interrogare PyPI a ogni run per cercare novità irrilevanti rispetto alla soglia fissata1.

Il meccanismo è lineare:

  • fissi la data in UV_EXCLUDE_NEWER (es. “2026-07-12”);
  • includi la stessa data nella chiave di cache;
  • uvx risolve e usa gli artefatti coerenti con quella data;
  • quando alzi la data, la chiave cambia, la cache si invalida e uvx ricalcola le versioni “as-of” il nuovo valore1.

Esempio minimo di chiave che incorpora la data:

  • UV_EXCLUDE_NEWER=2026-07-12
  • chiave di cache: uvx-2026-07-12

Questo schema riduce traffico verso PyPI e rende prevedibile l’aggiornamento degli strumenti invocati con uvx nei workflow. Il vantaggio pratico è chiaro: eviti che ogni esecuzione scarichi di nuovo lo strumento e le sue dipendenze, ma puoi forzare un refresh quando serve, modificando una sola variabile1.

Niente pin rigidi, niente lock file extra. Solo una data come interruttore. Finché non la tocchi, restano stabili sia la risoluzione di uvx sia la cache di GitHub Actions collegata a quella chiave. Quando decidi di muovere la finestra temporale, basta alzare la data. uvx allora prende le versioni più recenti compatibili con il nuovo “as-of” e la cache si ricostruisce in modo pulito1.

Il contesto è l’uso di uvx tool-name nei workflow. La semantica “as-of” di UV_EXCLUDE_NEWER agisce da soglia temporale, mentre la chiave di cache che replica la data governa riuso e invalidazione. Insieme, rispondono all’esigenza esplicita: evitare download e risoluzioni ripetute a ogni run, senza rinunciare a un upgrade controllato quando serve1.

Nel post, Willison elenca anche altri articoli recenti pubblicati sul suo sito: “The new GPT-5.6 family: Luna, Terra, Sol” del 9 luglio 2026; “sqlite-utils 4.0, now with database schema migrations” del 7 luglio 2026; “sqlite-utils 4.0rc2, mostly written by Claude Fable (for about $149.25)” del 5 luglio 20261.

Regola pratica: alza la data solo quando vuoi aggiornare gli strumenti e rigenerare la cache. È un singolo cambio che coordina upgrade e invalidazione, senza sorprese tra una run e l’altra1.

Fonti

  1. Using uvx in GitHub Actions in a cache-friendly way Simon Willison · 14 luglio 2026
Come è nato questo articolo Scritto da un sistema di intelligenza artificiale, con controlli automatici

Millebit non ha giornalisti che scrivono gli articoli: li scrive un motore editoriale basato su modelli di intelligenza artificiale, a partire dalle fonti elencate qui sopra. Prima di uscire, ogni testo passa questi controlli:

  • Fedeltà alle fonti. Un secondo passaggio toglie ogni affermazione che le fonti non sostengono.
  • Anti-cliché. Un filtro scarta frasi fatte, enfasi e tic della prosa artificiale.
  • Giudizio editoriale. Un modello valuta il pezzo su sette criteri (apertura, chiarezza, economia, concretezza, voce, struttura, fedeltà) e sotto 7,8/10 non si pubblica.

I controlli riducono gli errori ma non li eliminano: un modello può fraintendere una fonte. Per le decisioni importanti, risali alla fonte originale. Se trovi un errore, segnalacelo.

Come funziona Millebit, nel dettaglio →

Hai trovato un errore? Segnalacelo
Tipo di segnalazione

Leggiamo ogni segnalazione. Le correzioni fatte sono elencate in Correzioni. L’email, se la lasci, serve solo a risponderti.