Proposal for a MyFaces maven master pom refactoring.

The current maven master pom for MyFaces has some flaws:

1. Not used by all MyFaces (sub)projects.
Currently Tobago has no parent pom and Trinidad uses
org.apache:apache:4 directly.

2. Located in the "maven" folder (i.e.
org.apache.myfaces.maven:maven-project artifact).
The MyFaces maven project is currently a mixture of maven related
stuff. Having the master(!) located within this sub project is a bad
idea. The master pom should be it's own project, depending only on the
org.apache:apache master pom and ALL other MyFaces projects should
derive from it. Currently it's for instance not possible to derive the
org.apache.myfaces.maven:maven-project pom (i.e. the pom.xml in
/maven) from it, because we would have a circular dependency then:
Building the maven-project would depend on the myfaces master which is
itself part of the maven-project build...

3. Version numbering.
It makes no sense to have a 1.0.7-SNAPSHOT master pom! We should have
straight numbers and no "Snapshots" like in the org.apache:apache
master. I propose "8" as the first number after the pom
move/refactoring.

4. There is stuff in the myfaces master that is NOT common (or even
unused?) to all myfaces projects and should not be there IMHO. These
are:
4a. Wagon extension. Who needs this?
     <extension>
           <groupId>org.apache.maven.wagon</groupId>
           <artifactId>wagon-ssh-external</artifactId>
           <version>1.0-alpha-5</version>
     </extension>
4b. Myfaces build tools as extension. Who needs this?
      <extension>
            <groupId>org.apache.myfaces.maven</groupId>
            <artifactId>build-tools</artifactId>
            <version>1.0.7-SNAPSHOT</version>
       </extension>

5. Some things we could/should discuss:
5a. Default to java 1.3 is ok IMHO. Other projects (sandbox15 etc)
must override this.
           <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.3</source>
                    <target>1.3</target>
                </configuration>
            </plugin>
5b. Checkstyle configuration really common to all our projects?
       <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-checkstyle-plugin</artifactId>
                <version>2.1</version>
                <configuration>
                     [..]
                </configuration>
            </plugin>

I'm willing to do the work.

Thoughts?

-Manfred

Reply via email to