geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jason Dillon <ja...@planet57.com>
Subject Re: no more modules for specs...
Date Sat, 16 Dec 2006 21:47:48 GMT
On Dec 16, 2006, at 6:08 AM, Jason van Zyl wrote:
>> I think that the mvn build we have no is already fairly hard for  
>> folks to comprehend and would probably fall apart unless someone  
>> like me was here to answer everyones questions and monitor changes  
>> to keep things in check.  I think that is no different than if we  
>> were using Ant.
>
> I think you under estimate what other people know about Maven in  
> that they can apply their knowledge of the infrastructure from  
> other projects here provided you're following standard conventions.  
> And it's complicated because you're fighting a losing battle with  
> too many SNAPSHOTs. Even if the snapshot artifact resolution was  
> perfect you would still have these problems. You are getting bitten  
> by some severe technical problems in Maven, no doubt, but you are  
> exacerbating the situation by using the "SNAPSHOT" identifier  
> everywhere which inherently means "a shifting pile of sand" to  
> Maven. Start moving to eliminate them and your instabilities will  
> lessen tremendously.

Why the heck are you going off on SNAPSHOTS?  The mail I send  
initially was talking about versioning of a project's modules... and  
some pitfalls with remote repositories... and you basically turned  
that into SNAPSHOT this and SNAPSHOT that...


>> I actually think that Ant + a few tasks to manage limited remote  
>> dep inclusion + groovy scripting would be a very powerful  
>> combination and would be at least half as complicated as our Maven  
>> build.
>
> That's what people always say, but I have first hand experience  
> with many large companies with large builds and they are moving  
> away from their homebrew systems because they are sinking projects.  
> If you used Maven in a way you describe above you would have  
> stability i.e. no snapshots. If you're going to script something  
> then create a plugin to walk your dependencies and replace the  
> "SNAPSHOT" markers with real timestamps and you will have  
> stability. You are so much closer to having something working all  
> the time then you think.

Again with the SNAPSHOT muck... its more about the entire remote repo  
handling than it is about SNAPSHOTS.  Even if a project did not use  
any SNAPSHOTS, then same basic problems with remote repos exist...  
they are not part of the direct audit trail of the project, its quite  
easy for anyone to change any artifact which could completely fuck  
your build over, with out you even knowing about it.

If you take the remote repository out of the mix, then this can't  
happen... since all of your inputs must be local, and probably in  
your source control repo, you have a changelog, you can see when  
someone changes an artifact and with a build automation system setup  
you can see when those changes break things.  Your build is also not  
at the mercy of your network connectivity... and thus less likely to  
freak out when a network hickup occurs, less likely to waste your  
time building 80% of a project just to have it die on a missing  
dependency due to a repo being blacklisted. This is my point...  
nothing at all to do with using SNAPSHOTS or not.

Ant does not force a remote repo on to its projects, and IMO that is  
a huge plus over Maven.  Maven still has its plugins and reactor  
going for it though.  I still like Maven... I just want to have  
complete control over how and when it uses its remoteness to pull in  
stuff that will affect my builds.  And more so I want to be able to  
disable its default remoteness (central) and hardcode my projects to  
use a svn-based repo implementation that will always have the right  
versions of my dependencies.


>> I still think remote repos suck... but, maybe you guys will  
>> eventually find a better solution to that.
>
> I don't think they suck, I think you're just getting bitten  
> severely by the erratic snapshot handling and overuse of snapshots.  
> We will eventually get the repository under control as it's clear  
> now they have become a mission critical resource for many people,  
> we understand that and it will be fixed. There's going to be a lot  
> of bitching when we actually turn on the gauntlet. Any release, for  
> example which contains a "SNAPSHOT" identifier anywhere in the  
> graph will simply be rejected.

No... as explained above... its much, much, much more than the  
limited SNAPSHOT context which you seem to be stuck in.

--jason



Mime
View raw message