La sortie de Swift 6 avec Swift Concurrency se rapproche

Florent Morin |

Il y a 3 ans, Apple nous présentait Swift Concurrency, une évolution forte de Swift 5 qui annonçait le début d’un long chemin vers Swift 6. En parallèle, le langage s’est doucement, mais sûrement ouvert à d’autres plateformes, notamment embarquées. Et nous y sommes aujourd’hui : toute les conditions sont désormais réunies afin de passer à une nouvelle version majeure du langage.

Swift Concurrency : gestion optimale des tâches parallèles

Nous en avions déjà parlé à sa sortie : Swift Concurrency améliore l’efficacité des tâches exécutées en parallèle. Cela passe d’abord par une meilleure orchestration au niveau du code de ces tâches qui avanceront en parallèle.

Imaginons une application qui permet de télécharger des images afin de les afficher à l’écran. Lorsque l’utilisateur appuie sur un bouton « Télécharger », plusieurs actions vont être enclenchées en parallèle. Une tâche va se charger de récupérer l’image, mais une autre va afficher un indicateur de chargement. Cela donne une réponse immédiate à l’utilisateur et évite de bloquer l’app pendant le chargement.

Vision (pro) schématique du procédé.

Sur le plan technique, l’action de l’utilisateur sur l’interface est placée dans le fil d’action qui a la plus haute priorité, nommé « Main Actor ». En parallèle, la tâche de gestion d’accès aux données va réaliser plusieurs opérations successives : elle va d’abord vérifier si l’image demandée existe déjà sur le stockage local. À défaut, elle ira la télécharger sur le web, via une autre tâche. Sans entrer dans les détails trop techniques, on peut utiliser les « acteurs » pour faire en sorte qu’un téléchargement ne soit initié qu’une seule fois et que son résultat soit retourné aux différents appelants.

N10 vous rappelle régulièrement que vous devez réaliser une tâche sur votre Mac

Nicolas Furno |

N10 (14,99 €) est une nouvelle app pour le Mac qui ambitionne de vous aider à vous concentrer sur une tâche à la fois. Il ne s’agit pas d’un gestionnaire de tâches complet, son objectif est de définir des sessions d’une durée limitée sur un seul sujet et de vous aider à rester sur cet élément avec des rappels réguliers. Pendant toute la session, l’app garde une petite fenêtre discrète à l’écran, superposée à toutes les fenêtres des autres apps, et surtout, elle affiche régulièrement un cercle coloré qui attire votre attention et vous rappelle la tâche en cours.

N10 en action : les réglages sur la gauche, le menu associé à son icône en haut et l’interface qui s’affiche pendant une session, avec ici le cercle coloré qui apparaît brièvement à intervalles réguliers. Notez qu’il est ici particulièrement visible, c’est moins le cas en calant la fenêtre sur le côté de l’écran. Image MacGeneration.

Une session peut durer entre 10 minutes et deux heures, avec quelques paliers intermédiaires, mais sans possibilité de définir une durée personnalisée dans la première version. Vous devrez lui donner un nom et pourrez alors lancer la session. Par défaut, le cercle coloré s’affichera toutes les minutes avec un son, vous pouvez ajuster ces deux paramètres dans les réglages de l’app. Le cercle de rappel peut être entièrement désactivé, s’afficher toutes les cinq minutes seulement ou encore uniquement à la fin d’une session.

Ce cercle coloré émane de la fenêtre principale de N10, alors son placement est essentiel pour que le rappel soit efficace sans être trop perturbant. Pendant mes essais, j’ai trouvé qu’il était gênant quand il s’affichait toutes les minutes. C’est nettement mieux toutes les 5 minutes, même si un réglage plus fin n’aurait pas été de trop, par exemple pour l’afficher uniquement toutes les 10 minutes. Vous pourrez ajuster sa couleur dans les réglages de l’app ou le désactiver entièrement si vous n’en voulez pas.

Le cercle coloré qui rappelle régulièrement la tâche en cours en action, ici pendant l’écriture de cet article. Image MacGeneration.

