Hi Martin,
thanks for your insights.

I don't understand  where that "been there for 4 years" argument comes from.
NB: Someone in the vote thread also said so.

Herve Boutemy mentioned 4.0.0-alpha-6 [1] but alpha-6 is not listed on the 
releases page:
https://maven.apache.org/docs/history.html
Based on the alpha-5 and alpha-7 release dates, I can assume it has been there 
for at most 3 years.

According to the GitHub commits between alpha-5 & alpha-7, it's even less than 
that (the alpha-6 release commit was on June 23rd 2023)
https://github.com/apache/maven/compare/maven-4.0.0-alpha-5...maven-4.0.0-alpha-7
Does it predate alpha-6? Even alpha-2 was released less than 4 years ago.

While the change may have been present for X years in non-GA releases, it 
doesn't mean it's been widely used.
I don't know about the rest of the Maven community but I usually stay away from 
non-final versions, especially for work-related tasks which is where I mostly 
use Maven.
But I'm just a Maven user and not a Maven developer.

However, I'm more familiar with XML. That's why the namespace change ticks me 
off.

Regards,
Chris

[1] https://lists.apache.org/thread/p59nlz2onjkszskxblo5vrcb7chjmnwl

On Saturday, April 4th, 2026 at 1:17 PM, Martin Desruisseaux via dev 
<[email protected]> wrote:

> Hello Chris
> 
> Thanks for your input. For going straight to the point:
> 
> Le 04/04/2026 à 14:24, Chris Lafren a écrit :
> 
> > Aside from the modelVersion inference that was mentioned at the start of 
> > the vote thread [2], are there more reasons that "justify" the namespace 
> > change?
> 
> I'm not aware of any valid technical justification other than history.
> Even the `<modelVersion>` element is not strictly necessary since, to my
> knowledge, Maven 4 only adds a few new elements without changing the
> semantic of Maven 3 elements. We could infer the model version by
> checking whether the POM contains any of those new elements. The schema
> location is another way as you mentioned.
> 
> I believe that the main reason for changing the namespace is technical
> debt: Maven 4 did this change early in alpha phase, has been distributed
> with this change for the last 4 years, and no IDE (NetBeans, IntelliJ,
> Eclipse) complained. Therefore, there are reluctance to do a last minute
> change. The argument that changing the namespace is not how XML works
> may be considered as theoretical if we consider that no-one should try
> to read a POM itself without using Maven API. Personally, I challenge
> the idea that no-one should read a POM with standard tools, even if the
> information that we get this way is incomplete. We may want to read a
> POM for other purposes that building the project. For example, and IDE
> may want to read the POM, add a `<dependency>` element and rewrite the
> POM with only that change.
> 
> In my opinion, this thread is not really a vote between 2 equivalent
> technical solutions. I rather see the vote as a choice between
> conformance with the way that XML works (option B), and avoiding to
> disturb the Maven 4 ecosystem after 4 years of practicing option A. I
> have no objective way to said which one of the two sides, technical
> versus legacy, should prevail.
> 
>      Martin
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> 
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to