You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@netbeans.apache.org by "slachiewicz (via GitHub)" <gi...@apache.org> on 2026/10/09 20:28:38 UTC
[PR] Build the Maven dependency tree with Maven Resolver instead of maven-dependency-tree [netbeans]
slachiewicz opened a new pull request, #9694:
URL: https://github.com/apache/netbeans/pull/9694
`DependencyTreeFactory` still built trees with maven-dependency-tree 2.2 (2014), whose `DependencyTreeBuilder` goes through maven-compat's legacy `ArtifactCollector` — the `TODO: check alternative for deprecated maven components` in that class. This replaces it with Maven Resolver's own verbose collection and drops the bundled jar.
- `DependencyTreeFactory` collects the project's dependencies with `ConflictResolver` in verbose mode, using a session from the new `MavenEmbedder.newRepositorySession()` (settings, mirrors, workspace reader, offline flag).
- The result is a NetBeans-owned `org.netbeans.modules.maven.embedder.tree.DependencyNode` and `DependencyNodeVisitor`, keeping the part of the old API NetBeans uses, so the 15 classes in `maven`, `maven.graph` and `maven.repository` only change imports.
- Mapping: winners are `INCLUDED`; a loser whose winner is an ancestor is `OMITTED_FOR_CYCLE`; same base version as the winner is `OMITTED_FOR_DUPLICATE`; otherwise `OMITTED_FOR_CONFLICT`, with the winner as related artifact.
Behaviour differences:
- Resolver removes cycle losers even in verbose mode, so `OMITTED_FOR_CYCLE` is effectively never produced.
- The scope filter now prunes subtrees; the old builder accepted a filter but never applied it.
- Nodes use identity equality, so lookups no longer break when a node's hash changes after mutation.
Compatibility: `maven.embedder` goes to 2.90 and no longer exports `org.apache.maven.shared.dependency.{tree,tree.traversal,graph,graph.filter,graph.traversal}` to friends. That is incompatible for any friend module compiling against those packages; I have not checked the external friends listed in `project.xml`. The change is recorded in `apichanges.xml`.
Depends on #9693 (the `apichanges.dtd` year list rejects the 2026 entry); its commit is included here and drops out once #9693 is merged.
Not tested manually in a running IDE (dependency graph, exclude dependency, create library dialogs).
Verified: `ant -f java/maven.embedder test` → DependencyTreeFactoryTest 5/5 and the existing embedder tests green; `ant -f java/maven test` → 418 tests, 0 failures; `ant -Dcluster.config=java verify-libs-and-licenses` → 0 failures.
Assisted-by: Claude Opus 5.5
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org
For additional commands, e-mail: notifications-help@netbeans.apache.org
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
Re: [PR] Build the Maven dependency tree with Maven Resolver instead of maven-dependency-tree [netbeans]
Posted by "slachiewicz (via GitHub)" <gi...@apache.org>.
slachiewicz commented on PR #9694:
URL: https://github.com/apache/netbeans/pull/9694#issuecomment-6132111652
Can't believe it's green. Or too early to celebrate?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org
For additional commands, e-mail: notifications-help@netbeans.apache.org
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
Re: [PR] Build the Maven dependency tree with Maven Resolver instead of maven-dependency-tree [netbeans]
Posted by "slachiewicz (via GitHub)" <gi...@apache.org>.
slachiewicz commented on PR #9694:
URL: https://github.com/apache/netbeans/pull/9694#issuecomment-6149739142
> We would create the release branches for NB 32 this week (~15th). I think #9642 has a small chance to make it still in - mostly because its not clear if anyone tested it beside me. Putting NB 33 milestone on this PR here.
To early with 3.10 yet. Wait for few more patch releases - i'll take look next week to report/fix issues with upgrade
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org
For additional commands, e-mail: notifications-help@netbeans.apache.org
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
Re: [PR] Build the Maven dependency tree with Maven Resolver instead of maven-dependency-tree [netbeans]
Posted by "mbien (via GitHub)" <gi...@apache.org>.
mbien commented on code in PR #9694:
URL: https://github.com/apache/netbeans/pull/9694#discussion_r4234765073
##########
nbbuild/javadoctools/apichanges.dtd:
##########
@@ -102,7 +102,7 @@ Date on which the change was made (in the trunk).
<!ATTLIST date
day (1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31) #REQUIRED
month (1|2|3|4|5|6|7|8|9|10|11|12) #REQUIRED
- year (1998|1999|2000|2001|2002|2003|2004|2005|2006|2007|2008|2009|2010|2011|2012|2013|2014|2015|2016|2017|2018|2019|2020|2021|2022|2023|2024|2025) #REQUIRED
+ year (1998|1999|2000|2001|2002|2003|2004|2005|2006|2007|2008|2009|2010|2011|2012|2013|2014|2015|2016|2017|2018|2019|2020|2021|2022|2023|2024|2025|2026) #REQUIRED
Review Comment:
i forgot why we can't change this. But there is an updated `apichanges-1.1.dtd` which should last until our retirement.
should have posted this at https://github.com/apache/netbeans/pull/9693 didn't see it quick enough
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org
For additional commands, e-mail: notifications-help@netbeans.apache.org
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
Re: [PR] Build the Maven dependency tree with Maven Resolver instead of maven-dependency-tree [netbeans]
Posted by "mbien (via GitHub)" <gi...@apache.org>.
mbien commented on code in PR #9694:
URL: https://github.com/apache/netbeans/pull/9694#discussion_r4234765073
##########
nbbuild/javadoctools/apichanges.dtd:
##########
@@ -102,7 +102,7 @@ Date on which the change was made (in the trunk).
<!ATTLIST date
day (1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31) #REQUIRED
month (1|2|3|4|5|6|7|8|9|10|11|12) #REQUIRED
- year (1998|1999|2000|2001|2002|2003|2004|2005|2006|2007|2008|2009|2010|2011|2012|2013|2014|2015|2016|2017|2018|2019|2020|2021|2022|2023|2024|2025) #REQUIRED
+ year (1998|1999|2000|2001|2002|2003|2004|2005|2006|2007|2008|2009|2010|2011|2012|2013|2014|2015|2016|2017|2018|2019|2020|2021|2022|2023|2024|2025|2026) #REQUIRED
Review Comment:
i forgot why we can't change this. But there is an updated `apichanges-1.1.dtd` which should last until our retirement.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org
For additional commands, e-mail: notifications-help@netbeans.apache.org
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
Re: [PR] Build the Maven dependency tree with Maven Resolver instead of maven-dependency-tree [netbeans]
Posted by "mbien (via GitHub)" <gi...@apache.org>.
mbien commented on PR #9694:
URL: https://github.com/apache/netbeans/pull/9694#issuecomment-6094390655
checked a few friend packages I could still find
inactive:
- https://github.com/sqe-team/sqe
- https://github.com/vaadin/netbeans-plugin
active, but no `DependencyNode` usage used as needle
- https://github.com/jeddict/jeddict-modeler cc @jGauravGupta
most of the other stuff looks like modules within this repo (some of it doesn't exist anymore too, e.g `org.netbeans.modules.apisupport.installer.maven`)
-> we should be fine
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org
For additional commands, e-mail: notifications-help@netbeans.apache.org
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
Re: [PR] Build the Maven dependency tree with Maven Resolver instead of maven-dependency-tree [netbeans]
Posted by "slachiewicz (via GitHub)" <gi...@apache.org>.
slachiewicz commented on PR #9694:
URL: https://github.com/apache/netbeans/pull/9694#issuecomment-6125812290
Switched `apichanges.xml` to `apichanges-1.1.dtd` and dropped the DTD change. The description now has the friends research: none of the external friends uses the dropped `org.apache.maven.shared.dependency.*` packages. That covers jeddict (jeddict-modeler, jeddict-extensions), sqe, the archived vaadin plugin, NbAppEngine and the netbeans-contrib selenium module. `apisupport.installer.maven` and `maven.util` no longer exist, and `jbi.fuji.support` and `android.maven` have no public source.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org
For additional commands, e-mail: notifications-help@netbeans.apache.org
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
Re: [PR] Build the Maven dependency tree with Maven Resolver instead of maven-dependency-tree [netbeans]
Posted by "mbien (via GitHub)" <gi...@apache.org>.
mbien commented on PR #9694:
URL: https://github.com/apache/netbeans/pull/9694#issuecomment-6137350353
> Can't believe it's green. Or too early to celebrate?
its a good sign from the CI gremlins! Some of the CI jobs are a bit brittle and need restarts, so a single failure wouldn't necessarily mean its a regression.
We would create the release branches for NB 32 this week (~15th). I think https://github.com/apache/netbeans/pull/9642 has a small chance to make it still in - mostly because its not clear if anyone tested it beside me. Putting NB 33 milestone on this PR here.
Thanks a lot for helping with this btw!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org
For additional commands, e-mail: notifications-help@netbeans.apache.org
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists