The attached patch and files remove the strict dependency the ChangeLog executor had on CVS. The change log input is now generated by an implementor of the org.apache.maven.changelog.ChangeLogGenerator interface, and parsed by an implementor of the org.apache.maven.changelog.ChangeLogParser interface.
The executor and its principle support classes and interfaces have been moved to the org.apache.maven.changelog package. The output generated by the ChangeLog executor has not changed, nor have the ChangeLogEntry or ChangeLogFile classes. The default implementation for maven falls back on CVS, which is implemented by the org.apache.maven.cvslib.CvsChangeLogGenerator and org.apache.maven.cvslib.CvsChangeLogParser. Because CVS doesn't create diffs for moved files, a number of complete files have been attached. Glenn McAllister SOMA Networks, Inc.
clpatch.tar.gz
Description: Tarball of moved and modified files
Index: src/templates/build/build-docs.xml
===================================================================
RCS file: /home/cvs/jakarta-turbine-maven/src/templates/build/build-docs.xml,v
retrieving revision 1.58
diff -u -r1.58 build-docs.xml
--- src/templates/build/build-docs.xml 27 Apr 2002 14:10:47 -0000 1.58
+++ src/templates/build/build-docs.xml 29 Apr 2002 13:29:20 -0000
@@ -118,15 +118,18 @@
<taskdef
name="change-log"
- classname="org.apache.maven.ChangeLog">
+ classname="org.apache.maven.changelog.ChangeLog">
<classpath refid="maven-classpath"/>
+ <classpath refid="classpath"/>
</taskdef>
<change-log
projectDescriptor="project.xml"
baseDir="."
output="${gen.docs}/changelog.xml"
- days="${changelog.days}"
+ range="${changelog.days}"
+ generator="${changelog.generator}"
+ parser="${changelog.parser}"
/>
</target>
Index: src/templates/build/default.properties
===================================================================
RCS file: /home/cvs/jakarta-turbine-maven/src/templates/build/default.properties,v
retrieving revision 1.26
diff -u -r1.26 default.properties
--- src/templates/build/default.properties 27 Apr 2002 14:10:47 -0000 1.26
+++ src/templates/build/default.properties 29 Apr 2002 13:29:20 -0000
@@ -145,6 +145,8 @@
# properties for changelog
##
changelog.days = 5
+changelog.generator = org.apache.maven.cvslib.CvsChangeLogGenerator
+changelog.parser = org.apache.maven.cvslib.CvsChangeLogParser
# -------------------------------------------------------------------
# M A V E N U P D A T E S I T E A N D S E L F U P D A T I N G
Index: xdocs/properties.xml
===================================================================
RCS file: /home/cvs/jakarta-turbine-maven/xdocs/properties.xml,v
retrieving revision 1.11
diff -u -r1.11 properties.xml
--- xdocs/properties.xml 27 Apr 2002 14:10:47 -0000 1.11
+++ xdocs/properties.xml 29 Apr 2002 13:29:21 -0000
@@ -1079,8 +1079,42 @@
Specifies the number of days to use when generating the
change log. This is used by the <a
href="build-file.html#maven:cvs-change-log">maven:cvs-change-log</a>
- task.
+ target.
The default value is <code>5</code> days.
+ </td>
+ </tr>
+ <tr>
+ <td>changelog.generator</td>
+ <td>Yes</td>
+ <td>
+ Specifies a fully qualified class name implementing
+ <code>org.apache.maven.changelog.ChangeLogGenerator</code>. This
+ class creates an <code>InputStream</code> that is parsed by the
+ class specified by the <code>changelog.parser</code> property to create
+ a collection of <code>ChangeLogEntry</code> objects. This is used
+ by the <a
+ href="build-file.html#maven:cvs-change-log">maven:cvs-change-log</a>
+ target. The default value is
+ <a
+ href="apidocs/org/apache/maven/cvslib/CvsChangeLogGenerator.html">
+ org.apache.maven.cvslib.CvsChangeLogGenerator</a>.
+ </td>
+ </tr>
+ <tr>
+ <td>changelog.parser</td>
+ <td>Yes</td>
+ <td>
+ Specifies a fully qualified class name implementing
+ <code>org.apache.maven.changelog.ChangeLogParser</code>. This
+ class parses the <code>InputStream</code> created by the class
+ specified by the <code>changelog.generator</code> property to
+ create a collection of <code>ChnageLogEntry</code> objects.
+ This is used by the <a
+ href="build-file.html#maven:cvs-change-log">maven:cvs-change-log</a>
+ target. The default value is
+ <a
+ href="apidocs/org/apache/maven/cvslib/CvsChangeLogParser.html">
+ org.apache.maven.cvslib.CvsChangeLogParser</a>.
</td>
</tr>
<tr>
