September’s short form “Sep” no longer parses in Java 17 in en_GB locale

It seems to be that in the en_GB locale, the short form of September is now “Sept”, not “Sep”. All the other months are the same 3 letters abbreviations as in en_US. Kind of makes sense. As a Brit, “Sep” looks wrong to me.

This is the ticket: https://bugs.openjdk.java.net/browse/JDK-8251317

It wasn’t a conscious decision by the JDK authors. The locale data used by default in Java comes from Common Locale Data Repository (CLDR), which is a project by the Unicode Consortium. Newer versions of Java come with newer versions of the CLDR. So you may occasionally see a change in locale behavior. So the change you encountered is a feature, not a bug.

Yours is just one of many small tweaks.

Here’s the specific change in the PR which broke it for you:
https://github.com/openjdk/jdk/pull/1279/files#diff-97210acd6f77c4f4979c43445d60ba1c369f058230e41177dceca697800b1fa2R116

Leave a Comment