2 points par GN⁺ 2026-03-28 | Aucun commentaire pour le moment. | Partager sur WhatsApp
  • Le langage, la bibliothèque standard, le système de build et la prise en charge des plateformes s’enrichissent, avec une meilleure expérience développeur
  • Interopérabilité renforcée avec C, ajout d’un SDK officiel pour Android, améliorations pour l’embarqué et extension de l’outil de documentation DocC figurent parmi les principaux changements
  • Swift Package Manager améliore la cohérence des builds multiplateformes grâce à un moteur de build unifié et à la prise en charge de Swift Syntax précompilé
  • Swift Testing ajoute de nouvelles fonctionnalités comme l’enregistrement de problèmes au niveau avertissement, l’annulation de tests et les pièces jointes d’images, pour plus de flexibilité dans les tests
  • Le lancement officiel du SDK Android élargit le champ du développement multiplateforme de Swift et permet l’intégration avec des apps Kotlin/Java

Principales mises à jour de Swift 6.3

  • Swift 6.3 apporte des fonctionnalités étendues dans le langage, la bibliothèque standard, le système de build et la prise en charge des plateformes
  • Interopérabilité renforcée avec C, ajout d’un SDK officiel pour Android, améliorations pour l’embarqué et extension de l’outil de documentation DocC sont les changements clés
  • L’objectif est d’améliorer l’expérience développeur et de renforcer l’intégration du développement multiplateforme

Langage et bibliothèque standard

  • Interopérabilité C

    • Le nouvel attribut @c permet d’exposer des fonctions Swift ou des enum à du code C
    • La forme @c(MyLibrary_callFromC) permet de définir un nom de déclaration C personnalisé
    • L’utilisation conjointe de @c et @implementation permet d’implémenter en Swift des fonctions déclarées dans des en-têtes C
    • Dans cette configuration, Swift vérifie la correspondance avec les déclarations C existantes
  • Sélecteurs de nom de module (Module Name Selectors)

    • Lors de l’import d’API portant le même nom depuis plusieurs modules, il est possible d’effectuer un appel qualifié par module sous la forme ModuleA::getValue()
    • La syntaxe Swift::Task permet d’accéder aux API de concurrency et de traitement des chaînes
  • Contrôle des performances des API de bibliothèque

    • @specialize : fournit une implémentation spécialisée à l’avance pour des types spécifiques d’une API générique
    • @inline(always) : force l’inlining afin d’étendre le corps de la fonction au point d’appel
    • @export(implementation) : expose l’implémentation de la fonction dans les bibliothèques stables ABI pour autoriser des optimisations supplémentaires
    • Les propositions associées sont consultables sur le tableau de bord Swift Evolution

Améliorations des packages et du build

  • Swift Package Manager inclut un aperçu de l’intégration de Swift Build, offrant une expérience de build cohérente sur toutes les plateformes
    • Le moteur de build unifié renforce la cohérence du développement multiplateforme
    • Les utilisateurs peuvent tester directement avec leurs packages et signaler les problèmes
  • Principales améliorations de SwiftPM 6.3
    • Prise en charge de Swift Syntax précompilé : les bibliothèques dédiées aux macros peuvent utiliser des binaires swift-syntax précompilés
    • Contrôle flexible de l’héritage de documentation : les plugins impératifs qui génèrent des graphes de symboles peuvent contrôler l’inclusion ou non de la documentation héritée
    • Fonction d’exploration des caractéristiques du package : la commande swift package show-traits permet de vérifier les caractéristiques prises en charge par un package
    • Davantage de détails figurent dans les notes de version de SwiftPM 6.3

Mises à jour des bibliothèques cœur

  • Swift Testing

    • Enregistrement de problèmes au niveau avertissement : Issue.record(..., severity: .warning) affiche uniquement un avertissement sans faire échouer le test
    • Fonction d’annulation de test : try Test.cancel() permet d’interrompre un test en cours et ses sous-tâches
    • Prise en charge des pièces jointes d’images : il est possible de joindre des images pendant les tests sur les plateformes Apple et Windows
    • Propositions associées : ST-0012, ST-0013, ST-0014, ST-0015, ST-0016, ST-0017, ST-0020
  • DocC

    • Prise en charge de la sortie Markdown : l’option --enable-experimental-markdown-output permet de générer des documents Markdown
    • Contenu HTML statique par page : l’insertion d’un résumé HTML dans `` améliore le référencement et l’accessibilité
    • Extension des annotations de blocs de code : de nouvelles options de format comme nocopy, highlight, showLineNumbers, wrap sont ajoutées
    • Activation possible via l’option --enable-experimental-code-block-annotations

Plateformes et environnements

  • Embedded Swift

    • Comprend de nombreuses améliorations, dont une interopérabilité C renforcée, un meilleur débogage et des avancées vers l’aboutissement du modèle de linkage
    • Les détails sont disponibles dans le blog “Embedded Swift Improvements coming in Swift 6.3”
  • Android

    • Première sortie du SDK officiel Swift pour Android
    • Permet le développement d’apps Android natives en Swift et la prise en charge du build Android pour les packages Swift
    • L’intégration avec des apps Kotlin/Java est possible via Swift Java et Swift Java JNI Core
    • Cette sortie est considérée comme une étape importante dans l’extension du développement multiplateforme de Swift
    • Le guide de démarrage est fourni dans le document “Getting Started with the Swift SDK for Android”

Étapes suivantes

  • La toolchain Swift 6.3 peut être installée depuis la page Install Swift
  • Les développeurs peuvent dès maintenant expérimenter les nouvelles fonctionnalités et envoyer leurs retours

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.