You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by Elliotte Rusty Harold <el...@ibiblio.org> on 2021/04/17 12:01:36 UTC

Re: maven-site-plugin and sisu-inject-plexus

plexus-container-default is used by Maven shared utils and thus by
almost everything in Maven. Not that this is a good thing, but c'est
la vie.

There's a lot of over-engineered, unnecessary code splitting between
Maven, Aether, Plexus, and Modello. Maven's a pretty classic example
of why developers should resist the urge to build yet another
framework. Code maintenance and development would be far simpler and
less expensive today if 20 years ago the Maven developers had simply
written a build tool without trying to extend it to a general purpose
framework. YAGNI.

On Tue, Feb 9, 2021 at 4:39 PM Tamás Cservenák <ta...@cservenak.net> wrote:
>
> Howdy,
>
> my 5 cents:
>
> Something is stale, very stale in there, as plexus-container-default was
> abandoned about 10 (maybe 12?) years ago, and sisu "shim"
> (sisu-inject-plexus) was created as the direct replacement (as functional
> and as API).
>
> If your project has Plexus "the old container" (plexus-container-default)
> pulled in, it means something on project or it's transitive dependency hull
> lags for about 10+ years if not more :)
>
> Given Plexus is "maven only" (mostly), it is most probably that some
> dependency (governed by us, chance is 90%+) pulls it in, that has not been
> touched for quite a long time.
>
> Plexus et al is one of the reasons why "maven pulls down the internet",
> especially as we resolve/download it only to toss it away (drop it).
>
> HTH
> T
>
> On Tue, Feb 9, 2021 at 5:13 PM Slawomir Jaranowski <s....@gmail.com>
> wrote:
>
> > Project used class like org.codehaus.plexus.PlexusContainer
> >
> > We can remove direct dependency because we have transitive dependency
> > from other artifacts - of course we needn't remove it.
> >
> > [INFO] --- maven-dependency-plugin:2.10:tree (default-cli) @
> > maven-site-plugin ---
> > [WARNING] Using Maven 2 dependency tree to get verbose output, which may be
> > inconsistent with actual Maven 3 resolution
> > [INFO]
> > org.apache.maven.plugins:maven-site-plugin:maven-plugin:3.10.0-SNAPSHOT
> > [INFO] +- org.apache.maven:maven-compat:jar:3.0.5:provided
> > [INFO] |  \- (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
> > scope updated from provided; omitted for duplicate)
> > [INFO] +- org.apache.maven:maven-core:jar:3.0.5:compile
> > [INFO] |  \- (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
> > omitted for conflict with 1.4.2)
> > [INFO] +- org.apache.maven:maven-plugin-api:jar:3.0.5:compile
> > [INFO] |  \- (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
> > omitted for duplicate)
> > [INFO] \- org.sonatype.sisu:sisu-inject-plexus:jar:1.4.2:compile
> >
> > Another case is that the same classes are placed in two separate artifact,
> > so class org.codehaus.plexus.PlexusContainer
> > can be found in *org.sonatype.sisu:sisu-inject-plexus *and
> > *org.codehaus.plexus:plexus-container-default*
> >
> > Project has dependency which provide
> > *org.codehaus.plexus:plexus-container-default*
> >
> > [INFO] --- maven-dependency-plugin:2.10:tree (default-cli) @
> > maven-site-plugin ---
> > [WARNING] Using Maven 2 dependency tree to get verbose output, which may be
> > inconsistent with actual Maven 3 resolution
> > [INFO]
> > org.apache.maven.plugins:maven-site-plugin:maven-plugin:3.10.0-SNAPSHOT
> > [INFO] +- org.apache.maven.doxia:doxia-sink-api:jar:1.9.1:compile
> > [INFO] |  \- org.apache.maven.doxia:doxia-logging-api:jar:1.9.1:compile
> > [INFO] |     \-
> > (org.codehaus.plexus:plexus-container-default:jar:1.7.1:compile - omitted
> > for duplicate)
> > [INFO] +- org.apache.maven.doxia:doxia-core:jar:1.9.1:compile
> > [INFO] |  \- org.codehaus.plexus:plexus-container-default:jar:1.7.1:compile
> > [INFO] +- org.apache.maven.doxia:doxia-site-renderer:jar:1.9.2:compile
> > [INFO] |  +-
> > (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-30:compile -
> > omitted for conflict with 1.7.1)
> > [INFO] |  \- org.codehaus.plexus:plexus-velocity:jar:1.2:compile
> > [INFO] |     \-
> >
> > (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile
> > - omitted for conflict with 1.7.1)
> > [INFO] \- org.apache.maven.doxia:doxia-integration-tools:jar:1.9.2:compile
> > [INFO]    \-
> > (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9:compile -
> > omitted for conflict with 1.7.1)
> >
> >
> > I don't know if it is good when a plugin has the same class
> > from different dependencies and which one will be used in runtime.
> >
> > It is possible that unit tests will use different implementations than
> > plugin running by maven.
> >
> > wt., 9 lut 2021 o 16:01 Elliotte Rusty Harold <el...@ibiblio.org>
> > napisał(a):
> >
> > > Seems maven dependency:analyze thinks we need this one. At least it
> > > doesn't call it out as unused:
> > >
> > > [WARNING] Used undeclared dependencies found:
> > > [WARNING]    javax.servlet:javax.servlet-api:jar:3.1.0:compile
> > > [WARNING] Unused declared dependencies found:
> > > [WARNING]    org.apache.maven.doxia:doxia-core:jar:1.9.1:compile
> > > [WARNING]    org.apache.maven.doxia:doxia-module-xhtml:jar:1.9.1:compile
> > > [WARNING]    org.apache.maven.doxia:doxia-module-xhtml5:jar:1.9.1:compile
> > > [WARNING]    org.apache.maven.doxia:doxia-module-apt:jar:1.9.1:runtime
> > > [WARNING]    org.apache.maven.doxia:doxia-module-fml:jar:1.9.1:runtime
> > > [WARNING]
> > org.apache.maven.doxia:doxia-module-markdown:jar:1.9.1:runtime
> > > [WARNING]
> > > org.apache.maven.doxia:doxia-module-confluence:jar:1.9.1:runtime
> > > [WARNING]
> > > org.apache.maven.doxia:doxia-module-docbook-simple:jar:1.9.1:runtime
> > > [WARNING]    org.apache.maven.doxia:doxia-module-twiki:jar:1.9.1:runtime
> > > [WARNING]
> > org.apache.maven.wagon:wagon-webdav-jackrabbit:jar:3.3.1:test
> > > [WARNING]    org.eclipse.jetty:jetty-client:jar:9.2.29.v20191105:test
> > > [WARNING]    org.slf4j:slf4j-simple:jar:1.5.3:test
> > > [WARNING]    org.slf4j:jcl-over-slf4j:jar:1.6.1:test
> > >
> > > On Tue, Feb 9, 2021 at 2:58 PM Elliotte Rusty Harold <elharo@ibiblio.org
> > >
> > > wrote:
> > > >
> > > > What does maven dependency:analyze say?
> > > >
> > > > On Tue, Feb 9, 2021 at 2:25 PM Emmanuel Bourg <eb...@apache.org>
> > wrote:
> > > > >
> > > > > Hi,
> > > > >
> > > > > maven-site-plugin has a dependency on sisu-inject-plexus [1] but it
> > > > > doesn't seem to be used. The project still builds and the tests pass
> > > > > without it.
> > > > >
> > > > > Is it safe to assume it can be removed?
> > > > >
> > > > > Emmanuel Bourg
> > > > >
> > > > > [1]
> > > > >
> > >
> > https://github.com/apache/maven-site-plugin/blob/maven-site-plugin-3.9.1/pom.xml#L284
> > > > >
> > > > > ---------------------------------------------------------------------
> > > > > To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> > > > > For additional commands, e-mail: dev-help@maven.apache.org
> > > > >
> > > >
> > > >
> > > > --
> > > > Elliotte Rusty Harold
> > > > elharo@ibiblio.org
> > >
> > >
> > >
> > > --
> > > Elliotte Rusty Harold
> > > elharo@ibiblio.org
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> > > For additional commands, e-mail: dev-help@maven.apache.org
> > >
> > >
> >
> > --
> > Sławomir Jaranowski
> >



