You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Michael Osipov (JIRA)" <ji...@apache.org> on 2018/04/01 21:32:00 UTC

[jira] [Created] (SCM-878) .AbstractConsumer#parseDate() logs wrong locale in case of ParseException

Michael Osipov created SCM-878:
----------------------------------

             Summary: .AbstractConsumer#parseDate() logs wrong locale in case of ParseException
                 Key: SCM-878
                 URL: https://issues.apache.org/jira/browse/SCM-878
             Project: Maven SCM
          Issue Type: Bug
          Components: maven-scm-api
    Affects Versions: 1.9.5
         Environment: Apache Maven 3.5.3 (3383c37e1f9e9b3bc3df5050c29c8aff9f295297; 2018-02-24T20:49:05+01:00)
Maven home: D:\Entwicklung\Programme\apache-maven-3.5.3\bin\..
Java version: 10, vendor: Oracle Corporation
Java home: C:\Program Files\Java\jdk-10
Default locale: de_DE, platform encoding: Cp1252
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
            Reporter: Michael Osipov
            Assignee: Michael Osipov
             Fix For: 1.9.6


While testing SCM with JDK 10 the Jazz provider fails with:
{noformat}
skip ParseException: Unparseable date: "Feb 25, 2012 10:13 PM" during parsing date Feb 25, 2012 10:13 PM with pattern MMM d, yyyy h:mm a with Locale en
java.text.ParseException: Unparseable date: "Feb 25, 2012 10:13 PM"
        at java.base/java.text.DateFormat.parse(DateFormat.java:395)
        at org.apache.maven.scm.util.AbstractConsumer.parseDate(AbstractConsumer.java:112)
        at org.apache.maven.scm.util.AbstractConsumer.parseDate(AbstractConsumer.java:68)
        at org.apache.maven.scm.provider.jazz.command.changelog.JazzListChangesetConsumer.processModifiedLine(JazzListChangesetConsumer.java:341)
        at org.apache.maven.scm.provider.jazz.command.changelog.JazzListChangesetConsumer.consumeLine(JazzListChangesetConsumer.java:249)
        at org.apache.maven.scm.provider.jazz.command.changelog.JazzChangeLogCommandTest.testListChangesetConsumer(JazzChangeLogCommandTest.java:159)ListChangesetConsumer.java:341){noformat}
Looking th the Jazz test code, no locale is actually passed, so the default locale is used.

The issue is rooted in the catch warn statement (in {{org.apache.maven.scm.util.AbstractConsumer.parseDate(String, String, String, Locale)}}) which assumes that a passed null locale defaults to {{Locale.ENGLISH}}. It shall display {{Locale.getDefault()}}.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)