Une session peut être mise en pause, voire stoppée à tout moment, même avant la fin du minuteur. Ce dernier est par ailleurs rappelé dans la fenêtre principale, sous la forme d’un cercle coloré plus petit qui se vide au fil du temps. N10 conserve par ailleurs un historique de toutes les sessions précédentes. L’ensemble est très bien pensé et même assez agréable pour garder la tête sur un objectif précis.

N10 est vendue exclusivement sur le Mac App Store pour 14,99 €, un achat unique d’entrée de jeu, sans abonnement par la suite. Ce modèle à l’ancienne est intéressant, même si une version de démonstration serait bien utile pour vérifier si le concept vous convient ou non. Si vous êtes curieux, Apple rembourse sans trop de difficulté les achats récents si vous constatez que l’app ne vous donne pas entière satisfaction.

L’interface n’est pas traduite en français et N10 nécessite macOS 13 (Ventura) au minimum.

Lire les commentaires →

GoFetch, une nouvelle faille matérielle qui touche les puces Apple Silicon

Pierre Dandumont |

Une nouvelle attaque vient d'être présentée par des chercheurs, GoFetch. Elle a deux particularités : elle vise les puces Apple et ne peut pas être corrigée facilement, car elle se base sur des fonctions matérielles des processeurs. Les solutions pour s'en protéger impliquent donc de grosses pertes de performances, car la faille ne peut pas être comblée directement.

Le logo de GoFetch.

GoFetch, donc, se base sur une des fonctions des puces M d'Apple, le DMP (Data Memory-dependent Prefetcher). Nous allons essayer de faire simple : les processeurs, depuis de nombreuses années, tentent de deviner ce qu'un programme va exécuter. L'idée (efficace) consiste à analyser les flux pour déterminer les prochaines instructions et les prochaines données à charger. Le cas du prefetch classique est assez simple : les algorithmes essayent de charger les données en mémoire cache (très rapide) avant que le programme en ait besoin et pendant que le CPU effectue une autre tâche. S'ils ont raison, les accès sont plus rapides, tout comme le programme.

Dans un CPU classique, les algorithmes travaillent sur des adresses, qui déterminent la position des données dans la mémoire, sans avoir aucune idée du contenu des données. Avec le DMP, présent aussi dans les derniers CPU Intel, les algorithmes analysent les données pour trouver ce qu'ils pensent être des pointeurs. De façon très simplifiée, un pointeur est l'équivalent d'une adresse stockée dans les données, et donc si l'algorithme en trouve un, il peut précharger les données qu'il pointe pour accélérer les chargements.

Un problème de détection

Le principe de la faille, c'est que l'algorithme ne peut pas déterminer s'il s'agit réellement d'un pointeur, mais seulement si les données ressemblent à un pointeur. Le principe de l'attaque consiste donc à créer des données qui ressemblent à des pointeurs pour tenter de récupérer des données qui ne devraient pas se trouver dans la mémoire cache. L'ensemble est compliqué — vous pouvez aller lire le papier dédié si le cœur vous en dit — mais les chercheurs indiquent que leur application peut récupérer une clé RSA-2048 en moins d'une heure avec un programme qui n'a pas besoin de droits particuliers. Il y a quelques limites pratiques tout de même : l'application attaquée (qui peut par exemple être OpenSSL)doit être exécutée sur le même cluster dans une puce M, c'est-à-dire un groupe de cœurs au niveau de la puce. L'attaque est efficace contre différents types de chiffrements, mais le temps nécessaire peut être plus élevé.

L'attaque en action.

Pour les chercheurs, les solutions sont peu nombreuses. La première consiste à n'effectuer les calculs cryptographiques que sur les cœurs basse consommation (cœurs E). Ils ne bénéficient pas du DMP mais sont malheureusement plus lents. La seconde consiste à adapter les programmes pour éviter les fuites de données, mais ils indiquent que la perte de performances peut être élevée, en fonction des algorithmes. Enfin, il est possible de désactiver le DMP sur les puces M3 pour un programme précis, mais les chercheurs n'indiquent pas les éventuelles pertes de performances.

