You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by Trevor Harmon <tr...@vocaro.com> on 2009/12/26 10:05:39 UTC

Dealing with buggy plugins

One of my projects depends on a couple of third-party plugins available on Central. These plugins provide key functionality for the build, but they also contain some serious bugs. Let's say I fix these bugs myself and submit patches to the maintainers. It could be months before the patches are reviewed, committed, and eventually show up as a new plugin release on Central.

I certainly can't wait around for my patches to be applied, so what are my options in the meantime? Should I simply install the patched plugin locally? Or would it be better (for any definition of that word) to set up my own repository manager and deploy them there?

Thanks,

Trevor


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Dealing with buggy plugins

Posted by Trevor Harmon <tr...@vocaro.com>.
On Dec 26, 2009, at 5:41 AM, Anders Hammar wrote:

> Well, I'd say it's better to install the MRM (Nexus or Artifactory) on a
> server in your development network. All your developers will be dependent on
> this to get the patched plugins (or any other internal artifacts).

A couple of issues with that: First, there are no other developers, just me. (It's a one-man hobby project that happens to use Maven for builds.) Second, I don't really have a server that could host an MRM. I do have an account with a shared web host, but I don't think it's possible to install, say, Nexus in that kind of environment. I've got my personal workstation, and that's pretty much it.

So, should I just run the MRM locally? Or do I even need to bother with an MRM? I don't really see any advantages to an MRM given my circumstances.

Trevor


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Dealing with buggy plugins

Posted by Anders Hammar <an...@hammar.net>.
Well, I'd say it's better to install the MRM (Nexus or Artifactory) on a
server in your development network. All your developers will be dependent on
this to get the patched plugins (or any other internal artifacts). Also,
what you should do is to set up the MRM to proxy all external repos your
using. So, all Maven clients (developers executing Maven builds) should
configure their settings.xml to only use your internal MRM,
All this is described in the Nexus book:
http://www.sonatype.com/books/nexus-book/reference/

/Anders

On Sat, Dec 26, 2009 at 10:49, Trevor Harmon <tr...@vocaro.com> wrote:

> On Dec 26, 2009, at 3:15 AM, Dan Tran wrote:
>
> > you must have your own repo and cut your own
> > internal release of the plugin with your fixes.
>
> Why exactly is a repo necessary? Setting one up just to host a couple of
> patched plugins for my personal use seems like overkill.
>
> If it is required, what exactly is involved in having my own repo? Could
> that be as simple as installing Nexus locally on my development machine?
>
> Trevor
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>

Re: Dealing with buggy plugins

Posted by Stephen Connolly <st...@gmail.com>.
in which case you should use a version with a qualifier that is clearly
yours, e.g.

2.4.4-tharmon-1

2009/12/27 Dan Tran <da...@gmail.com>

> good advice from Wayne, but for those plugins belong to default
> lifecycle (ie surefire), the groudId must stay the same.
>
> -D
>
> On Sat, Dec 26, 2009 at 8:58 PM, Wayne Fay <wa...@gmail.com> wrote:
> >> yes, fork the source into your scm. This way you can build and install
> >> the plugin to your local repo
> >
> > You will also want to change the groupId of your forked plugin so you
> > can eventually go back to the original plugin when they incorporate
> > your diffs and release a new version... assuming you believe this will
> > eventually happen.
> >
> > Wayne
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> > For additional commands, e-mail: users-help@maven.apache.org
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>

Re: Dealing with buggy plugins

Posted by Dan Tran <da...@gmail.com>.
good advice from Wayne, but for those plugins belong to default
lifecycle (ie surefire), the groudId must stay the same.

-D

On Sat, Dec 26, 2009 at 8:58 PM, Wayne Fay <wa...@gmail.com> wrote:
>> yes, fork the source into your scm. This way you can build and install
>> the plugin to your local repo
>
> You will also want to change the groupId of your forked plugin so you
> can eventually go back to the original plugin when they incorporate
> your diffs and release a new version... assuming you believe this will
> eventually happen.
>
> Wayne
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Dealing with buggy plugins

Posted by Wayne Fay <wa...@gmail.com>.
> yes, fork the source into your scm. This way you can build and install
> the plugin to your local repo

You will also want to change the groupId of your forked plugin so you
can eventually go back to the original plugin when they incorporate
your diffs and release a new version... assuming you believe this will
eventually happen.

Wayne

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Dealing with buggy plugins

Posted by Dan Tran <da...@gmail.com>.
yes, fork the source into your scm. This way you can build and install
the plugin to your local repo

-D

On Sat, Dec 26, 2009 at 4:20 PM, Trevor Harmon <tr...@vocaro.com> wrote:
> On Dec 26, 2009, at 4:04 AM, Dan Tran wrote:
>
>> Another option is the fork the plugin into your SCM, that is even worse
>
> You mean the binaries or the source? I agree that managing JARs in an SCM is not a good idea, but I don't see anything wrong with putting a patched branch of the plugin into my SCM. I'm not sure how the patches would be managed otherwise.
>
> Trevor
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Dealing with buggy plugins

Posted by Trevor Harmon <tr...@vocaro.com>.
On Dec 26, 2009, at 4:04 AM, Dan Tran wrote:

> Another option is the fork the plugin into your SCM, that is even worse

You mean the binaries or the source? I agree that managing JARs in an SCM is not a good idea, but I don't see anything wrong with putting a patched branch of the plugin into my SCM. I'm not sure how the patches would be managed otherwise.

Trevor


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Dealing with buggy plugins

Posted by Dan Tran <da...@gmail.com>.
On Sat, Dec 26, 2009 at 1:49 AM, Trevor Harmon <tr...@vocaro.com> wrote:
> On Dec 26, 2009, at 3:15 AM, Dan Tran wrote:
>
>> you must have your own repo and cut your own
>> internal release of the plugin with your fixes.
>
> Why exactly is a repo necessary? Setting one up just to host a couple of patched plugins for my personal use seems like overkill.
>
Another option is the fork the plugin into your SCM, that is even worse

> If it is required, what exactly is involved in having my own repo? Could that be as simple as installing Nexus locally on my development machine?

a maven repository manager ( ex: archiva,nexus )



>
> Trevor
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Dealing with buggy plugins

Posted by Trevor Harmon <tr...@vocaro.com>.
On Dec 26, 2009, at 3:15 AM, Dan Tran wrote:

> you must have your own repo and cut your own
> internal release of the plugin with your fixes.

Why exactly is a repo necessary? Setting one up just to host a couple of patched plugins for my personal use seems like overkill.

If it is required, what exactly is involved in having my own repo? Could that be as simple as installing Nexus locally on my development machine?

Trevor


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Dealing with buggy plugins

Posted by Dan Tran <da...@gmail.com>.
This is common pattern, you must have your own repo and cut your own
internal release of the plugin with your fixes.  Then bug the
maintainer to commit it, however
the more tests you put in your patch, the quicker it is committed.

-Dan

On Sat, Dec 26, 2009 at 1:05 AM, Trevor Harmon <tr...@vocaro.com> wrote:
> One of my projects depends on a couple of third-party plugins available on Central. These plugins provide key functionality for the build, but they also contain some serious bugs. Let's say I fix these bugs myself and submit patches to the maintainers. It could be months before the patches are reviewed, committed, and eventually show up as a new plugin release on Central.
>
> I certainly can't wait around for my patches to be applied, so what are my options in the meantime? Should I simply install the patched plugin locally? Or would it be better (for any definition of that word) to set up my own repository manager and deploy them there?
>
> Thanks,
>
> Trevor
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org