You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by Tamás Cservenák <ta...@cservenak.net> on 2025/07/22 09:22:16 UTC

[DISCUSS] Maveniverse: the fruits are ripe

Howdy,

I'd like to start a discussion about ingesting some Maveniverse "skunk
works" projects into Maven project, as they seems utterly useful and wanted
(and are proven):

Mimir - is currently an extension and provides global cache (solves same
problem as split repository, but is not as invasive and is hence, fully
compatible even in Maven3 land). It can be made part of resolver and could
be always present (and configurable). The LAN cache publishing should be
omitted, as it is really a niche feature, and can be built atop of it.

Njord - suite of extension and plugin, solving the problem of publishing,
among others publishing to Maven Central Portal but also local staging.
This one cannot be made "resolver only", we need to tinker how to do it
(simplest: keep it current form next to existing extensions like build
cache is). Part of it could be made Resolver only, like local staging is
and publishing can be built atop of it.

Heimdall - an extension improving Resolvers built in Remote Repository
Filtering, the code should be really just applied onto Resolver existing
RRF classes. Hence, this can directly improve Resolver and be part of it.

-----

IMO, these should go into Resolver2/Maven4 and offer OOTB experience, while
Maven3 users could still use Maveniverse or any other existing tools.
Basically the goal would be to enhance Maven4 capabilities but not leave
Maven3 users abandoned either, and have them hopping from 3 to 4 to deal
with known functionalities (coming from extension in former, or from core
in latter).

WDYT?

Thanks
T

Re: [DISCUSS] Maveniverse: the fruits are ripe

Posted by Romain Manni-Bucau <rm...@gmail.com>.
sounds good to integrate it, also happy if it hits maven 3 at some point

Romain Manni-Bucau
@rmannibucau <https://x.com/rmannibucau> | .NET Blog
<https://dotnetbirdie.github.io/> | Blog <https://rmannibucau.github.io/> | Old
Blog <http://rmannibucau.wordpress.com> | Github
<https://github.com/rmannibucau> | LinkedIn
<https://www.linkedin.com/in/rmannibucau> | Book
<https://www.packtpub.com/en-us/product/java-ee-8-high-performance-9781788473064>


Le mar. 22 juil. 2025 à 11:23, Tamás Cservenák <ta...@cservenak.net> a
écrit :

> Howdy,
>
> I'd like to start a discussion about ingesting some Maveniverse "skunk
> works" projects into Maven project, as they seems utterly useful and wanted
> (and are proven):
>
> Mimir - is currently an extension and provides global cache (solves same
> problem as split repository, but is not as invasive and is hence, fully
> compatible even in Maven3 land). It can be made part of resolver and could
> be always present (and configurable). The LAN cache publishing should be
> omitted, as it is really a niche feature, and can be built atop of it.
>
> Njord - suite of extension and plugin, solving the problem of publishing,
> among others publishing to Maven Central Portal but also local staging.
> This one cannot be made "resolver only", we need to tinker how to do it
> (simplest: keep it current form next to existing extensions like build
> cache is). Part of it could be made Resolver only, like local staging is
> and publishing can be built atop of it.
>
> Heimdall - an extension improving Resolvers built in Remote Repository
> Filtering, the code should be really just applied onto Resolver existing
> RRF classes. Hence, this can directly improve Resolver and be part of it.
>
> -----
>
> IMO, these should go into Resolver2/Maven4 and offer OOTB experience, while
> Maven3 users could still use Maveniverse or any other existing tools.
> Basically the goal would be to enhance Maven4 capabilities but not leave
> Maven3 users abandoned either, and have them hopping from 3 to 4 to deal
> with known functionalities (coming from extension in former, or from core
> in latter).
>
> WDYT?
>
> Thanks
> T
>

Re: [DISCUSS] Maveniverse: the fruits are ripe

Posted by Tamás Cservenák <ta...@cservenak.net>.
Well, I am fine with that, but I have to put some related notes about it:

The Toolbox I did not mention on purpose, as it is a strange beast.
Functionality wise, it was meant (by me) as "dependency plugin
replacement", but it also serves as "showcase for MIMA usage", hence
it works as Maven Plugin and also CLI (almost each Mojo is also a
picocli command). Moreover, it is coded in a specific way: Mojos/Cli
are "zero logic", as they literally just call into a "shared" module
(which is a reusable module showcasing MIMA+Resolver use cases)
without any Maven Plugin or CLI dependencies. Finally, Toolbox served
also as an "experiment" for the Artifact Source/Sink abstraction and a
mini DSL to express filters/matchers/mappers/whatevers. All those
turned out very good, and I am happy with them, but it is totally
opposite how Maven core plugins were usually done so far.

That said, "adding some goals" from Toolbox may not be as simple as
one may think.

Thanks
T

On Sun, Aug 10, 2025 at 2:56 PM Slawomir Jaranowski
<s....@gmail.com> wrote:
>
> +1
>
> I see that some of the goals from
> https://maveniverse.eu/docs/toolbox/plugin-documentation/plugin-info.html
>
> can be added or refreshed in dependency plugin, like tree and so on ...
> https://maven.apache.org/plugins/maven-dependency-plugin/
>
> On Tue, 22 Jul 2025 at 11:22, Tamás Cservenák <ta...@cservenak.net> wrote:
> >
> > Howdy,
> >
> > I'd like to start a discussion about ingesting some Maveniverse "skunk
> > works" projects into Maven project, as they seems utterly useful and wanted
> > (and are proven):
> >
> > Mimir - is currently an extension and provides global cache (solves same
> > problem as split repository, but is not as invasive and is hence, fully
> > compatible even in Maven3 land). It can be made part of resolver and could
> > be always present (and configurable). The LAN cache publishing should be
> > omitted, as it is really a niche feature, and can be built atop of it.
> >
> > Njord - suite of extension and plugin, solving the problem of publishing,
> > among others publishing to Maven Central Portal but also local staging.
> > This one cannot be made "resolver only", we need to tinker how to do it
> > (simplest: keep it current form next to existing extensions like build
> > cache is). Part of it could be made Resolver only, like local staging is
> > and publishing can be built atop of it.
> >
> > Heimdall - an extension improving Resolvers built in Remote Repository
> > Filtering, the code should be really just applied onto Resolver existing
> > RRF classes. Hence, this can directly improve Resolver and be part of it.
> >
> > -----
> >
> > IMO, these should go into Resolver2/Maven4 and offer OOTB experience, while
> > Maven3 users could still use Maveniverse or any other existing tools.
> > Basically the goal would be to enhance Maven4 capabilities but not leave
> > Maven3 users abandoned either, and have them hopping from 3 to 4 to deal
> > with known functionalities (coming from extension in former, or from core
> > in latter).
> >
> > WDYT?
> >
> > Thanks
> > T
>
>
>
> --
> Sławomir Jaranowski
>
> ---------------------------------------------------------------------
> 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


Re: [DISCUSS] Maveniverse: the fruits are ripe

Posted by Slawomir Jaranowski <s....@gmail.com>.
+1

I see that some of the goals from
https://maveniverse.eu/docs/toolbox/plugin-documentation/plugin-info.html

can be added or refreshed in dependency plugin, like tree and so on ...
https://maven.apache.org/plugins/maven-dependency-plugin/

On Tue, 22 Jul 2025 at 11:22, Tamás Cservenák <ta...@cservenak.net> wrote:
>
> Howdy,
>
> I'd like to start a discussion about ingesting some Maveniverse "skunk
> works" projects into Maven project, as they seems utterly useful and wanted
> (and are proven):
>
> Mimir - is currently an extension and provides global cache (solves same
> problem as split repository, but is not as invasive and is hence, fully
> compatible even in Maven3 land). It can be made part of resolver and could
> be always present (and configurable). The LAN cache publishing should be
> omitted, as it is really a niche feature, and can be built atop of it.
>
> Njord - suite of extension and plugin, solving the problem of publishing,
> among others publishing to Maven Central Portal but also local staging.
> This one cannot be made "resolver only", we need to tinker how to do it
> (simplest: keep it current form next to existing extensions like build
> cache is). Part of it could be made Resolver only, like local staging is
> and publishing can be built atop of it.
>
> Heimdall - an extension improving Resolvers built in Remote Repository
> Filtering, the code should be really just applied onto Resolver existing
> RRF classes. Hence, this can directly improve Resolver and be part of it.
>
> -----
>
> IMO, these should go into Resolver2/Maven4 and offer OOTB experience, while
> Maven3 users could still use Maveniverse or any other existing tools.
> Basically the goal would be to enhance Maven4 capabilities but not leave
> Maven3 users abandoned either, and have them hopping from 3 to 4 to deal
> with known functionalities (coming from extension in former, or from core
> in latter).
>
> WDYT?
>
> Thanks
> T



-- 
Sławomir Jaranowski

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


Re: [DISCUSS] Maveniverse: the fruits are ripe

Posted by Matthias Bünger <mb...@apache.org>.
Hi all,

as the big majority of Maven users has no clue about extensions or how 
to configure plugins, I think every OOTB / build-in improvement is great.

Matthias

Am 22.07.2025 um 11:22 schrieb Tamás Cservenák:
> Howdy,
>
> I'd like to start a discussion about ingesting some Maveniverse "skunk
> works" projects into Maven project, as they seems utterly useful and wanted
> (and are proven):
>
> Mimir - is currently an extension and provides global cache (solves same
> problem as split repository, but is not as invasive and is hence, fully
> compatible even in Maven3 land). It can be made part of resolver and could
> be always present (and configurable). The LAN cache publishing should be
> omitted, as it is really a niche feature, and can be built atop of it.
>
> Njord - suite of extension and plugin, solving the problem of publishing,
> among others publishing to Maven Central Portal but also local staging.
> This one cannot be made "resolver only", we need to tinker how to do it
> (simplest: keep it current form next to existing extensions like build
> cache is). Part of it could be made Resolver only, like local staging is
> and publishing can be built atop of it.
>
> Heimdall - an extension improving Resolvers built in Remote Repository
> Filtering, the code should be really just applied onto Resolver existing
> RRF classes. Hence, this can directly improve Resolver and be part of it.
>
> -----
>
> IMO, these should go into Resolver2/Maven4 and offer OOTB experience, while
> Maven3 users could still use Maveniverse or any other existing tools.
> Basically the goal would be to enhance Maven4 capabilities but not leave
> Maven3 users abandoned either, and have them hopping from 3 to 4 to deal
> with known functionalities (coming from extension in former, or from core
> in latter).
>
> WDYT?
>
> Thanks
> T
>

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


Re: [DISCUSS] Maveniverse: the fruits are ripe

Posted by Hervé Boutemy <hb...@apache.org>.
I love the idea of bringing some great tools to ASF: happy of this discussion

each one will require a separate in-depth evaluation of what it would mean to have some part available as default in Maven CLI distribution vs what would remain as a plugin or stil remain an extension

I personally studied a little bit njord: I feel in this case that there is a good opportunity, that will require to concretely describe what it would bring
I still need to better understand code, and how I would personally imagine maintain it

I think this is what we'll require for each cited component: go from great experience from a few users to something that we clearly position in the Maven codebase and maintenance overview

On 2025/07/22 09:22:16 Tamás Cservenák wrote:
> Howdy,
> 
> I'd like to start a discussion about ingesting some Maveniverse "skunk
> works" projects into Maven project, as they seems utterly useful and wanted
> (and are proven):
> 
> Mimir - is currently an extension and provides global cache (solves same
> problem as split repository, but is not as invasive and is hence, fully
> compatible even in Maven3 land). It can be made part of resolver and could
> be always present (and configurable). The LAN cache publishing should be
> omitted, as it is really a niche feature, and can be built atop of it.
> 
> Njord - suite of extension and plugin, solving the problem of publishing,
> among others publishing to Maven Central Portal but also local staging.
> This one cannot be made "resolver only", we need to tinker how to do it
> (simplest: keep it current form next to existing extensions like build
> cache is). Part of it could be made Resolver only, like local staging is
> and publishing can be built atop of it.
> 
> Heimdall - an extension improving Resolvers built in Remote Repository
> Filtering, the code should be really just applied onto Resolver existing
> RRF classes. Hence, this can directly improve Resolver and be part of it.
> 
> -----
> 
> IMO, these should go into Resolver2/Maven4 and offer OOTB experience, while
> Maven3 users could still use Maveniverse or any other existing tools.
> Basically the goal would be to enhance Maven4 capabilities but not leave
> Maven3 users abandoned either, and have them hopping from 3 to 4 to deal
> with known functionalities (coming from extension in former, or from core
> in latter).
> 
> WDYT?
> 
> Thanks
> T
> 

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


Re: [DISCUSS] Maveniverse: the fruits are ripe

Posted by Olivier Lamy <ol...@apache.org>.
Great idea.
Not sure to understand what you mean by LAN cache omitted (leaving the
code outside?). I

On Tue, 22 Jul 2025 at 19:23, Tamás Cservenák <ta...@cservenak.net> wrote:
>
> Howdy,
>
> I'd like to start a discussion about ingesting some Maveniverse "skunk
> works" projects into Maven project, as they seems utterly useful and wanted
> (and are proven):
>
> Mimir - is currently an extension and provides global cache (solves same
> problem as split repository, but is not as invasive and is hence, fully
> compatible even in Maven3 land). It can be made part of resolver and could
> be always present (and configurable). The LAN cache publishing should be
> omitted, as it is really a niche feature, and can be built atop of it.
>
> Njord - suite of extension and plugin, solving the problem of publishing,
> among others publishing to Maven Central Portal but also local staging.
> This one cannot be made "resolver only", we need to tinker how to do it
> (simplest: keep it current form next to existing extensions like build
> cache is). Part of it could be made Resolver only, like local staging is
> and publishing can be built atop of it.
>
> Heimdall - an extension improving Resolvers built in Remote Repository
> Filtering, the code should be really just applied onto Resolver existing
> RRF classes. Hence, this can directly improve Resolver and be part of it.
>
> -----
>
> IMO, these should go into Resolver2/Maven4 and offer OOTB experience, while
> Maven3 users could still use Maveniverse or any other existing tools.
> Basically the goal would be to enhance Maven4 capabilities but not leave
> Maven3 users abandoned either, and have them hopping from 3 to 4 to deal
> with known functionalities (coming from extension in former, or from core
> in latter).
>
> WDYT?
>
> Thanks
> T

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


Re: [DISCUSS] Maveniverse: the fruits are ripe

Posted by "Piotr P. Karwasz" <pi...@mailing.copernik.eu>.
Hi Tamás,

On 22.07.2025 at 11:22, you wrote:
> Mimir - is currently an extension and provides global cache (solves same
> problem as split repository, but is not as invasive and is hence, fully
> compatible even in Maven3 land). It can be made part of resolver and could
> be always present (and configurable). The LAN cache publishing should be
> omitted, as it is really a niche feature, and can be built atop of it.

I haven't yet tested the other extensions, but I’ve been using Mimír for 
a couple of months now and found it very useful.

In fact, I proposed integrating it into the Apache Log4j build 
process[1] to replace the Maven local repository cache and solve some 
reproducibility problems. While the idea was well received in principle, 
my co-maintainers raised concerns about maturity and long-term support. 
As you can see in the discussion, we were essentially waiting for you to 
declare it ready! 😊

+1 from me for moving forward.

Piotr

[1] https://github.com/apache/logging-parent/pull/389

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