You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Jonatan Urfalino (JIRA)" <ji...@codehaus.org> on 2012/08/28 18:18:21 UTC

[jira] (SCM-687) Fix TFS Support

Jonatan Urfalino created SCM-687:
------------------------------------

             Summary: Fix TFS Support
                 Key: SCM-687
                 URL: https://jira.codehaus.org/browse/SCM-687
             Project: Maven SCM
          Issue Type: Bug
          Components: maven-scm-provider-tfs
    Affects Versions: 1.7
         Environment: TFS 2008 (Team Explorer 2008 + TFPowerTools 2008)
Sonar 3.1.1
Sonar Runner 1.4
sonar-scm-activity-plugin-1.5.jar
maven-scm-api-1.7.jar
            Reporter: Jonatan Urfalino


When running SCM Activity Plugin for TFS you get hundreeds of "java.text.ParseException: Unparseable date" exceptions, because the 'tfpt annotate /nopromts' command does not return neither the date nor the author of each line, only the changeset number.
(Thus the second string that the plugin tries to find is not a date, but the file code itself)
Also see [SONARPLUGINS-373|http://jira.codehaus.org/browse/SONARPLUGINS-373?focusedCommentId=307289#comment-307289]

Error:
{code}
09:36:29.218 ERROR .s.ScmActivitySensor - Failure during SCM blame retrieval
java.lang.NullPointerException: null
	at java.util.Calendar.setTime(Calendar.java:1106) ~[na:1.7.0_03]
	at java.text.SimpleDateFormat.format(SimpleDateFormat.java:955) ~[na:1.7.0_03]
	at java.text.SimpleDateFormat.format(SimpleDateFormat.java:948) ~[na:1.7.0_03]
	at org.sonar.api.utils.DateUtils$ThreadSafeDateFormat.format(DateUtils.java:149) ~[sonar-plugin-api-3.1.1.jar:na]
	at java.text.DateFormat.format(DateFormat.java:336) ~[na:1.7.0_03]
	at org.sonar.api.utils.DateUtils.formatDateTime(DateUtils.java:55) ~[sonar-plugin-api-3.1.1.jar:na]
	at org.sonar.plugins.scmactivity.Blame.save(Blame.java:61) ~[na:na]
	at org.sonar.plugins.scmactivity.BlameVersionSelector.fileChanged(BlameVersionSelector.java:73) ~[na:na]
	at org.sonar.plugins.scmactivity.BlameVersionSelector.detect(BlameVersionSelector.java:57) ~[na:na]
	at org.sonar.plugins.scmactivity.ScmActivitySensor$1.call(ScmActivitySensor.java:110) ~[na:na]
	at org.sonar.plugins.scmactivity.ScmActivitySensor$1.call(ScmActivitySensor.java:108) ~[na:na]
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) ~[na:1.7.0_03]
	at java.util.concurrent.FutureTask.run(FutureTask.java:166) ~[na:1.7.0_03]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) ~[na:1.7.0_03]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) ~[na:1.7.0_03]
	at java.lang.Thread.run(Thread.java:722) ~[na:1.7.0_03]
09:36:31.464 WARN  .p.s.SonarScmManager - skip ParseException: Unparseable date: "System.Configuration;" during parsing date System.Configuration; with pattern MM/dd/yyyy with Locale en
java.text.ParseException: Unparseable date: "System.Configuration;"
	at java.text.DateFormat.parse(DateFormat.java:357) ~[na:1.7.0_03]
	at org.apache.maven.scm.util.AbstractConsumer.parseDate(AbstractConsumer.java:112) [maven-scm-api-1.7.jar:1.7]
	at org.apache.maven.scm.util.AbstractConsumer.parseDate(AbstractConsumer.java:68) [maven-scm-api-1.7.jar:1.7]
	at org.apache.maven.scm.provider.tfs.command.blame.TfsBlameConsumer.consumeLine(TfsBlameConsumer.java:66) [maven-scm-provider-tfs-1.7.jar:1.7]
	at org.codehaus.plexus.util.cli.StreamPumper.consumeLine(StreamPumper.java:197) [plexus-utils-2.0.5.jar:na]
	at org.codehaus.plexus.util.cli.StreamPumper.run(StreamPumper.java:137) [plexus-utils-2.0.5.jar:na]
09:36:31.464 WARN  .p.s.SonarScmManager - skip ParseException: Unparseable date: "System.Web;" during parsing date System.Web; with pattern MM/dd/yyyy with Locale en
java.text.ParseException: Unparseable date: "System.Web;"
	at java.text.DateFormat.parse(DateFormat.java:357) ~[na:1.7.0_03]
	at org.apache.maven.scm.util.AbstractConsumer.parseDate(AbstractConsumer.java:112) [maven-scm-api-1.7.jar:1.7]
	at org.apache.maven.scm.util.AbstractConsumer.parseDate(AbstractConsumer.java:68) [maven-scm-api-1.7.jar:1.7]
	at org.apache.maven.scm.provider.tfs.command.blame.TfsBlameConsumer.consumeLine(TfsBlameConsumer.java:66) [maven-scm-provider-tfs-1.7.jar:1.7]
	at org.codehaus.plexus.util.cli.StreamPumper.consumeLine(StreamPumper.java:197) [plexus-utils-2.0.5.jar:na]
	at org.codehaus.plexus.util.cli.StreamPumper.run(StreamPumper.java:137) [plexus-utils-2.0.5.jar:na]
{code}


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] (SCM-687) Fix TFS Support

