Java : vers un encodage UTF-8 du code source Java ?

Par:
ftonic

jeu, 02/03/2023 - 10:18

Est-ce que le code source de Java pourrait changer d'encodage pour utiliser un format standard ? Une proposition a été faite en ce sens pour passer en UTF-8. La proposition a été formulée il y a quelques semaines. Le constat de départ est qu'aucune information officielle ne donne l'encodage utilisé pour le code source. Une majorité du code est en ASCII mais avec des caractères non ASCII ce qui peut engendrer des problèmes d'affichage. D'autres éléments sont en latin-1, etc. 

Cette diversité d'encodage des caractères peut provoquer des défauts d'affichage et ne pas avoir un affichage homogène. 

La JEP 400 parlait justement de l'encodage UTF-8 par défaut. Cette proposition avait été faite pour OpenJDK 18. L'objectif : utiliser UTF-8 pour les nouveaux codes et comme charset par défaut et clarifier le charset de Java. La JEP 400 n'impose pas l'UTF-8 pour l'ensemble du code source. 

L'objectif de cette nouvelle proposition est d'utiliser UTF-8 dans l'ensemble du code source et de convertir tous les caractères. Pour le moment, il s'agit uniquement d'une proposition, à notre connaissance, aucune JEP n'a été proposée. Le travail a réalisé n'est pas négligeable et il ne faudrait pas générer des effets de bord durant une telle migration qui ne serait pas forcément neutre sur le code source.

La proposition : https://bugs.openjdk.org/browse/JDK-8301971