On 16 Feb 07, at 4:48 PM 16 Feb 07, Eric Brown wrote:

Hi Jason,

On Feb 16, 2007, at 5:27 AM, Jason van Zyl wrote:

On 16 Feb 07, at 1:12 AM 16 Feb 07, Eric Brown wrote:

My project's decided to continue using maven and patch it as necessary to fix bugs in maven that we're no longer willing to live with. I tried for an hour or two to get my project to build under 2.1, but gave up and figured it was under too much active development anyway. What is the time frame for 2.1 anyway? (3- months, 6-months, 2-years?)


It has actually been working just fine other then a problem introduced a few days ago which I haven't fixed yet. Wagon extensions don't work but other then that several of us have been using it and it's being used in production at a client of mine and is also working fine there.

Oh. I probably hit that. I only tried on Tuesday or Wednesday. And it seemed like some issue downloading something... If there's an issue I can watch to know when to try again, let me know.

But if the focus is on 2.0.6 for a while, I'm still not precisely sure which version to work with. It is not just 5 or 6 maven issues, I've got a few plugins whose bugs screw us up too... that I need to work on. And I've only got so much time (unfortunately)...

Join the club :-)


But I'm noticing that several of the bugs I have to patch in 2.0.5 are actually scheduled for 2.1 and some discuss architectural issues of maven that I'm not quite familiar with yet. Thus my question...

These are the bugs I'm in the process of patching (on my project's fork of 2.0.5): MNG-1994 Execution order of child plugins is arbitrary if inheritance is involved. (Somebody should close this. It is fixed in 2.0.5.)

Someone just mentioned that this wasn't fixed on the list yesterday, if there is no test project then it's not confirmed.

I see a message on 2/15, but it refers to MNG-2784 which I think is a different issue. (Though I suspect that the patch in MNG-1412 might fix it.) Maybe it is a different message you're referring to...

If there is a person reporting MNG-1994 is still broken, they should write a test. If I do discover in my own projects that it is still broken, however, I will eat the words I put in the comment about it being fixed in r425921 and immediately write a test. :)

(Maybe making it brain-dead simple for people on maven-users to write tests would help?)

MNG-1412 Dependency sorting in classpath. I updated the patch for this already.

Does it have tests?

Are there architecture documents to describe what is going on in the maven-project, maven-artifact and maven-artifact-manager components? Or even a few more javadocs and/or package level documentation? I know we're all hard-up for time to write code, write docs, etc for the projects we love to use, but while it is fairly easy to see what individual classes are doing, the big picture is hard to see. And this bug involves passing a lot of stuff around inside components and between them. I'm struggling to understand sometimes...

I don't think this is something you're easily going to get into and it will just involve reading the code. We have been chatting that we are going to refactor some of the larger classes and I doubt it would be a good use of your time unless because we are just going to start fixing.


The patch in MNG-1412 simply converts HashMap to LinkedHashMap and HashSet to LinkedHashSet in a few places where it seemed ordering made sense but was being trashed. I actually think it does more than it needs to do to fix this specific issue.

I'll look toward writing tests... but I'd rather work initially toward fixing the bugs in my fork (and submitting patches) instead of writing tests and waiting for someone else to fix the issues on their schedule.

If you create tests in the form of the example I provided and they work we will be able to absorb the much easier. Basically when we get a big garble of comments and patches by several people a lot of the times it's like starting from scratch and lot of times we take ideas and just recode a good chunk of it.

Almost 1-year between 2.0.4 and 2.0.5 has created a trust issue on my team that has its own set of work to do.

Fair enough, but that's life in open source. Many things happened over the course of the year and none of us are anyone's personal support desk. We do our best but you get what you get and we make no apologies.

I'll try to write tests too time permitting, but more developer- level documentation (especially architecture level) from the maven team would be wonderful too. If it already exists, point me toward it...

We barely have good enough user-level documentation but we are going to try and spec things out more consistently for 2.1 so that we can write developer level documentation. For example we have no real spec for inheritance/interpolation behavior, none for artifact management and the code is really the spec which is something I would like to change for 2.1.


BTW, I don't mean to be too harsh on maven. I realize it is open source. We're sticking with it despite seriously considering migrating to ant or gant.

After many years of doing this there really isn't any you could say that would ruffle my feathers. I have a very thick skin. I have always advocated that if you have a more effective way of doing something for your team then by all means. Maven is not a panacea. I just like to think it will be at some point in the future.

Jason.


Cheers,
Eric


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to