Cette faille montre surtout que même avec un matériel parfaitement maîtrisé, il reste possible d'avoir des problèmes de sécurité. Et dans le cas précis, il est visiblement impossible pour Apple de corriger la faille dans les puces M1 et M2. Enfin, notons qu'Apple a été prévenu de la faille en décembre 2023.

Lire les commentaires →

Mediatek va intégrer une GeForce RTX dans ses puces pour les voitures

Pierre Dandumont |

Mediatek, un concepteur de puces, vient d'annoncer un système sur puce intéressant, au moins sur un point : il intègre un GPU de chez Nvidia. Le fait que Nvidia puisse licencier une partie de ses technologies n'est pas réellement une nouveauté, mais pour le moment personne n'avait réellement profité de cette possibilité1.

Il faut rappeler un point avant de commencer : les sociétés capables de développer un CPU ou un GPU en interne sont peu nombreuses (il a fallu de nombreuses années à Apple pour produire ses propres GPU) et la norme dans la conception des systèmes sur puce est de passer par des composants sous licence. Pour les CPU, le principal fournisseur est Arm, alors que pour les GPU, le marché est plus large : AMD travaille avec Samsung, Arm propose ses propres GPU (Mali), Imaginations (avec ses PowerVR) rôde toujours, etc. L'arrivée de Nvidia dans ce domaine est donc une nouvelle importante : la société est le leader dans le monde des GPU de PC mais aussi dans celui de l'IA.

Les différentes puces (image Mediatek)

Un SoC Dimension Auto

Il ne s'agit pas d'une seule puce, en réalité, mais d'une gamme complète pensée pour les véhicules modernes. La plateforme de Mediatek, nommée Dimension Auto Cockpit, comprend quatre puces (CV-1, CM-1, CY-1 et CX-1) et la page dédiée indique que le ray tracing, le DLSS (la solution d'upscale par IA de Nvidia) et toutes les solutions d'IA de Nvidia sont supportées. C'est visiblement Nvidia qui fournit le système d'exploitation (Drive OS) mais nous pouvons supposer que le choix d'un CPU ARM (sans précisions sur la génération) permet d'installer facilement Android Automotive.

Sans voiture Apple, le nouveau CarPlay cherche sa route

Sans voiture Apple, le nouveau CarPlay cherche sa route

Reste évidemment une question, importante pour les amateurs de smartphones Android : est-ce que Mediatek va aussi intégrer l'équivalent d'une GeForce RTX dans ses puces pour smartphones ?


  1. Le cœur de la Nintendo Switch est une puce conçue directement par Nvidia.  ↩︎

Lire les commentaires →

Apple inaugure un très grand Apple Store à Shanghai 🆕

Florian Innocente |

Apple a préinauguré son dernier Apple Store chinois, une vaste boutique qui a tous les codes de ses devancières mais qui, de part son volume, rompt avec la monotonie de celles des centres commerciaux.


Mise à jour le 21 mars

Pendant que le département de la Justice des États-Unis déroulait son acte d'accusation contre Apple dans un procès qui s'annonce comme majeur, Tim Cook et Deirdre O’Brien ouvraient officiellement les portes d'un nouvel Apple Store en Chine.

Images : Apple.

Article du 18 mars

La Chine a désormais 57 Apple Store avec un nouveau qui ouvre dans le district de Jing’an à Shanghai. Il n'y a que les États-Unis où les boutiques d'Apple sont davantage implantées, et c'est avec une confortable avance. En effet, il y a à peine moins d'Apple Store dans la seule Californie (53) que dans toute la Chine. Un marché toujours aussi crucial pour Apple mais où le fond de l'air est frais actuellement pour les ventes d'iPhone.

Apple Store de Jing’an. Images : Apple.

Ce nouvel espace de vente est néanmoins le huitième pour la ville de Shanghai. Il est installé à l'intérieur d'une place à même d'attirer les flâneurs puisque voisin d'un célèbre grand temple bouddhiste. L'Apple Store de Jing’an comprend deux niveaux dont le principal, le Forum, est en sous-sol, avec une belle hauteur sous plafond, ponctuée de colonnes massives habillées d'aluminium.

