5 Replies Latest reply on May 3, 2010 3:13 PM by Jay Balunas

    RichFaces Build Questions for Seam/Weld Team

    Jay Balunas Master

      From our integration meeting today we had some questions we did not get to because of time.  It would be great if we could had a discussions on these to help us move forward with our 4.0 build plans.

       

       

      [Jay/Nick] RichFaces Build

      • We are redesigning our build for Alpha2
        • Would like to follow lead of Weld/Seam
      • For now how some specific questions
        • Seam parent BOM
          • Is the project wide bom in seam to be a root for all module bom's, or as a single point of "import" for users who want to use all of seam?
        • Parent pom adding dependencies
          • Is this to cover dependencies related testing ( i.e. not runtime for Seam )?
          • This would leave BOM just for runtime dependencies - correct?
        • Seam's usage of its own BOM
          • Is this just restricted to examples and external users?
          • Modules seem to mostly pull in directly from weld?
            • Is this because weld is really Seam's core?
        • Reason Seam's /dist contains only BOM, while parent is in /build
          • Is there a reason to keep in separate t/bt/?
          • Why not have both in /build?
      • We would love to hear about more "lessons learns" and/or suggestions for RichFaces build
        • Out of scope for this meeting, but we may have follow up items
        • 1. Re: RichFaces Build Questions for Seam/Weld Team
          Pete Muir Master

          Jay Balunas wrote:

           

          From our integration meeting today we had some questions we did not get to because of time.  It would be great if we could had a discussions on these to help us move forward with our 4.0 build plans.

           

           

          [Jay/Nick] RichFaces Build

          • We are redesigning our build for Alpha2
            • Would like to follow lead of Weld/Seam
          • For now how some specific questions
            • Seam parent BOM
              • Is the project wide bom in seam to be a root for all module bom's, or as a single point of "import" for users who want to use all of seam?

          It's a parent, to be used to define the build environment, and define non-runtime dependencies

           

            • Parent pom adding dependencies
              • Is this to cover dependencies related testing ( i.e. not runtime for Seam )?

          Exactly.

              • This would leave BOM just for runtime dependencies - correct?

           

          Yes.

           

          More to come, but this editor is too hard to use.

          • 2. Re: RichFaces Build Questions for Seam/Weld Team
            Pete Muir Master

              • Seam's usage of its own BOM
                • Is this just restricted to examples and external users?

            No, modules import the BOM to get runtime dependencies

            • Modules seem to mostly pull in directly from weld?
              • Is this because weld is really Seam's core?

             

            What do you mean exactly here?

          • Reason Seam's /dist contains only BOM, while parent is in /build
            • Is there a reason to keep in separate t/b/t/?
            • Why not have both in /build?

            Because they have different lifecycles. The BOM defines the Seam stack (e.g. "These are the modules and depedendcies for Seam 3.0"). We'll want to release this every time we do a simultaneous release.

             

            The parent just defines the build env, we only need to release this when we update the build env. A good rule with SVN/Maven Release Plugin is to have a separate SVN projects for things with different release cycles.

            • 3. Re: RichFaces Build Questions for Seam/Weld Team
              Jay Balunas Master

              Pete Muir wrote:

               


                • Seam's usage of its own BOM
                  • Is this just restricted to examples and external users?

              No, modules import the BOM to get runtime dependencies

              • Modules seem to mostly pull in directly from weld?
                • Is this because weld is really Seam's core?

               

              What do you mean exactly here?

              Take for example http://anonsvn.jboss.org/repos/seam/modules/faces/trunk/pom.xml

               

              This uses weld for a parent and imports weld api bom, but does not seem to reference any of the common seam parent, or bom?

               

              While servlet module - http://anonsvn.jboss.org/repos/seam/modules/servlet/trunk/pom.xml

               

              uses seam as parent, and does not import any bom.

               

              I'm just trying to understand the reasons for the differences and intentions.

               

              What I mean about the core comment is that Seam is using weld as it's core ( for most cases ).  While RichFaces has its own "core" - api/impl/commons.  Wondering if because the project relationships are different how would the bom/parent usage might need to be different.

               

               

              • 4. Re: RichFaces Build Questions for Seam/Weld Team
                Lincoln Baxter III Master

                We avoided using the Seam Parent because it had not yet been released, and was relying on SNAPSHOTs (not allowed if you want to do a release.)

                 

                So we temporarily short-circuited the dependency and used the Weld BOM to bring in the dependency versions that we needed. (Hence the "import" scope.)

                 

                I believe the Seam BOM and Dist will be separated soon, Pete?

                • 5. Re: RichFaces Build Questions for Seam/Weld Team
                  Jay Balunas Master
                  I have just finished putting together a wiki page to describe the plans for the 4.0 build structure redesign.  This is based off of conversations with all of you at various times.
                  I would very much like any opinions or updates.  We do need to start acting quickly though so that this does not hold up ALPHA2 any longer.
                  Pete, Dan, Lincoln - I know you guys have been working with this type of build a bit longer than the rest so any thoughts, or updates you may have would be greatly appreciated.