Swift
Swift CI na GitHub Actions
Rychlá kontrola typu dominuje době sestavení a mezi běhy se nic znovu nepoužívá.
14m → 4m
Stavět
14m → 70s
Přírůstkové
Rychlá kontrola typu dominuje době sestavení a mezi běhy se nic znovu nepoužívá.
Proč se to děje
Adresář .build SwiftPM a odvozená data Xcode jsou zahozeny, takže každé spuštění kontroluje celý graf modulu.
Co změnit
- Persist .build pro SwiftPM a DerivedData pro projekty Xcode
- Najděte pomalé výrazy pomocí -Xfrontend -warn-long-expression-type-checking=200
- Rozdělte moduly, takže změna jednoho nezruší vše
- Použijte běžec M4 macOS – kompilace Swift je silně citlivá na jedno vlákno
Swift on runnerhut
Jediná řada specifická pro runnerhut je `runs-on: runnerhut-macos-15-m4`. Vše ostatní je standardní GitHub Actions — stejné akce, stejná tajemství a stejný model oprávnění, který používáte dnes.
Váš další build může být dvakrát rychlejší za poloviční cenu
Začněte zdarma. Odchod je tentýž jeden řádek a i ten diff zveřejňujeme.