You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "William Bernardet (JIRA)" <ji...@codehaus.org> on 2010/06/29 10:57:32 UTC

[jira] Created: (SCM-560) The capturing of mercurial revision is invalid

The capturing of mercurial revision is invalid
----------------------------------------------

                 Key: SCM-560
                 URL: http://jira.codehaus.org/browse/SCM-560
             Project: Maven SCM
          Issue Type: Bug
          Components: maven-scm-provider-mercurial (hg)
         Environment: Windows + JDK6 + Ant
            Reporter: William Bernardet


The HgRevNoConsumer is parsing the output of hg id command using the full line and assuming the revision is a number matching [0-9] numbers
https://svn.apache.org/repos/asf/maven/scm/trunk/maven-scm-providers/maven-scm-provider-hg/src/main/java/org/apache/maven/scm/provider/hg/HgUtils.java

Mercurial can return an id with the revision branch and tag label e.g:
58bda09e68fa tip
or if the repo contains uncommited changes:
58bda09e68fa+ tip

The extraction of the revision should be updated by splitting the line and take the first part only and then remove the ending '+' if needed. Then the resulting string should be converted using radix 16 (int is not able to store the result), code should be something like that:
long revision = Long.parse(line.split("\\s+")[0].trim("+"), 16);



-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira