On 2 March 2010 02:28, David Jencks <[email protected]> wrote:
> I've done most of what I think is needed for aries to be basically
> releasable. There are some bits left and possibly stuff I've missed.
>
> 1. legal file review. There are a bunch of NOTICE files that claim that
> work from osgi is included. Really? license and notice files are supposed
> to apply to what is actually in an artifact or checkout. Are some of our
> source files copied from an osgi source? Also all the legal files that end
> up in binary artifacts need to be checked. Also we need to run the rat
> plugin: this should be configured in the default pom. Not sure if I will
> get to this.
>
> 2. actually using the eba-maven-plugn. I'm not entirely sure how to make
> sure that an eba is working so I didn't mess with this. I think the plugin
> itself is working well enough to use though.
>
> 2. ordering dependencies and dependency management. I find it convenient to
> have these alphabetized so I can find what I'm looking for, but I haven't
> done this in most poms. I'm not sure why there isn't a usable tool for
> doing this but I haven't found one. Dull but useful...
>
> 3. It would probably be a really good idea to run mvn dependency:analyze and
> look carefully at the results. The results from this can require
> interpretation so its best if someone who is very familiar with how the code
> works does this.
>
> 4. before a release all snapshots need to be resolved to released versions.
> I don't know if there are any snapshots.
>
> To summarize what I've tried to do:
>
> 1. default-parent has dependency management for the basic osgi dependencies
> that all projects are pretty sure to use including the pax stuff used mostly
> for testing.
>
> 2. each subproject has legal files in its checkout root
>
> 3. each subproject has an scm element in its pom, but no others do.
>
> 4. each subproject has dependency management for everything included in it.
> In addition, it has its subprojects listed in dependency management. (this
> is bent slightly for the samples). This means that
> (a) modules in a subproject don't need to include versions for use of other
> modules
> (b) you can get dependency management for all the modules in a subproject
> by depending on the subproject pom with scope import. (see the samples pom
> for an example).
>
> 5. As a result of (4), modules don't have any versions in any dependency
> elements.
>
> Release is going to involve...
>
> releasing the parent
In trunk/parent I tried:
mvn -DdryRun=true release:prepare -Papache-release
Providing 0.1-incubating for the release version
Defaulting to parent-0.1-incubating for the SCM release tag
Defaulting to 0.2-incubating-SNAPSHOT for the new development version
then when it builds the 'Top Parent POM' it outputs this:
[INFO] [INFO]
------------------------------------------------------------------------
[INFO] [INFO] Building Aries :: Top Parent POM
[INFO] [INFO] task-segment: [clean, verify]
[INFO] [INFO]
------------------------------------------------------------------------
[INFO] [INFO] [clean:clean]
[INFO] [INFO] Setting property: classpath.resource.loader.class =>
'org.codehaus.plexus.velocity.ContextClassLoaderResourceLoader'.
[INFO] [INFO] Setting property: velocimacro.messages.on => 'false'.
[INFO] [INFO] Setting property: resource.loader => 'classpath'.
[INFO] [INFO] Setting property: resource.manager.logwhenfound => 'false'.
[INFO] [INFO] [remote-resources:process {execution: default}]
[INFO] [INFO] [site:attach-descriptor]
[INFO] [INFO] [assembly:single {execution: source-release-assembly}]
[INFO] [INFO] parent-1.0.0-incubating-SNAPSHOT/ already added, skipping
[INFO] [INFO] parent-1.0.0-incubating-SNAPSHOT/LICENSE already added, skipping
[INFO] [INFO] parent-1.0.0-incubating-SNAPSHOT/NOTICE already added, skipping
[INFO] [INFO] Building zip:
C:\cygwin\home\hughesj\oss\aries\trunk\parent\target\parent-1.0.0-incubating-SNAPSHOT-source-release.zip
[INFO] [INFO] parent-1.0.0-incubating-SNAPSHOT/ already added, skipping
[INFO] [INFO] parent-1.0.0-incubating-SNAPSHOT/LICENSE already added, skipping
[INFO] [INFO] parent-1.0.0-incubating-SNAPSHOT/NOTICE already added, skipping
[INFO] [INFO] Preparing source:jar
[INFO] [WARNING] Removing: jar from forked lifecycle, to prevent
recursive invocation.
[INFO] [INFO] No goals needed for project - skipping
[INFO] [INFO] [source:jar {execution: attach-sources}]
[INFO] [INFO] [javadoc:jar {execution: attach-javadocs}]
[INFO] [INFO] Not executing Javadoc as the project is not a Java
classpath-capable package
[INFO] [INFO] [gpg:sign {execution: default}]
so it seems to be outputting 1.0.0 artifacts still. Any ideas?
Then stops at the gpg stage. I thought it would prompt me for my key
passphrase at this point. Do I need gpg-agent to be running?
> updating the parent version wherever it is used (all subproject parents)
>
> releasing the subprojects in an appropriate order and updating their
> versions wherever they are used.
>
> It might be worthwhile changing the pom version to 0.1-incubating-SNAPSHOT
> (or something similar, 0.0-incubating-SNAPSHOT?) before doing this because
> then the versions plugin can be used to update use of a subproject to the
> newly released version of what it uses. Going from
> 1.0.0-incubating-SNAPSHOT to 0.1-incubating won't allow this.
>
> As noted in the "root" pom, don't try to release the root pom and don't try
> release everything at once from the root pom.
>
> thanks
> david jencks
>
>
>
> On Feb 24, 2010, at 11:55 PM, David Jencks wrote:
>
>> I started looking into cleaning up the build, and of course it is taking
>> longer than I expected.
>>
>> I'm seriously hampered by failing tests in a fresh checkout.
>>
>> There are some projects in application that stop compiling if you
>> alphabetize the dependencies. It looks like osgi 3 artifacts are getting on
>> the maven classpath before osgi 4.2 artifacts. Adding exclusions to the
>> dependencies seems to fix it if you can figure out where the out of date
>> jars are coming from.
>>
>> The build is already much closer to a multi-release model than a single
>> release model.
>>
>> I've diffed what I have so far and attached it to ARIES-173. It includes
>> scm info and a lot of version corrections. Due to the failing tests I'm not
>> too comfortable committing it.
>>
>> Is anyone else seeing test failures locally?
>>
>> thanks
>> david jencks
>>
>> On Feb 24, 2010, at 1:50 PM, Lin Sun wrote:
>>
>>> Hi David,
>>>
>>> It 'd be great if you are willing to fix these build issues, since you
>>> just went through a big release in Geronimo. :)
>>>
>>> I know the maven release plugin isn't friendly to use some cases, so
>>> it is best we get these resolved to make our release process a bit
>>> easier.
>>>
>>> EBA plugin would be a very nice add-on, if it comes in time with the
>>> release.
>>>
>>> Thanks
>>>
>>> Lin
>>> On Tue, Feb 23, 2010 at 8:56 PM, David Jencks <[email protected]>
>>> wrote:
>>>>
>>>>> I would like to understand the problems you see better, but I do not
>>>>> have
>>>>> the maven background you guys have, any chance you could explain what
>>>>> the
>>>>> problems are, why they are problems and the solution at some point?
>>>>
>>>> The biggest immediate problem is that without correct svn info you can't
>>>> do
>>>> a release with the release plugin. I'm pretty sure the way its set up
>>>> now,
>>>> when you try, the tag will be under maven's apache pom, not aries.
>>>> (you'll
>>>> fail unless you happen to be a maven committer too). You definitely
>>>> don't
>>>> want to try to do a release without the release plugin.
>>>>
>>>> Organizationally there's no way that for instance blueprint,
>>>> application,
>>>> and samples should always be released in synchrony. Any time two of
>>>> them
>>>> happen to be ready for release at the same time it will be purely
>>>> accidental. Right now everyone wants to get a milestone out the door,
>>>> but
>>>> looking at the different projects their state of completion is pretty
>>>> much
>>>> wildly different. A decision to release all of them at once is not
>>>> based in
>>>> any way on them being equally complete. I'm suggesting that since build
>>>> fixes are needed anyway, why not set up a maintainable structure that
>>>> will
>>>> continue to work beyond this publicity release. The benefit to users is
>>>> that aries will be able to release bits in a timely fashion; otherwise
>>>> the
>>>> entire project will never be in a releasable state at once. (I'm only
>>>> exaggerating a little bit :-)
>>>>
>>>> What got me looking at this at all is what look like wild gyrations that
>>>> don't really use maven properly to get an .eba (or some artifact) out
>>>> the
>>>> door. This might be ok for one release but (a) I think this can be done
>>>> directly with the assembly plugin short term and (b) an eba-maven-plugin
>>>> seems like the obvious more long term solution.
>>>>
>>>> I'm willing to fix the build and probably work on an eba plugin, but
>>>> want to
>>>> be sure this is ok with everyone first.
>>>>
>>>> thanks
>>>> david jencks
>>>>
>>>>>
>>>>> Thanks
>>>>> Alasdair
>>>>>
>>>>> On 23 Feb 2010, at 18:18, David Jencks <[email protected]> wrote:
>>>>>
>>>>>> This discussion got me worried enough to take a look at the aries
>>>>>> build.
>>>>>> Now I'm even more worried.
>>>>>>
>>>>>> While it might feel good to try to push out a release as fast as
>>>>>> possible
>>>>>> I'd prefer to see a sustainable build system in place first. So far
>>>>>> it
>>>>>> looks to me as if aries is going to be a bunch of loosely coupled
>>>>>> subprojects. Building them all at once is not going to work for long.
>>>>>> I
>>>>>> think we should recognize that and put that in the build system now.
>>>>>> To me
>>>>>> this means:
>>>>>>
>>>>>> 1. a parent pom that isn't at the root of the svn trunk.
>>>>>> 2. each subproject has pom info sufficient so it can be released
>>>>>> (mostly
>>>>>> svn info) (right now this is completely missing everywhere as far as
>>>>>> I can
>>>>>> see, which will result in ares getting tagged into svn as part of the
>>>>>> apache
>>>>>> pom)
>>>>>>
>>>>>> We can still have a "fake" pom that builds everything, but it won't be
>>>>>> part of any release procedure.
>>>>>>
>>>>>> Having separately released subprojects does not prevent having a
>>>>>> single
>>>>>> vote on all the releases.
>>>>>>
>>>>>> I'd suggest a few other pom tweaks such as using resources and
>>>>>> filtered-resources to distinguish when filtering is called for.
>>>>>>
>>>>>> In addition relevant to this particular bit of the thread, we need an
>>>>>> eba-maven-plugin to assemble ebas. Getting this into a first release
>>>>>> would
>>>>>> be a great idea IMO.
>>>>>>
>>>>>> If there's general agreement I can spend some time playing with the
>>>>>> build
>>>>>> and possibly working on the eba plugin.
>>>>>>
>>>>>> thoughts?
>>>>>>
>>>>>> thanks
>>>>>> david jencks
>>>>>>
>>>>>> On Feb 22, 2010, at 2:01 PM, Joe Bohn wrote:
>>>>>>
>>>>>>> Jeremy Hughes wrote:
>>>>>>>>
>>>>>>>> On 19 February 2010 13:09, Joe Bohn <[email protected]> wrote:
>>>>>>>>>
>>>>>>>>> I'd also like to see us release the sample applications but I think
>>>>>>>>> there is
>>>>>>>>> at least one complication. Both Blog Sample and AriesTrader
>>>>>>>>> generate
>>>>>>>>> EBAs
>>>>>>>>> using different techniques - but both leverage the
>>>>>>>>> maven-antrun-plugin
>>>>>>>>> to
>>>>>>>>> finally produce a file of type "eba".
>>>>>>>>
>>>>>>>> I realised the .eba file generated in the blog-assembly module
>>>>>>>> wasn't
>>>>>>>> being pushed into my local repo. I've made some changes to the
>>>>>>>> pom.xml
>>>>>>>> in ARIES-198 to fix this. So now it uses antrun to create the .eba
>>>>>>>> artifact and the build-helper-maven-plugin to push the artifact to
>>>>>>>> the
>>>>>>>> local repo. I needed to add NOTICE and LICENSE files to the .eba for
>>>>>>>> the ianal plugin in the verify phase to succeed.
>>>>>>>
>>>>>>> I've not used the build-helper-maven-plugin before. Do you know if
>>>>>>> it
>>>>>>> will work with the maven-release-plugin to push the eba artifacts
>>>>>>> when we do
>>>>>>> a release? If so, then I should look at using the same mechanism for
>>>>>>> AriesTrader.
>>>>>>>
>>>>>>>>> I think the result is that the eba will not be available in a maven
>>>>>>>>> repository.
>>>>>>>>>
>>>>>>>>> One of the differences is that AriesTrader first generates a jar
>>>>>>>>> using
>>>>>>>>> the
>>>>>>>>> maven-assembly-plugin and then copies this to an eba. The jar will
>>>>>>>>> be
>>>>>>>>> managed by maven and IIUC it should be deployable as an
>>>>>>>>> "application"
>>>>>>>>> even
>>>>>>>>> with an extension of "jar" rather than "eba". If that is correct
>>>>>>>>> then
>>>>>>>>> perhaps delivery of an application jar is an acceptable approach
>>>>>>>>> for
>>>>>>>>> the 1st
>>>>>>>>> release. Unfortunately I haven't actually setup my equinox
>>>>>>>>> assembly
>>>>>>>>> to
>>>>>>>>> deploy the eba yet - it still deploys all of the individual
>>>>>>>>> bundles.
>>>>>>>>
>>>>>>>> Using the maven-assembly-plugin likely the preferred approach long
>>>>>>>> term. Perhaps we could copy the artifact to .eba and use the
>>>>>>>> build-helper-maven-plugin to remove the .jar artifact from maven
>>>>>>>> control and add the .eba one?
>>>>>>>
>>>>>>> I can give this a try for AriesTrader. If it doesn't work out - is
>>>>>>> there anything wrong with the approach I mentioned earlier of just
>>>>>>> using the
>>>>>>> jar artifacts rather than the eba artifacts? Will the current
>>>>>>> application
>>>>>>> support only look at *.eba archives?
>>>>>>>
>>>>>>>>> Joe
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Guillaume Nodet wrote:
>>>>>>>>>>
>>>>>>>>>> I'd like to see at least those included:
>>>>>>>>>> * blueprint
>>>>>>>>>> * jmx
>>>>>>>>>> * jndi
>>>>>>>>>> * transaction
>>>>>>>>>>
>>>>>>>>>> I don't think applications are really usable yet and I haven't
>>>>>>>>>> really
>>>>>>>>>> looked at JPA yet, so can't tell about it.
>>>>>>>>>> The transaction component is functional and we've been using it
>>>>>>>>>> mostly
>>>>>>>>>> unchanged since a long time in ServiceMix.
>>>>>>>>>> Do you have any particular concerns with it ? (I'm not talking
>>>>>>>>>> about
>>>>>>>>>> declarative transactions for blueprint, note).
>>>>>>>>>>
>>>>>>>>>> On Fri, Feb 19, 2010 at 04:19, Joe Bohn <[email protected]> wrote:
>>>>>>>>>>>
>>>>>>>>>>> Thanks for the response (even while on vacation!) ... and for
>>>>>>>>>>> volunteering
>>>>>>>>>>> to be the release manager. Your response helps me get a better
>>>>>>>>>>> picture
>>>>>>>>>>> of
>>>>>>>>>>> the plans.
>>>>>>>>>>>
>>>>>>>>>>> I was really just interested in the general objectives and timing
>>>>>>>>>>> since
>>>>>>>>>>> it
>>>>>>>>>>> hadn't been discussed yet. To get the release out in Feb means
>>>>>>>>>>> it
>>>>>>>>>>> will
>>>>>>>>>>> be
>>>>>>>>>>> delivered next week. I'm afraid the hill might be a little too
>>>>>>>>>>> steep to
>>>>>>>>>>> climb that quickly but I'm happy to be proven wrong.
>>>>>>>>>>>
>>>>>>>>>>> The more communication the better. It's important to get
>>>>>>>>>>> everybody
>>>>>>>>>>> thinking
>>>>>>>>>>> and planning along the same lines (or understand quickly if there
>>>>>>>>>>> are any
>>>>>>>>>>> differences of opinion). Knowing that you are thinking of
>>>>>>>>>>> creating
>>>>>>>>>>> a
>>>>>>>>>>> release candidate next week means that we should be getting more
>>>>>>>>>>> restrictive
>>>>>>>>>>> on new content to avoid any unpleasant surprises.
>>>>>>>>>>>
>>>>>>>>>>> I don't have any strong opinions on what should be in or out -
>>>>>>>>>>> but
>>>>>>>>>>> in
>>>>>>>>>>> general it doesn't make sense to release things that aren't
>>>>>>>>>>> functional.
>>>>>>>>>>> At
>>>>>>>>>>> the moment I'm not sure what those are - but I suspect not all of
>>>>>>>>>>> the
>>>>>>>>>>> components are fully functional yet (for example transaction).
>>>>>>>>>>>
>>>>>>>>>>> Best Regards,
>>>>>>>>>>> Joe
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Jeremy Hughes wrote:
>>>>>>>>>>>>
>>>>>>>>>>>> Hi Joe, sorry I started setting myself up tuesday but am now out
>>>>>>>>>>>> on
>>>>>>>>>>>> vacation until monday.
>>>>>>>>>>>>
>>>>>>>>>>>> Personally, I think the 0.1 release should serve to get what we
>>>>>>>>>>>> have
>>>>>>>>>>>> right now in the respectable form the ASF requires. So 'must
>>>>>>>>>>>> haves'
>>>>>>>>>>>> are to get the build in the right shape to create the
>>>>>>>>>>>> distribution
>>>>>>>>>>>> files that are acceptable to the IPMC. I think each main area of
>>>>>>>>>>>> the
>>>>>>>>>>>> code deserves at least a README to describe what's possible.
>>>>>>>>>>>> Since
>>>>>>>>>>>> this is the first release there are likely a few unknowns -
>>>>>>>>>>>> w.r.t
>>>>>>>>>>>> timing I hope/expect to get the release out this in feb. If
>>>>>>>>>>>> there
>>>>>>>>>>>> are
>>>>>>>>>>>> particular JIRAs or other issues you feel should be included
>>>>>>>>>>>> please
>>>>>>>>>>>> say. I'd like to rename the current JIRA version 1.0 to 0.1 and
>>>>>>>>>>>> target
>>>>>>>>>>>> issues for 0.1 appropriately and issues not for 0.1 to target a
>>>>>>>>>>>> new
>>>>>>>>>>>> 0.2 version. WDYT?
>>>>>>>>>>>>
>>>>>>>>>>>> Cheers,
>>>>>>>>>>>> Jeremy
>>>>>>>>>>>>
>>>>>>>>>>>> On 18 February 2010 15:39, Joe Bohn <[email protected]> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>> Jeremy,
>>>>>>>>>>>>>
>>>>>>>>>>>>> What are your current thoughts and goals regarding the release
>>>>>>>>>>>>> and
>>>>>>>>>>>>> potential
>>>>>>>>>>>>> target dates?
>>>>>>>>>>>>>
>>>>>>>>>>>>> I think it would be good if you could summarize your thoughts
>>>>>>>>>>>>> in
>>>>>>>>>>>>> an
>>>>>>>>>>>>> email
>>>>>>>>>>>>> or
>>>>>>>>>>>>> perhaps on a page in the wiki that we can keep updated as we
>>>>>>>>>>>>> make
>>>>>>>>>>>>> progress.
>>>>>>>>>>>>> Of particular interest would be the content that we would like
>>>>>>>>>>>>> to
>>>>>>>>>>>>> see
>>>>>>>>>>>>> in
>>>>>>>>>>>>> the first release (clarifying what we consider "must have" from
>>>>>>>>>>>>> "nice
>>>>>>>>>>>>> to
>>>>>>>>>>>>> have"), the current status of that content, target dates for
>>>>>>>>>>>>> the
>>>>>>>>>>>>> release,
>>>>>>>>>>>>> and the process that we plan to use to generate the release.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Thanks,
>>>>>>>>>>>>> Joe
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Jeremy Hughes wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On 12 February 2010 09:39, Guillaume Nodet <[email protected]>
>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Great, thanks a lot. Let us know if you need any help.
>>>>>>>>>>>>>>> I guess if you take some notes, it would be interesting to
>>>>>>>>>>>>>>> put
>>>>>>>>>>>>>>> those
>>>>>>>>>>>>>>> on the wiki.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Certainly will. It's been a while since I did one and the
>>>>>>>>>>>>>> process
>>>>>>>>>>>>>> has
>>>>>>>>>>>>>> changed quite a bit :-)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Fri, Feb 12, 2010 at 10:32, Jeremy Hughes
>>>>>>>>>>>>>>> <[email protected]>
>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Hi Kevan, thanks. I volunteer to be release manager.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Jeremy
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On 11 February 2010 16:38, Kevan Miller
>>>>>>>>>>>>>>>> <[email protected]>
>>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Sounds like the consensus is for a release with all
>>>>>>>>>>>>>>>>> components
>>>>>>>>>>>>>>>>> at a
>>>>>>>>>>>>>>>>> 0.1
>>>>>>>>>>>>>>>>> version number. Best to start with a simple versioning
>>>>>>>>>>>>>>>>> scheme,
>>>>>>>>>>>>>>>>> IMO.
>>>>>>>>>>>>>>>>> Personally, I don't view a 0.1 blueprint release as an
>>>>>>>>>>>>>>>>> issue.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Showing the ability to generate an Apache release is an
>>>>>>>>>>>>>>>>> important
>>>>>>>>>>>>>>>>> step
>>>>>>>>>>>>>>>>> for the community. Would definitely like to see this
>>>>>>>>>>>>>>>>> happen...
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> We'll need a release manager. Any volunteers?
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> --kevan
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>> Cheers,
>>>>>>>>>>>>>>> Guillaume Nodet
>>>>>>>>>>>>>>> ------------------------
>>>>>>>>>>>>>>> Blog: http://gnodet.blogspot.com/
>>>>>>>>>>>>>>> ------------------------
>>>>>>>>>>>>>>> Open Source SOA
>>>>>>>>>>>>>>> http://fusesource.com
>>>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>> Joe
>>>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Joe
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Joe
>>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Joe
>>>>>>
>>>>
>>>>
>>
>
>