Re: plexus-utils 4.x and Xpp3DomBuilder

2023-09-09 Thread Václav Haisman

On 25. 07. 23 20:56, Slawomir Jaranowski wrote:

Hi

I'm trying to update plexus-utils 3.5.x to plexus-utils/plexus-xml 4.x in
maven-enforcer 

In maven-enforcer (and in many other plugins ...) is used, code like:

 Xpp3Dom enforcerRules = Xpp3DomBuilder.build(descriptorStream,
"UTF-8");

Xpp3Dom and Xpp3DomBuilder - has new implementation in plexus-xml  but
Maven 3.x exports

 
 org.codehaus.plexus.util.xml.Xpp3Dom

org.codehaus.plexus.util.xml.pull.XmlPullParser

org.codehaus.plexus.util.xml.pull.XmlPullParserException

org.codehaus.plexus.util.xml.pull.XmlSerializer

It is very magical that we export classes but not export artifact
which contains those classes ...

so incompatibilite code for Xpp3Dom is used ...

Any hints on how to process it.



So, what is the takeaway of this tread for casual Maven plugin 
developers like me? Should I avoid plexus-utils 4.x in Maven 3 plugins?


--
VH


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



Re: plexus-utils 4.x and Xpp3DomBuilder

2023-09-09 Thread Hervé Boutemy
now that plexus-xml has more details, I see the key point causing the most 
issues: it uses not only maven-xml-api but also maven-xml-impl

maven-xml-impl is the Maven 4-specific reimplementation of XML parsing that is 
causing the incompatibility

probably that this Maven XML Implementation component should be added to the 
list of libraries that deserve extracting from Maven core release cycle to 
have a dedicated Maven Shared Component. This won't solve the compatibility 
issue that started this thread, but a least go in the right direction by 
making things more clear: today, it's too much magic and inter-dependencies 
with Maven core

Here is the list of Maven core components that should IMHO be extracted as 
separate Maven Shared Component:
- Meta Annotation:
  https://maven.apache.org/ref/4.0.0-alpha-7/api/maven-api-meta/index.html
- XML API:
  https://maven.apache.org/ref/4.0.0-alpha-7/api/maven-api-xml/index.html
- XML Impl:
  https://maven.apache.org/ref/4.0.0-alpha-7/maven-xml-impl/index.html

The discussion on plexus-xml compatibility with Maven 3 will required a next 
thinking: perhaps we should have had a plexus-xml release that was done 
*before* maven-xml-impl update = what is causing the compatibility issue

Regards,

Hervé

Le samedi 9 septembre 2023, 11:33:59 CEST Hervé Boutemy a écrit :
> > o.c.p:p-u 4.x that depends on
> > -> o.c.p:p-xml 4 that depends on
> 
> notice this dependency is *optional*
> it's useful only for ReaderFactory/WriterFactory, for XmlReader/Writer
> fully removing the dependency would have broken full compatibility by
> removing a few methods: it was preferred to mark the dependency as optional
> and keep full compatibility
> 
> then I would not say that p-u 4 pulls new Maven 4 API
> 
> > -> o.c.p:p-xml 4 that depends on
> > -> o.a.m:m-api-xml that depends on
> > -> o.a.m:m-api-meta
> 
> to me, here is where an improvement would be useful
> m-api-meta and m-api-xml are small very stable APIs, very non-Maven core
> specific
> I understand that we want to put them at Apache instead of Plexus, and I
> agree.
> But I think we should make their release cycle independent from Maven core:
> they do not deserve the current 7 alphas, then new releases in the future
> years.
> 
> see https://maven.apache.org/ref/4.0.0-alpha-7/api/index.html for an
> overview of all Maven 4 API artifacts:
> - Model, Settings, Toolchains and Core are clearly here at their right place
> - XML (1 interface: XmlNode) and meta annotation (6 annotations) are not so
> much Maven core related, and stable enough
> 
> IMHO, XML and meta annotation should fo to Maven Shared Components
> https://maven.apache.org/shared/index.html
> Better place, and better release cycle
> 
> then depending on these from outside would not be problematic
> 
> Regards,
> 
> Hervé
> 
> Le vendredi 8 septembre 2023, 19:42:40 CEST Tamás Cservenák a écrit :
> > Howdy,
> > 
> > Basil's issue is made me realize:
> > o.c.p:p-u 4.x that depends on
> > -> o.c.p:p-xml 4 that depends on
> > -> o.a.m:m-api-xml that depends on
> > -> o.a.m:m-api-meta
> > 
> > This means that p-u pulls in new Maven4 API bits.
> > Hence, Maven 3 plugin, that is built against maven-plugin-api 3.x, if
> > switched to p-u 4, would start receiving bits of Maven4 new API...
> > 
> > This is a big no for me, not to mention how this can prove problematic
> > down
> > the road too:
> > this means that today (as all this is "just on CP") mvn3 plugin could use
> > bits of Maven4 API that later -- if run in Maven4 -- becomes
> > forbidden/unavailable...
> > 
> > So, IMHO this just proves, that Maven 3.x level plugins should stick with
> > p-u 3.x
> > 
> > On Fri, Sep 8, 2023 at 6:24 PM Basil Crow  wrote:
> > > I raised this issue in
> > > 
> > > https://github.com/jenkinsci/maven-hpi-plugin/pull/490#issuecomment-1557
> > > 97
> > > 0717 but did not receive a response.
> > > 
> > > -
> > > To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> > > For additional commands, e-mail: dev-h...@maven.apache.org
> 
> -
> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> For additional commands, e-mail: dev-h...@maven.apache.org





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



