You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by ant elder <an...@gmail.com> on 2006/12/05 16:50:41 UTC

Tuscany weekly IRC chat log December 4, 2006

Here's the chat log from yesterdays chat. Only thing discussed was the axiom
snapshot problem of the M2 release. Looks like thats probably a non-issue.

   ...ant

Session Start: Mon Dec 04 16:31:07 2006
Session Ident: #tuscany
* Now talking in #tuscany
* jboynes_ has joined #tuscany
* jboynes has quit IRC (" HydraIRC -> http://www.hydrairc.com <-")
* jboynes_ is now known as jboynes
<jboynes> hi
<jboynes> anything to chat about this morning?
<cr22rc> hi
<cr22rc> got cold here :-)
* simonnash has joined #Tuscany
<jboynes> not so cold here - especially SoCal :(
<cr22rc> any update on M2/Axis 1.1.1 ?  maybe interesting
<jboynes> ant_ rfeng are you working together on this snapshot problem?
* dkulp has left #tuscany
<rfeng> hi
<rfeng> I already did some investigation on the axis2 transitive
dependencies and had a note posted before ant's one. We're seeing the same
behavior
<jboynes> so it sounds like the snapshot may not be an issue?
<rfeng> but what I'm not very sure is how to guarantee the axis2 artifacts
are downloaded from maven1 repo instead of m2 repo
<rfeng> I did one test, if I get the artifacts from m2 repo, then it's
really a problem
* Amita has joined #tuscany
<cr22rc> with 1.1.1 all of this will go away... right? they'll remove all
snapshot refs there .. this time.
<simonnash> is there any danger that just because this works OK at the
moment, it might not mean that it will continue to work?
<jboynes> so if axis2 comes from the m2 repo then we do end up using the
snapshot?
<jboynes> but if it comes from m1 we use a released version?
<rfeng> seems so
<jboynes> ugh
<rfeng> because we also have axiom artifacts listed in the axis2 pom.xml
* kgoodson has joined #Tuscany
<jboynes> in our axis2 pom, yes?
<rfeng> yes
* ant_ is now known as ant_away
<jboynes> if we do that  and they are before the axi2 dependency, are we
guaranteed to get the released version?
<jboynes> even if we get them from the m2 repo?
<jboynes> iirc there's some priority in how deps get resolved
* jsdelfino has joined #tuscany
<jboynes> something like the dep of a dep gets resolved but not returned if
overridden
<rfeng> That's not what I found when I add axiom 1.2.1 to axis2 pom.xml
<jboynes> dar
<jboynes> darn
* halehM has joined #tuscany
<rfeng> any maven expert knows how to control the ordering of maven repo?
<simonnash> that's what I'm concerned about... it seems risky to rely on
this ordering
<jboynes> I don't think you can (I think its a Set in the code)
<rfeng> :-(
<rfeng> the mixed usage of m2 and m1 is troublesome
<jboynes> but the order should not matter if there is a "closeness" priority
<rfeng> right
<cr22rc> where is 1.1.1 of axis and will they fix this there ?
<rfeng> the root problem is axiom and it's already fixed in 1.2.1
<rfeng> but we come from the path of axis2 1.1
<jboynes> yeah but they need to update axis2 to the new one, right?
<rfeng> yes
<jboynes> which means 1.1.1 :(
<rfeng> y
<jboynes> does anyone know where that is?
<cr22rc> what i asked
<simonnash> dimas said they would decide this week what to do about that
<simonnash> dims
<cr22rc> curious: if all projects when they release ONLY referenced
non-snapshot repos in pom's than this would never happen right?
<jboynes> yes
<cr22rc> seems like a practice we should encourage ?
<rfeng> A side note, isn't it also risky to use SNAPSHOT versions of maven
plugins?
<simonnash> i had presumed that it was mistake on their part rather than
intentional
<jboynes> simonnash: that's the artifact level not the repo level
<cr22rc> right
<jboynes> if you made cr22rc's change then the build would fail as the
artifact would not be found
<simonnash> sorry i did not read you previous msg carefully enough
<jboynes> unfortuanately people add them to make it easier for users
<jboynes> rfeng: yes
<jboynes> but I don't we reference any except the assembly one
<rfeng> ok
<rfeng> It seems that running mvn command against the plugin prefix (such as
mvn eclipse:eclipse) will get the SNAPSHOT versions
<jboynes> ugh
<jboynes> nice and friendly
<rfeng> unless you configure it in the pom or plugin registry with a fixed
version
<jboynes> is there a 'latest release' version ?
<rfeng> yes, for the maven-eclipse-plugin
<jboynes> I mean that you can add to the pom
<rfeng> yes
<jboynes> I seem to remember something like that
<rfeng> If I add it, then it's fine
<jboynes> what do you add?
<rfeng> are you saying a special version as "latest release"?
<jboynes> yeah <version>LATEST
<rfeng> not case by case?
<jboynes> right
<rfeng> oh, I didn't try that
<jboynes> there's some magic for version ranges that I think applies to
plugins
* isilval_ has quit IRC ("Trillian (http://www.ceruleanstudios.com")
<jboynes> can't remember the details
<rfeng> anyway, back to the axis2 issue, how much is the risk?
<rfeng> We have the maven1 repo listed in the parent/pom.xml
<jboynes> sca/parent?
<rfeng> In my case, it seems that we always get the m1 artifacts for axis2
<rfeng> it's in the root parent/pom.xml
<rfeng> pom/parent ...
<jboynes> ok
<jboynes> does that help or hinder?
<rfeng> it's also very frustrating that only axis2 1.1 artifacts (not axiom,
...) are published to http://people.apache.org/repository
<lresende> are these issues related to axis2/axiom also affecting trunk code
? i'm getting build failure around databind-jaxb
<jboynes> rfeng: why is that frustrating?
<rfeng> I have no idea which m1 repo should be used
<jboynes> ah ok
<rfeng> it's not in one place (official m1 repo,
http://people.apache.org/repository and ws zones for woden)
<rfeng> kind of ugly
<rfeng> lresende, no
<jboynes> and it /should/ be in
http://people.apache.org/repo/m1-ibiblio-rsync-repository/
<jboynes> (well, not woden but the rest)
<rfeng> referencing
http://people.apache.org/repo/m1-ibiblio-rsync-repository/ is also
problematic as I found in the trunk
<jboynes> you should never reference that, it gets replicated to
http://www.ibiblio.org/mave
<jboynes> you should never reference that, it gets replicated to
http://www.ibiblio.org/maven
<rfeng> for example, there're some commons-xxx m1 artifacts and they get
pulled in and the transitive dependencies break
<rfeng> agree
<jboynes> but as it's a replica then it should break equally as well
<jboynes> :)
<rfeng> any idea about if the m1 artifacts get automatically converted into
m2 repo?
<jboynes> there used to be some conversion, I'm not sure if that is still
going on
<jboynes> I'd suggest asking on repository@a.o
<rfeng> I had some e-mail exchanges with the axiom 1.2.1 RM, and he only
uploaded stuff into the
http://people.apache.org/repo/m1-ibiblio-rsync-repository/ but I started to
see m2 artifacts
<rfeng> ok
<jboynes> that sounds like "yes it is still being converted" :)
<rfeng> and the pom file is missing, for example,
http://repo1.maven.org/maven2/org/apache/ws/commons/axiom/axiom-impl/1.2.1/
<jboynes> :(
<jboynes> I didn't see a [vote] thread for that - was there one?
<rfeng> no, there was only a vote to have the 1.2.1 release
<jboynes> odd
<simonnash> jboynes, sorry but I'm not sure what is "that".  which vote did
not happen?
<jboynes> axiom 1.2.1
<simonnash> oh you mean the actual publication of it?
<jboynes> yes, I saw a vote to do the release but nothing on the actual
content they were publishing
<simonnash> ok, i understand
* Amita has quit IRC
<jboynes> aiui are options are to continue to wait for axis2 1.1.1 or to
figure out if we can ignore the snapshot
<jboynes> rfeng: do you agree?
* bertlamb_ has quit IRC (Read error: 110 (Connection timed out))
<simonnash> i agree those are the options
* dkulp has joined #tuscany
* isilval_ has joined #tuscany
<jboynes> ok
* isilval_ has quit IRC (Client Quit)
* ant_away is now known as _ant
<_ant> sorry, got stuck on a call for al lthis chat
* jmarino has joined #tuscany
* bertlamb_ has joined #tuscany
<simonnash> ant, we we talking about various options for the axiom SNAPSHOT
issue.  can you review the log?
<_ant> so i'm trying to quickly catch up, did there something wrong with
what i posted about the snapshot jars not being used?
<simonnash> i think you need to read all the discussion.  it got a bit
detailed.  are you sure you were picking up from m2 repo or was it maybe
from m1 repo?
<_ant> i was using whatever is in the M2 branch
<_ant> why does M1/M2 matter if its not used in the classpath?
<simonnash> not M2 brach, m2 maven repo.  apparently the M2 branch can pick
up some parts of axis from the m1 repo.  you need to read all the
discussion.
<_ant> i've skimmed it all now i think, so rfeng, are you saying you have
had the situation where the snapshot are actually on the classpath?
<rfeng> yes, if the axis2 artifacts are pulled in from m2 repo
<rfeng> then the transitive dependencies work :-(
<_ant> i've had them in my local M2 repo and they're not used, is that
different?
<rfeng> can you check the axis2 artifacts in your local maven repo to see if
they are from m1 repo?
<_ant> ok, how do you tell?
<rfeng> reading the pom file
<rfeng> It seems that by default m1 artifacts are pulled in and no
transitive deps happen, then it works (meaning the axiom SNAPSHOT version
are not used)
<_ant> which artifacts, the axiom or axis2 ones?
<rfeng> axis2
<_ant> well currently the axis2 pom has    xmlns="
http://maven.apache.org/POM/4.0.0"
<_ant> but i'mnot sure if thats what i had when running the tests
<rfeng> oh
* dkulp has left #tuscany
<_ant> can i delete the m1 repos from tuscany pom and try to recreate?
<rfeng> I have this:
<rfeng> <project>
<rfeng>   <pomVersion>3</pomVersion>
<rfeng>   <groupId>org.apache.axis2</groupId>
<rfeng>   <artifactId>axis2-kernel</artifactId>
<rfeng>   <name>Apache Axis 2.0 - Kernel</name>
<rfeng>   <currentVersion>1.1</currentVersion>
<rfeng> so my version seems to be m1
<rfeng> can you try to run the helloworldws build with
addExtensionDependencies=true?
<rfeng> and see what jars are pulled in the WAR?
<_ant> ok
<_ant> you mean loadExtensionDependencies right?
<rfeng> y
<_ant> ok, I don't get the axiom snaphot in the war, just the 1.2 jars
<_ant> do you get the snapshot ones in the war? What do others see? I'm
worried I just have someconfig diff thing and leading us on a wild goose
chase
* kgoodson is now known as kgoodson_away
<rfeng> I didn't try the m2 artifacts yet with the war plugin
<rfeng> how did you get the axis2 maven2 artifacts, randomly?
<_ant> did nothing special so i guess randomly. let me delete them and see
where it gets them from...
<rfeng> ok
<rfeng> you can also check if the axiom-impl pom is m1 or m2
<rfeng> in the build, you may see warnings like invalid pom ...
<rfeng> if the pom is from m1
<_ant> Downloading:
http://repo1.maven.org/maven2/org/apache/axis2/axis2-kernel/1.1/axis2-kernel-1.1.jar
<_ant> Downloading:
http://repo1.maven.org/maven2/org/apache/ws/commons/axiom/axiom-api/1.2/axiom-api-1.2.jar
<_ant>   <modelVersion>4.0.0</modelVersion>
<_ant>   <artifactId>axiom-impl</artifactId>
<_ant>   <name>Axiom Impl</name>
<_ant>   <version>1.2</version>
<rfeng> hmm, you're getting everything from m2 repo
<rfeng> so it proves to be random :-(
<_ant> not so randon for me, AFAICT i've never had them actually used
<_ant> could anyone else try and see what they get?
<rfeng> I'm getting m1 artifacts, I can try again
<rfeng> It's interesting that I got the pom from the ws.zone (m1) and jar
from the m2 repo (repo1.maven.org/maven2)
<rfeng> ha, they removed the jars from
http://people.apache.org/repository/org.apache.axis2 but the poms are still
there
<rfeng> what a mess
<rfeng> so really it's a mixture of m1 and m2
* bertlamb_ has quit IRC (Read error: 110 (Connection timed out))
<_ant> but do you ever get the SNAPSHOT jars ending up in the WAR?
* jsdelfino has quit IRC (Read error: 110 (Connection timed out))
<rfeng> I'll try
<_ant> hows it going, have you or anyone been able to try this yet and get
axiom snapshot jars in the war?
* simonnash has quit IRC (Read error: 104 (Connection reset by peer))
<rfeng> _ant?
<_ant> hi
<rfeng> I tried
<rfeng> and it seems that luckily :-( due to a problem in the m2 pom  in
axis2 and it's still treated as an inavlid pom
<rfeng> so the transitive dependencies are not activated and our runtime
seems to be fine
<_ant> right, i've seen msgs about the invalid pom
<rfeng> here's the detail msg
<rfeng> [WARNING] POM for 'org.apache.axis2:axis2-kernel:pom:1.1:runtime' is
invalid. It
<rfeng>  will be ignored for artifact resolution. Reason: Failed to validate
POM
<rfeng> [DEBUG] Reason: Failed to validate POM
<rfeng> [DEBUG]
<rfeng> Validation Errors:
<rfeng> [DEBUG] 'dependencies.dependency.version' is missing for
org.apache.ws.commons.n
<rfeng> eethi:neethi
<rfeng> [DEBUG]
<rfeng> This section in the axis2-kernel pom is invalid
<rfeng>     <dependency>
<rfeng>       <groupId>org.apache.ws.commons.neethi</groupId>
<rfeng>       <artifactId>neethi</artifactId>
<rfeng>     </dependency>
<rfeng> in the parent pom, it defines org.apache.neethi in
<dependencyManagement>
<rfeng> net-net, axis2-kernel-1.1 has an invalid pom and transitive
dependency is not activated (which unfortunately good news to us)
<_ant> sounds good to me
<rfeng> the problem was fixed in axis2 trunk
<rfeng> let's summarize these and assume it's safe to get m2 out
<rfeng> do you want to send out the message?
<jboynes> is there any way the version can be inherited?
<rfeng> let me check the db-axiom
<_ant> why don't you so its clear its not just me who sees its working
<jboynes> e.g. if some other parent defines it in a <depManagement> element?
<rfeng> seems not
<rfeng> I'll do some final check and then send a msg saying the
SNAPSHOTversion of axiom-api won't be used at runtime
<_ant> cool. thx rfeng
* _ant is now known as ant_away