Posted by "Freddy Mallet (JIRA)" <ji...@codehaus.org>.
    [ https://jira.codehaus.org/browse/SCM-687?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=314387#comment-314387 ] 

Freddy Mallet commented on SCM-687:
-----------------------------------

In fact according to the following discussion http://social.msdn.microsoft.com/Forums/en-US/tfspowertools/thread/d1820874-be55-4cba-a612-119affeca145, with TFS 2010 and TFS 2012, the tfpt.exe annotate /noprompt command doesn't dump anymore the author and date of last commit. So as long as this will not be case, I'm not sure that there is anything to do on Maven SCM side.
                
> Fix TFS Support
> ---------------
>
>                 Key: SCM-687
>                 URL: https://jira.codehaus.org/browse/SCM-687
>             Project: Maven SCM
>          Issue Type: Bug
>          Components: maven-scm-provider-tfs
>    Affects Versions: 1.7
>         Environment: TFS 2008 (Team Explorer 2008 + TFPowerTools 2008)
> Sonar 3.1.1
> Sonar Runner 1.4
> sonar-scm-activity-plugin-1.5.jar
> maven-scm-api-1.7.jar
>            Reporter: Jonatan Urfalino
>
> When running SCM Activity Plugin for TFS you get hundreeds of "java.text.ParseException: Unparseable date" exceptions, because the 'tfpt annotate /nopromts' command does not return neither the date nor the author of each line, only the changeset number.
> (Thus the second string that the plugin tries to find is not a date, but the file code itself)
> Also see [SONARPLUGINS-373|http://jira.codehaus.org/browse/SONARPLUGINS-373?focusedCommentId=307289#comment-307289]
> Error:
> {code}
> 09:36:29.218 ERROR .s.ScmActivitySensor - Failure during SCM blame retrieval
> java.lang.NullPointerException: null
> 	at java.util.Calendar.setTime(Calendar.java:1106) ~[na:1.7.0_03]
> 	at java.text.SimpleDateFormat.format(SimpleDateFormat.java:955) ~[na:1.7.0_03]
> 	at java.text.SimpleDateFormat.format(SimpleDateFormat.java:948) ~[na:1.7.0_03]
> 	at org.sonar.api.utils.DateUtils$ThreadSafeDateFormat.format(DateUtils.java:149) ~[sonar-plugin-api-3.1.1.jar:na]
> 	at java.text.DateFormat.format(DateFormat.java:336) ~[na:1.7.0_03]
> 	at org.sonar.api.utils.DateUtils.formatDateTime(DateUtils.java:55) ~[sonar-plugin-api-3.1.1.jar:na]
> 	at org.sonar.plugins.scmactivity.Blame.save(Blame.java:61) ~[na:na]
> 	at org.sonar.plugins.scmactivity.BlameVersionSelector.fileChanged(BlameVersionSelector.java:73) ~[na:na]
> 	at org.sonar.plugins.scmactivity.BlameVersionSelector.detect(BlameVersionSelector.java:57) ~[na:na]
> 	at org.sonar.plugins.scmactivity.ScmActivitySensor$1.call(ScmActivitySensor.java:110) ~[na:na]
> 	at org.sonar.plugins.scmactivity.ScmActivitySensor$1.call(ScmActivitySensor.java:108) ~[na:na]
> 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) ~[na:1.7.0_03]
> 	at java.util.concurrent.FutureTask.run(FutureTask.java:166) ~[na:1.7.0_03]
> 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) ~[na:1.7.0_03]
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) ~[na:1.7.0_03]
> 	at java.lang.Thread.run(Thread.java:722) ~[na:1.7.0_03]
> 09:36:31.464 WARN  .p.s.SonarScmManager - skip ParseException: Unparseable date: "System.Configuration;" during parsing date System.Configuration; with pattern MM/dd/yyyy with Locale en
> java.text.ParseException: Unparseable date: "System.Configuration;"
> 	at java.text.DateFormat.parse(DateFormat.java:357) ~[na:1.7.0_03]
> 	at org.apache.maven.scm.util.AbstractConsumer.parseDate(AbstractConsumer.java:112) [maven-scm-api-1.7.jar:1.7]
> 	at org.apache.maven.scm.util.AbstractConsumer.parseDate(AbstractConsumer.java:68) [maven-scm-api-1.7.jar:1.7]
> 	at org.apache.maven.scm.provider.tfs.command.blame.TfsBlameConsumer.consumeLine(TfsBlameConsumer.java:66) [maven-scm-provider-tfs-1.7.jar:1.7]
> 	at org.codehaus.plexus.util.cli.StreamPumper.consumeLine(StreamPumper.java:197) [plexus-utils-2.0.5.jar:na]
> 	at org.codehaus.plexus.util.cli.StreamPumper.run(StreamPumper.java:137) [plexus-utils-2.0.5.jar:na]
> 09:36:31.464 WARN  .p.s.SonarScmManager - skip ParseException: Unparseable date: "System.Web;" during parsing date System.Web; with pattern MM/dd/yyyy with Locale en
> java.text.ParseException: Unparseable date: "System.Web;"
> 	at java.text.DateFormat.parse(DateFormat.java:357) ~[na:1.7.0_03]
> 	at org.apache.maven.scm.util.AbstractConsumer.parseDate(AbstractConsumer.java:112) [maven-scm-api-1.7.jar:1.7]
> 	at org.apache.maven.scm.util.AbstractConsumer.parseDate(AbstractConsumer.java:68) [maven-scm-api-1.7.jar:1.7]
> 	at org.apache.maven.scm.provider.tfs.command.blame.TfsBlameConsumer.consumeLine(TfsBlameConsumer.java:66) [maven-scm-provider-tfs-1.7.jar:1.7]
> 	at org.codehaus.plexus.util.cli.StreamPumper.consumeLine(StreamPumper.java:197) [plexus-utils-2.0.5.jar:na]
> 	at org.codehaus.plexus.util.cli.StreamPumper.run(StreamPumper.java:137) [plexus-utils-2.0.5.jar:na]
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira