You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@directory.apache.org by Alex Karasulu <ao...@bellsouth.net> on 2005/12/22 16:47:15 UTC

[scm] Pre-requisites for Maven 2 switchover and new svn layout

We've been talking about going to maven 2 and changing (simplifying) the 
SVN repository layout all at the same time.  To do this in a big bang we 
need to merge all active braches back to their trunks before we 
proceed.  Otherwise these branches will not merge back quietly.  So we 
all know we have to do this maven 2 and svn repo reorg.  Question is 
when and how?


I recommend we get the DN branch Emmanuel is working on and the Stored 
Procedure branch Ersin is working on merged back to the trunk.  Likewise 
for MINA we need to make sure all branches are merged.  At this point in 
time we can reorg the repository and switch over to maven 2.  This is 
not going to be an easy time but with an impulse of energy we can get 
most of it done quickly.

BTW here's what is being done at felix and what I think we should do as 
well:

<from-richard-hall>

  felix/
     trunk/
        org.apache.felix.framework/
        org.apache.felix.shell/
        org.apache.felix.shell.tui/
        org.apache.felix.prefs.jndi/
        ...
     releases/
        org.apache.felix.framework-0.8.0/
        org.apache.felix.shell-1.0.0/
        org.apache.felix.shell-1.0.1/
        ...
     sandbox/
        tbennett/
        erodriquez/
        akarasulu/
        ...

The trunk/ directory contains a subdirectory for each subproject with 
the subproject's directory being named after the subproject's root 
package. The releases/ directory contains release snapshots of the 
subprojects. The sandbox/ directory contains directories for developer 
experimentation.

Each individual subproject will have the following Maven 2 structure:

  org.apache.felix.<subproject>/
     src/
        main/
           java/
              org/apache/felix/...
           resources/
        test/
           java/
              org/apache/felix/...
           resources/

</from-richard-hall>

We can think about this on a separate thread but before we can enact any 
reorg plan we need to merge all branches and freeze development for a 
day or two.  Ok?

Alex


Re: [scm] Pre-requisites for Maven 2 switchover and new svn layout

Posted by Ersin Er <er...@gmail.com>.
On 12/22/05, Alex Karasulu <ao...@bellsouth.net> wrote:
> We've been talking about going to maven 2 and changing (simplifying) the
> SVN repository layout all at the same time.  To do this in a big bang we
> need to merge all active braches back to their trunks before we
> proceed.  Otherwise these branches will not merge back quietly.  So we
> all know we have to do this maven 2 and svn repo reorg.  Question is
> when and how?
>
>
> I recommend we get the DN branch Emmanuel is working on and the Stored
> Procedure branch Ersin is working on merged back to the trunk.  Likewise
> for MINA we need to make sure all branches are merged.  At this point in
> time we can reorg the repository and switch over to maven 2.  This is
> not going to be an easy time but with an impulse of energy we can get
> most of it done quickly.

My additions are not server wide and not much yet. I can hand-merge
them later. I think Emmanuel's changes are more important and should
be merged to trunk during this migration process.

And IMHO we may release 0.9.4 without adding new features but
compeleting the structure migration (and also improvements from
Emmanuel).

> BTW here's what is being done at felix and what I think we should do as
> well:
>
> <from-richard-hall>
>
>   felix/
>      trunk/
>         org.apache.felix.framework/
>         org.apache.felix.shell/
>         org.apache.felix.shell.tui/
>         org.apache.felix.prefs.jndi/
>         ...
>      releases/
>         org.apache.felix.framework-0.8.0/
>         org.apache.felix.shell-1.0.0/
>         org.apache.felix.shell-1.0.1/
>         ...
>      sandbox/
>         tbennett/
>         erodriquez/
>         akarasulu/
>         ...

We'll also need bracnhes which are not developer specific like
ApacheDS 1.1 branch (which will be developed parallel with 1.0). We
should also consider such requirements.

> The trunk/ directory contains a subdirectory for each subproject with
> the subproject's directory being named after the subproject's root
> package. The releases/ directory contains release snapshots of the
> subprojects. The sandbox/ directory contains directories for developer
> experimentation.
>
> Each individual subproject will have the following Maven 2 structure:
>
>   org.apache.felix.<subproject>/
>      src/
>         main/
>            java/
>               org/apache/felix/...
>            resources/
>         test/
>            java/
>               org/apache/felix/...
>            resources/

This is the well-know maven structure, ofcourse we should adapt it to
get maximum benefit from m2. But the important thing is cleaning up
codes, dependecies, package-projectname-srcdir naming inconsistencies,
single2multi project migrations. (I know these things does not belong
to this thread but I just wanted to mention.)

> </from-richard-hall>
>
> We can think about this on a separate thread but before we can enact any
> reorg plan we need to merge all branches and freeze development for a
> day or two.  Ok?

The holiday may be the best time to do freezing, merging stuff.

> Alex

Cheers,
--
Ersin

Re: [scm] Pre-requisites for Maven 2 switchover and new svn layout

Posted by Trustin Lee <tr...@gmail.com>.
Hi Alex,

2005/12/23, Alex Karasulu <ao...@bellsouth.net>:
>
> We've been talking about going to maven 2 and changing (simplifying) the
> SVN repository layout all at the same time.  To do this in a big bang we
> need to merge all active braches back to their trunks before we
> proceed.  Otherwise these branches will not merge back quietly.  So we
> all know we have to do this maven 2 and svn repo reorg.  Question is
> when and how?


When: At the beginning of 2006?
How: Each responsible committers have to move their projects.  The build
will break for a while, but we'll fix the problems within a few days.

I recommend we get the DN branch Emmanuel is working on and the Stored
> Procedure branch Ersin is working on merged back to the trunk.  Likewise
> for MINA we need to make sure all branches are merged.  At this point in
> time we can reorg the repository and switch over to maven 2.  This is
> not going to be an easy time but with an impulse of energy we can get
> most of it done quickly.


MINA has one branch, 0.8, which is a stable branch.  We decided to use even
and odd versioining strategy long before.  So we need to take care of this
issue, too.  Do I put this branch and unstable trunk into one directory?  I
don't have any idea for now.  Am I missing something?

Trustin
--
what we call human nature is actually human habit
--
http://gleamynode.net/
PGP Key ID: 0x854B996C

Re: [scm] Pre-requisites for Maven 2 switchover and new svn layout

Posted by Trustin Lee <tr...@gmail.com>.
Hi,

2005/12/23, Brett Porter <br...@gmail.com>:
>
> As with my comment on felix-dev, I strongly discourage a user-based
> sandbox.


I think we don't need a user-based sandbox.  Why don't we just create a
branch directly under sandbox?

Trustin
--
what we call human nature is actually human habit
--
http://gleamynode.net/
PGP Key ID: 0x854B996C

Re: [scm] Pre-requisites for Maven 2 switchover and new svn layout

Posted by Brett Porter <br...@gmail.com>.
On 12/23/05, Alex Karasulu <ao...@bellsouth.net> wrote:
> We can think about this on a separate thread but before we can enact any
> reorg plan we need to merge all branches and freeze development for a
> day or two.  Ok?

I think its worth expressing this in terms of how it will look for
Directory as it may be a bit more obvious if there are issues (like
mina should probably have its own trunk, etc.)

As with my comment on felix-dev, I strongly discourage a user-based sandbox.

Let me know if I can help in any way. I'm trying not to take on new
things over Christmas so I can have a break, but I'm good for
questions and feedback as always :)

Cheers,
Brett

Re: [scm] Pre-requisites for Maven 2 switchover and new svn layout

Posted by Emmanuel Lecharny <el...@gmail.com>.
On Thu, 2005-12-22 at 10:47 -0500, Alex Karasulu wrote:
> We've been talking about going to maven 2 and changing (simplifying) the 
> SVN repository layout all at the same time.  

Both task are really important and needed.

> To do this in a big bang we 
> need to merge all active braches back to their trunks before we 
> proceed.  

True. Better to have a minor version just released to work on !

> Otherwise these branches will not merge back quietly.  So we 
> all know we have to do this maven 2 and svn repo reorg.  Question is 
> when and how?

Obviously after 0.9.4 for ADS. We have to clmose the blocking issues,
many of the majors, and it could be done before releasing 0.9.4. Then,
we could go for a m2 and structure refactoring on the same shot.

> I recommend we get the DN branch Emmanuel is working on and the Stored 
> Procedure branch Ersin is working on merged back to the trunk. 

Well, it's a question of timing. The DN branch could take a while (let
say 2 weeks, if I don't get totally drunk for three days ;)

>  Likewise 
> for MINA we need to make sure all branches are merged.  

Yep.

> At this point in 
> time we can reorg the repository and switch over to maven 2.  

What about doing the refactoring and m2 on MINA right now, as suggested
by Brett? Mina is quite a standalone project, and could do the
beta-testing for us. Okay, there is a major drawback : we will need two
versions of maven to build the project (m2 for Mina, and m1.0.2 for the
rest. Otherwise, we will have to maintain two build systems for mina.
Choose your pain ;)

> This is 
> not going to be an easy time but with an impulse of energy we can get 
> most of it done quickly.

I won't say it will be neither easy nor fast, but we need to go this
way. In my mind, it's just a question of timing.

Btw, I really don't like the idea of having named-sandbox (I'm with
Brett on this). Sandbox is a sandbox, it's for everybody. If one can't
find a name for a project in the sandbox, then that means the project is
not well defined. IMHO, so far !

> We can think about this on a separate thread but before we can enact any 
> reorg plan we need to merge all branches and freeze development for a 
> day or two.  Ok?

ok. Freezing is necessary before big reorgs. And keep in mind that we
have a lot of doco to do ;)

-- 
Emmanuel Lécharny
www.iktek.com


Re: [scm] Pre-requisites for Maven 2 switchover and new svn layout

Posted by Lyndon Washington <ly...@gmail.com>.
Hi Alex,

Not that I have been contributing at all, just a lurker really, but the
felix project structure that you outlined is quite a good idea.  I
especially like the idea of calling out the 'sandbox' area rather than using
the default Subversion idea of branches.  The only question is, where do
branches go for maintenance of released versions, or is that something to
worry about when the time comes?  I see that you have releases, but is that
for 'read-only' tags (i.e. point in time snapshots)?

All, keep up the good work!

Cheers,
-Lyndon-

On 12/22/05, Alex Karasulu <ao...@bellsouth.net> wrote:
>
> We've been talking about going to maven 2 and changing (simplifying) the
> SVN repository layout all at the same time.  To do this in a big bang we
> need to merge all active braches back to their trunks before we
> proceed.  Otherwise these branches will not merge back quietly.  So we
> all know we have to do this maven 2 and svn repo reorg.  Question is
> when and how?
>
>
> I recommend we get the DN branch Emmanuel is working on and the Stored
> Procedure branch Ersin is working on merged back to the trunk.  Likewise
> for MINA we need to make sure all branches are merged.  At this point in
> time we can reorg the repository and switch over to maven 2.  This is
> not going to be an easy time but with an impulse of energy we can get
> most of it done quickly.
>
> BTW here's what is being done at felix and what I think we should do as
> well:
>
> <from-richard-hall>
>
>   felix/
>      trunk/
>         org.apache.felix.framework/
>         org.apache.felix.shell/
>         org.apache.felix.shell.tui/
>         org.apache.felix.prefs.jndi/
>         ...
>      releases/
>         org.apache.felix.framework-0.8.0/
>         org.apache.felix.shell-1.0.0/
>         org.apache.felix.shell-1.0.1/
>         ...
>      sandbox/
>         tbennett/
>         erodriquez/
>         akarasulu/
>         ...
>
> The trunk/ directory contains a subdirectory for each subproject with
> the subproject's directory being named after the subproject's root
> package. The releases/ directory contains release snapshots of the
> subprojects. The sandbox/ directory contains directories for developer
> experimentation.
>
> Each individual subproject will have the following Maven 2 structure:
>
>   org.apache.felix.<subproject>/
>      src/
>         main/
>            java/
>               org/apache/felix/...
>            resources/
>         test/
>            java/
>               org/apache/felix/...
>            resources/
>
> </from-richard-hall>
>
> We can think about this on a separate thread but before we can enact any
> reorg plan we need to merge all branches and freeze development for a
> day or two.  Ok?
>
> Alex
>
>