jira.codehaus.org

  • Log In Access more options
    • Online Help
    • Keyboard Shortcuts
    • About JIRA
    • JIRA Credits
    • What?s New
  • Dashboards Access more options (Alt+d)
  • Projects Access more options (Alt+p)
  • Issues Access more options (Alt+i)
  • Mojo
  • MOJO-1026

Svnchangelog-maven-plugin

  • Log In
  • Views
    • XML
    • Word
    • Printable

Details

  • Type: New Feature New Feature
  • Status: Closed Closed
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: None
  • Fix Version/s: None
  • Component/s: _Plugin Submission
  • Labels:
    None
  • Environment:
    Maven 2.0.8
  • Complexity:
    Intermediate
  • Testcase included:
    yes

Description

New mojo that produces a report equivalent to the maven-changes-plugin but using subversion commit logs instead of an XML file.
This was first submitted as a enhancement for the maven-changes-plugin but it doesn't seem to fit in their view :o( (http://jira.codehaus.org/browse/MCHANGES-78);
With more than 14 votes and some interests on the mojo-dev mailing list, I therefore sumit it

  • Options
    • Sort By Name
    • Sort By Date
    • Ascending
    • Descending
    • Download All

Attachments

  1. GZip Archive
    svnchangelog-maven-plugin_with_hg.tar.gz
    13/Feb/08 8:06 AM
    849 kB
    Emmanuel Hugonnet
  2. GZip Archive
    svnchangelog-maven-plugin.tar.gz
    04/Feb/08 9:28 AM
    625 kB
    Emmanuel Hugonnet
  3. GZip Archive
    svnchangelog-maven-plugin.tar.gz
    30/Jan/08 10:34 AM
    941 kB
    Emmanuel Hugonnet
  4. Hide
    Zip Archive
    svnchangelog-maven-plugin.zip
    01/Feb/08 9:38 AM
    123 kB
    Emmanuel Hugonnet
    1. XML File
      svnchangelog-maven-plugin/effective-pom.xml 13 kB
    2. Text File
      svnchangelog-maven-plugin/license.txt 1 kB
    3. XML File
      svnchangelog-maven-plugin/pom.xml 9 kB
    4. Java Source File
      svnchangelog-maven-plugin/.../AbstractBufferedConsumer.java 2 kB
    5. Java Source File
      svnchangelog-maven-plugin/.../AbstractSvnGrammar.java 8 kB
    6. Java Source File
      svnchangelog-maven-plugin/.../ManuSvnGrammar.java 3 kB
    7. Java Source File
      svnchangelog-maven-plugin/.../RemySvnGrammar.java 3 kB
    8. Java Source File
      svnchangelog-maven-plugin/.../GrammarEnum.java 2 kB
    9. Java Source File
      svnchangelog-maven-plugin/src/.../Issue.java 2 kB
    10. Java Source File
      svnchangelog-maven-plugin/.../Message.java 2 kB
    11. Java Source File
      svnchangelog-maven-plugin/.../OperationTypeEnum.java 2 kB
    12. Java Source File
      svnchangelog-maven-plugin/.../SvnGrammar.java 2 kB
    13. Java Source File
      svnchangelog-maven-plugin/.../SvnLogEntry.java 3 kB
    14. Java Source File
      svnchangelog-maven-plugin/.../Release.java 2 kB
    15. Java Source File
      svnchangelog-maven-plugin/.../SvnChangeLogCommand.java 7 kB
    16. Java Source File
      svnchangelog-maven-plugin/.../SvnChangeLogConsumer.java 4 kB
    17. Java Source File
      svnchangelog-maven-plugin/.../ScmActivityReport.java 26 kB
    18. Java Source File
      svnchangelog-maven-plugin/.../SvnTargetEnum.java 2 kB
    19. Java Source File
      svnchangelog-maven-plugin/.../SvnXmlExeScmProvider.java 3 kB
    20. Java Source File
      svnchangelog-maven-plugin/.../SvnListCommand.java 5 kB
    21. Java Source File
      svnchangelog-maven-plugin/.../SvnListConsumer.java 4 kB
    22. Java Source File
      svnchangelog-maven-plugin/src/.../Tag.java 3 kB
    23. Java Source File
      svnchangelog-maven-plugin/.../BugTrackers.java 2 kB
    24. Java Source File
      svnchangelog-maven-plugin/.../BugTrackLinker.java 1 kB
    25. Java Source File
      svnchangelog-maven-plugin/.../JiraBugTrackLinker.java 2 kB
    26. Java Source File
      svnchangelog-maven-plugin/.../SourceforgeBugTrackLinker.java 2 kB
    27. XML File
      svnchangelog-maven-plugin/src/.../blame.xsd 1 kB
    28. File
      svnchangelog-maven-plugin/src/.../clean.xsl 0.6 kB
    29. XML File
      svnchangelog-maven-plugin/src/.../common.xsd 2 kB
    30. Text File
      svnchangelog-maven-plugin/src/.../header.txt 1 kB
    Showing 30 of 52 items Download Zip
    Show
    Zip Archive
    svnchangelog-maven-plugin.zip
    01/Feb/08 9:38 AM
    123 kB
    Emmanuel Hugonnet

Issue Links

supercedes

Improvement - An improvement or enhancement to an existing feature or task. MCHANGES-78 Build a changes report by parsing svn comments

  • Minor - Minor loss of function, or other problem where easy workaround is present.
  • Closed - The issue is considered finished, the resolution is correct. Issues which are not closed can be reopened.

Activity

Ascending order - Click to sort in descending order
  • All
  • Comments
  • Work Log
  • History
  • Activity
Hide
Permalink
Jerome Lacoste added a comment - 30/Jan/08 3:04 PM - edited

I had to disable this for the project to build

</excludes>
          <!--compilerArguments>
            <verbose/>    
            <bootclasspath>${settings.localRepository}/com/sun/rt/1.4.2_13/rt-1.4.2_13.jar</bootclasspath>
          </compilerArguments-->
        </configuration>
        <!--dependencies>
          <dependency>
            <groupId>com.sun</groupId>
            <artifactId>rt</artifactId>
            <version>1.4.2_13</version>
          </dependency>
        </dependencies-->
      </plugin>

The site

  • examples/example.html has a typo in the xdoc file name (exemple.xml). By the way this file could use better formatting.
  • might be useful to describe what to do to add support to extra trackers

I looked briefly at the code. Some comments:

  • code formatting isn't following project standard (1450 checkstyle errors)
  • some comments are in French (e.g. in POM or site.xml)
  • your might want to provide a french translation for the report
  • some strings are hardcoded in the scm activity report
  • in the scm activity report, some fields could be made @required
  • hashcode() in SvnTargetEnum treats this.name == null as a potential case (shouldn't and not consistent with equals). Same for others.
  • super() is optional
  • in AbstractBufferedConsumer you could change the analize() contract change and make it return the elements, and get rid off the analyzed field and test for elements == null instead. Makes analyze() self contract descriptive
  • you can reuse server in loadInfosFromSettings()

and as Trygvis said in the mailing list, how hard to make this scm independant ?

as for the bug Tracker interface, it would be nice to start a project to handle common issue trackers operations. But that's for later on...

Hope that helps.

Show
Jerome Lacoste added a comment - 30/Jan/08 3:04 PM - edited I had to disable this for the project to build
</excludes>
          <!--compilerArguments>
            <verbose/>    
            <bootclasspath>${settings.localRepository}/com/sun/rt/1.4.2_13/rt-1.4.2_13.jar</bootclasspath>
          </compilerArguments-->
        </configuration>
        <!--dependencies>
          <dependency>
            <groupId>com.sun</groupId>
            <artifactId>rt</artifactId>
            <version>1.4.2_13</version>
          </dependency>
        </dependencies-->
      </plugin>
The site
  • examples/example.html has a typo in the xdoc file name (exemple.xml). By the way this file could use better formatting.
  • might be useful to describe what to do to add support to extra trackers
I looked briefly at the code. Some comments:
  • code formatting isn't following project standard (1450 checkstyle errors)
  • some comments are in French (e.g. in POM or site.xml)
  • your might want to provide a french translation for the report
  • some strings are hardcoded in the scm activity report
  • in the scm activity report, some fields could be made @required
  • hashcode() in SvnTargetEnum treats this.name == null as a potential case (shouldn't and not consistent with equals). Same for others.
  • super() is optional
  • in AbstractBufferedConsumer you could change the analize() contract change and make it return the elements, and get rid off the analyzed field and test for elements == null instead. Makes analyze() self contract descriptive
  • you can reuse server in loadInfosFromSettings()
and as Trygvis said in the mailing list, how hard to make this scm independant ? as for the bug Tracker interface, it would be nice to start a project to handle common issue trackers operations. But that's for later on... Hope that helps.
Hide
Permalink
Emmanuel Hugonnet added a comment - 30/Jan/08 3:24 PM

Hi,
Thanks for your remarks !! I will take them into account as much as I can do this friday.
For the rt.jar this comes from the fact that I am using a jdk6 and I wanted to assure compatibility with the jdk1.42.
I will export the Strings so that we may have I18n. I am sorry for the French left (mother tongue) ;o).
ASfor the others SCM, most of the work is done by using the tags elements, I don't know for others scm. I don't think cvs would qualify.
I will improve the documentation for developpers, it is definitively lacking.
I'll hope to post an improved version soon.
Emmanuel

Show
Emmanuel Hugonnet added a comment - 30/Jan/08 3:24 PM Hi, Thanks for your remarks !! I will take them into account as much as I can do this friday. For the rt.jar this comes from the fact that I am using a jdk6 and I wanted to assure compatibility with the jdk1.42. I will export the Strings so that we may have I18n. I am sorry for the French left (mother tongue) ;o). ASfor the others SCM, most of the work is done by using the tags elements, I don't know for others scm. I don't think cvs would qualify. I will improve the documentation for developpers, it is definitively lacking. I'll hope to post an improved version soon. Emmanuel
Hide
Permalink
Emmanuel Hugonnet added a comment - 01/Feb/08 9:38 AM

Updated code formatting, and Jerome's remarks are taken into account.
Updated documentation (the example is still to light, I know) with some elements about how to extend it.
Removed French comments
Removed rt.jar dependency.

Show
Emmanuel Hugonnet added a comment - 01/Feb/08 9:38 AM Updated code formatting, and Jerome's remarks are taken into account. Updated documentation (the example is still to light, I know) with some elements about how to extend it. Removed French comments Removed rt.jar dependency.
Hide
Permalink
Emmanuel Hugonnet added a comment - 04/Feb/08 9:28 AM

Some images were in our skin, I have added them to the project.
There was an error with the internationalization.
I have updated the example and we provide a erport generated on another project while we are waiting for Codehaus svn urls to be ready.
Emmanuel

Show
Emmanuel Hugonnet added a comment - 04/Feb/08 9:28 AM Some images were in our skin, I have added them to the project. There was an error with the internationalization. I have updated the example and we provide a erport generated on another project while we are waiting for Codehaus svn urls to be ready. Emmanuel
Hide
Permalink
Emmanuel Hugonnet added a comment - 12/Feb/08 4:48 AM

Implementation of Mercurial is done :o)
What blocks me from using only Maven scm Api is the fact that I can't get the revision in a ChangeSet. currently I have to provide my own implementation of commands to return this information.
Emmanuel

Show
Emmanuel Hugonnet added a comment - 12/Feb/08 4:48 AM Implementation of Mercurial is done :o) What blocks me from using only Maven scm Api is the fact that I can't get the revision in a ChangeSet. currently I have to provide my own implementation of commands to return this information. Emmanuel
Hide
Permalink
Emmanuel Hugonnet added a comment - 13/Feb/08 8:06 AM

No more francetelecom reference.
Support for Hg.
Documentation update

Show
Emmanuel Hugonnet added a comment - 13/Feb/08 8:06 AM No more francetelecom reference. Support for Hg. Documentation update
Hide
Permalink
Emmanuel Hugonnet added a comment - 14/Apr/08 2:31 AM

The plugin should be renamed as scmchangelog-maven-plugin has it can be used with at least 2 SCMs and more could be supported.

Show
Emmanuel Hugonnet added a comment - 14/Apr/08 2:31 AM The plugin should be renamed as scmchangelog-maven-plugin has it can be used with at least 2 SCMs and more could be supported.
Hide
Permalink
Arnaud Heritier added a comment - 22/May/08 6:29 PM

https://svn.codehaus.org/mojo/trunk/sandbox/scmchangelog-maven-plugin

Show
Arnaud Heritier added a comment - 22/May/08 6:29 PM https://svn.codehaus.org/mojo/trunk/sandbox/scmchangelog-maven-plugin

People

  • Assignee:
    Arnaud Heritier
    Reporter:
    Emmanuel Hugonnet
Vote (8)
Watch (4)

Dates

  • Created:
    30/Jan/08 10:34 AM
    Updated:
    22/May/08 6:29 PM
    Resolved:
    22/May/08 6:29 PM
  • Atlassian JIRA (v5.0.4#731-sha1:3aa7374)
  • Report a problem
  • Powered by a free Atlassian JIRA open source license for Codehaus. Try JIRA - bug tracking software for your team.