Ouvrir le menu principal

MacGeneration

Recherche

Swift 5.6 pointe le bout de son bec

Florent Morin

lundi 13 septembre 2021 à 21:30 • 39

Logiciels

En 2018, les développeurs s’attendaient à une version 5.0 du langage Swift mais ont finalement eu droit à une version 4.2 intermédiaire. Cette année, c’est la version 5.5 qui se verra dépourvue de quelques fonctionnalités que nous retrouverons dans la version 5.6.

Le site Swift Evolution permet de suivre les améliorations du langage

Parmi les fonctionnalités qui auront assurément leur place dans Swift 5.6, les Type placeholders qui permettent d’utiliser _ plutôt qu’un type de donnée quand ce n’est pas indispensable. On n’utilise pas ça tous les jours, mais ça peut être pratique dans certains cas. La possibilité de tester la non-disponibilité d’un symbole donné (ex. version d'iOS) a curieusement disparu de Swift 5.5 également : l’idée était simplement d’ajouter le terme #unavailable en plus du #available existant. Le reste concerne Swift Package Manager avec des améliorations concernant la gestion des binaires intégrés aux paquets, une fonctionnalité qui fait elle-même partie de l’amélioration globale des outils de build.

Concernant les fonctionnalités qui devraient arriver ensuite, dans Swift 5.6 ou une autre version, il y a la rétro-compatibilité de Swift Concurrency que nous avions évoqué début septembre. Nous trouvons aussi en mode aperçu une amélioration de la gestion des positions d’éléments (RangeSet) dans une collection : voyez les détails dans la proposition pour plus d’informations. On trouve aussi l’amélioration de @NSCopying, le fameux count(where:), des fonctions mathématiques génériques, la distinction entre #file et #filePath, l’amélioration des tuples qui deviennent compatibles avec Equatable, Comparable et Hashable. Toujours dans ce qui est bien engagé, on retrouve la fonction isPower(of:) adaptée à BinaryInteger, des améliorations de Swift Package Manager telles qu’un registre de paquets sous forme de service web (via CDN), la possibilité d’éditer un paquet en ligne de commande et la possibilité de publier un paquet via service web. Dans le domaine de Swift Concurrency, Sendable semble également ajourné. Et l’amélioration des protocoles sera également réservée à la version 5.6.

Enfin, quelques fonctionnalités pourraient arriver dans le cycle de développement. Le protocole CodingKeyRepresentable a l’air plutôt chouette pour améliorer le décodage JSON ou autre via Codable. La gestion bas niveau des tampons mémoire pourrait aussi être améliorée en s’inspirant de ce qu’on peut retrouver en C et C++. Dans le domaine de Swift Concurrency, la fonction main() pourrait être rendue plus fiable. Pour finir, la gestion des pointeurs C pourrait être également complétée.

Même si la version 5.6 de Swift pourrait apporter pas mal de fonctionnalités, la version 5.5 qui devrait sortir dans quelques semaines ne s’en trouve pas dépouillée pour autant. Nous aurons encore de quoi nous occuper tout au long de ce passionnant chemin vers Swift 6.

Ajouter ce site dans Google News

Logitech présente le MX Keypad, un pavé de commandes pour l’IA (et tout le reste)

10:24

• 1


iPhone 18 Pro : prix, design, photo, puce… le grand récap des dernières rumeurs avant le keynote

08:32

• 16


Ubiquiti lance des packs Wi-Fi maillés plus accessibles pour la maison

08:12

• 19


La RAM devrait « seulement » augmenter de 13 à 18 % au troisième trimestre

07:10

• 5


Emmanuel Macron veut offrir à la France son « Cannes du jeu vidéo »

06:39

• 33


Apple Watch Ultra 4 : le point sur les nouveautés attendues avant sa présentation

06:38

• 3


Quatre batteries externes magnétiques pour iPhone passées au banc d’essai, compatibles Qi2 à 25 W

07/09/2026 à 21:13

• 0


TV LG : des failles permettent d’écouter la pièce même écran éteint

07/09/2026 à 21:06

• 63


iOS 27 : cinq nouveautés pourraient arriver dans l’app Appareil Photo

07/09/2026 à 20:12

• 40


Amazon passe à l'AVIF pour les images, Google Chromium et Mozilla Firefox activent bientôt le JPEG XL

07/09/2026 à 19:00

• 9


Apple Watch Series 12 / Ultra 4 : quatre nouveautés se cachent dans watchOS 27

07/09/2026 à 18:59

• 24


NASmeister : un tableau de bord personnalisable pour les NAS Synology sur iPhone

07/09/2026 à 17:45

• 12


Bon plan : deux chargeurs Anker compacts pour le prix d’un en promo

07/09/2026 à 15:41

• 18


Dishylink : une app macOS pour gérer tous les réglages d'une connexion Starlink

07/09/2026 à 13:00

• 2


L'étonnant écran portable ultralarge et tactile de Corsair en promotion

07/09/2026 à 11:00

• 3


Les AirPods ne supportent pas que votre Apple Watch soit infidèle

07/09/2026 à 10:54

• 8