-- 
Elliotte Rusty Harold
elharo@ibiblio.org

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


Re: maven-site-plugin and sisu-inject-plexus

Posted by Slawomir Jaranowski <s....@gmail.com>.
So maybe it is time to start removing unnecessary code ...

There is needed clear decision what component should be removed, what
replaces it.
In order to everybody know direction and target goal.

Eg. plexus-container-default - should be removed at all
org.codehaus.plexus.logging -> sl4j .. and so on



sob., 17 kwi 2021 o 14:02 Elliotte Rusty Harold <el...@ibiblio.org>
napisał(a):

> plexus-container-default is used by Maven shared utils and thus by
> almost everything in Maven. Not that this is a good thing, but c'est
> la vie.
>
> There's a lot of over-engineered, unnecessary code splitting between
> Maven, Aether, Plexus, and Modello. Maven's a pretty classic example
> of why developers should resist the urge to build yet another
> framework. Code maintenance and development would be far simpler and
> less expensive today if 20 years ago the Maven developers had simply
> written a build tool without trying to extend it to a general purpose
> framework. YAGNI.
>
> On Tue, Feb 9, 2021 at 4:39 PM Tamás Cservenák <ta...@cservenak.net>
> wrote:
> >
> > Howdy,
> >
> > my 5 cents:
> >
> > Something is stale, very stale in there, as plexus-container-default was
> > abandoned about 10 (maybe 12?) years ago, and sisu "shim"
> > (sisu-inject-plexus) was created as the direct replacement (as functional
> > and as API).
> >
> > If your project has Plexus "the old container" (plexus-container-default)
> > pulled in, it means something on project or it's transitive dependency
> hull
> > lags for about 10+ years if not more :)
> >
> > Given Plexus is "maven only" (mostly), it is most probably that some
> > dependency (governed by us, chance is 90%+) pulls it in, that has not
> been
> > touched for quite a long time.
> >
> > Plexus et al is one of the reasons why "maven pulls down the internet",
> > especially as we resolve/download it only to toss it away (drop it).
> >
> > HTH
> > T
> >
> > On Tue, Feb 9, 2021 at 5:13 PM Slawomir Jaranowski <
> s.jaranowski@gmail.com>
> > wrote:
> >
> > > Project used class like org.codehaus.plexus.PlexusContainer
> > >
> > > We can remove direct dependency because we have transitive dependency
> > > from other artifacts - of course we needn't remove it.
> > >
> > > [INFO] --- maven-dependency-plugin:2.10:tree (default-cli) @
> > > maven-site-plugin ---
> > > [WARNING] Using Maven 2 dependency tree to get verbose output, which
> may be
> > > inconsistent with actual Maven 3 resolution
> > > [INFO]
> > > org.apache.maven.plugins:maven-site-plugin:maven-plugin:3.10.0-SNAPSHOT
> > > [INFO] +- org.apache.maven:maven-compat:jar:3.0.5:provided
> > > [INFO] |  \- (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
> > > scope updated from provided; omitted for duplicate)
> > > [INFO] +- org.apache.maven:maven-core:jar:3.0.5:compile
> > > [INFO] |  \- (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
> > > omitted for conflict with 1.4.2)
> > > [INFO] +- org.apache.maven:maven-plugin-api:jar:3.0.5:compile
> > > [INFO] |  \- (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
> > > omitted for duplicate)
> > > [INFO] \- org.sonatype.sisu:sisu-inject-plexus:jar:1.4.2:compile
> > >
> > > Another case is that the same classes are placed in two separate
> artifact,
> > > so class org.codehaus.plexus.PlexusContainer
> > > can be found in *org.sonatype.sisu:sisu-inject-plexus *and
> > > *org.codehaus.plexus:plexus-container-default*
> > >
> > > Project has dependency which provide
> > > *org.codehaus.plexus:plexus-container-default*
> > >
> > > [INFO] --- maven-dependency-plugin:2.10:tree (default-cli) @
> > > maven-site-plugin ---
> > > [WARNING] Using Maven 2 dependency tree to get verbose output, which
> may be
> > > inconsistent with actual Maven 3 resolution
> > > [INFO]
> > > org.apache.maven.plugins:maven-site-plugin:maven-plugin:3.10.0-SNAPSHOT
> > > [INFO] +- org.apache.maven.doxia:doxia-sink-api:jar:1.9.1:compile
> > > [INFO] |  \- org.apache.maven.doxia:doxia-logging-api:jar:1.9.1:compile
> > > [INFO] |     \-
> > > (org.codehaus.plexus:plexus-container-default:jar:1.7.1:compile -
> omitted
> > > for duplicate)
> > > [INFO] +- org.apache.maven.doxia:doxia-core:jar:1.9.1:compile
> > > [INFO] |  \-
> org.codehaus.plexus:plexus-container-default:jar:1.7.1:compile
> > > [INFO] +- org.apache.maven.doxia:doxia-site-renderer:jar:1.9.2:compile
> > > [INFO] |  +-
> > > (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-30:compile
> -
> > > omitted for conflict with 1.7.1)
> > > [INFO] |  \- org.codehaus.plexus:plexus-velocity:jar:1.2:compile
> > > [INFO] |     \-
> > >
> > >
> (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile
> > > - omitted for conflict with 1.7.1)
> > > [INFO] \-
> org.apache.maven.doxia:doxia-integration-tools:jar:1.9.2:compile
> > > [INFO]    \-
> > > (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9:compile -
> > > omitted for conflict with 1.7.1)
> > >
> > >
> > > I don't know if it is good when a plugin has the same class
> > > from different dependencies and which one will be used in runtime.
> > >
> > > It is possible that unit tests will use different implementations than
> > > plugin running by maven.
> > >
> > > wt., 9 lut 2021 o 16:01 Elliotte Rusty Harold <el...@ibiblio.org>
> > > napisał(a):
> > >
> > > > Seems maven dependency:analyze thinks we need this one. At least it
> > > > doesn't call it out as unused:
> > > >
> > > > [WARNING] Used undeclared dependencies found:
> > > > [WARNING]    javax.servlet:javax.servlet-api:jar:3.1.0:compile
> > > > [WARNING] Unused declared dependencies found:
> > > > [WARNING]    org.apache.maven.doxia:doxia-core:jar:1.9.1:compile
> > > > [WARNING]
> org.apache.maven.doxia:doxia-module-xhtml:jar:1.9.1:compile
> > > > [WARNING]
> org.apache.maven.doxia:doxia-module-xhtml5:jar:1.9.1:compile
> > > > [WARNING]
> org.apache.maven.doxia:doxia-module-apt:jar:1.9.1:runtime
> > > > [WARNING]
> org.apache.maven.doxia:doxia-module-fml:jar:1.9.1:runtime
> > > > [WARNING]
> > > org.apache.maven.doxia:doxia-module-markdown:jar:1.9.1:runtime
> > > > [WARNING]
> > > > org.apache.maven.doxia:doxia-module-confluence:jar:1.9.1:runtime
> > > > [WARNING]
> > > > org.apache.maven.doxia:doxia-module-docbook-simple:jar:1.9.1:runtime
> > > > [WARNING]
> org.apache.maven.doxia:doxia-module-twiki:jar:1.9.1:runtime
> > > > [WARNING]
> > > org.apache.maven.wagon:wagon-webdav-jackrabbit:jar:3.3.1:test
> > > > [WARNING]    org.eclipse.jetty:jetty-client:jar:9.2.29.v20191105:test
> > > > [WARNING]    org.slf4j:slf4j-simple:jar:1.5.3:test
> > > > [WARNING]    org.slf4j:jcl-over-slf4j:jar:1.6.1:test
> > > >
> > > > On Tue, Feb 9, 2021 at 2:58 PM Elliotte Rusty Harold <
> elharo@ibiblio.org
> > > >
> > > > wrote:
> > > > >
> > > > > What does maven dependency:analyze say?
> > > > >
> > > > > On Tue, Feb 9, 2021 at 2:25 PM Emmanuel Bourg <eb...@apache.org>
> > > wrote:
> > > > > >
> > > > > > Hi,
> > > > > >
> > > > > > maven-site-plugin has a dependency on sisu-inject-plexus [1] but
> it
> > > > > > doesn't seem to be used. The project still builds and the tests
> pass
> > > > > > without it.
> > > > > >
> > > > > > Is it safe to assume it can be removed?
> > > > > >
> > > > > > Emmanuel Bourg
> > > > > >
> > > > > > [1]
> > > > > >
> > > >
> > >
> https://github.com/apache/maven-site-plugin/blob/maven-site-plugin-3.9.1/pom.xml#L284
> > > > > >
> > > > > >
> ---------------------------------------------------------------------
> > > > > > To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> > > > > > For additional commands, e-mail: dev-help@maven.apache.org
> > > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Elliotte Rusty Harold
> > > > > elharo@ibiblio.org
> > > >
> > > >
> > > >
> > > > --
> > > > Elliotte Rusty Harold
> > > > elharo@ibiblio.org
> > > >
> > > > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> > > > For additional commands, e-mail: dev-help@maven.apache.org
> > > >
> > > >
> > >
> > > --
> > > Sławomir Jaranowski
> > >
>
>
>
> --
> Elliotte Rusty Harold
> elharo@ibiblio.org
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
>
>

-- 
Sławomir Jaranowski

Re: maven-site-plugin and sisu-inject-plexus

Posted by Stuart McCulloch <mc...@gmail.com>.
On Sat, 17 Apr 2021 at 13:47, Elliotte Rusty Harold <el...@ibiblio.org>
wrote:

> I'd certainly prefer to use a fully supported, maintained, and
> documented framework instead of Plexus. So about Sisu:
>

Sisu is basically a few modules installed on top of Guice to make it more
dynamic, plus a thin compatibility layer that provides the Plexus API

Maven has used Sisu (and Guice) since version 3 - the general idea was to
allow plugins to use standard annotations (like JSR330 @Inject) while still
supporting legacy plugins.


> Where is it documented?
>

The main project site is https://www.eclipse.org/sisu/

The doc most useful for Maven developers is
http://wiki.eclipse.org/Sisu/PlexusMigration

There's more detail in the javadoc:
https://www.eclipse.org/sisu/docs/api/org.eclipse.sisu.inject/reference/packages.html
https://www.eclipse.org/sisu/docs/api/org.eclipse.sisu.plexus/reference/packages.html


> Is it under active development?
>

Yes - contributions are also welcome.


> When will 1.0 be released?
>

This year, if everything goes to plan.


> Which projects besides Maven use it?
>

Various Sonatype projects, including Nexus.


> On Sat, Apr 17, 2021 at 12:29 PM Tamás Cservenák <ta...@cservenak.net>
> wrote:
> >
> > To be clear, am talking about this artifact (sisu plexus shim):
> >
> https://repo1.maven.org/maven2/org/eclipse/sisu/org.eclipse.sisu.plexus/0.3.4/
> >
> > Whenever you see plexus-container-default, you SHOULD replace it with
> this
> > above (or better yet, convert to plain sisu).
> >
> > T
> >
> > On Sat, Apr 17, 2021, 14:25 Tamás Cservenák <ta...@cservenak.net> wrote:
> >
> > > Plexus-container-default is NOT (and SHOULD NOT) be used anywhere, but
> the
> > > drop in sisu-plexus drop replacement should be used instead.
> > >
> > > If we use p-c-d anywhere (even in UTs), that's bad, as maven uses s-p
> > > instead.
> > >
> > > p-c-d is not used in maven for sure.
> > >
> > > T
> > >
> > > On Sat, Apr 17, 2021, 14:02 Elliotte Rusty Harold <el...@ibiblio.org>
> > > wrote:
> > >
> > >> plexus-container-default is used by Maven shared utils and thus by
> > >> almost everything in Maven. Not that this is a good thing, but c'est
> > >> la vie.
> > >>
> > >> There's a lot of over-engineered, unnecessary code splitting between
> > >> Maven, Aether, Plexus, and Modello. Maven's a pretty classic example
> > >> of why developers should resist the urge to build yet another
> > >> framework. Code maintenance and development would be far simpler and
> > >> less expensive today if 20 years ago the Maven developers had simply
> > >> written a build tool without trying to extend it to a general purpose
> > >> framework. YAGNI.
> > >>
> > >> On Tue, Feb 9, 2021 at 4:39 PM Tamás Cservenák <ta...@cservenak.net>
> > >> wrote:
> > >> >
> > >> > Howdy,
> > >> >
> > >> > my 5 cents:
> > >> >
> > >> > Something is stale, very stale in there, as
> plexus-container-default was
> > >> > abandoned about 10 (maybe 12?) years ago, and sisu "shim"
> > >> > (sisu-inject-plexus) was created as the direct replacement (as
> > >> functional
> > >> > and as API).
> > >> >
> > >> > If your project has Plexus "the old container"
> > >> (plexus-container-default)
> > >> > pulled in, it means something on project or it's transitive
> dependency
> > >> hull
> > >> > lags for about 10+ years if not more :)
> > >> >
> > >> > Given Plexus is "maven only" (mostly), it is most probably that some
> > >> > dependency (governed by us, chance is 90%+) pulls it in, that has
> not
> > >> been
> > >> > touched for quite a long time.
> > >> >
> > >> > Plexus et al is one of the reasons why "maven pulls down the
> internet",
> > >> > especially as we resolve/download it only to toss it away (drop it).
> > >> >
> > >> > HTH
> > >> > T
> > >> >
> > >> > On Tue, Feb 9, 2021 at 5:13 PM Slawomir Jaranowski <
> > >> s.jaranowski@gmail.com>
> > >> > wrote:
> > >> >
> > >> > > Project used class like org.codehaus.plexus.PlexusContainer
> > >> > >
> > >> > > We can remove direct dependency because we have transitive
> dependency
> > >> > > from other artifacts - of course we needn't remove it.
> > >> > >
> > >> > > [INFO] --- maven-dependency-plugin:2.10:tree (default-cli) @
> > >> > > maven-site-plugin ---
> > >> > > [WARNING] Using Maven 2 dependency tree to get verbose output,
> which
> > >> may be
> > >> > > inconsistent with actual Maven 3 resolution
> > >> > > [INFO]
> > >> > >
> > >>
> org.apache.maven.plugins:maven-site-plugin:maven-plugin:3.10.0-SNAPSHOT
> > >> > > [INFO] +- org.apache.maven:maven-compat:jar:3.0.5:provided
> > >> > > [INFO] |  \-
> (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
> > >> > > scope updated from provided; omitted for duplicate)
> > >> > > [INFO] +- org.apache.maven:maven-core:jar:3.0.5:compile
> > >> > > [INFO] |  \-
> (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
> > >> > > omitted for conflict with 1.4.2)
> > >> > > [INFO] +- org.apache.maven:maven-plugin-api:jar:3.0.5:compile
> > >> > > [INFO] |  \-
> (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
> > >> > > omitted for duplicate)
> > >> > > [INFO] \- org.sonatype.sisu:sisu-inject-plexus:jar:1.4.2:compile
> > >> > >
> > >> > > Another case is that the same classes are placed in two separate
> > >> artifact,
> > >> > > so class org.codehaus.plexus.PlexusContainer
> > >> > > can be found in *org.sonatype.sisu:sisu-inject-plexus *and
> > >> > > *org.codehaus.plexus:plexus-container-default*
> > >> > >
> > >> > > Project has dependency which provide
> > >> > > *org.codehaus.plexus:plexus-container-default*
> > >> > >
> > >> > > [INFO] --- maven-dependency-plugin:2.10:tree (default-cli) @
> > >> > > maven-site-plugin ---
> > >> > > [WARNING] Using Maven 2 dependency tree to get verbose output,
> which
> > >> may be
> > >> > > inconsistent with actual Maven 3 resolution
> > >> > > [INFO]
> > >> > >
> > >>
> org.apache.maven.plugins:maven-site-plugin:maven-plugin:3.10.0-SNAPSHOT
> > >> > > [INFO] +- org.apache.maven.doxia:doxia-sink-api:jar:1.9.1:compile
> > >> > > [INFO] |  \-
> > >> org.apache.maven.doxia:doxia-logging-api:jar:1.9.1:compile
> > >> > > [INFO] |     \-
> > >> > > (org.codehaus.plexus:plexus-container-default:jar:1.7.1:compile -
> > >> omitted
> > >> > > for duplicate)
> > >> > > [INFO] +- org.apache.maven.doxia:doxia-core:jar:1.9.1:compile
> > >> > > [INFO] |  \-
> > >> org.codehaus.plexus:plexus-container-default:jar:1.7.1:compile
> > >> > > [INFO] +-
> org.apache.maven.doxia:doxia-site-renderer:jar:1.9.2:compile
> > >> > > [INFO] |  +-
> > >> > >
> > >>
> (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-30:compile -
> > >> > > omitted for conflict with 1.7.1)
> > >> > > [INFO] |  \- org.codehaus.plexus:plexus-velocity:jar:1.2:compile
> > >> > > [INFO] |     \-
> > >> > >
> > >> > >
> > >>
> (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile
> > >> > > - omitted for conflict with 1.7.1)
> > >> > > [INFO] \-
> > >> org.apache.maven.doxia:doxia-integration-tools:jar:1.9.2:compile
> > >> > > [INFO]    \-
> > >> > >
> (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9:compile
> > >> -
> > >> > > omitted for conflict with 1.7.1)
> > >> > >
> > >> > >
> > >> > > I don't know if it is good when a plugin has the same class
> > >> > > from different dependencies and which one will be used in runtime.
> > >> > >
> > >> > > It is possible that unit tests will use different implementations
> than
> > >> > > plugin running by maven.
> > >> > >
> > >> > > wt., 9 lut 2021 o 16:01 Elliotte Rusty Harold <elharo@ibiblio.org
> >
> > >> > > napisał(a):
> > >> > >
> > >> > > > Seems maven dependency:analyze thinks we need this one. At
> least it
> > >> > > > doesn't call it out as unused:
> > >> > > >
> > >> > > > [WARNING] Used undeclared dependencies found:
> > >> > > > [WARNING]    javax.servlet:javax.servlet-api:jar:3.1.0:compile
> > >> > > > [WARNING] Unused declared dependencies found:
> > >> > > > [WARNING]    org.apache.maven.doxia:doxia-core:jar:1.9.1:compile
> > >> > > > [WARNING]
> > >> org.apache.maven.doxia:doxia-module-xhtml:jar:1.9.1:compile
> > >> > > > [WARNING]
> > >> org.apache.maven.doxia:doxia-module-xhtml5:jar:1.9.1:compile
> > >> > > > [WARNING]
> > >> org.apache.maven.doxia:doxia-module-apt:jar:1.9.1:runtime
> > >> > > > [WARNING]
> > >> org.apache.maven.doxia:doxia-module-fml:jar:1.9.1:runtime
> > >> > > > [WARNING]
> > >> > > org.apache.maven.doxia:doxia-module-markdown:jar:1.9.1:runtime
> > >> > > > [WARNING]
> > >> > > > org.apache.maven.doxia:doxia-module-confluence:jar:1.9.1:runtime
> > >> > > > [WARNING]
> > >> > > >
> org.apache.maven.doxia:doxia-module-docbook-simple:jar:1.9.1:runtime
> > >> > > > [WARNING]
> > >> org.apache.maven.doxia:doxia-module-twiki:jar:1.9.1:runtime
> > >> > > > [WARNING]
> > >> > > org.apache.maven.wagon:wagon-webdav-jackrabbit:jar:3.3.1:test
> > >> > > > [WARNING]
> > >> org.eclipse.jetty:jetty-client:jar:9.2.29.v20191105:test
> > >> > > > [WARNING]    org.slf4j:slf4j-simple:jar:1.5.3:test
> > >> > > > [WARNING]    org.slf4j:jcl-over-slf4j:jar:1.6.1:test
> > >> > > >
> > >> > > > On Tue, Feb 9, 2021 at 2:58 PM Elliotte Rusty Harold <
> > >> elharo@ibiblio.org
> > >> > > >
> > >> > > > wrote:
> > >> > > > >
> > >> > > > > What does maven dependency:analyze say?
> > >> > > > >
> > >> > > > > On Tue, Feb 9, 2021 at 2:25 PM Emmanuel Bourg <
> ebourg@apache.org>
> > >> > > wrote:
> > >> > > > > >
> > >> > > > > > Hi,
> > >> > > > > >
> > >> > > > > > maven-site-plugin has a dependency on sisu-inject-plexus [1]
> > >> but it
> > >> > > > > > doesn't seem to be used. The project still builds and the
> tests
> > >> pass
> > >> > > > > > without it.
> > >> > > > > >
> > >> > > > > > Is it safe to assume it can be removed?
> > >> > > > > >
> > >> > > > > > Emmanuel Bourg
> > >> > > > > >
> > >> > > > > > [1]
> > >> > > > > >
> > >> > > >
> > >> > >
> > >>
> https://github.com/apache/maven-site-plugin/blob/maven-site-plugin-3.9.1/pom.xml#L284
> > >> > > > > >
> > >> > > > > >
> > >> ---------------------------------------------------------------------
> > >> > > > > > To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> > >> > > > > > For additional commands, e-mail: dev-help@maven.apache.org
> > >> > > > > >
> > >> > > > >
> > >> > > > >
> > >> > > > > --
> > >> > > > > Elliotte Rusty Harold
> > >> > > > > elharo@ibiblio.org
> > >> > > >
> > >> > > >
> > >> > > >
> > >> > > > --
> > >> > > > Elliotte Rusty Harold
> > >> > > > elharo@ibiblio.org
> > >> > > >
> > >> > > >
> > >> ---------------------------------------------------------------------
> > >> > > > To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> > >> > > > For additional commands, e-mail: dev-help@maven.apache.org
> > >> > > >
> > >> > > >
> > >> > >
> > >> > > --
> > >> > > Sławomir Jaranowski
> > >> > >
> > >>
> > >>
> > >>
> > >> --
> > >> Elliotte Rusty Harold
> > >> elharo@ibiblio.org
> > >>
> > >> ---------------------------------------------------------------------
> > >> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> > >> For additional commands, e-mail: dev-help@maven.apache.org
> > >>
> > >>
>
>
>
> --
> Elliotte Rusty Harold
> elharo@ibiblio.org
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
>
>

Re: maven-site-plugin and sisu-inject-plexus

Posted by Elliotte Rusty Harold <el...@ibiblio.org>.
I'd certainly prefer to use a fully supported, maintained, and
documented framework instead of Plexus. So about Sisu:

