On 6/7/05, Vincent Massol <[EMAIL PROTECTED]> wrote: > > > > -----Original Message----- > > From: Henri Yandell [mailto:[EMAIL PROTECTED] > > Sent: mardi 7 juin 2005 15:24 > > To: Vincent Massol > > Cc: Cactus Developers List > > Subject: Re: [VOTE] Migrating to Subversion > > > > Grep and I are unable to find the cvs task being used in the Cactus > > build (at least for the top three directories). > > Are we talking about the cvschangelog task in documentation/build.xml? > > Yes that's the one I had in mind.
I posted to the Ant list to see if anyone had solved this before, but sadly not. However, it seems to me that it might be solveable. One of the svn features is that you can get the log in xml format, so an old cvs changelog in xml goes from: <changelog> <entry> <date>2005-05-08</date> <time>11:04</time> <author><![CDATA[Vincent Massol]]></author> <file> <name>downloads.xml</name> <revision>1.17</revision> </file> <msg><![CDATA[Improved download link that goes directly to the Cactus download page on Jakarta.]]></msg> </entry> </changelog> <log> <logentry revision="111117"> <author>vmassol</author> <date>2005-05-08T11:04:00.000000Z</date> <paths> <path action="M">/full/path/to/downloads.xml</path> </paths> <msg>Improved download link that goes directly to the Cactus download page on Jakarta.</msg> </logentry> </log> or something much like that. The obvious differences being a lack of CDATA and the fact it'll use the login name and not the user's full name (via /etc/passwd I presume). The first is probably not a problem, I imagine SVN correctly escapes its output, and the second seems to be okay as Cactus doesn't show that data on their changes page (http://jakarta.apache.org/cactus/changes.html). So changing the cvschangelog task to be an exec of 'svn log -v --xml', and modifying the xsl in documentation/docs/skins/jakarta.apache.org/stylesheets/document2html.xsl to handle the different style of input, could do the trick. Still not a piece of cake. Splitting the date, throwing away the unnecessary parts of the path and handling commits that contain more than one file are all issues to be handled, and in a functional language like XSL, they can be oddly painful. Also, there's no obvious way to exclude the 5 excluded files: <exclude name="**/navigation.xml"/> <exclude name="sitemap.xml"/> <exclude name="participating/todo.xml"/> <exclude name="changes.xml"/> <exclude name="**/cvslog.xml"/> Looks like Stefan's svnchangelog task might take care of the 3 issues I list, and should handle excludes as it's based on the Ant fileset system. I'll mail Ant to find out when that's likely to find its way into an Ant release. An obvious other suggestion is to comment out the cvs-changelog table for the site between the period of moving to svn and the period of a task existing to easily turn it back on again. Or switch to using the changes.xml style for the site as well and managing it by hand. Neither highly desirable, but thought I'd bring them up. Hen --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]