Re: plexus-utils 4.x and Xpp3DomBuilder

2023-09-09 Thread Hervé Boutemy
ok, I updated plexus-utils and plexus-xml sites
and added a few key aspects about how these relate to old Plexus Utils 3

https://codehaus-plexus.github.io/plexus-utils/
https://codehaus-plexus.github.io/plexus-xml/

I hope this will help

Le samedi 9 septembre 2023, 11:14:52 CEST Hervé Boutemy a écrit :
> yes
> notice p-u site is broken https://codehaus-plexus.github.io/plexus-utils/
> and we should probably also find a way to publish also latest  p-u 3 javadoc
> in parallel
> 
> I'll see what I can do also to help on this
> 
> Le vendredi 8 septembre 2023, 10:53:11 CEST Slawomir Jaranowski a écrit :
> > Thanks, I will create an IT for it.
> > 
> > Good idea to describe the migration from plexus 3.x to 4.x.
> > 
> > pt., 8 wrz 2023 o 10:26 Guillaume Nodet  napisał(a):
> > > I've raised MNG-7873.
> > > Slawomir, do you think you could create an IT for that ?
> > > I'll try to provide a fix asap, but a clean IT would make sure the
> > > problem
> > > is actually fixed.
> > > 
> > > I think we should also update the plexus-utils release notes with some
> > > more
> > > information about the migration to 4.x when using the xml bits.
> > > 
> > > [1] https://issues.apache.org/jira/browse/MNG-7873
> > > 
> > > Le lun. 4 sept. 2023 à 22:50, Guillaume Nodet  a
> > > écrit
> > > 
> > > > I think the decision to not export plexus-utils was taken some time
> > > > ago.
> > > > 
> > > > Unfortunately, the xml bits still have to be provided by the maven
> > > > core
> > > > class loader.
> > > > I think in this case, Maven 3.9.x should also expose the builder class
> > > 
> > > org.codehaus.plexus.util.xml.Xpp3DomBuilder > > ck
> > > age>>
> > > 
> > > > I think this should work, but this would only solve the problem for
> > > > the
> > > > latest 3.9.x maven, not older versions.
> > > > 
> > > > 
> > > > Le mar. 25 juil. 2023 à 20:56, Slawomir Jaranowski <
> > > 
> > > s.jaranow...@gmail.com>
> > > 
> > > > a écrit :
> > > >> Hi
> > > >> 
> > > >> I'm trying to update plexus-utils 3.5.x to plexus-utils/plexus-xml
> > > >> 4.x
> > > 
> > > in
> > > 
> > > >> maven-enforcer 
> > > >> 
> > > >> In maven-enforcer (and in many other plugins ...) is used, code like:
> > > >> Xpp3Dom enforcerRules =
> > > 
> > > Xpp3DomBuilder.build(descriptorStream,
> > > 
> > > >> "UTF-8");
> > > >> 
> > > >> Xpp3Dom and Xpp3DomBuilder - has new implementation in plexus-xml
> > > >> 
> > > 
> > > but
> > > 
> > > >> Maven 3.x exports
> > > >> 
> > > >> 
> > > >> 
> > > >> org.codehaus.plexus.util.xml.Xpp3Dom > > >> e>
> > > 
> > > org.codehaus.plexus.util.xml.pull.XmlPullParser > > ed
> > > Package>
> > > 
> > > 
> > > 
> > > org.codehaus.plexus.util.xml.pull.XmlPullParserExceptio
> > > n<
> > > /exportedPackage>
> > > 
> > > 
> > > 
> > > org.codehaus.plexus.util.xml.pull.XmlSerializer > > ed
> > > Package>>
> > > 
> > > >> It is very magical that we export classes but not export artifact
> > > >> which contains those classes ...
> > > >> 
> > > >> so incompatibilite code for Xpp3Dom is used ...
> > > >> 
> > > >> Any hints on how to process it.
> > > >> 
> > > >> --
> > > >> Sławomir Jaranowski
> > > > 
> > > > --
> > > > 
> > > > Guillaume Nodet
> > > 
> > > --
> > > 
> > > Guillaume Nodet
> 
> -
> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> For additional commands, e-mail: dev-h...@maven.apache.org





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



