Apple ha annunciato il rilascio sotto licenza open source di Swift Build, motore utilizzato da Xcode per la compilazione dei progetti Swift. L'obiettivo è quello di unificare i sistemi di build tra Xcode e il già esistente Swift Package Manager. Il motore di build in Swift PM è infatti molto più semplice rispetto a quello utilizzato da Xcode, cosa che avrebbe generato confusione tra gli utenti in caso di comportamenti non coincidenti tra le due implementazioni.
Swift Build è su GitHub
Swift Build è ora disponibile su GitHub sotto licenza Apache 2.0 e offre plugin per supportare Android, piattaforme Apple, Linux, QNX e Windows. Le caratteristiche del sistema di build includono il supporto per vari tipi di progetti tra cui librerie, applicazioni da riga di comando e GUI. Questo oltre ad ottimizzazioni per massimizzare il parallelismo nella compilazione di codice Swift e C.
Swift PM utilizza il proprio motore di build come impostazione predefinita. È però possibile abilitare il nuovo engine utilizzando il flag --build-system swiftbuild
. Apple intende poi collaborare con gli sviluppatori per completare il lavoro su un motore di esecuzione di build che sia unificato su tutte le piattaforme.
Swift e sviluppo cross-platform
Anche se Swift è ampiamente utilizzato sulle piattaforme Apple, il suo impiego cross-platform risulta ancora limitato. SwiftUI, il framework GUI per Swift, non offre supporto cross-platform al di fuori di iOS, iPadOS, macOS, tvOS e watchOS. L'unificazione del sistema di build potrebbe quindi cambiare le cose perché ad oggi gli sviluppatori utilizzano un sistema di build diverso in Xcode rispetto a quando lavorano con Swift su altre piattaforme.
Un settore in cui Swift ha del potenziale cross-platform è per esempio quello delle applicazioni embedded. Nonostante ciò, a circa dieci anni dalla sua apertura al codice sorgente nel dicembre 2015, Swift rimarrebbe ancora incompleto per quanto riguarda il supporto su più piattaforme.