ok, I understand your concern: I'll revert immediately the change in 2.2.x branch, and let's discuss a little bit to decide if I revert it in 3.x too :)
The good question: what is the gain by this change? I think the order we, the Maven project, chose one year ago is well thought after a long experience using POMs. Then this convention could benefit to others. Because of the need for inheritence, POM documentation will not be like our convention in the near future. But why not make it as near as possible? For 2.2.x branch, there is one change that could be a good win IMHO: move dependencyManagement section just before dependency. Then for 3.x branch, have the new order in documentation like done in r894092. WDYT? Note that *enforcing* an order was never intended: it would be a big change, I'm sure many people would -1 :) Regards, Hervé ----- Mail Original ----- De: "Dennis Lundberg" <[email protected]> À: [email protected] Envoyé: Dimanche 27 Décembre 2009 23h46:23 GMT +01:00 Amsterdam / Berlin / Berne / Rome / Stockholm / Vienne Objet: Re: svn commit: r894080 - /maven/maven-2/branches/maven-2.2.x/maven-model/src/main/mdo/maven.mdo I'm -1 on this change. We, the Maven project, have our own POM code conventions. Other project/companies may follow ours or they may have their own conventions. At my day job we follow the order of the (current) POM documentation. Reordering the documentation will confuse people that are already using it. What is the gain by this change? If we want to have the POM ordered in a certain way, we should enforce that in the next POM version instead. That would mean making it possible in Modello to have the schema enforce the order of the elements in the POM. [email protected] wrote: > Author: hboutemy > Date: Sun Dec 27 17:08:02 2009 > New Revision: 894080 > > URL: http://svn.apache.org/viewvc?rev=894080&view=rev > Log: > reordered maven.mdo fields to better match POM Code Convention. > Note: remaining issues cannot easily be fixed since Model inherits from > ModelBase, then any field in ModelBase appears at the end of Model (after > build and profiles elements) > > Modified: > maven/maven-2/branches/maven-2.2.x/maven-model/src/main/mdo/maven.mdo > > Modified: > maven/maven-2/branches/maven-2.2.x/maven-model/src/main/mdo/maven.mdo > URL: > http://svn.apache.org/viewvc/maven/maven-2/branches/maven-2.2.x/maven-model/src/main/mdo/maven.mdo?rev=894080&r1=894079&r2=894080&view=diff > ============================================================================== > --- maven/maven-2/branches/maven-2.2.x/maven-model/src/main/mdo/maven.mdo > (original) > +++ maven/maven-2/branches/maven-2.2.x/maven-model/src/main/mdo/maven.mdo Sun > Dec 27 17:08:02 2009 > @@ -316,15 +316,6 @@ > </association> > </field> > <field xdoc.separator="blank"> > - <name>mailingLists</name> > - <version>3.0.0+</version> > - <description>Contains information about a project's mailing > lists.</description> > - <association> > - <type>MailingList</type> > - <multiplicity>*</multiplicity> > - </association> > - </field> > - <field xdoc.separator="blank"> > <name>developers</name> > <version>3.0.0+</version> > <description>Describes the committers of a project.</description> > @@ -343,22 +334,26 @@ > </association> > </field> > > + <field xdoc.separator="blank"> > + <name>mailingLists</name> > + <version>3.0.0+</version> > + <description>Contains information about a project's mailing > lists.</description> > + <association> > + <type>MailingList</type> > + <multiplicity>*</multiplicity> > + </association> > + </field> > + > <!-- > ====================================================================== --> > - <!-- Issue Tracking > --> > + <!-- Build prerequisites > --> > <!-- > ====================================================================== --> > > <field xdoc.separator="blank"> > - <name>issueTrackingUrl</name> > - <version>3.0.0</version> > - <description>The URL of the project's issue tracking > system.</description> > - <type>String</type> > - </field> > - <field xdoc.separator="blank"> > - <name>issueManagement</name> > + <name>prerequisites</name> > <version>4.0.0</version> > - <description>The project's issue management system > information.</description> > + <description>Describes the prerequisites in the build environment > for this project.</description> > <association> > - <type>IssueManagement</type> > + <type>Prerequisites</type> > </association> > </field> > > @@ -387,7 +382,7 @@ > <type>Repository</type> > </association> > </field> > - <field> > + <field xdoc.separator="blank"> > <name>scm</name> > <version>4.0.0</version> > <description>Specification for the SCM used by the project, such > as CVS, Subversion, etc.</description> > @@ -397,6 +392,25 @@ > </field> > > <!-- > ====================================================================== --> > + <!-- Issue Tracking > --> > + <!-- > ====================================================================== --> > + > + <field> > + <name>issueTrackingUrl</name> > + <version>3.0.0</version> > + <description>The URL of the project's issue tracking > system.</description> > + <type>String</type> > + </field> > + <field> > + <name>issueManagement</name> > + <version>4.0.0</version> > + <description>The project's issue management system > information.</description> > + <association> > + <type>IssueManagement</type> > + </association> > + </field> > + > + <!-- > ====================================================================== --> > <!-- CI Management > --> > <!-- > ====================================================================== --> > > @@ -493,19 +507,6 @@ > </field> > > <!-- > ====================================================================== --> > - <!-- Build prerequisites > --> > - <!-- > ====================================================================== --> > - > - <field xdoc.separator="blank"> > - <name>prerequisites</name> > - <version>4.0.0</version> > - <description>Describes the prerequisites in the build environment > for this project.</description> > - <association> > - <type>Prerequisites</type> > - </association> > - </field> > - > - <!-- > ====================================================================== --> > <!-- Build > --> > <!-- > ====================================================================== --> > > @@ -597,15 +598,6 @@ > ]]> > </description> > <fields> > - <field> > - <name>distributionManagement</name> > - <version>4.0.0</version> > - <description>Distribution information for a project that enables > deployment of the site > - and artifacts to remote web servers and repositories > respectively.</description> > - <association> > - <type>DistributionManagement</type> > - </association> > - </field> > <field xdoc.separator="blank"> > <name>modules</name> > <version>4.0.0</version> > @@ -617,26 +609,44 @@ > </association> > </field> > <field xdoc.separator="blank"> > - <name>repositories</name> > + <name>distributionManagement</name> > <version>4.0.0</version> > - <description>The lists of the remote repositories for discovering > dependencies and > - extensions.</description> > + <description>Distribution information for a project that enables > deployment of the site > + and artifacts to remote web servers and repositories > respectively.</description> > <association> > - <type>Repository</type> > - <multiplicity>*</multiplicity> > + <type>DistributionManagement</type> > </association> > </field> > - <field> > - <name>pluginRepositories</name> > + <field xdoc.separator="blank"> > + <name>properties</name> > <version>4.0.0</version> > - <description>The lists of the remote repositories for discovering > plugins for builds and > - reports.</description> > - <association> > - <type>Repository</type> > + <description> > + <![CDATA[ > + Properties that can be used throughout the POM as a > substitution, and > + are used as filters in resources if enabled. > + The format is <code><name>value</name></code>. > + ]]> > + </description> > + <type>Properties</type> > + <association xml.mapStyle="inline"> > + <type>String</type> > <multiplicity>*</multiplicity> > </association> > </field> > <field xdoc.separator="blank"> > + <name>dependencyManagement</name> > + <version>4.0.0</version> > + <required>false</required> > + <description>Default dependency information for projects that > inherit from this one. The > + dependencies in this section are not immediately resolved. > Instead, when a POM derived > + from this one declares a dependency described by a matching > groupId and artifactId, the > + version and other values from this section are used for that > dependency if they were not > + already specified.</description> > + <association> > + <type>DependencyManagement</type> > + </association> > + </field> > + <field> > <name>dependencies</name> > <version>3.0.0+</version> > <description> > @@ -656,6 +666,26 @@ > </association> > </field> > <field xdoc.separator="blank"> > + <name>repositories</name> > + <version>4.0.0</version> > + <description>The lists of the remote repositories for discovering > dependencies and > + extensions.</description> > + <association> > + <type>Repository</type> > + <multiplicity>*</multiplicity> > + </association> > + </field> > + <field> > + <name>pluginRepositories</name> > + <version>4.0.0</version> > + <description>The lists of the remote repositories for discovering > plugins for builds and > + reports.</description> > + <association> > + <type>Repository</type> > + <multiplicity>*</multiplicity> > + </association> > + </field> > + <field xdoc.separator="blank"> > <name>reports</name> > <version>4.0.0</version> > <description> > @@ -680,35 +710,6 @@ > <type>Reporting</type> > </association> > </field> > - <field xdoc.separator="blank"> > - <name>dependencyManagement</name> > - <version>4.0.0</version> > - <required>false</required> > - <description>Default dependency information for projects that > inherit from this one. The > - dependencies in this section are not immediately resolved. > Instead, when a POM derived > - from this one declares a dependency described by a matching > groupId and artifactId, the > - version and other values from this section are used for that > dependency if they were not > - already specified.</description> > - <association> > - <type>DependencyManagement</type> > - </association> > - </field> > - <field xdoc.separator="blank"> > - <name>properties</name> > - <version>4.0.0</version> > - <description> > - <![CDATA[ > - Properties that can be used throughout the POM as a > substitution, and > - are used as filters in resources if enabled. > - The format is <code><name>value</name></code>. > - ]]> > - </description> > - <type>Properties</type> > - <association xml.mapStyle="inline"> > - <type>String</type> > - <multiplicity>*</multiplicity> > - </association> > - </field> > </fields> > </class> > <class> > > > -- Dennis Lundberg --------------------------------------------------------------------- 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]
