On Sat, 17 Apr 2021 at 13:47, Elliotte Rusty Harold <elh...@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 <elh...@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.jaranow...@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 <elh...@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 <
> > >> elh...@ibiblio.org
> > >> > > >
> > >> > > > wrote:
> > >> > > > >
> > >> > > > > What does maven dependency:analyze say?
> > >> > > > >
> > >> > > > > On Tue, Feb 9, 2021 at 2:25 PM Emmanuel Bourg <
> ebo...@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-unsubscr...@maven.apache.org
> > >> > > > > > For additional commands, e-mail: dev-h...@maven.apache.org
> > >> > > > > >
> > >> > > > >
> > >> > > > >
> > >> > > > > --
> > >> > > > > Elliotte Rusty Harold
> > >> > > > > elh...@ibiblio.org
> > >> > > >
> > >> > > >
> > >> > > >
> > >> > > > --
> > >> > > > Elliotte Rusty Harold
> > >> > > > elh...@ibiblio.org
> > >> > > >
> > >> > > >
> > >> ---------------------------------------------------------------------
> > >> > > > To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> > >> > > > For additional commands, e-mail: dev-h...@maven.apache.org
> > >> > > >
> > >> > > >
> > >> > >
> > >> > > --
> > >> > > Sławomir Jaranowski
> > >> > >
> > >>
> > >>
> > >>
> > >> --
> > >> Elliotte Rusty Harold
> > >> elh...@ibiblio.org
> > >>
> > >> ---------------------------------------------------------------------
> > >> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> > >> For additional commands, e-mail: dev-h...@maven.apache.org
> > >>
> > >>
>
>
>
> --
> Elliotte Rusty Harold
> elh...@ibiblio.org
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> For additional commands, e-mail: dev-h...@maven.apache.org
>
>

Reply via email to