You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by Vincent Massol <vm...@pivolis.com> on 2003/04/09 15:55:31 UTC

Plugin Compatibility Information (was RE: Separating plugins from Maven core (was RE: cutting beta-9))


> -----Original Message-----
> From: Jason van Zyl [mailto:jason@zenplex.com]
> Sent: 09 April 2003 15:48
> To: Maven Developers List
> Subject: RE: Separating plugins from Maven core (was RE: cutting
beta-9)
> 
> On Wed, 2003-04-09 at 09:23, Vincent Massol wrote:
> 
> > >
> > > Break all existing plugins? I'm not sure what you mean exactly.
> > Michal's
> > > proposal includes a indicator which tells maven if a particular
type
> > of
> > > artifact is included in classpath creation. Do you have a specific
> > > plugin in mind you were thinking about?
> >
> > By "break", I mean they need to be rewritten. Here is one example
from
> > the eclipse plugin:
> >
> >         <j:forEach var="lib" items="${pom.artifacts}">
> >           <j:set var="eclipseDependency"
> >
> > value="${lib.dependency.getProperty('eclipse.dependency')}"/>
> >           <j:choose>
> >             <j:when test="${eclipseDependency == 'true'}">
> >               <classpathentry kind="src"
> > path="/${lib.dependency.artifactId}"/>
> >             </j:when>
> >             <j:otherwise>
> >               <classpathentry kind="var"
> > path="MAVEN_REPO${lib.urlPath}"/>
> >             </j:otherwise>
> >           </j:choose>
> >         </j:forEach>
> >
> >
> > This means that the plugin jars will be included in the generated
> > eclipse .classpath file.
> 
> I think Michal's proposal will certainly require some tweaks but I
don't
> think I would call it a rewrite i.e. in the above you would either
need
> to retrieve a list of artifacts that contribute to the classpath or do
> an additional check on the type of dependency it is.
> 
> The dependency type has always been available and it certainly
wouldn't
> hurt to use that indicator in the code above. Then any other
> dependencies won't get included as there have been other dependency
> types for quite some time so you're not really protected against
> inclusion of those either.
> 
> So the proposal would also allow for you to grab a set of source jar
> artifacts which I believe would also be a benefit for eclipse. Yes, a
> few changes will need to be made but I think the clean separation of
> dependency/artifact types is well worth it. But again, the type has
> always been available for use.

I agree with all of these. My English is not that good and when I said
"rewrite" I did not mean a full rewrite of the plugin; simply some
modifications :-)

In any case, I think this is a good solution (which will still break
some existing plugins which will need to be upgraded but that's ok).

This leads me to another question... :-) In the past, we were bundling
all the plugins in the maven release. Thus there were no need for a
maven user to verify if a given plugin was compatible with his version
of Maven. This won't be the case anymore.

Thus, I believe we need to add some information somewhere (XML file,
POM, etc) so that plugins can advertise what are their Maven
compatibilities. The plugin manager would also display this information
to the user.

So, question: where do we put this compatibility information?

Thanks
-Vincent

> 
> >
> > [snip]
> >
> > -Vincent
> >
> >
> >
> >
---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> > For additional commands, e-mail: dev-help@maven.apache.org
> --
> jvz.
> 
> Jason van Zyl
> jason@zenplex.com
> http://tambora.zenplex.org
> 
> In short, man creates for himself a new religion of a rational
> and technical order to justify his work and to be justified in it.
> 
>   -- Jacques Ellul, The Technological Society
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org



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