Where is it documented?
Is it under active development?
When will 1.0 be released?
Which projects besides Maven use it?

On Sat, Apr 17, 2021 at 12:29 PM Tamás Cservenák <ta...@cservenak.net> wrote:
>
> To be clear, am talking about this artifact (sisu plexus shim):
> https://repo1.maven.org/maven2/org/eclipse/sisu/org.eclipse.sisu.plexus/0.3.4/
>
> Whenever you see plexus-container-default, you SHOULD replace it with this
> above (or better yet, convert to plain sisu).
>
> T
>
> On Sat, Apr 17, 2021, 14:25 Tamás Cservenák <ta...@cservenak.net> wrote:
>
> > Plexus-container-default is NOT (and SHOULD NOT) be used anywhere, but the
> > drop in sisu-plexus drop replacement should be used instead.
> >
> > If we use p-c-d anywhere (even in UTs), that's bad, as maven uses s-p
> > instead.
> >
> > p-c-d is not used in maven for sure.
> >
> > T
> >
> > On Sat, Apr 17, 2021, 14:02 Elliotte Rusty Harold <el...@ibiblio.org>
> > wrote:
> >
> >> plexus-container-default is used by Maven shared utils and thus by
> >> almost everything in Maven. Not that this is a good thing, but c'est
> >> la vie.
> >>
> >> There's a lot of over-engineered, unnecessary code splitting between
> >> Maven, Aether, Plexus, and Modello. Maven's a pretty classic example
> >> of why developers should resist the urge to build yet another
> >> framework. Code maintenance and development would be far simpler and
> >> less expensive today if 20 years ago the Maven developers had simply
> >> written a build tool without trying to extend it to a general purpose
> >> framework. YAGNI.
> >>
> >> On Tue, Feb 9, 2021 at 4:39 PM Tamás Cservenák <ta...@cservenak.net>
> >> wrote:
> >> >
> >> > Howdy,
> >> >
> >> > my 5 cents:
> >> >
> >> > Something is stale, very stale in there, as plexus-container-default was
> >> > abandoned about 10 (maybe 12?) years ago, and sisu "shim"
> >> > (sisu-inject-plexus) was created as the direct replacement (as
> >> functional
> >> > and as API).
> >> >
> >> > If your project has Plexus "the old container"
> >> (plexus-container-default)
> >> > pulled in, it means something on project or it's transitive dependency
> >> hull
> >> > lags for about 10+ years if not more :)
> >> >
> >> > Given Plexus is "maven only" (mostly), it is most probably that some
> >> > dependency (governed by us, chance is 90%+) pulls it in, that has not
> >> been
> >> > touched for quite a long time.
> >> >
> >> > Plexus et al is one of the reasons why "maven pulls down the internet",
> >> > especially as we resolve/download it only to toss it away (drop it).
> >> >
> >> > HTH
> >> > T
> >> >
> >> > On Tue, Feb 9, 2021 at 5:13 PM Slawomir Jaranowski <
> >> s.jaranowski@gmail.com>
> >> > wrote:
> >> >
> >> > > Project used class like org.codehaus.plexus.PlexusContainer
> >> > >
> >> > > We can remove direct dependency because we have transitive dependency
> >> > > from other artifacts - of course we needn't remove it.
> >> > >
> >> > > [INFO] --- maven-dependency-plugin:2.10:tree (default-cli) @
> >> > > maven-site-plugin ---
> >> > > [WARNING] Using Maven 2 dependency tree to get verbose output, which
> >> may be
> >> > > inconsistent with actual Maven 3 resolution
> >> > > [INFO]
> >> > >
> >> org.apache.maven.plugins:maven-site-plugin:maven-plugin:3.10.0-SNAPSHOT
> >> > > [INFO] +- org.apache.maven:maven-compat:jar:3.0.5:provided
> >> > > [INFO] |  \- (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
> >> > > scope updated from provided; omitted for duplicate)
> >> > > [INFO] +- org.apache.maven:maven-core:jar:3.0.5:compile
> >> > > [INFO] |  \- (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
> >> > > omitted for conflict with 1.4.2)
> >> > > [INFO] +- org.apache.maven:maven-plugin-api:jar:3.0.5:compile
> >> > > [INFO] |  \- (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
> >> > > omitted for duplicate)
> >> > > [INFO] \- org.sonatype.sisu:sisu-inject-plexus:jar:1.4.2:compile
> >> > >
> >> > > Another case is that the same classes are placed in two separate
> >> artifact,
> >> > > so class org.codehaus.plexus.PlexusContainer
> >> > > can be found in *org.sonatype.sisu:sisu-inject-plexus *and
> >> > > *org.codehaus.plexus:plexus-container-default*
> >> > >
> >> > > Project has dependency which provide
> >> > > *org.codehaus.plexus:plexus-container-default*
> >> > >
> >> > > [INFO] --- maven-dependency-plugin:2.10:tree (default-cli) @
> >> > > maven-site-plugin ---
> >> > > [WARNING] Using Maven 2 dependency tree to get verbose output, which
> >> may be
> >> > > inconsistent with actual Maven 3 resolution
> >> > > [INFO]
> >> > >
> >> org.apache.maven.plugins:maven-site-plugin:maven-plugin:3.10.0-SNAPSHOT
> >> > > [INFO] +- org.apache.maven.doxia:doxia-sink-api:jar:1.9.1:compile
> >> > > [INFO] |  \-
> >> org.apache.maven.doxia:doxia-logging-api:jar:1.9.1:compile
> >> > > [INFO] |     \-
> >> > > (org.codehaus.plexus:plexus-container-default:jar:1.7.1:compile -
> >> omitted
> >> > > for duplicate)
> >> > > [INFO] +- org.apache.maven.doxia:doxia-core:jar:1.9.1:compile
> >> > > [INFO] |  \-
> >> org.codehaus.plexus:plexus-container-default:jar:1.7.1:compile
> >> > > [INFO] +- org.apache.maven.doxia:doxia-site-renderer:jar:1.9.2:compile
> >> > > [INFO] |  +-
> >> > >
> >> (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-30:compile -
> >> > > omitted for conflict with 1.7.1)
> >> > > [INFO] |  \- org.codehaus.plexus:plexus-velocity:jar:1.2:compile
> >> > > [INFO] |     \-
> >> > >
> >> > >
> >> (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile
> >> > > - omitted for conflict with 1.7.1)
> >> > > [INFO] \-
> >> org.apache.maven.doxia:doxia-integration-tools:jar:1.9.2:compile
> >> > > [INFO]    \-
> >> > > (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9:compile
> >> -
> >> > > omitted for conflict with 1.7.1)
> >> > >
> >> > >
> >> > > I don't know if it is good when a plugin has the same class
> >> > > from different dependencies and which one will be used in runtime.
> >> > >
> >> > > It is possible that unit tests will use different implementations than
> >> > > plugin running by maven.
> >> > >
> >> > > wt., 9 lut 2021 o 16:01 Elliotte Rusty Harold <el...@ibiblio.org>
> >> > > napisał(a):
> >> > >
> >> > > > Seems maven dependency:analyze thinks we need this one. At least it
> >> > > > doesn't call it out as unused:
> >> > > >
> >> > > > [WARNING] Used undeclared dependencies found:
> >> > > > [WARNING]    javax.servlet:javax.servlet-api:jar:3.1.0:compile
> >> > > > [WARNING] Unused declared dependencies found:
> >> > > > [WARNING]    org.apache.maven.doxia:doxia-core:jar:1.9.1:compile
> >> > > > [WARNING]
> >> org.apache.maven.doxia:doxia-module-xhtml:jar:1.9.1:compile
> >> > > > [WARNING]
> >> org.apache.maven.doxia:doxia-module-xhtml5:jar:1.9.1:compile
> >> > > > [WARNING]
> >> org.apache.maven.doxia:doxia-module-apt:jar:1.9.1:runtime
> >> > > > [WARNING]
> >> org.apache.maven.doxia:doxia-module-fml:jar:1.9.1:runtime
> >> > > > [WARNING]
> >> > > org.apache.maven.doxia:doxia-module-markdown:jar:1.9.1:runtime
> >> > > > [WARNING]
> >> > > > org.apache.maven.doxia:doxia-module-confluence:jar:1.9.1:runtime
> >> > > > [WARNING]
> >> > > > org.apache.maven.doxia:doxia-module-docbook-simple:jar:1.9.1:runtime
> >> > > > [WARNING]
> >> org.apache.maven.doxia:doxia-module-twiki:jar:1.9.1:runtime
> >> > > > [WARNING]
> >> > > org.apache.maven.wagon:wagon-webdav-jackrabbit:jar:3.3.1:test
> >> > > > [WARNING]
> >> org.eclipse.jetty:jetty-client:jar:9.2.29.v20191105:test
> >> > > > [WARNING]    org.slf4j:slf4j-simple:jar:1.5.3:test
> >> > > > [WARNING]    org.slf4j:jcl-over-slf4j:jar:1.6.1:test
> >> > > >
> >> > > > On Tue, Feb 9, 2021 at 2:58 PM Elliotte Rusty Harold <
> >> elharo@ibiblio.org
> >> > > >
> >> > > > wrote:
> >> > > > >
> >> > > > > What does maven dependency:analyze say?
> >> > > > >
> >> > > > > On Tue, Feb 9, 2021 at 2:25 PM Emmanuel Bourg <eb...@apache.org>
> >> > > wrote:
> >> > > > > >
> >> > > > > > Hi,
> >> > > > > >
> >> > > > > > maven-site-plugin has a dependency on sisu-inject-plexus [1]
> >> but it
> >> > > > > > doesn't seem to be used. The project still builds and the tests
> >> pass
> >> > > > > > without it.
> >> > > > > >
> >> > > > > > Is it safe to assume it can be removed?
> >> > > > > >
> >> > > > > > Emmanuel Bourg
> >> > > > > >
> >> > > > > > [1]
> >> > > > > >
> >> > > >
> >> > >
> >> https://github.com/apache/maven-site-plugin/blob/maven-site-plugin-3.9.1/pom.xml#L284
> >> > > > > >
> >> > > > > >
> >> ---------------------------------------------------------------------
> >> > > > > > To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> >> > > > > > For additional commands, e-mail: dev-help@maven.apache.org
> >> > > > > >
> >> > > > >
> >> > > > >
> >> > > > > --
> >> > > > > Elliotte Rusty Harold
> >> > > > > elharo@ibiblio.org
> >> > > >
> >> > > >
> >> > > >
> >> > > > --
> >> > > > Elliotte Rusty Harold
> >> > > > elharo@ibiblio.org
> >> > > >
> >> > > >
> >> ---------------------------------------------------------------------
> >> > > > To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> >> > > > For additional commands, e-mail: dev-help@maven.apache.org
> >> > > >
> >> > > >
> >> > >
> >> > > --
> >> > > Sławomir Jaranowski
> >> > >
> >>
> >>
> >>
> >> --
> >> Elliotte Rusty Harold
> >> elharo@ibiblio.org
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> >> For additional commands, e-mail: dev-help@maven.apache.org
> >>
> >>



