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 > >