Forum Clubic

Commentaires : Chrome 100 pourrait casser de nombreux sites, alors Google travaille à une solution

Le passage à la version 100 de Google Chrome
pourrait poser des problèmes sur certains sites, mais Google s’est déjà emparé du bug et propose plusieurs solutions.

Le mieux serait de faire des méthodes qui renvoie directement le numéro de version plutôt que de devoir extraire des sous-chaines.

1 J'aime

C’est dommage de partir sur des solutions de bricolage, alors que ce serait l’occasion parfaite de changer de système pour passer sur un truc plus moderne.

Les chaînes complètes d’user-agent n’ont ni queue ni tête à force d’adaptation pour préserver la compatibilité.

Il devrait y avoir un nouveau système plus moderne en découpant la chaîne en plusieurs sous-propriétés, ça éviterait d’avoir des fonctions de parsage approximatives qui ne sont pas en mesure de gérer un changement de taille du nombre.

1 J'aime

Sinon le plus simple c’est de fermer « Duda ».
On bloque pas un site si l’user agent est pas bon. Au pire, on avertit.

1 J'aime

Le problème c’est plutôt les développeurs dans ce cas.

Chrome a une numérotation de numéro de version assez standard, et c’est bien les sites qui feraient ce choix de prendre 2 caractères précisément qui doivent se remettre en question.

Une regexp toute bête est capable de récupérer la version majeure peut importe le nombre de chiffres qu’elle contient.

2 J'aime

J imagine qu’il s’agissait surtout d’une optimisation (de bout de chandelle j en conviens).
C’est plus efficace de lire 2 caractères que de passer par une regex j imagine.

1 J'aime

Un bon cas d’école quant au fait de trouver chiant la mise en place de tests unitaires :smiley:

(bon j’avoue que sur ce cas, c’est une de ces petits trucs quand meme ou l’on y pense en dernier ^^).

Pour le titre, il fallait en réalité lire « De nombreux sites mal implémentés vont avoir un problème avec les navigateurs dont les numéro de versions dépassent 99 »

Personnellement je ne pense pas car sans Regex tu dois avec toutes les versions qu’il y a dans la chaine, … sauf à lire exactement les deux même position de caractères chaque fois. Les regexp existe depuis tellement longtemps et sur une chaine si courte :stuck_out_tongue:

1 J'aime

Je comprend pas tres bien pourquoi on parle de bugs alors que franchement, comme dit plus haut… C’est juste une mauvaise implémentation. Se baser sur une regex de type \d\d au lieu de \d+ faut etre une sacre faignasse.

Le problème vient dr pseudo développeur qui ne savent pas programmer et qui.font du codepas robuste… C’est souvent le cas avec les types qui apprennent par eux mêmes sans passer par l’Université

2 J'aime

Faudrait réfléchir avant d’écrire (tu le fait tout le temps), tu as des gens autodidacte qui se débrouille très bien. Dit plus tôt amateur à la rigueur, mais s’est même pas le sujet…

2 J'aime

Ça existe déjà et ça se nomme User-agent client hints, les infos sont décortiquées dans les entêtes http…

Ça existe ça se nomme User-agent client hints. Le problème c’est que comme tout nouveau c’est lent à être supporté, surtout par les compagnies merdiques comme Apple…

En python version_number = USER_AGENT.split("/")[1].split(".")[0]

user_agent = « Mozilla/5.0 (Linux; U; Android 2.1-update1; fr-fr; GTI9000 Build/ECLAIR) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17 »
user_agent.split("/")[1].split(".")[0]
5

1 J'aime

Le problème des tests unitaires, c’est qu’il faut délimiter leur champ d’action, sinon on peut passer un temps infini à en ajouter. Rien ne dit qu’ils auraient fait un test unitaire pour une fonction aussi basique que celle là et, quand bien même ils l’avaient fait, encore faut-il qu’ils y aient entré la version 100+ de Chrome.

1 J'aime

Et Firefox, ils vont faire comment ?

Firefox ne le supporte pas encore :frowning: User-Agent Client Hints API - Web APIs | MDN

ouais mais au canada en tout cas Firefox c’est 4.5 % d’utilisation en stats, aussi bien dire : personne! Ce navigateur là pour moi est mort, on ne le teste même plus sur nos sites web développés au gouvernement du Québec, Safari par contre avec son 29 % fait chier puisque c’est un navigateur qui n’a pas évolué, Apple fait vraiment un travail de m#%#$? avec ça, vivement qu’il l’abandonne, ou reparte du code de Chromium comme Microsoft a compris pour Edge…

Peu importe le bout de papier qu’on a obtenu à l’issue des études, ce qui compte c’est le tête pensante qui est derrière.

J’ai bossé avec des ingénieurs en spécialité informatique (même diplôme que moi) qui m’ont donné envie de brûler mon diplôme tellement j’avais honte d’être rangé dans la même case que ces boulets.

Et j’ai bossé avec des mecs reconvertis de milieux très divers (ingénieur en mécanique, chimiste, physique nucléaire, agronome, un diplôme que j’ai pas retenu en rapport avec le santé, etc.) qui étaient excellents, parce qu’ils utilisaient leur cerveau pour réfléchir.

2 J'aime