Let me prefix this with: - I'm not against us using mvn as our build tool for components. - I think we need to do this more consensually and build more knowledge about the tools we use.
On 11/17/07, Niall Pemberton <[EMAIL PROTECTED]> wrote: > On Nov 17, 2007 1:10 AM, Dion Gillard <[EMAIL PROTECTED]> wrote: > > I figure that things are going to get missed since there's been little > > to no discussion I can recall in recent times on how, what, when it's > > happening. > > The reality is its already been happening slowly. Ten components had > working m2 builds (and proxy and jci only have m2 builds) before I > started yesterday. Another 15 had m2 poms but needed work on the site > generation and/or needed assembly defs. adding to create distros. Only > nine components had no m2 build at all (two still don't - Attributes > and Jelly). We've also had five releases of the commons-parent pom - > the vote for each of which was an opportunity for discussion. How would devs without good working mvn knowledge be able to vote on a release of the parent pom? It's a 421 line beast that requires a very good understanding of mvn internals to provide constructive criticism, and given that under half of the components weren't using mvn to perform releases, I would expect that the vote would be of interest only to those already with a supported mvn build. The pom.xml for Jexl is 167 lines long. Add the parent pom's 421 lines and the org.apache:apache:4 pom (where would I find that in svn out of curiosity? Where are it's votes happening?), and compare it to the 198 line Jexl standalone project.xml. mvn is almost three times more complex in this case. > From my PoV I just kick started the process yesterday by ensuring that > the remaining components (expect Attributes and Jelly) now have m2 > builds that can 1) Generate the component's Site and 2) Produce source > and binary distros. Its quite possible that I made some mistakes and > missed things (I did test each one), but m2-wise I believe those > components are now in a better state and it should be easier for the > devs on each component to refine them as they require. The main point > is though that these are all in addition to the existing m1/ant builds > which should continue to work. I suppose the question is, if the devs on those components don't have experience with mvn and it's settings who will maintain these files? Will we repeat the mistake we made with some components when we added a maven build?The ant builds either got updated and out of sync with the maven build, or the ant builds got left behind and in many cases weren't very useful, even though they should have continued to work. Was there a reason to leave out Jelly and Attributes from the updates, or was it just lack of time and understanding of the existing maven build for them? > "Moving" to m2 implies giving up the m1 builds - I agree we haven't > yet taken that decision, but with the m2 coverage we've had up till > this point that wasn't possible. I think that now that almost all > components have a working m2 build its now become an option - but > you're right that sort of decision needs discussion. What about using buildr? > > > As a start: > > - Shouldn't things like the changes plugin issue management URL be in > > the parent POM? > > How do you mean? I guess we could do something like the following in > the parent pom: > > <url>http://commons.apache.org/${commons.id}/</url> > <issueManagement> > <system>jira</system> > <url>http://issues.apache.org/jira/browse/${commons.id}</url> > </issueManagement> > <scm> > > <connection>scm:svn:http://svn.apache.org/repos/asf/commons/proper/${commons.id}/trunk/</connection> > > <developerConnection>scm:svn:https://svn.apache.org/repos/asf/commons/proper/${commons.id}/trunk/</developerConnection> > > <url>http://svn.apache.org/viewvc/commons/proper/${commons.id}/trunk/</url> > </scm> > > And then in individual component pom's: > <properties> > <commons.id>validator</commons.id> > </properties> > > Was that the kind of thing - or something else? Yep, that's it. I'd rather we didn't repeat ourselves across components without a good reason. > > - Is there a working Javacc 4.0 plugin for mvn? > > Dunno, but not sure of the relevance - assume its specific to a couple > of components. If there isn't I wont be able to move the v2 branch of Jexl to mvn. > > Niall > > > Dion > > > > > > On 11/17/07, Martin van den Bemt <[EMAIL PROTECTED]> wrote: > > > Do you anticipate complications with a move ? > > > > > > Mvgr, > > > Martin > > > > > > Dion Gillard wrote: > > > > Hi all, > > > > > > > > is there a mandate for an m2 build for commons? > > > > > > > > On 11/16/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote: > > > >> Author: niallp > > > >> Date: Fri Nov 16 03:42:56 2007 > > > >> New Revision: 595632 > > > >> > > > >> URL: http://svn.apache.org/viewvc?rev=595632&view=rev > > > >> Log: > > > >> Add m2 build > > > >> > > > >> Added: > > > >> commons/proper/jexl/trunk/pom.xml (with props) > > > >> commons/proper/jexl/trunk/src/assembly/ > > > >> commons/proper/jexl/trunk/src/assembly/bin.xml (with props) > > > >> commons/proper/jexl/trunk/src/assembly/src.xml (with props) > > > >> commons/proper/jexl/trunk/src/site/ > > > >> commons/proper/jexl/trunk/src/site/resources/ > > > >> commons/proper/jexl/trunk/src/site/resources/images/ > > > >> - copied from r595528, commons/proper/jexl/trunk/xdocs/images/ > > > >> commons/proper/jexl/trunk/src/site/site.xml (with props) > > > >> > > > >> Added: commons/proper/jexl/trunk/pom.xml > > > >> URL: > > > >> http://svn.apache.org/viewvc/commons/proper/jexl/trunk/pom.xml?rev=595632&view=auto > > > >> ============================================================================== > > > >> --- commons/proper/jexl/trunk/pom.xml (added) > > > >> +++ commons/proper/jexl/trunk/pom.xml Fri Nov 16 03:42:56 2007 > > > >> @@ -0,0 +1,167 @@ > > > >> +<?xml version="1.0"?> > > > >> +<!-- > > > >> + Licensed to the Apache Software Foundation (ASF) under one or more > > > >> + contributor license agreements. See the NOTICE file distributed > > > >> with > > > >> + this work for additional information regarding copyright ownership. > > > >> + The ASF licenses this file to You under the Apache License, > > > >> Version 2.0 > > > >> + (the "License"); you may not use this file except in compliance > > > >> with > > > >> + the License. You may obtain a copy of the License at > > > >> + > > > >> + http://www.apache.org/licenses/LICENSE-2.0 > > > >> + > > > >> + Unless required by applicable law or agreed to in writing, software > > > >> + distributed under the License is distributed on an "AS IS" BASIS, > > > >> + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or > > > >> implied. > > > >> + See the License for the specific language governing permissions and > > > >> + limitations under the License. > > > >> +--> > > > >> +<project > > > >> + xmlns="http://maven.apache.org/POM/4.0.0" > > > >> + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > > > >> + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 > > > >> http://maven.apache.org/maven-v4_0_0.xsd"> > > > >> + <parent> > > > >> + <groupId>org.apache.commons</groupId> > > > >> + <artifactId>commons-parent</artifactId> > > > >> + <version>5</version> > > > >> + </parent> > > > >> + <modelVersion>4.0.0</modelVersion> > > > >> + <groupId>commons-jexl</groupId> > > > >> + <artifactId>commons-jexl</artifactId> > > > >> + <version>1.1.1-SNAPSHOT</version> > > > >> + <name>Commons JEXL</name> > > > >> + <inceptionYear>2003</inceptionYear> > > > >> + <description>Jexl is an implementation of the JSTL Expression > > > >> Language with extensions.</description> > > > >> + <url>http://commons.apache.org/jexl/</url> > > > >> + > > > >> + <issueManagement> > > > >> + <system>jira</system> > > > >> + <url>http://issues.apache.org/jira/browse/JEXL</url> > > > >> + </issueManagement> > > > >> + > > > >> + <scm> > > > >> + > > > >> <connection>scm:svn:http://svn.apache.org/repos/asf/commons/proper/jexl/trunk</connection> > > > >> + > > > >> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/commons/proper/jexl/trunk</developerConnection> > > > >> + <url>http://svn.apache.org/viewvc/commons/proper/jexl/trunk</url> > > > >> + </scm> > > > >> + > > > >> + <developers> > > > >> + <developer> > > > >> + <name>dIon Gillard</name> > > > >> + <id>dion</id> > > > >> + <email>[EMAIL PROTECTED]</email> > > > >> + <organization>Apache Software Foundation</organization> > > > >> + </developer> > > > >> + <developer> > > > >> + <name>Geir Magnusson Jr.</name> > > > >> + <id>geirm</id> > > > >> + <email>[EMAIL PROTECTED]</email> > > > >> + <organization>independent</organization> > > > >> + </developer> > > > >> + <developer> > > > >> + <name>Tim O'Brien</name> > > > >> + <id>tobrien</id> > > > >> + <email>[EMAIL PROTECTED]</email> > > > >> + <organization>independent</organization> > > > >> + </developer> > > > >> + <developer> > > > >> + <name>Peter Royal</name> > > > >> + <id>proyal</id> > > > >> + <email>[EMAIL PROTECTED]</email> > > > >> + <organization>Apache Software Foundation</organization> > > > >> + </developer> > > > >> + <developer> > > > >> + <name>James Strachan</name> > > > >> + <id>jstrachan</id> > > > >> + <email>[EMAIL PROTECTED]</email> > > > >> + <organization>SpiritSoft, Inc.</organization> > > > >> + </developer> > > > >> + <developer> > > > >> + <name>Rahul Akolkar</name> > > > >> + <id>rahul</id> > > > >> + <email>rahul AT apache.org</email> > > > >> + <organization>Apache Software Foundation</organization> > > > >> + </developer> > > > >> + </developers> > > > >> + > > > >> + <dependencies> > > > >> + <dependency> > > > >> + <groupId>commons-logging</groupId> > > > >> + <artifactId>commons-logging</artifactId> > > > >> + <version>1.0.4</version> > > > >> + </dependency> > > > >> + <dependency> > > > >> + <groupId>junit</groupId> > > > >> + <artifactId>junit</artifactId> > > > >> + <version>3.8.1</version> > > > >> + <optional>true</optional> > > > >> + </dependency> > > > >> + </dependencies> > > > >> + > > > >> + <build> > > > >> + <sourceDirectory>src/java</sourceDirectory> > > > >> + <testSourceDirectory>src/test</testSourceDirectory> > > > >> + <resources> > > > >> + <resource> > > > >> + <directory>.</directory> > > > >> + <targetPath>META-INF</targetPath> > > > >> + <includes> > > > >> + <include>NOTICE.txt</include> > > > >> + <include>LICENSE.txt</include> > > > >> + </includes> > > > >> + </resource> > > > >> + </resources> > > > >> + <plugins> > > > >> + <plugin> > > > >> + <groupId>org.apache.maven.plugins</groupId> > > > >> + <artifactId>maven-surefire-plugin</artifactId> > > > >> + <configuration> > > > >> + <includes> > > > >> + <include>**/Test*.java</include> > > > >> + </includes> > > > >> + </configuration> > > > >> + </plugin> > > > >> + <plugin> > > > >> + <artifactId>maven-assembly-plugin</artifactId> > > > >> + <configuration> > > > >> + <descriptors> > > > >> + <descriptor>src/assembly/bin.xml</descriptor> > > > >> + <descriptor>src/assembly/src.xml</descriptor> > > > >> + </descriptors> > > > >> + <tarLongFileMode>gnu</tarLongFileMode> > > > >> + </configuration> > > > >> + </plugin> > > > >> + </plugins> > > > >> + </build> > > > >> + > > > >> + <reporting> > > > >> + <plugins> > > > >> + <plugin> > > > >> + <groupId>org.apache.maven.plugins</groupId> > > > >> + <artifactId>maven-changes-plugin</artifactId> > > > >> + <configuration> > > > >> + <xmlPath>${basedir}/xdocs/changes.xml</xmlPath> > > > >> + <issueLinkTemplate>%URL%/%ISSUE%</issueLinkTemplate> > > > >> + </configuration> > > > >> + <reportSets> > > > >> + <reportSet> > > > >> + <reports> > > > >> + <report>changes-report</report> > > > >> + </reports> > > > >> + </reportSet> > > > >> + </reportSets> > > > >> + </plugin> > > > >> + <!-- > > > >> + <plugin> > > > >> + <groupId>org.apache.maven.plugins</groupId> > > > >> + <artifactId>maven-checkstyle-plugin</artifactId> > > > >> + <configuration> > > > >> + <configLocation>src/conf/checkstyle.xml</configLocation> > > > >> + <enableRulesSummary>false</enableRulesSummary> > > > >> + > > > >> <propertyExpansion>checkstyle.header.file=src/conf/header.txt</propertyExpansion> > > > >> + </configuration> > > > >> + </plugin> > > > >> + --> > > > >> + </plugins> > > > >> + </reporting> > > > >> + > > > >> +</project> > > > >> > > > >> Propchange: commons/proper/jexl/trunk/pom.xml > > > >> ------------------------------------------------------------------------------ > > > >> svn:eol-style = native > > > >> > > > >> Propchange: commons/proper/jexl/trunk/pom.xml > > > >> ------------------------------------------------------------------------------ > > > >> svn:keywords = Date Author Id Revision HeadURL > > > >> > > > >> Added: commons/proper/jexl/trunk/src/assembly/bin.xml > > > >> URL: > > > >> http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/assembly/bin.xml?rev=595632&view=auto > > > >> ============================================================================== > > > >> --- commons/proper/jexl/trunk/src/assembly/bin.xml (added) > > > >> +++ commons/proper/jexl/trunk/src/assembly/bin.xml Fri Nov 16 03:42:56 > > > >> 2007 > > > >> @@ -0,0 +1,44 @@ > > > >> +<!-- > > > >> + Licensed to the Apache Software Foundation (ASF) under one or more > > > >> + contributor license agreements. See the NOTICE file distributed with > > > >> + this work for additional information regarding copyright ownership. > > > >> + The ASF licenses this file to You under the Apache License, Version > > > >> 2.0 > > > >> + (the "License"); you may not use this file except in compliance with > > > >> + the License. You may obtain a copy of the License at > > > >> + > > > >> + http://www.apache.org/licenses/LICENSE-2.0 > > > >> + > > > >> + Unless required by applicable law or agreed to in writing, software > > > >> + distributed under the License is distributed on an "AS IS" BASIS, > > > >> + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or > > > >> implied. > > > >> + See the License for the specific language governing permissions and > > > >> + limitations under the License. > > > >> +--> > > > >> +<assembly> > > > >> + <id>bin</id> > > > >> + <formats> > > > >> + <format>tar.gz</format> > > > >> + <format>zip</format> > > > >> + </formats> > > > >> + <includeSiteDirectory>false</includeSiteDirectory> > > > >> + <fileSets> > > > >> + <fileSet> > > > >> + <includes> > > > >> + <include>LICENSE.txt</include> > > > >> + <include>NOTICE.txt</include> > > > >> + <include>RELEASE-NOTES.txt</include> > > > >> + </includes> > > > >> + </fileSet> > > > >> + <fileSet> > > > >> + <directory>target</directory> > > > >> + <outputDirectory></outputDirectory> > > > >> + <includes> > > > >> + <include>*.jar</include> > > > >> + </includes> > > > >> + </fileSet> > > > >> + <fileSet> > > > >> + <directory>target/site/apidocs</directory> > > > >> + <outputDirectory>apidocs</outputDirectory> > > > >> + </fileSet> > > > >> + </fileSets> > > > >> +</assembly> > > > >> > > > >> Propchange: commons/proper/jexl/trunk/src/assembly/bin.xml > > > >> ------------------------------------------------------------------------------ > > > >> svn:eol-style = native > > > >> > > > >> Propchange: commons/proper/jexl/trunk/src/assembly/bin.xml > > > >> ------------------------------------------------------------------------------ > > > >> svn:keywords = Date Author Id Revision HeadURL > > > >> > > > >> Added: commons/proper/jexl/trunk/src/assembly/src.xml > > > >> URL: > > > >> http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/assembly/src.xml?rev=595632&view=auto > > > >> ============================================================================== > > > >> --- commons/proper/jexl/trunk/src/assembly/src.xml (added) > > > >> +++ commons/proper/jexl/trunk/src/assembly/src.xml Fri Nov 16 03:42:56 > > > >> 2007 > > > >> @@ -0,0 +1,50 @@ > > > >> +<!-- > > > >> + Licensed to the Apache Software Foundation (ASF) under one or more > > > >> + contributor license agreements. See the NOTICE file distributed with > > > >> + this work for additional information regarding copyright ownership. > > > >> + The ASF licenses this file to You under the Apache License, Version > > > >> 2.0 > > > >> + (the "License"); you may not use this file except in compliance with > > > >> + the License. You may obtain a copy of the License at > > > >> + > > > >> + http://www.apache.org/licenses/LICENSE-2.0 > > > >> + > > > >> + Unless required by applicable law or agreed to in writing, software > > > >> + distributed under the License is distributed on an "AS IS" BASIS, > > > >> + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or > > > >> implied. > > > >> + See the License for the specific language governing permissions and > > > >> + limitations under the License. > > > >> +--> > > > >> +<assembly> > > > >> + <id>src</id> > > > >> + <formats> > > > >> + <format>tar.gz</format> > > > >> + <format>zip</format> > > > >> + </formats> > > > >> + <baseDirectory>${artifactId}-${version}-src</baseDirectory> > > > >> + <fileSets> > > > >> + <fileSet> > > > >> + <includes> > > > >> + <include>build.properties.sample</include> > > > >> + <include>build.xml</include> > > > >> + <include>build-maven.xml</include> > > > >> + <include>LICENSE.txt</include> > > > >> + <include>maven.xml</include> > > > >> + <include>NOTICE.txt</include> > > > >> + <include>pom.xml</include> > > > >> + <include>project.properties</include> > > > >> + <include>project.xml</include> > > > >> + <include>PROPOSAL.html</include> > > > >> + <include>RELEASE-NOTES.txt</include> > > > >> + </includes> > > > >> + </fileSet> > > > >> + <fileSet> > > > >> + <directory>examples</directory> > > > >> + </fileSet> > > > >> + <fileSet> > > > >> + <directory>src</directory> > > > >> + </fileSet> > > > >> + <fileSet> > > > >> + <directory>xdocs</directory> > > > >> + </fileSet> > > > >> + </fileSets> > > > >> +</assembly> > > > >> > > > >> Propchange: commons/proper/jexl/trunk/src/assembly/src.xml > > > >> ------------------------------------------------------------------------------ > > > >> svn:eol-style = native > > > >> > > > >> Propchange: commons/proper/jexl/trunk/src/assembly/src.xml > > > >> ------------------------------------------------------------------------------ > > > >> svn:keywords = Date Author Id Revision HeadURL > > > >> > > > >> Added: commons/proper/jexl/trunk/src/site/site.xml > > > >> URL: > > > >> http://svn.apache.org/viewvc/commons/proper/jexl/trunk/src/site/site.xml?rev=595632&view=auto > > > >> ============================================================================== > > > >> --- commons/proper/jexl/trunk/src/site/site.xml (added) > > > >> +++ commons/proper/jexl/trunk/src/site/site.xml Fri Nov 16 03:42:56 > > > >> 2007 > > > >> @@ -0,0 +1,47 @@ > > > >> +<?xml version="1.0" encoding="ISO-8859-1"?> > > > >> +<!-- > > > >> + Licensed to the Apache Software Foundation (ASF) under one or more > > > >> + contributor license agreements. See the NOTICE file distributed with > > > >> + this work for additional information regarding copyright ownership. > > > >> + The ASF licenses this file to You under the Apache License, Version > > > >> 2.0 > > > >> + (the "License"); you may not use this file except in compliance with > > > >> + the License. You may obtain a copy of the License at > > > >> + > > > >> + http://www.apache.org/licenses/LICENSE-2.0 > > > >> + > > > >> + Unless required by applicable law or agreed to in writing, software > > > >> + distributed under the License is distributed on an "AS IS" BASIS, > > > >> + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or > > > >> implied. > > > >> + See the License for the specific language governing permissions and > > > >> + limitations under the License. > > > >> +--> > > > >> +<project name="JEXL"> > > > >> + <bannerRight> > > > >> + <name>Commons JEXL</name> > > > >> + <src>/images/jexl-logo-white.png</src> > > > >> + <href>/index.html</href> > > > >> + </bannerRight> > > > >> + > > > >> + <body> > > > >> + <menu name="JEXL"> > > > >> + <item name="Overview" href="/index.html" /> > > > >> + <item name="1.1 Javadoc" > > > >> href="/apidocs-1.1/index.html"/> > > > >> + <item name="1.0 Javadoc" > > > >> href="/apidocs-1.0/index.html"/> > > > >> + <item name="Examples" > > > >> href="http://svn.apache.org/viewvc/commons/proper/jexl/trunk/examples/"/> > > > >> + <item name="Releases and Builds" > > > >> href="/releases.html"/> > > > >> + <item name="Download" > > > >> href="http://commons.apache.org/downloads/download_jexl.cgi"/> > > > >> + <item name="Reference" > > > >> href="/reference/index.html"/> > > > >> + <item name="JEXL Wiki" > > > >> href="http://wiki.apache.org/commons/JEXL"/> > > > >> + </menu> > > > >> + > > > >> + <menu name="Development"> > > > >> + <item name="Mailing Lists" > > > >> href="/mail-lists.html"/> > > > >> + <item name="Issue Tracking" > > > >> href="/issue-tracking.html"/> > > > >> + <item name="Source Repository" > > > >> href="/source-repository.html"/> > > > >> + <item name="Building" > > > >> href="/building.html"/> > > > >> + <item name="Javadoc (SVN latest)" > > > >> href="apidocs/index.html"/> > > > >> + </menu> > > > >> + > > > >> + </body> > > > >> + > > > >> +</project> > > > >> > > > >> Propchange: commons/proper/jexl/trunk/src/site/site.xml > > > >> ------------------------------------------------------------------------------ > > > >> svn:eol-style = native > > > >> > > > >> Propchange: commons/proper/jexl/trunk/src/site/site.xml > > > >> ------------------------------------------------------------------------------ > > > >> svn:keywords = Date Author Id Revision HeadURL > > > >> > > > >> > > > >> > > > > > > > > > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > -- > > dIon Gillard > > Rule #131 of Acquisition: Information is Profit. > > > > --------------------------------------------------------------------- > > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- dIon Gillard Rule #131 of Acquisition: Information is Profit. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]