2 points par GN⁺ 2025-03-31 | 1 commentaires | Partager sur WhatsApp
  • Sortie de la première version stable de swiftly, l’outil officiel de gestion des versions qui simplifie l’installation, la gestion et la mise à jour des versions de Swift
  • Auparavant, il fallait passer par Xcode pour utiliser la dernière version de Swift, mais il est désormais possible de l’installer de manière autonome sur macOS et sur diverses distributions Linux
  • D’abord lancé comme un outil de la communauté Swift, swiftly est désormais intégré à l’organisation GitHub officielle de Swift et bénéficie d’un support officiel
  • Swift peut désormais être installé sans Xcode, ce qui facilite la gestion des versions pour de nombreux usages, des outils de développement aux environnements serveur

Résumé des principales fonctionnalités de swiftly

  • Possibilité d’installer et de basculer entre plusieurs toolchains Swift
    • Commandes fournies : swiftly install, swiftly use, swiftly list-available
    • Le fichier .swift-version permet d’imposer l’usage d’une version cohérente entre les membres d’une équipe
  • Installation possible des versions snapshot et des anciennes versions
    • Exemple : des versions comme main-snapshot-2025-03-25 peuvent aussi être installées facilement
    • La syntaxe swiftly run +nom_de_version permet une exécution temporaire avec une version spécifique
  • Fonction de mise à jour automatique incluse
    • La commande swiftly self-update permet de récupérer les dernières fonctionnalités
  • Prise en charge de macOS et de diverses distributions Linux
    • Prise en charge notamment d’Ubuntu, Debian, Fedora, Red Hat Enterprise Linux et Amazon Linux

swiftly est un outil CLI auto-installable écrit en Swift

  • swiftly lui-même est implémenté en langage Swift
    • Opérations sur le système de fichiers : utilisation du module Foundation
    • Requêtes HTTP : utilisation d’Async HTTP Client
    • Consultation des informations de version : utilisation de Swift OpenAPI Generator
    • Décompression : libarchive avec interopérabilité C
  • Fourni sous forme de binaire auto-installable sans script shell → meilleure stabilité entre les plateformes
  • Fournit une interface CLI propre avec --help

Compatibilité avec les distributions Linux et installation simplifiée

  • Swift.org peut détecter le système d’exploitation, mais pas la distribution Linux
  • Pour cela, un binaire fonctionnant sur un large éventail de distributions est fourni grâce au Swift Static Linux SDK
  • Les utilisateurs peuvent l’installer en copiant-collant simplement une commande depuis le site web

Feuille de route et activité open source

  • Adoption de swiftly comme méthode standard pour installer Swift en dehors de Xcode
  • Prise en charge également des environnements CI/CD, des serveurs proxy et des chemins d’installation personnalisés → adapté aussi aux environnements d’entreprise
  • Développé en open source, avec possibilité d’ouvrir des issues et des PR sur GitHub
  • Il est également possible de participer aux questions-réponses et aux discussions sur les forums Swift

> Remerciements particuliers à Patrick Freed pour la création de swiftly. La communauté Swift contribue à faire rayonner encore davantage Swift

1 commentaires

 
GN⁺ 2025-03-31
Avis Hacker News
  • Steve Klabnik a récemment expliqué dans un épisode d’Oxide and Friends que l’équipe Rust des débuts avait reconnu l’importance de ce type d’outils. C’est un signe positif des efforts continus de Swift et d’Apple pour accroître son potentiel comme langage généraliste en dehors de l’écosystème Apple
    • Swift fonctionne bien sous Linux, il est agréable à écrire, et son interopérabilité avec C, C++ et Java est excellente
    • Points que j’aime moins : les temps de compilation, la taille des binaires, la surcharge des vérifications de type à l’exécution (les performances de Codable ont causé des problèmes dans l’application), et les difficultés liées à la gestion de l’async/await
  • Je me demande ce qu’il est advenu de Swift. On en entendait beaucoup parler avant, et maintenant beaucoup moins. C’est peut-être simplement moi qui suis dans une chambre d’écho
  • J’aimerais qu’il soit possible d’utiliser Swift en dehors du monde Apple
  • Je me demande si c’est l’équivalent de UV pour Swift, quels en sont les avantages, et si l’on peut abandonner Xcode pour l’utiliser à la place
  • Je n’ai pas regardé Swift depuis sa sortie initiale, mais je me demande si la documentation s’est améliorée. Il m’est arrivé de lire des commandes sur Stack Overflow sans pouvoir les retrouver dans la documentation, ou alors elles y figuraient sans informations utiles
  • L’une des raisons pour lesquelles Zig plaît tant à beaucoup de gens, c’est qu’il dispose d’outils intégrés, fournis avec le langage dès le premier jour
  • Cela aidera énormément l’écosystème Swift. La possibilité d’ajouter et de supprimer des versions du langage selon les besoins est extrêmement pratique, et je suis heureux de voir davantage de langages adopter cela
  • Je me demande si cela permettra d’exécuter en dehors du simulateur des tests unitaires pour du code qui doit importer UIKit
  • Avec une prise en charge de Windows, les gens pourraient l’essayer