Comments on: La maison des horreurs de l’encoding http://sametmax.com/la-maison-des-horreurs-de-lencoding/ Du code, du cul Fri, 06 Sep 2019 09:34:15 +0000 hourly 1 https://wordpress.org/?v=4.9.7 By: saiaman http://sametmax.com/la-maison-des-horreurs-de-lencoding/#comment-186516 Thu, 30 Mar 2017 16:11:43 +0000 http://sametmax.com/?p=22198#comment-186516 “****** Le charset déclaré n’est pas celui utilisé. *******”

Enfin d’une façon générale on se base surtout sur la réponse serveur pas le méta html ….

dans le cas présent : Content-Type: text/html; charset=utf-8

Dans le cas présent l’utf-8 n’est pas un hazard et il est bien précisé par le serveur en réponse… D’ou d’ailleurs le fait que le navigateur sache l’afficher…

Apres que “requests” decode pas directement tout seul …. ça je conseillerais une pull request dessus :)

]]>
By: k http://sametmax.com/la-maison-des-horreurs-de-lencoding/#comment-184998 Tue, 31 Jan 2017 13:51:56 +0000 http://sametmax.com/?p=22198#comment-184998 Sympa l’article :) Un beau bordel tout ça :D

Encore une petite coquille :

les gens se sont dit qu’utiliser base64 était déjà trop fait par tout le monde est qu’on allait pas se priver de cette occasion

]]>
By: Sam http://sametmax.com/la-maison-des-horreurs-de-lencoding/#comment-184997 Tue, 31 Jan 2017 13:51:51 +0000 http://sametmax.com/?p=22198#comment-184997 Index error

]]>
By: Francis G http://sametmax.com/la-maison-des-horreurs-de-lencoding/#comment-184995 Tue, 31 Jan 2017 13:38:14 +0000 http://sametmax.com/?p=22198#comment-184995 Pour passer une BdD MySQL encodée en uft8mb4 en uft8, quelqu’un a une piste ? En Python ou pas.

]]>
By: ultra http://sametmax.com/la-maison-des-horreurs-de-lencoding/#comment-184967 Mon, 30 Jan 2017 15:10:35 +0000 http://sametmax.com/?p=22198#comment-184967 Pour répondre à cette histoire de ‘Ver más ideas’.

En fait, le serveur http a un encoding par défaut, par exemple pour apache 2.4 dans httpd.conf c’est la directive AddDefaultCharset utf-8

Il y a également l’encoding de l’application qui est fixé par

Par conséquent, si l’application ne fixe aucun encoding, c’est l’encoding du serveur http qui est utilisé, donc forcément, si les encodings diffèrent, on se retrouve avec des contradictions.

C’est pour cela que l’encoding par défaut du serveur http doit toujours être le même que celui de l’application.

Dans le cas particulier du site espagnol, l’administrateur système a bien fait son boulot en fixant le utf-8, en revanche, les dèvs ont fait un boulot de sagouin en travaillent avec du ISO-8859-1. D’ailleurs, les dèvs doivent avoir des problèmes avec mysql qui doit être également en utf-8.

]]>
By: Dinosaure http://sametmax.com/la-maison-des-horreurs-de-lencoding/#comment-184947 Sun, 29 Jan 2017 21:13:02 +0000 http://sametmax.com/?p=22198#comment-184947 L’affaire pour l’UTF-7 est un peu plus complexe en vérité car en effet ce dernier a été pensé pour optimiser le poids d’un email mais le standard précise que ce dernier doit être explicitement spécifié (notamment avec le Content-Type). Le logiciel traitant les emails devrait, à priori s’en sortir assez simplement – car c’est un comportement spécifié.

Après, dans la réalité, c’est autre chose … Le problème peut concerner l’UTF-7 qui reste difficile à gérer mais le côté européen n’est pas en reste en considérant de facto que l’ISO-8859 est l’encodage par défaut alors que la spécification ne le dit pas – pas mal d’emails français font cette erreur (et des emails venant de grosses entreprises).

Heureusement, les mecs de la spécification ont décidé une bonne fois pour toute de considérer l’UTF-8 par défaut désormais avec la RFC 6532 (cette dernière ayant été en partie produite, bizarrement, par des chinois). Pour le coup, il est vrai que l’email est un véritable bordel où l’on peut facilement compter une dizaine de RFC à implémenter pour gérer le gros des emails (et on peut les blâmer de n’avoir jamais imposer une homogénéisation – mais intervient la notion de legacy que Python a d’ailleurs omis lors de son passage à sa version 3) mais le problème concerne surtout les générateurs des emails (automatique ou humain ou les deux – dans le sens d’une automatisation produite par un humain) et le gagnant dans l’histoire est bien entendu Outlook (Microsoft n’a pas qu’exceller dans le domaine des standards avec IE, hein …).

Bref, c’est un gros bordel et ça le restera un bon bout de temps malheureusement car les logiciels essayant de traiter les emails sont toujours face à l’email fatidique (issu d’un mélange de RFC et de règles tacites que les reptiliens-développeurs des MUAs s’échangent dans le plus grand des secrets) qui ne respecte pas les standars mais qu’il faut traiter – intervient alors le patch-monkey, le cas particulier, le if de trop …

Voilà un petit complément d’information pour vous convaincre de ne pas traiter des emails.

]]>
By: dineptus http://sametmax.com/la-maison-des-horreurs-de-lencoding/#comment-184944 Sun, 29 Jan 2017 19:53:31 +0000 http://sametmax.com/?p=22198#comment-184944 Pendant ce temps en 2016 Google App Engine ne supporte toujours pas Python 3 sauf en “beta” aux US.

]]>
By: Sam http://sametmax.com/la-maison-des-horreurs-de-lencoding/#comment-184940 Sun, 29 Jan 2017 18:36:21 +0000 http://sametmax.com/?p=22198#comment-184940 C’est ce qui le rend tellement proche de l’encodage.

]]>
By: Cym13 http://sametmax.com/la-maison-des-horreurs-de-lencoding/#comment-184938 Sun, 29 Jan 2017 18:22:15 +0000 http://sametmax.com/?p=22198#comment-184938 Et l’on a pas évoqué les difficultés de concept pour manipuler l’encoding lui-même en matière de bytes, de code points et de graphèmes…

Par contre j’ai été désolé d’apprendre que la “solid dick” d’iron man est fausse en fait

]]>
By: Flux de bite http://sametmax.com/la-maison-des-horreurs-de-lencoding/#comment-184937 Sun, 29 Jan 2017 16:27:54 +0000 http://sametmax.com/?p=22198#comment-184937 je rappelle que Python et plus vieux que Java => est plus vieux

Pyhton n’est pas parfait pour autant. => Python

]]>