On Mon, 5 Feb 2024 16:53:54 GMT, Magnus Ihse Bursie <[email protected]> wrote:
>> According to [the >> specification](https://docs.oracle.com/en/java/javase/19/docs/api/java.base/java/util/Properties.html#load(java.io.Reader)) >> trailing whitespaces in the values of properties files are (somewhat >> surprisingly) actually significant. >> >> We have multiple files in the JDK with trailing whitespaces in the values. >> For most of this files, this is likely incorrect and due to oversight, but >> in a few cases it might actually be intended (like "The value is: "). >> >> After a discussion in the PR for >> [JDK-8295729](https://bugs.openjdk.org/browse/JDK-8295729), the consensus >> was to replace valid trailing spaces with the corresponding unicode >> sequence, `\u0020`. (And of course remove non-wanted trailing spaces.) >> >> Doing so has a dual benefit: >> >> 1) It makes it clear to everyone reading the code that there is a trailing >> space and it is intended >> >> 2) It will allow us to remove all actual trailing space characters, and turn >> on the corresponding check in jcheck to keep the properties files, just like >> all other source code files, free of trailing spaces. >> >> Ultimately, the call of whether a trailing space is supposed to be there, or >> is a bug, lies with the respective component teams owning these files. Thus >> I have split up the set of properties files with trailing spaces in several >> groups, to match the JDK teams, and open a JBS issue for each of them. This >> issue is for code I believe belong with the serviceability team. > > Magnus Ihse Bursie has updated the pull request with a new target base due to > a merge or a rebase. The pull request now contains three commits: > > - Merge branch 'master' into properties-eol-serviceability > - Delete trailing \u0020 as per plummercj's suggestions > - 8298046: Fix hidden but significant trailing whitespace in properties > files for serviceability code src/jdk.management.agent/share/classes/jdk/internal/agent/resources/agent_ko.properties line 27: > 25: > 26: agent.err.error = 오류 > 27: agent.err.exception = 에이전트에 예외사항이 발생했습니다. I decided to remove the period here... src/jdk.management.agent/share/classes/jdk/internal/agent/resources/agent_ko.properties line 38: > 36: > 37: agent.err.agentclass.notfound = 관리 에이전트 클래스를 찾을 수 없습니다. > 38: agent.err.agentclass.failed = 관리 에이전트 클래스를 실패했습니다. ... but keep it here, as it aligned with the surrounding error messages. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/11490#discussion_r1478576012 PR Review Comment: https://git.openjdk.org/jdk/pull/11490#discussion_r1478576479