Re: [VOTE] Release Maven Resolver Ant Tasks 1.5.0

2023-09-09 Thread Slawomir Jaranowski
+1

pt., 8 wrz 2023 o 13:11 Tamás Cservenák  napisał(a):

>  Howdy,
>
> We solved 6 issues:
>
> https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12320628=12348840
>
> There are still some issues in JIRA:
>
> https://issues.apache.org/jira/issues/?jql=project%20%3D%20MRESOLVER%20AND%20status%20%3D%20Open%20AND%20component%20%3D%20%22Ant%20Tasks%22
>
> Staging repository:
> https://repository.apache.org/content/repositories/maven-1988
>
> Source release SHA512:
>
> 6e5bd3918d8b9d7c30fe4f1b5c71521789a4960effa6e5af36fd683755bed0c3b2ac51bb69f53677e1cd0acd909edcbc7d5c7991e9bf9c4bc9631d4fc95f3e0f
>
> Staging site:
> https://maven.apache.org/resolver-archives/resolver-ant-tasks-LATEST/
>
> Guide to testing staged releases:
> https://maven.apache.org/guides/development/guide-testing-releases.html
>
> Vote open for 72 hours.
>
> [ ] +1
> [ ] +0
> [ ] -1
>


-- 
Sławomir Jaranowski


Re: plexus-utils 4.x and Xpp3DomBuilder

2023-09-09 Thread Hervé Boutemy
> o.c.p:p-u 4.x that depends on
> -> o.c.p:p-xml 4 that depends on
notice this dependency is *optional*
it's useful only for ReaderFactory/WriterFactory, for XmlReader/Writer
fully removing the dependency would have broken full compatibility by removing 
a few methods: it was preferred to mark the dependency as optional and keep 
full compatibility

then I would not say that p-u 4 pulls new Maven 4 API

> -> o.c.p:p-xml 4 that depends on
> -> o.a.m:m-api-xml that depends on
> -> o.a.m:m-api-meta
to me, here is where an improvement would be useful
m-api-meta and m-api-xml are small very stable APIs, very non-Maven core 
specific
I understand that we want to put them at Apache instead of Plexus, and I 
agree.
But I think we should make their release cycle independent from Maven core: 
they do not deserve the current 7 alphas, then new releases in the future 
years.

see https://maven.apache.org/ref/4.0.0-alpha-7/api/index.html for an overview 
of all Maven 4 API artifacts:
- Model, Settings, Toolchains and Core are clearly here at their right place
- XML (1 interface: XmlNode) and meta annotation (6 annotations) are not so 
much Maven core related, and stable enough

IMHO, XML and meta annotation should fo to Maven Shared Components
https://maven.apache.org/shared/index.html
Better place, and better release cycle

