Haskell
Haskell CI su GitHub Actions
GHC ricompila l'intero albero delle dipendenze su ogni esecuzione CI.
35m → 9m
Costruzione a freddo
35m → 2m
Costruzione calda
Perché succede
Cosa cambiare
- Memorizza nella cache ~/.cabal/store o ~/.stack digitati sul file di blocco o di risoluzione
- Memorizza anche nella cache dist-newstyle o .stack-work per un riutilizzo incrementale
- Appunta esplicitamente la versione GHC: un bump invalida tutto
- Utilizza un runner da 16 vCPU e -j per parallelizzare i pacchetti
Haskell su runnerhut
La tua prossima build potrebbe essere due volte più veloce, a metà prezzo
Inizia gratis. Andarsene è la stessa riga, e pubblichiamo anche quel diff.
Correlati
RustCargo ricostruisce l'intero grafico delle dipendenze su quasi ogni esecuzione CI.VaiLe build Go sono veloci localmente e inspiegabilmente lente in CI.PitoneL'installazione di pip richiede pochi minuti e pytest viene eseguito su un singolo core.Node.jsnpm ci scrive decine di migliaia di piccoli file ad ogni esecuzione.