150 personnes vont travailler dans cet Apple Store qui ouvre ses portes aux clients ce 21 mars. Vous pouvez encore récupérer les fonds d'écran pour Mac, iPhone et iPad conçus pour l'occasion.

Un joli fond d’écran pour célébrer l’ouverture d’un Apple Store à Shanghai

Un joli fond d’écran pour célébrer l’ouverture d’un Apple Store à Shanghai

Lire les commentaires →

Le département de la Justice des États-Unis attaque Apple pour abus de position dominante

Florian Innocente |

Le département de la Justice des États-Unis ainsi que 16 États américains accusent Apple de pratiques anticoncurrentielles et d'avoir organisé un monopole sur le marché du smartphone. Après l'Europe et le règlement des marchés numériques (DMA), Apple est prise dans un autre ouragan, judiciaire cette fois, et sur son premier marché mondial qui plus est.

Merrick Garland, procureur général des États-Unis

« Apple exerce un pouvoir grâce à son monopole pour soutirer plus d'argent aux consommateurs, aux développeurs, aux créateurs de contenus, aux artistes, aux éditeurs, aux petites entreprises et aux commerçants, entre autres », indique le communiqué du département de la Justice (DOJ).

Plusieurs exemples sont convoqués pour appuyer cette accusation, ils regroupent de nombreux aspects de l'activité, des plateformes et des services d'Apple :

  • Gêner les « super applications » qui englobent de nombreux programmes différents et pourraient dégrader la « visibilité d'iOS » et permettre aux utilisateurs d'iPhone de passer plus facilement à des appareils concurrents. Ces supers apps, identiques entre iOS et Android relèguent les avantages d'un écosystème propriétaire au second plan (lire aussi Facebook Gaming se résigne à son tour à passer par une web app sur iOS ) ;
  • Bloquer les applications de streaming sur iPhone pour des usages comme les jeux vidéo, ce qui éviterait aux clients d'investir dans un équipement plus puissant et plus onéreux ;
  • Dégrader l'expérience utilisateur des apps de messagerie entre plateformes concurrentes et en rendant compliqué le passage de l'une vers l'autre lorsqu'on veut quitter iOS ;
  • Rendre plus compliquée l'utilisation d'une montre connectée de marque tierce d'au moins trois manières : pour répondre aux notifications transmises par l'iPhone ; pour recevoir ces notifications via la connexion cellulaire de cette montre et enfin sur la connexion Bluetooth, plus avancée dans ses possibilités entre un iPhone et une Apple Watch qu'avec une montre tierce alors que rien techniquement ne justifie cette différence de traitement ;
  • Empêcher les développeurs tiers de proposer des concurrents à Wallet d'iOS et d'utiliser la NFC de l'iPhone.

« Pendant des années, Apple a répondu aux menaces concurrentielles en imposant une série de règles et de restrictions contractuelles qui ont permis à Apple de bénéficier de prix plus élevés auprès des consommateurs, d'imposer des frais plus importants aux développeurs et aux créateurs et de limiter les alternatives concurrentes et les technologies rivales », a déclaré Jonathan Kanter, chef de la division antitrust du DOJ, dans le communiqué.

Apple a réagi vigoureusement en considérant que ce procès menace sa capacité d'innovation en la déplaçant entre les mains des gouvernements :

[Ce procès] met en péril ce que nous sommes et les principes qui distinguent les produits Apple sur des marchés extrêmement concurrentiels. En cas de succès, cela entraverait notre capacité à créer le type de technologie que les gens attendent d’Apple, où le matériel, les logiciels et les services se croisent.

Cela créerait également un dangereux précédent, en permettant au gouvernement de prendre la main dans la conception de technologies destinées à tous les utilisateurs. Nous pensons que ce procès n'est pas justifié sur le plan des faits et du droit, et nous nous défendrons vigoureusement.

Il n'en reste pas moins que sur plusieurs points, Apple pourrait avoir du mal à tenir ses positions ou avoir beau jeu de montrer que de l'eau a coulé sous les ponts depuis l'ouverture de l'enquête du DOJ en 2019.

Dans le cadre du DMA elle a par exemple cédé sur la puce NFC des iPhone qui est réservée à Apple Pay (lire aussi En Europe, Apple accepte d'ouvrir la NFC des iPhone à toutes les apps de paiement). Le DOJ le fait d'ailleurs remarquer, arguant que ce blocage n'avait aucune raison technique. Idem sur l'accès à l'App Store pour les apps de streaming de jeux. Dans le premier cas, cela reste limité à l'Europe, mais dans le deuxième, la mesure est applicable au niveau mondial.

Apple va ouvrir l

Apple va ouvrir l'App Store aux services de streaming de jeux vidéo

D'autres accusations arrivent alors qu'Apple a également fait des concessions : Messages va prendre en charge le RCS promu par Google et que la Pomme a longtemps dédaigné (lire aussi Google exulte : Apple va finalement adopter RCS, le « SMS 2.0 », en 2024).

L'issue de ce procès, que le DOJ assimile à d'autres grandes affaires d'antitrust — Standard Oil Co, AT&T ou Microsoft — est capitale pour Apple. Les États-Unis sont le premier marché de l'iPhone et d'autres pays pourraient s'inspirer de ce que l'Europe a déjà fait et de ce que le DOJ entreprend.

Ce dernier juge nécessaire d'intervenir, car les implications dépassent le seul cadre du smartphone étant donné qu'Apple est présente sur de nombreux autres marchés : services financiers, automobile, sport, médias, divertissement, etc. :

S'il n'est pas mis un terme au comportement anticoncurrentiel et d’exclusion d’Apple, il est probable qu’Apple étendra et consolidera son monopole sur l’iPhone à d’autres marchés et pans de l’économie.

C'est tout le fonctionnement de l'écosystème d'Apple, largement propriétaire, qui est en train d'être attaqué et détricoté. Il a été critiqué depuis des années, Apple y a apporté parfois des corrections par de petites touches mais elle a longtemps semblé faire fi de menaces plus sérieuses.

Lire les commentaires →

Grosse mise à jour pour Orion, le navigateur WebKit qui prend en charge les extensions Chrome

Félix Cattafesta |

Le développement d’Orion accélère, et le navigateur vient de passer en version 0.99.127. Ce projet basé sur WebKit a pour particularité de prendre en charge les extensions de Chrome et de Firefox. Celles-ci se mettent désormais à jour automatiquement, tandis qu’il est maintenant possible de réattribuer leurs raccourcis clavier. On pourra par exemple changer le raccourci par défaut d’un gestionnaire de mot de passe activant le remplissage automatique si celui-ci ne convient pas.

Le site du Club iGen sur Orion. Notez la nouvelle disposition « compacte » des onglets.

Plusieurs changements esthétiques sont à noter. On pourra désormais opter pour un nouveau système d’onglets plus compact venant se nicher au niveau de la barre d’URL. Les fans d’Arc pourront toujours choisir un mode vertical affichant les onglets sur la gauche de l’écran. Appuyer sur Shift en cliquant sur un lien fait apparaitre un aperçu, et un bouton a été greffé dans la barre supérieure permettant d’ajouter rapidement un site à ses flux RSS. Une nouvelle option est proposée en faisant un clic droit sur un lien, permettant de « nettoyer » une URL des différents traqueurs avant de la mettre dans le presse papier.

Quelques grosses modifications ont eu lieu sous le capot, et Orion passe à WebKit 619.1.1. Le navigateur prend désormais complètement en charge les écrans 120 Hz des MacBook Pro ainsi que le format WebM. De nombreux bugs ont été corrigés, comme en témoigne la très longue liste de correctifs. Orion est un navigateur disponible uniquement sur macOS et iOS. La version Mac, en bêta publique, est optimisée pour les puces Apple Silicon. Il est gratuit, mais un abonnement est proposé pour obtenir accès aux versions bêta.

Lire les commentaires →

Pages