then depending on these from outside would not be problematic

Regards,

Hervé

Le vendredi 8 septembre 2023, 19:42:40 CEST Tamás Cservenák a écrit :
> Howdy,
> 
> Basil's issue is made me realize:
> o.c.p:p-u 4.x that depends on
> -> o.c.p:p-xml 4 that depends on
> -> o.a.m:m-api-xml that depends on
> -> o.a.m:m-api-meta
> 
> This means that p-u pulls in new Maven4 API bits.
> Hence, Maven 3 plugin, that is built against maven-plugin-api 3.x, if
> switched to p-u 4, would start receiving bits of Maven4 new API...
> 
> This is a big no for me, not to mention how this can prove problematic down
> the road too:
> this means that today (as all this is "just on CP") mvn3 plugin could use
> bits of Maven4 API that later -- if run in Maven4 -- becomes
> forbidden/unavailable...
> 
> So, IMHO this just proves, that Maven 3.x level plugins should stick with
> p-u 3.x
> 
> On Fri, Sep 8, 2023 at 6:24 PM Basil Crow  wrote:
> > I raised this issue in
> > 
> > https://github.com/jenkinsci/maven-hpi-plugin/pull/490#issuecomment-155797
> > 0717 but did not receive a response.
> > 
> > -
> > To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> > For additional commands, e-mail: dev-h...@maven.apache.org





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



Re: plexus-utils 4.x and Xpp3DomBuilder

2023-09-09 Thread Hervé Boutemy
yes
notice p-u site is broken https://codehaus-plexus.github.io/plexus-utils/
and we should probably also find a way to publish also latest  p-u 3 javadoc in 
parallel

I'll see what I can do also to help on this

Le vendredi 8 septembre 2023, 10:53:11 CEST Slawomir Jaranowski a écrit :
> Thanks, I will create an IT for it.
> 
> Good idea to describe the migration from plexus 3.x to 4.x.
> 
> pt., 8 wrz 2023 o 10:26 Guillaume Nodet  napisał(a):
> > I've raised MNG-7873.
> > Slawomir, do you think you could create an IT for that ?
> > I'll try to provide a fix asap, but a clean IT would make sure the problem
> > is actually fixed.
> > 
> > I think we should also update the plexus-utils release notes with some
> > more
> > information about the migration to 4.x when using the xml bits.
> > 
> > [1] https://issues.apache.org/jira/browse/MNG-7873
> > 
> > Le lun. 4 sept. 2023 à 22:50, Guillaume Nodet  a écrit
> > 
> > > I think the decision to not export plexus-utils was taken some time ago.
> > > 
> > > Unfortunately, the xml bits still have to be provided by the maven core
> > > class loader.
> > > I think in this case, Maven 3.9.x should also expose the builder class
> > 
> > org.codehaus.plexus.util.xml.Xpp3DomBuilder > age>> 
> > > I think this should work, but this would only solve the problem for the
> > > latest 3.9.x maven, not older versions.
> > > 
> > > 
> > > Le mar. 25 juil. 2023 à 20:56, Slawomir Jaranowski <
> > 
> > s.jaranow...@gmail.com>
> > 
> > > a écrit :
> > >> Hi
> > >> 
> > >> I'm trying to update plexus-utils 3.5.x to plexus-utils/plexus-xml 4.x
> > 
> > in
> > 
> > >> maven-enforcer 
> > >> 
> > >> In maven-enforcer (and in many other plugins ...) is used, code like:
> > >> Xpp3Dom enforcerRules =
> > 
> > Xpp3DomBuilder.build(descriptorStream,
> > 
> > >> "UTF-8");
> > >> 
> > >> Xpp3Dom and Xpp3DomBuilder - has new implementation in plexus-xml 
> > 
> > but
> > 
> > >> Maven 3.x exports
> > >> 
> > >> 
> > >> 
> > >> org.codehaus.plexus.util.xml.Xpp3Dom
> > 
> > org.codehaus.plexus.util.xml.pull.XmlPullParser > Package>
> > 
> > 
> > 
> > org.codehaus.plexus.util.xml.pull.XmlPullParserException<
> > /exportedPackage>
> > 
> > 
> > 
> > org.codehaus.plexus.util.xml.pull.XmlSerializer > Package>> 
> > >> It is very magical that we export classes but not export artifact
> > >> which contains those classes ...
> > >> 
> > >> so incompatibilite code for Xpp3Dom is used ...
> > >> 
> > >> Any hints on how to process it.
> > >> 
> > >> --
> > >> Sławomir Jaranowski
> > > 
> > > --
> > > 
> > > Guillaume Nodet
> > 
> > --
> > 
> > Guillaume Nodet





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



