Uploaded image for project: 'Maven SCM'
  1. Maven SCM
  2. SCM-560

The capturing of mercurial revision is invalid

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Won't Fix
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None
    • Environment:
      Windows + JDK6 + Ant

      Description

      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);

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              wbernard William Bernardet
            • Votes:
              1 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: