mardi 22 mai 2018

Adobe, Microsoft, Google… des corrections de bugs pour 299 apps dans macOS


les bugs des apps doivent être corrigées par leurs développeurs, qu’il s’agisse d’Apple pour celles qui sont installées par défaut dans macOS, ou bien une autre entreprise pour les apps tierces. Mais dans certains cas, les développeurs de Cupertino prennent les devants et corrigent eux-mêmes les bugs de ces apps, en intégrant des patchs directement dans macOS. Ce n’est pas un phénomène isolé d’ailleurs : dans la dernière version de macOS High Sierra, on trouve ainsi 299 correctifs pour des bugs d’apps.et plus


Voilà à quoi ressemble l’un des patchs que contient macOS, ici pour PowerPoint.

Quelles apps sont prises en charge spécifiquement par Apple ? En majorité (64 sur 299), il s’agit d’apps… d’Apple ! Cela peut sembler surprenant, mais un patch chargé de corriger un bug ou de modifier un comportement par défaut est souvent utilisé au lieu de corriger directement la source. C’est le cas par exemple de Radar, l’app utilisée dans les bêtas pour permettre de remonter un bug (quelle ironie), mais aussi de composants utilisés par le système. Dans le lot, on repère notamment com.apple.loginwindow, le processus qui guèr la connexion à une session utilisateur et qui est actuellement corrigé par un patch plutôt qu’à la source.
Le deuxième plus gros acteur est Adobe, avec 31 apps dans la liste. Tout le catalogue de l’éditeur est probablement concerné, notamment pour corriger les boîtes de dialogue qui servent à ouvrir et enregistrer des documents. Pour Photoshop, c’est aussi un bug lié à la Touch Bar des MacBook Pro qui est corrigé à la volée par le système. De son côté, la suite Office de Microsoft est également touchée par plusieurs patchs, dont un qui modifie légèrement l’algorithme de tri utilisé par Excel.
On trouve aussi un grand nombre de jeux dans la liste, notamment pour qu’ils utilisent des APIs graphiques plus anciennes plutôt que les plus modernes qui devaient poser problème. Apple a pris en charge les apps les plus connues et les plus utilisées, en vrac : Chrome, Spotify, Dropbox, VMWare Fusion, Sketch, 1Password, Evernote ou encore VLC et Firefox. Vous utilisez certainement plusieurs apps corrigées manuellement par macOS, sans le savoir… et on imagine que bon nombre de développeurs ne sont pas plus au courant. Cette liste montre bien qu’Apple teste de nombreuses apps tierces en interne et n’hésite pas à les corriger plutôt que d’attendre un correctif de la part de leurs concepteurs.
iOS ne dispose pas d’une liste similaire, mais quelques cas ont été pris en charge spécifiquement par le système mobile. On trouve notamment les anciennes apps de Popcap et Real Racing 3, mais aussi des cas étranges, comme cette app qui n’est plus disponible aujourd'hui et qui a connu un certain succès en 2009. Autant dire qu’Apple ne semble pas particulièrement pressée de retirer ces patchs spécifiques
«C’est le cas par exemple de Radar, l’app utilisée dans les bêtas pour permettre de remonter un bug (quelle ironie)»
C'est pas une ironie, c'est une explication a l'inneficacité des programmes beta d'Apple. Si le moyen de remonter les bug est bugué c'est normal qu'ils mettent sur le marché des versions de plus en plus bugués...
«Mais dans certains cas, les développeurs de Cupertino prennent les devants et corrigent eux-mêmes les bugs de ces apps, en intégrant des patchs directement dans macOS.»
Surtout ce que dit l'article d'origine c'est que Apple altere le comportement de logiciels tiers pour les rendre compatibles avec une nouvelle version de l'OS.
Il ne s'agit pas de corriger des bug presents dans ces logiciels, mais de compenser la violation que fait Apple face a un principe de programmation de base: la consistance des API.
Lorsqu'un developpeur ecrit une application, il y a 2 parties:
1) son propre code dont il maitrise l'execution
2) des appels a des fonctions et services fournis par le systeme
Cette seconde partie va concerner l'acces a l'interface, la gestion des acces au reseau, aux volumes de stockage, et tout services fourni par le systeme. Si le developpeur peut utiliser ces fonctions et services, il n'a par contre aucune maitrise ni connaissance de la façon dont fonctionne ces services (c'est souvent un secret de l'editeur de l'OS).
Pour arriver a cela le developpeur utilise une API qui est un protocole d'appel a ces services.
L'API est aussi regit par un contrat, le developpeur doit la respecter avec la garantie par l'editeur de l'OS que ce respect garantie la compatibilité de l'application avec toutes les versions ulterieures de l'OS.
Ici on voit qu'Apple introduit une inconsistance dans l'API et les appels systeme en general qui viole le contrat etablie avec le developpeur.
Comme c'est Apple qui viole le contrat, Apple patch alors les appels aux API dans les softs tiers...
Le plus grave dans cette histoire c'est qu'Apple viole non seulement un principe fondementale de l'informatique, mais qu'en plus Apple decide de maniere purement partiale, unilaterale et arbitraire quelles sont les applications qui seront patchés pour assurer qu'elles tourneront sur la version suivante de MacOS. A cela se rajoute encore un autre elements aggravant: le patch est une alteration du fonctionnement d'une application, alteration qui se fait sur l'executable et qui necessite qu'Apple "truc" la signature de l'application...
L'article d'origine le dit clairement: Apple a acquis une mauvaise reputation en terme de compatibilité entre version de MacOS. Ces patch sont des "bidouillages" pour compenser l’inconsistance des API de MacOS et sont une violation des regles de bases en developpement...

avatarYacc | 
Disqus Comments

APROPOS DE MOI




a


SALUT,moi
je m'appel FEUNKOUA TALLA NELSON MANDELA
passionné de la nouvelle technologie de l'informatique.
je suis camerounais étudiant au lycée, ayant crée ce site
juste pour exprimer mon savoir en informatique.
MERCI

Post du jour

Comment aller au menu ingénieur et depacter voir desimlocker son Android

cette application, vous peut sembler pour le chinois, mais si vous avez un  smartphone  Android MTK, c'est un  téléphone avec ...

articles recents