Re: [VOTE] Release Maven Resolver Ant Tasks 1.5.0

2023-09-09 Thread Herve Boutemy
+1

Reproducible Build ok: reference build done with JDK 17 on *nix with umask 022

Regards,

Hervé

On 2023/09/08 11:11:03 Tamás Cservenák wrote:
>  Howdy,
> 
> We solved 6 issues:
> https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12320628=12348840
> 
> There are still some issues in JIRA:
> https://issues.apache.org/jira/issues/?jql=project%20%3D%20MRESOLVER%20AND%20status%20%3D%20Open%20AND%20component%20%3D%20%22Ant%20Tasks%22
> 
> Staging repository:
> https://repository.apache.org/content/repositories/maven-1988
> 
> Source release SHA512:
> 6e5bd3918d8b9d7c30fe4f1b5c71521789a4960effa6e5af36fd683755bed0c3b2ac51bb69f53677e1cd0acd909edcbc7d5c7991e9bf9c4bc9631d4fc95f3e0f
> 
> Staging site:
> https://maven.apache.org/resolver-archives/resolver-ant-tasks-LATEST/
> 
> Guide to testing staged releases:
> https://maven.apache.org/guides/development/guide-testing-releases.html
> 
> Vote open for 72 hours.
> 
> [ ] +1
> [ ] +0
> [ ] -1
> 

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



Re: [VOTE] Release Maven Resolver Ant Tasks 1.5.0

2023-09-09 Thread Michael Osipov

Am 2023-09-08 um 13:11 schrieb Tamás Cservenák:

  Howdy,

We solved 6 issues:
https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12320628=12348840

There are still some issues in JIRA:
https://issues.apache.org/jira/issues/?jql=project%20%3D%20MRESOLVER%20AND%20status%20%3D%20Open%20AND%20component%20%3D%20%22Ant%20Tasks%22

Staging repository:
https://repository.apache.org/content/repositories/maven-1988

Source release SHA512:
6e5bd3918d8b9d7c30fe4f1b5c71521789a4960effa6e5af36fd683755bed0c3b2ac51bb69f53677e1cd0acd909edcbc7d5c7991e9bf9c4bc9631d4fc95f3e0f

Staging site:
https://maven.apache.org/resolver-archives/resolver-ant-tasks-LATEST/

Guide to testing staged releases:
https://maven.apache.org/guides/development/guide-testing-releases.html

Vote open for 72 hours.


+1



Re: [VOTE] Release Apache Maven Enforcer version 3.4.1

2023-09-09 Thread Michael Osipov

Am 2023-09-07 um 19:39 schrieb Slawomir Jaranowski:

Hi,

We solved 2 issues:
https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317520=12353576

There are still a couple of issues left in JIRA:
https://issues.apache.org/jira/issues/?jql=project%20%3D%20MENFORCER%20AND%20resolution%20%3D%20Unresolved

Staging repo:
https://repository.apache.org/content/repositories/maven-1987/
https://repository.apache.org/content/repositories/maven-1987/org/apache/maven/enforcer/enforcer/3.4.1/enforcer-3.4.1-source-release.zip

Source release checksum(s):
enforcer-3.4.1-source-release.zip - SHA-512 :
64fcd4a97487ae50976426da63f3ba58cb0fe47a72235afa8f05e5d6e8118ad09dbc8269c5ff106ab1e274dd54e439c737585df1232b85be7ea202aee6ac5864

Staging site:
https://maven.apache.org/enforcer-archives/enforcer-LATEST/

Guide to testing staged releases:
https://maven.apache.org/guides/development/guide-testing-releases.html

Vote open for at least 72 hours.


+1


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