-- 
Elliotte Rusty Harold
elharo@ibiblio.org

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


Re: maven-site-plugin and sisu-inject-plexus

Posted by Tamás Cservenák <ta...@cservenak.net>.
To be clear, am talking about this artifact (sisu plexus shim):
https://repo1.maven.org/maven2/org/eclipse/sisu/org.eclipse.sisu.plexus/0.3.4/

Whenever you see plexus-container-default, you SHOULD replace it with this
above (or better yet, convert to plain sisu).

T

On Sat, Apr 17, 2021, 14:25 Tamás Cservenák <ta...@cservenak.net> wrote:

> Plexus-container-default is NOT (and SHOULD NOT) be used anywhere, but the
> drop in sisu-plexus drop replacement should be used instead.
>
> If we use p-c-d anywhere (even in UTs), that's bad, as maven uses s-p
> instead.
>
> p-c-d is not used in maven for sure.
>
> T
>
> On Sat, Apr 17, 2021, 14:02 Elliotte Rusty Harold <el...@ibiblio.org>
> wrote:
>
>> plexus-container-default is used by Maven shared utils and thus by
>> almost everything in Maven. Not that this is a good thing, but c'est
>> la vie.
>>
>> There's a lot of over-engineered, unnecessary code splitting between
>> Maven, Aether, Plexus, and Modello. Maven's a pretty classic example
>> of why developers should resist the urge to build yet another
>> framework. Code maintenance and development would be far simpler and
>> less expensive today if 20 years ago the Maven developers had simply
>> written a build tool without trying to extend it to a general purpose
>> framework. YAGNI.
>>
>> On Tue, Feb 9, 2021 at 4:39 PM Tamás Cservenák <ta...@cservenak.net>
>> wrote:
>> >
>> > Howdy,
>> >
>> > my 5 cents:
>> >
>> > Something is stale, very stale in there, as plexus-container-default was
>> > abandoned about 10 (maybe 12?) years ago, and sisu "shim"
>> > (sisu-inject-plexus) was created as the direct replacement (as
>> functional
>> > and as API).
>> >
>> > If your project has Plexus "the old container"
>> (plexus-container-default)
>> > pulled in, it means something on project or it's transitive dependency
>> hull
>> > lags for about 10+ years if not more :)
>> >
>> > Given Plexus is "maven only" (mostly), it is most probably that some
>> > dependency (governed by us, chance is 90%+) pulls it in, that has not
>> been
>> > touched for quite a long time.
>> >
>> > Plexus et al is one of the reasons why "maven pulls down the internet",
>> > especially as we resolve/download it only to toss it away (drop it).
>> >
>> > HTH
>> > T
>> >
>> > On Tue, Feb 9, 2021 at 5:13 PM Slawomir Jaranowski <
>> s.jaranowski@gmail.com>
>> > wrote:
>> >
>> > > Project used class like org.codehaus.plexus.PlexusContainer
>> > >
>> > > We can remove direct dependency because we have transitive dependency
>> > > from other artifacts - of course we needn't remove it.
>> > >
>> > > [INFO] --- maven-dependency-plugin:2.10:tree (default-cli) @
>> > > maven-site-plugin ---
>> > > [WARNING] Using Maven 2 dependency tree to get verbose output, which
>> may be
>> > > inconsistent with actual Maven 3 resolution
>> > > [INFO]
>> > >
>> org.apache.maven.plugins:maven-site-plugin:maven-plugin:3.10.0-SNAPSHOT
>> > > [INFO] +- org.apache.maven:maven-compat:jar:3.0.5:provided
>> > > [INFO] |  \- (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
>> > > scope updated from provided; omitted for duplicate)
>> > > [INFO] +- org.apache.maven:maven-core:jar:3.0.5:compile
>> > > [INFO] |  \- (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
>> > > omitted for conflict with 1.4.2)
>> > > [INFO] +- org.apache.maven:maven-plugin-api:jar:3.0.5:compile
>> > > [INFO] |  \- (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
>> > > omitted for duplicate)
>> > > [INFO] \- org.sonatype.sisu:sisu-inject-plexus:jar:1.4.2:compile
>> > >
>> > > Another case is that the same classes are placed in two separate
>> artifact,
>> > > so class org.codehaus.plexus.PlexusContainer
>> > > can be found in *org.sonatype.sisu:sisu-inject-plexus *and
>> > > *org.codehaus.plexus:plexus-container-default*
>> > >
>> > > Project has dependency which provide
>> > > *org.codehaus.plexus:plexus-container-default*
>> > >
>> > > [INFO] --- maven-dependency-plugin:2.10:tree (default-cli) @
>> > > maven-site-plugin ---
>> > > [WARNING] Using Maven 2 dependency tree to get verbose output, which
>> may be
>> > > inconsistent with actual Maven 3 resolution
>> > > [INFO]
>> > >
>> org.apache.maven.plugins:maven-site-plugin:maven-plugin:3.10.0-SNAPSHOT
>> > > [INFO] +- org.apache.maven.doxia:doxia-sink-api:jar:1.9.1:compile
>> > > [INFO] |  \-
>> org.apache.maven.doxia:doxia-logging-api:jar:1.9.1:compile
>> > > [INFO] |     \-
>> > > (org.codehaus.plexus:plexus-container-default:jar:1.7.1:compile -
>> omitted
>> > > for duplicate)
>> > > [INFO] +- org.apache.maven.doxia:doxia-core:jar:1.9.1:compile
>> > > [INFO] |  \-
>> org.codehaus.plexus:plexus-container-default:jar:1.7.1:compile
>> > > [INFO] +- org.apache.maven.doxia:doxia-site-renderer:jar:1.9.2:compile
>> > > [INFO] |  +-
>> > >
>> (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-30:compile -
>> > > omitted for conflict with 1.7.1)
>> > > [INFO] |  \- org.codehaus.plexus:plexus-velocity:jar:1.2:compile
>> > > [INFO] |     \-
>> > >
>> > >
>> (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile
>> > > - omitted for conflict with 1.7.1)
>> > > [INFO] \-
>> org.apache.maven.doxia:doxia-integration-tools:jar:1.9.2:compile
>> > > [INFO]    \-
>> > > (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9:compile
>> -
>> > > omitted for conflict with 1.7.1)
>> > >
>> > >
>> > > I don't know if it is good when a plugin has the same class
>> > > from different dependencies and which one will be used in runtime.
>> > >
>> > > It is possible that unit tests will use different implementations than
>> > > plugin running by maven.
>> > >
>> > > wt., 9 lut 2021 o 16:01 Elliotte Rusty Harold <el...@ibiblio.org>
>> > > napisał(a):
>> > >
>> > > > Seems maven dependency:analyze thinks we need this one. At least it
>> > > > doesn't call it out as unused:
>> > > >
>> > > > [WARNING] Used undeclared dependencies found:
>> > > > [WARNING]    javax.servlet:javax.servlet-api:jar:3.1.0:compile
>> > > > [WARNING] Unused declared dependencies found:
>> > > > [WARNING]    org.apache.maven.doxia:doxia-core:jar:1.9.1:compile
>> > > > [WARNING]
>> org.apache.maven.doxia:doxia-module-xhtml:jar:1.9.1:compile
>> > > > [WARNING]
>> org.apache.maven.doxia:doxia-module-xhtml5:jar:1.9.1:compile
>> > > > [WARNING]
>> org.apache.maven.doxia:doxia-module-apt:jar:1.9.1:runtime
>> > > > [WARNING]
>> org.apache.maven.doxia:doxia-module-fml:jar:1.9.1:runtime
>> > > > [WARNING]
>> > > org.apache.maven.doxia:doxia-module-markdown:jar:1.9.1:runtime
>> > > > [WARNING]
>> > > > org.apache.maven.doxia:doxia-module-confluence:jar:1.9.1:runtime
>> > > > [WARNING]
>> > > > org.apache.maven.doxia:doxia-module-docbook-simple:jar:1.9.1:runtime
>> > > > [WARNING]
>> org.apache.maven.doxia:doxia-module-twiki:jar:1.9.1:runtime
>> > > > [WARNING]
>> > > org.apache.maven.wagon:wagon-webdav-jackrabbit:jar:3.3.1:test
>> > > > [WARNING]
>> org.eclipse.jetty:jetty-client:jar:9.2.29.v20191105:test
>> > > > [WARNING]    org.slf4j:slf4j-simple:jar:1.5.3:test
>> > > > [WARNING]    org.slf4j:jcl-over-slf4j:jar:1.6.1:test
>> > > >
>> > > > On Tue, Feb 9, 2021 at 2:58 PM Elliotte Rusty Harold <
>> elharo@ibiblio.org
>> > > >
>> > > > wrote:
>> > > > >
>> > > > > What does maven dependency:analyze say?
>> > > > >
>> > > > > On Tue, Feb 9, 2021 at 2:25 PM Emmanuel Bourg <eb...@apache.org>
>> > > wrote:
>> > > > > >
>> > > > > > Hi,
>> > > > > >
>> > > > > > maven-site-plugin has a dependency on sisu-inject-plexus [1]
>> but it
>> > > > > > doesn't seem to be used. The project still builds and the tests
>> pass
>> > > > > > without it.
>> > > > > >
>> > > > > > Is it safe to assume it can be removed?
>> > > > > >
>> > > > > > Emmanuel Bourg
>> > > > > >
>> > > > > > [1]
>> > > > > >
>> > > >
>> > >
>> https://github.com/apache/maven-site-plugin/blob/maven-site-plugin-3.9.1/pom.xml#L284
>> > > > > >
>> > > > > >
>> ---------------------------------------------------------------------
>> > > > > > To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
>> > > > > > For additional commands, e-mail: dev-help@maven.apache.org
>> > > > > >
>> > > > >
>> > > > >
>> > > > > --
>> > > > > Elliotte Rusty Harold
>> > > > > elharo@ibiblio.org
>> > > >
>> > > >
>> > > >
>> > > > --
>> > > > Elliotte Rusty Harold
>> > > > elharo@ibiblio.org
>> > > >
>> > > >
>> ---------------------------------------------------------------------
>> > > > To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
>> > > > For additional commands, e-mail: dev-help@maven.apache.org
>> > > >
>> > > >
>> > >
>> > > --
>> > > Sławomir Jaranowski
>> > >
>>
>>
>>
>> --
>> Elliotte Rusty Harold
>> elharo@ibiblio.org
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
>> For additional commands, e-mail: dev-help@maven.apache.org
>>
>>

Re: maven-site-plugin and sisu-inject-plexus

Posted by Tamás Cservenák <ta...@cservenak.net>.
Plexus-container-default is NOT (and SHOULD NOT) be used anywhere, but the
drop in sisu-plexus drop replacement should be used instead.

If we use p-c-d anywhere (even in UTs), that's bad, as maven uses s-p
instead.

p-c-d is not used in maven for sure.

T

On Sat, Apr 17, 2021, 14:02 Elliotte Rusty Harold <el...@ibiblio.org>
wrote:

> plexus-container-default is used by Maven shared utils and thus by
> almost everything in Maven. Not that this is a good thing, but c'est
> la vie.
>
> There's a lot of over-engineered, unnecessary code splitting between
> Maven, Aether, Plexus, and Modello. Maven's a pretty classic example
> of why developers should resist the urge to build yet another
> framework. Code maintenance and development would be far simpler and
> less expensive today if 20 years ago the Maven developers had simply
> written a build tool without trying to extend it to a general purpose
> framework. YAGNI.
>
> On Tue, Feb 9, 2021 at 4:39 PM Tamás Cservenák <ta...@cservenak.net>
> wrote:
> >
> > Howdy,
> >
> > my 5 cents:
> >
> > Something is stale, very stale in there, as plexus-container-default was
> > abandoned about 10 (maybe 12?) years ago, and sisu "shim"
> > (sisu-inject-plexus) was created as the direct replacement (as functional
> > and as API).
> >
> > If your project has Plexus "the old container" (plexus-container-default)
> > pulled in, it means something on project or it's transitive dependency
> hull
> > lags for about 10+ years if not more :)
> >
> > Given Plexus is "maven only" (mostly), it is most probably that some
> > dependency (governed by us, chance is 90%+) pulls it in, that has not
> been
> > touched for quite a long time.
> >
> > Plexus et al is one of the reasons why "maven pulls down the internet",
> > especially as we resolve/download it only to toss it away (drop it).
> >
> > HTH
> > T
> >
> > On Tue, Feb 9, 2021 at 5:13 PM Slawomir Jaranowski <
> s.jaranowski@gmail.com>
> > wrote:
> >
> > > Project used class like org.codehaus.plexus.PlexusContainer
> > >
> > > We can remove direct dependency because we have transitive dependency
> > > from other artifacts - of course we needn't remove it.
> > >
> > > [INFO] --- maven-dependency-plugin:2.10:tree (default-cli) @
> > > maven-site-plugin ---
> > > [WARNING] Using Maven 2 dependency tree to get verbose output, which
> may be
> > > inconsistent with actual Maven 3 resolution
> > > [INFO]
> > > org.apache.maven.plugins:maven-site-plugin:maven-plugin:3.10.0-SNAPSHOT
> > > [INFO] +- org.apache.maven:maven-compat:jar:3.0.5:provided
> > > [INFO] |  \- (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
> > > scope updated from provided; omitted for duplicate)
> > > [INFO] +- org.apache.maven:maven-core:jar:3.0.5:compile
> > > [INFO] |  \- (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
> > > omitted for conflict with 1.4.2)
> > > [INFO] +- org.apache.maven:maven-plugin-api:jar:3.0.5:compile
> > > [INFO] |  \- (org.sonatype.sisu:sisu-inject-plexus:jar:2.3.0:compile -
> > > omitted for duplicate)
> > > [INFO] \- org.sonatype.sisu:sisu-inject-plexus:jar:1.4.2:compile
> > >
> > > Another case is that the same classes are placed in two separate
> artifact,
> > > so class org.codehaus.plexus.PlexusContainer
> > > can be found in *org.sonatype.sisu:sisu-inject-plexus *and
> > > *org.codehaus.plexus:plexus-container-default*
> > >
> > > Project has dependency which provide
> > > *org.codehaus.plexus:plexus-container-default*
> > >
> > > [INFO] --- maven-dependency-plugin:2.10:tree (default-cli) @
> > > maven-site-plugin ---
> > > [WARNING] Using Maven 2 dependency tree to get verbose output, which
> may be
> > > inconsistent with actual Maven 3 resolution
> > > [INFO]
> > > org.apache.maven.plugins:maven-site-plugin:maven-plugin:3.10.0-SNAPSHOT
> > > [INFO] +- org.apache.maven.doxia:doxia-sink-api:jar:1.9.1:compile
> > > [INFO] |  \- org.apache.maven.doxia:doxia-logging-api:jar:1.9.1:compile
> > > [INFO] |     \-
> > > (org.codehaus.plexus:plexus-container-default:jar:1.7.1:compile -
> omitted
> > > for duplicate)
> > > [INFO] +- org.apache.maven.doxia:doxia-core:jar:1.9.1:compile
> > > [INFO] |  \-
> org.codehaus.plexus:plexus-container-default:jar:1.7.1:compile
> > > [INFO] +- org.apache.maven.doxia:doxia-site-renderer:jar:1.9.2:compile
> > > [INFO] |  +-
> > > (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-30:compile
> -
> > > omitted for conflict with 1.7.1)
> > > [INFO] |  \- org.codehaus.plexus:plexus-velocity:jar:1.2:compile
> > > [INFO] |     \-
> > >
> > >
> (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9-stable-1:compile
> > > - omitted for conflict with 1.7.1)
> > > [INFO] \-
> org.apache.maven.doxia:doxia-integration-tools:jar:1.9.2:compile
> > > [INFO]    \-
> > > (org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9:compile -
> > > omitted for conflict with 1.7.1)
> > >
> > >
> > > I don't know if it is good when a plugin has the same class
> > > from different dependencies and which one will be used in runtime.
> > >
> > > It is possible that unit tests will use different implementations than
> > > plugin running by maven.
> > >
> > > wt., 9 lut 2021 o 16:01 Elliotte Rusty Harold <el...@ibiblio.org>
> > > napisał(a):
> > >
> > > > Seems maven dependency:analyze thinks we need this one. At least it
> > > > doesn't call it out as unused:
> > > >
> > > > [WARNING] Used undeclared dependencies found:
> > > > [WARNING]    javax.servlet:javax.servlet-api:jar:3.1.0:compile
> > > > [WARNING] Unused declared dependencies found:
> > > > [WARNING]    org.apache.maven.doxia:doxia-core:jar:1.9.1:compile
> > > > [WARNING]
> org.apache.maven.doxia:doxia-module-xhtml:jar:1.9.1:compile
> > > > [WARNING]
> org.apache.maven.doxia:doxia-module-xhtml5:jar:1.9.1:compile
> > > > [WARNING]
> org.apache.maven.doxia:doxia-module-apt:jar:1.9.1:runtime
> > > > [WARNING]
> org.apache.maven.doxia:doxia-module-fml:jar:1.9.1:runtime
> > > > [WARNING]
> > > org.apache.maven.doxia:doxia-module-markdown:jar:1.9.1:runtime
> > > > [WARNING]
> > > > org.apache.maven.doxia:doxia-module-confluence:jar:1.9.1:runtime
> > > > [WARNING]
> > > > org.apache.maven.doxia:doxia-module-docbook-simple:jar:1.9.1:runtime
> > > > [WARNING]
> org.apache.maven.doxia:doxia-module-twiki:jar:1.9.1:runtime
> > > > [WARNING]
> > > org.apache.maven.wagon:wagon-webdav-jackrabbit:jar:3.3.1:test
> > > > [WARNING]    org.eclipse.jetty:jetty-client:jar:9.2.29.v20191105:test
> > > > [WARNING]    org.slf4j:slf4j-simple:jar:1.5.3:test
> > > > [WARNING]    org.slf4j:jcl-over-slf4j:jar:1.6.1:test
> > > >
> > > > On Tue, Feb 9, 2021 at 2:58 PM Elliotte Rusty Harold <
> elharo@ibiblio.org
> > > >
> > > > wrote:
> > > > >
> > > > > What does maven dependency:analyze say?
> > > > >
> > > > > On Tue, Feb 9, 2021 at 2:25 PM Emmanuel Bourg <eb...@apache.org>
> > > wrote:
> > > > > >
> > > > > > Hi,
> > > > > >
> > > > > > maven-site-plugin has a dependency on sisu-inject-plexus [1] but
> it
> > > > > > doesn't seem to be used. The project still builds and the tests
> pass
> > > > > > without it.
> > > > > >
> > > > > > Is it safe to assume it can be removed?
> > > > > >
> > > > > > Emmanuel Bourg
> > > > > >
> > > > > > [1]
> > > > > >
> > > >
> > >
> https://github.com/apache/maven-site-plugin/blob/maven-site-plugin-3.9.1/pom.xml#L284
> > > > > >
> > > > > >
> ---------------------------------------------------------------------
> > > > > > To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> > > > > > For additional commands, e-mail: dev-help@maven.apache.org
> > > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Elliotte Rusty Harold
> > > > > elharo@ibiblio.org
> > > >
> > > >
> > > >
> > > > --
> > > > Elliotte Rusty Harold
> > > > elharo@ibiblio.org
> > > >
> > > > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> > > > For additional commands, e-mail: dev-help@maven.apache.org
> > > >
> > > >
> > >
> > > --
> > > Sławomir Jaranowski
> > >
>
>
>
> --
> Elliotte Rusty Harold
> elharo@ibiblio.org
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org
>
>