Swift

Pourquoi Apple fait passer Swift Build en open source

Apple avait déjà ouvert la voie en rendant Swift open source dès 2015. Aujourd’hui, la firme de Cupertino va plus loin en libérant Swift Build, le moteur de construction (« build engine ») utilisé par Xcode, son IDE phare. Sous licence Apache 2.0, ce projet rejoint le dépôt officiel de Swift sur GitHub et vise à unifier et améliorer le processus de compilation aussi bien sur macOS qu’au sein des outils et plateformes tiers.

Swift Build s’inscrit comme le chaînon manquant entre le langage Swift, déjà open source, et les environnements de build existants. Concrètement, il se charge de transformer le code source (et la configuration projet) en artefacts finaux : bibliothèques, exécutables, applications graphiques, etc. L’enjeu, pour Apple, consiste à fournir aux équipes de développement et à la communauté un socle commun, performant et extensible, apte à gérer de gros volumes de code Swift et à maximiser le parallélisme dans les compilations.

Unifier SwiftPM et Xcode

Jusqu’ici, l’écosystème Swift Package Manager (SwiftPM) disposait d’un moteur de build plus limité que celui d’Xcode, et certains comportements différaient selon l’outil ou la plateforme. Résultat : confusion pour les utilisateurs et difficulté à proposer de nouvelles fonctionnalités de manière cohérente. Avec l’ouverture de Swift Build et son intégration progressive dans SwiftPM, Apple espère combler ce fossé. À terme, les développeurs Swift devraient bénéficier d’une expérience identique qu’ils compilent depuis Xcode, SwiftPM ou d’autres environnements, sur macOS, Linux ou Windows.

Une meilleure collaboration et de nouveaux usages

En publiant le code sur GitHub et en ouvrant les discussions sur le forum Swift, Apple souhaite encourager les contributions extérieures. Cette transparence permettra de peaufiner la feuille de route évoquée : mise en place d’optimisations supplémentaires, gestion avancée des dépendances, voire prise en charge de nouveaux types de projets. L’ambition est de simplifier radicalement la vie des développeurs Swift, tout en facilitant le “custom build”, l’ajout de règles spécialisées ou l’optimisation pour CI/CD.

Retour en haut