Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package plexus-languages for 
openSUSE:Factory checked in at 2026-09-29 17:49:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/plexus-languages (Old)
 and      /work/SRC/openSUSE:Factory/.plexus-languages.new.383539 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "plexus-languages"

Tue Sep 29 17:49:33 2026 rev:10 rq:1381214 version:1.6.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/plexus-languages/plexus-languages.changes        
2025-06-05 20:37:33.853339034 +0200
+++ 
/work/SRC/openSUSE:Factory/.plexus-languages.new.383539/plexus-languages.changes
    2026-09-29 17:50:58.349195354 +0200
@@ -1,0 +2,30 @@
+Mon Sep 28 13:07:33 UTC 2026 - Fridrich Strba <[email protected]>
+
+- Upgrade to upstream version 1.6.0
+  * New features and improvements
+    + Replace QDox with JavaParser
+  * Documentation updates
+    + Rewrite README with usage, status and version guidance
+  * Build
+    + Update parent to plexus 27
+    + Declare the spotless version locally
+  * Dependency updates
+    + Bump org.codehaus.plexus:plexus from 24 to 26
+    + Bump release-drafter/release-drafter from 6 to 7.7.0
+    + Bump org.ow2.asm:asm from 9.9.1 to 9.10.1
+    + Bump org.assertj:assertj-core from 3.27.6 to 3.27.7 in
+      /plexus-java
+- Changes of version 1.5.2
+  * Dependency update
+    + Bump org.ow2.asm:asm from 9.9 to 9.9.1
+- Changes of version 1.5.1
+  * Maintenance release
+    + Bump org.ow2.asm:asm from 9.8 to 9.9
+    + Bump org.codehaus.plexus:plexus parent to 24
+    + Bump org.assertj:assertj-core to 3.27.6
+    + JUnit Jupiter best practices
+- Modified patch:
+  * plexus-languages-atinject.patch
+    + rediff
+
+-------------------------------------------------------------------

Old:
----
  plexus-languages-1.5.0.tar.xz

New:
----
  _scmsync.obsinfo
  build.specials.obscpio
  plexus-languages-1.6.0.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ plexus-languages.spec ++++++
--- /var/tmp/diff_new_pack.6tkJSl/_old  2026-09-29 17:50:59.245232770 +0200
+++ /var/tmp/diff_new_pack.6tkJSl/_new  2026-09-29 17:50:59.247232854 +0200
@@ -20,7 +20,7 @@
 # binaries are java 8 compatible
 %define __requires_exclude java-headless
 Name:           plexus-languages
-Version:        1.5.0
+Version:        1.6.0
 Release:        0
 Summary:        Plexus Languages
 License:        Apache-2.0
@@ -37,7 +37,7 @@
 BuildRequires:  javapackages-local >= 6
 BuildRequires:  objectweb-asm
 BuildRequires:  plexus-containers-component-annotations
-BuildRequires:  qdox >= 2
+BuildRequires:  javaparser
 BuildRequires:  sisu-inject
 Requires:       java-headless >= 1.8
 BuildArch:      noarch
@@ -66,9 +66,14 @@
 
 %build
 mkdir -p lib
-build-jar-repository -s lib qdox javax.inject 
plexus-containers/plexus-component-annotations objectweb-asm/asm 
org.eclipse.sisu.inject
+build-jar-repository -s lib \
+    javaparser \
+    javax.inject \
+    plexus-containers/plexus-component-annotations \
+    objectweb-asm/asm \
+    org.eclipse.sisu.inject
 pushd plexus-java
-%{ant} -Dtest.skip=true package javadoc
+ant -Dtest.skip=true package javadoc
 popd
 
 %install

++++++ _scmsync.obsinfo ++++++
mtime: 1790601217
commit: f4accaa25348904f295a1231a8a4fb5f89ce36df37fcb8180261e981937b6a96
url: https://src.opensuse.org/java-packages/plexus-languages
revision: f4accaa25348904f295a1231a8a4fb5f89ce36df37fcb8180261e981937b6a96
projectscmsync: https://src.opensuse.org/java-packages/_ObsPrj

++++++ _service ++++++
--- /var/tmp/diff_new_pack.6tkJSl/_old  2026-09-29 17:50:59.342236821 +0200
+++ /var/tmp/diff_new_pack.6tkJSl/_new  2026-09-29 17:50:59.347237030 +0200
@@ -2,7 +2,7 @@
        <service name="tar_scm" mode="disabled">
                <param name="scm">git</param>
                <param 
name="url">https://github.com/codehaus-plexus/plexus-languages.git</param>
-               <param name="revision">plexus-languages-1.5.0</param>
+               <param name="revision">plexus-languages-1.6.0</param>
                <param name="match-tag">plexus-languages-*</param>
                <param name="versionformat">@PARENT_TAG@</param>
                <param 
name="versionrewrite-pattern">plexus-languages-(.*)</param>

++++++ build.specials.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/.gitignore new/.gitignore
--- old/.gitignore      1970-01-01 01:00:00.000000000 +0100
+++ new/.gitignore      2026-09-28 15:13:37.000000000 +0200
@@ -0,0 +1 @@
+.osc

++++++ plexus-java-build.xml ++++++
--- /var/tmp/diff_new_pack.6tkJSl/_old  2026-09-29 17:50:59.452241414 +0200
+++ /var/tmp/diff_new_pack.6tkJSl/_new  2026-09-29 17:50:59.460241748 +0200
@@ -10,7 +10,7 @@
 
   <property name="project.groupId" value="org.codehaus.plexus"/>
   <property name="project.artifactId" value="plexus-java"/>
-  <property name="project.version" value="1.5.0"/>
+  <property name="project.version" value="1.6.0"/>
 
   <property name="compiler.release" value="8"/>
   <property name="compiler.source" value="1.${compiler.release}"/>

++++++ plexus-languages-1.5.0.tar.xz -> plexus-languages-1.6.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/plexus-languages-1.5.0/.github/release-drafter.yml 
new/plexus-languages-1.6.0/.github/release-drafter.yml
--- old/plexus-languages-1.5.0/.github/release-drafter.yml      2025-04-05 
11:30:41.000000000 +0200
+++ new/plexus-languages-1.6.0/.github/release-drafter.yml      1970-01-01 
01:00:00.000000000 +0100
@@ -1,2 +0,0 @@
-_extends: .github
-tag-template: plexus-languages-$NEXT_MINOR_VERSION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/plexus-languages-1.5.0/.github/workflows/release-drafter.yml 
new/plexus-languages-1.6.0/.github/workflows/release-drafter.yml
--- old/plexus-languages-1.5.0/.github/workflows/release-drafter.yml    
2025-04-05 11:30:41.000000000 +0200
+++ new/plexus-languages-1.6.0/.github/workflows/release-drafter.yml    
2026-08-19 10:11:21.000000000 +0200
@@ -7,6 +7,6 @@
   update_release_draft:
     runs-on: ubuntu-latest
     steps:
-      - uses: release-drafter/release-drafter@v6
+      - uses: release-drafter/[email protected]
         env:
           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/plexus-languages-1.5.0/README.md 
new/plexus-languages-1.6.0/README.md
--- old/plexus-languages-1.5.0/README.md        2025-04-05 11:30:41.000000000 
+0200
+++ new/plexus-languages-1.6.0/README.md        2026-08-19 10:11:21.000000000 
+0200
@@ -1,14 +1,52 @@
-# Plexus Language
+# Plexus Languages
 
-![Build 
Status](https://github.com/codehaus-plexus/plexus-languages/workflows/GitHub%20CI/badge.svg)
-![GitHub Workflow 
Status](https://img.shields.io/github/actions/workflow/status/codehaus-plexus/plexus-languages/maven.yml?branch=master)
+[![Maven 
Central](https://img.shields.io/maven-central/v/org.codehaus.plexus/plexus-java.svg?label=Maven%20Central)](https://central.sonatype.com/artifact/org.codehaus.plexus/plexus-java)
+[![GitHub 
CI](https://github.com/codehaus-plexus/plexus-languages/workflows/GitHub%20CI/badge.svg)](https://github.com/codehaus-plexus/plexus-languages/actions)
 [![Reproducible 
Builds](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/jvm-repo-rebuild/reproducible-central/master/content/org/codehaus/plexus/plexus-languages/badge.json)](https://github.com/jvm-repo-rebuild/reproducible-central/blob/master/content/org/codehaus/plexus/plexus-languages/README.md)
 
-Plexus Languages:
+Shared language-oriented features for build tools. Currently one module, 
**`plexus-java`**, which does the
+Java Platform Module System work that Maven plugins need:
 
-* [![Maven 
Central](https://img.shields.io/maven-central/v/org.codehaus.plexus/plexus-languages.svg?label=Maven%20Central)](https://search.maven.org/artifact/org.codehaus.plexus/plexus-languages)
+- reads a module descriptor — from `module-info.java`, `module-info.class`, an 
`Automatic-Module-Name`
+  manifest entry, or a filename — and tells you the module name and where it 
came from
+- splits a set of paths into a **classpath** and a **module path**, which is 
what
+  `maven-compiler-plugin`, `maven-surefire-plugin` and `maven-javadoc-plugin` 
need to invoke a modular
+  build correctly
 
-Plexus Java:
+The entry point is
+[`LocationManager`](https://codehaus-plexus.github.io/plexus-languages/plexus-java/locationmanager.html).
 
-* [![Maven 
Central](https://img.shields.io/maven-central/v/org.codehaus.plexus/plexus-java.svg?label=Maven%20Central)](https://search.maven.org/artifact/org.codehaus.plexus/plexus-java)
+## Status
 
+Maintained. Several core Maven plugins depend on it, so public API is kept 
compatible.
+
+## Using it
+
+```xml
+<dependency>
+  <groupId>org.codehaus.plexus</groupId>
+  <artifactId>plexus-java</artifactId>
+  <version>1.5.2</version>
+</dependency>
+```
+
+Check the badge above for the current version. Note the artifact is 
`plexus-java`; `plexus-languages` is
+the aggregator.
+
+## Requirements
+
+Java 8 or later to run. Reading modular jars obviously requires a JDK that has 
modules.
+
+## Documentation
+
+- [Project site](https://codehaus-plexus.github.io/plexus-languages/) — 
including 
[usage](https://codehaus-plexus.github.io/plexus-languages/plexus-java/usage.html)
 and 
[LocationManager](https://codehaus-plexus.github.io/plexus-languages/plexus-java/locationmanager.html)
+- [Javadoc](https://javadoc.io/doc/org.codehaus.plexus/plexus-java)
+- [Release notes](https://github.com/codehaus-plexus/plexus-languages/releases)
+
+## Contributing
+
+See 
[CONTRIBUTING.md](https://github.com/codehaus-plexus/.github/blob/master/CONTRIBUTING.md).
 In short:
+`mvn verify` builds, and run `mvn spotless:apply` before pushing or CI will 
fail on formatting.
+
+Please report security vulnerabilities privately — see
+[SECURITY.md](https://github.com/codehaus-plexus/.github/blob/master/SECURITY.md),
 not a public issue.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/plexus-languages-1.5.0/plexus-java/pom.xml 
new/plexus-languages-1.6.0/plexus-java/pom.xml
--- old/plexus-languages-1.5.0/plexus-java/pom.xml      2025-04-05 
11:30:41.000000000 +0200
+++ new/plexus-languages-1.6.0/plexus-java/pom.xml      2026-08-19 
10:11:21.000000000 +0200
@@ -5,7 +5,7 @@
   <parent>
     <groupId>org.codehaus.plexus</groupId>
     <artifactId>plexus-languages</artifactId>
-    <version>1.5.0</version>
+    <version>1.6.0</version>
   </parent>
   <artifactId>plexus-java</artifactId>
 
@@ -15,12 +15,12 @@
     <dependency>
       <groupId>org.ow2.asm</groupId>
       <artifactId>asm</artifactId>
-      <version>9.8</version>
+      <version>9.10.1</version>
     </dependency>
     <dependency>
-      <groupId>com.thoughtworks.qdox</groupId>
-      <artifactId>qdox</artifactId>
-      <version>2.2.0</version>
+      <groupId>com.github.javaparser</groupId>
+      <artifactId>javaparser-core</artifactId>
+      <version>3.28.2</version>
     </dependency>
     <dependency>
       <groupId>javax.inject</groupId>
@@ -53,7 +53,7 @@
     <dependency>
       <groupId>org.assertj</groupId>
       <artifactId>assertj-core</artifactId>
-      <version>3.27.3</version>
+      <version>3.27.7</version>
       <scope>test</scope>
     </dependency>
   </dependencies>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/plexus-languages-1.5.0/plexus-java/src/main/java/org/codehaus/plexus/languages/java/jpms/SourceModuleInfoParser.java
 
new/plexus-languages-1.6.0/plexus-java/src/main/java/org/codehaus/plexus/languages/java/jpms/SourceModuleInfoParser.java
--- 
old/plexus-languages-1.5.0/plexus-java/src/main/java/org/codehaus/plexus/languages/java/jpms/SourceModuleInfoParser.java
    2025-04-05 11:30:41.000000000 +0200
+++ 
new/plexus-languages-1.6.0/plexus-java/src/main/java/org/codehaus/plexus/languages/java/jpms/SourceModuleInfoParser.java
    2026-08-19 10:11:21.000000000 +0200
@@ -19,87 +19,88 @@
  * under the License.
  */
 
-import java.io.File;
 import java.io.IOException;
+import java.nio.file.Files;
 import java.nio.file.Path;
 import java.util.ArrayList;
 import java.util.LinkedHashSet;
 import java.util.List;
 import java.util.Set;
 
-import com.thoughtworks.qdox.JavaProjectBuilder;
-import com.thoughtworks.qdox.model.JavaClass;
-import com.thoughtworks.qdox.model.JavaModule;
-import com.thoughtworks.qdox.model.JavaModuleDescriptor;
+import com.github.javaparser.StaticJavaParser;
+import com.github.javaparser.ast.expr.Name;
+import com.github.javaparser.ast.modules.ModuleDeclaration;
+import com.github.javaparser.ast.modules.ModuleDirective;
+import com.github.javaparser.ast.modules.ModuleExportsDirective;
+import com.github.javaparser.ast.modules.ModuleProvidesDirective;
+import com.github.javaparser.ast.modules.ModuleRequiresDirective;
+import com.github.javaparser.ast.modules.ModuleUsesDirective;
 
 /**
- * Extract information from module with QDox
+ * Extracts information from a source module descriptor.
  *
  * @author Robert Scholte
  * @since 1.0.0
  */
 class SourceModuleInfoParser {
 
-    public org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor 
fromSourcePath(Path modulePath)
-            throws IOException {
-        File moduleDescriptor = modulePath.toFile();
-
-        org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor.Builder 
builder;
-        if (moduleDescriptor.exists()) {
-            JavaModuleDescriptor descriptor = new JavaProjectBuilder()
-                    .addSourceFolder(moduleDescriptor.getParentFile())
-                    .getDescriptor();
-
-            builder = 
org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor.newModule(descriptor.getName());
-
-            for (JavaModuleDescriptor.JavaRequires requires : 
descriptor.getRequires()) {
-                if (requires.isStatic() || requires.isTransitive()) {
-                    
Set<org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor.JavaRequires.JavaModifier>
-                            modifiers = new LinkedHashSet<>(2);
-                    if (requires.isStatic()) {
-                        modifiers.add(
-                                
org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor.JavaRequires.JavaModifier
-                                        .STATIC);
+    public JavaModuleDescriptor fromSourcePath(Path modulePath) throws 
IOException {
+        JavaModuleDescriptor.Builder builder;
+        if (Files.exists(modulePath)) {
+            ModuleDeclaration descriptor = StaticJavaParser.parse(modulePath)
+                    .getModule()
+                    .orElseThrow(() -> new IOException("Module declaration not 
found in " + modulePath));
+
+            builder = 
JavaModuleDescriptor.newModule(descriptor.getName().asString());
+
+            for (ModuleDirective directive : descriptor.getDirectives()) {
+                if (directive instanceof ModuleRequiresDirective) {
+                    addRequires(builder, (ModuleRequiresDirective) directive);
+                } else if (directive instanceof ModuleExportsDirective) {
+                    addExports(builder, (ModuleExportsDirective) directive);
+                } else if (directive instanceof ModuleUsesDirective) {
+                    ModuleUsesDirective uses = (ModuleUsesDirective) directive;
+                    builder.uses(uses.getName().asString());
+                } else if (directive instanceof ModuleProvidesDirective) {
+                    ModuleProvidesDirective provides = 
(ModuleProvidesDirective) directive;
+                    List<String> providers = new 
ArrayList<>(provides.getWith().size());
+                    for (Name provider : provides.getWith()) {
+                        providers.add(provider.asString());
                     }
-                    if (requires.isTransitive()) {
-                        modifiers.add(
-                                
org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor.JavaRequires.JavaModifier
-                                        .TRANSITIVE);
-                    }
-                    builder.requires(modifiers, 
requires.getModule().getName());
-                } else {
-                    builder.requires(requires.getModule().getName());
+                    builder.provides(provides.getName().asString(), providers);
                 }
             }
+        } else {
+            builder = JavaModuleDescriptor.newAutomaticModule(null);
+        }
 
-            for (JavaModuleDescriptor.JavaExports exports : 
descriptor.getExports()) {
-                if (exports.getTargets().isEmpty()) {
-                    builder.exports(exports.getSource().getName());
-                } else {
-                    Set<String> targets = new LinkedHashSet<>();
-                    for (JavaModule module : exports.getTargets()) {
-                        targets.add(module.getName());
-                    }
-                    builder.exports(exports.getSource().getName(), targets);
-                }
-            }
+        return builder.build();
+    }
 
-            for (JavaModuleDescriptor.JavaUses uses : descriptor.getUses()) {
-                builder.uses(uses.getService().getName());
+    private static void addRequires(JavaModuleDescriptor.Builder builder, 
ModuleRequiresDirective requires) {
+        if (requires.isStatic() || requires.isTransitive()) {
+            Set<JavaModuleDescriptor.JavaRequires.JavaModifier> modifiers = 
new LinkedHashSet<>(2);
+            if (requires.isStatic()) {
+                
modifiers.add(JavaModuleDescriptor.JavaRequires.JavaModifier.STATIC);
             }
-
-            for (JavaModuleDescriptor.JavaProvides provides : 
descriptor.getProvides()) {
-                List<String> providers = new 
ArrayList<>(provides.getProviders().size());
-                for (JavaClass provider : provides.getProviders()) {
-                    providers.add(provider.getName());
-                }
-
-                builder.provides(provides.getService().getName(), providers);
+            if (requires.isTransitive()) {
+                
modifiers.add(JavaModuleDescriptor.JavaRequires.JavaModifier.TRANSITIVE);
             }
+            builder.requires(modifiers, requires.getName().asString());
         } else {
-            builder = 
org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor.newAutomaticModule(null);
+            builder.requires(requires.getName().asString());
         }
+    }
 
-        return builder.build();
+    private static void addExports(JavaModuleDescriptor.Builder builder, 
ModuleExportsDirective exports) {
+        if (exports.getModuleNames().isEmpty()) {
+            builder.exports(exports.getName().asString());
+        } else {
+            Set<String> targets = new LinkedHashSet<>();
+            for (Name module : exports.getModuleNames()) {
+                targets.add(module.asString());
+            }
+            builder.exports(exports.getName().asString(), targets);
+        }
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/plexus-languages-1.5.0/plexus-java/src/main/java9/module-info.java 
new/plexus-languages-1.6.0/plexus-java/src/main/java9/module-info.java
--- old/plexus-languages-1.5.0/plexus-java/src/main/java9/module-info.java      
2025-04-05 11:30:41.000000000 +0200
+++ new/plexus-languages-1.6.0/plexus-java/src/main/java9/module-info.java      
2026-08-19 10:11:21.000000000 +0200
@@ -17,7 +17,7 @@
  * under the License.
  */
 module org.codehaus.plexus.languages.java {
-    requires com.thoughtworks.qdox;
+    requires com.github.javaparser.core;
     requires org.objectweb.asm;
 
     exports org.codehaus.plexus.languages.java.jpms;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/AbstractFilenameModuleNameExtractorTest.java
 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/AbstractFilenameModuleNameExtractorTest.java
--- 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/AbstractFilenameModuleNameExtractorTest.java
   2025-04-05 11:30:41.000000000 +0200
+++ 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/AbstractFilenameModuleNameExtractorTest.java
   2026-08-19 10:11:21.000000000 +0200
@@ -30,26 +30,26 @@
     protected abstract ModuleNameExtractor getExtractor();
 
     @Test
-    void testJarWithoutManifest() throws Exception {
+    void jarWithoutManifest() throws Exception {
         String name = 
getExtractor().extract(Paths.get("src/test/test-data/jar.empty/plexus-java-1.0.0-SNAPSHOT.jar"));
         assertEquals("plexus.java", name);
     }
 
     @Test
-    void testJarWithManifest() throws Exception {
+    void jarWithManifest() throws Exception {
         String name = getExtractor()
                 
.extract(Paths.get("src/test/test-data/jar.manifest.with/plexus-java-1.0.0-SNAPSHOT.jar"));
         assertEquals("org.codehaus.plexus.languages.java", name);
     }
 
     @Test
-    void testJarUnsupported() throws Exception {
+    void jarUnsupported() throws Exception {
         String name = 
getExtractor().extract(Paths.get("src/test/test-data/jar.unsupported/jdom-1.0.jar"));
         assertNull(name);
     }
 
     @Test
-    void testJarWithSpacesInPath() throws Exception {
+    void jarWithSpacesInPath() throws Exception {
         String name = getExtractor()
                 .extract(Paths.get("src/test/test-data/jar with spaces in 
path/plexus-java-1.0.0-SNAPSHOT.jar"));
         assertEquals("org.codehaus.plexus.languages.java", name);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/BinaryModuleInfoParserTest.java
 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/BinaryModuleInfoParserTest.java
--- 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/BinaryModuleInfoParserTest.java
        2025-04-05 11:30:41.000000000 +0200
+++ 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/BinaryModuleInfoParserTest.java
        2026-08-19 10:11:21.000000000 +0200
@@ -47,7 +47,7 @@
     private final BinaryModuleInfoParser parser = new BinaryModuleInfoParser();
 
     @Test
-    void testJarDescriptor() throws Exception {
+    void jarDescriptor() throws Exception {
         JavaModuleDescriptor descriptor =
                 
parser.getModuleDescriptor(Paths.get("src/test/test-data/jar.descriptor/asm-6.0_BETA.jar"));
 
@@ -67,7 +67,7 @@
     }
 
     @Test
-    void testMultiReleaseJarDescriptor() throws Exception {
+    void multiReleaseJarDescriptor() throws Exception {
         JavaModuleDescriptor descriptor = parser.getModuleDescriptor(
                 
Paths.get("src/test/test-data/jar.mr.descriptor/jloadr-1.0-SNAPSHOT.jar"), 
JavaVersion.parse("17"));
 
@@ -77,7 +77,7 @@
     }
 
     @Test
-    void testIncompleteMultiReleaseJarDescriptor() throws Exception {
+    void incompleteMultiReleaseJarDescriptor() throws Exception {
         // this jar is missing the Multi-Release: true entry in the Manifest
         JavaModuleDescriptor descriptor = parser.getModuleDescriptor(
                 
Paths.get("src/test/test-data/jar.mr.incomplete.descriptor/jloadr-1.0-SNAPSHOT.jar"));
@@ -86,7 +86,7 @@
     }
 
     @Test
-    void testClassicJar() throws Exception {
+    void classicJar() throws Exception {
         JavaModuleDescriptor descriptor =
                 
parser.getModuleDescriptor(Paths.get("src/test/test-data/jar.empty/plexus-java-1.0.0-SNAPSHOT.jar"));
 
@@ -94,7 +94,7 @@
     }
 
     @Test
-    void testOutputDirectoryDescriptor() throws Exception {
+    void outputDirectoryDescriptor() throws Exception {
         JavaModuleDescriptor descriptor =
                 
parser.getModuleDescriptor(Paths.get("src/test/test-data/dir.descriptor/out"));
 
@@ -115,14 +115,14 @@
     }
 
     @Test
-    void testClassicOutputDirectory() {
+    void classicOutputDirectory() {
         assertThrows(
                 NoSuchFileException.class,
                 () -> 
parser.getModuleDescriptor(Paths.get("src/test/test-data/dir.empty/out")));
     }
 
     @Test
-    void testJModDescriptor() throws Exception {
+    void jModDescriptor() throws Exception {
         JavaModuleDescriptor descriptor = parser.getModuleDescriptor(
                 
Paths.get("src/test/test-data/jmod.descriptor/first-jmod-1.0-SNAPSHOT.jmod"));
 
@@ -139,13 +139,13 @@
     }
 
     @Test
-    void testInvalidFile() {
+    void invalidFile() {
         assertThrows(
                 IOException.class, () -> 
parser.getModuleDescriptor(Paths.get("src/test/test-data/nonjar/pom.xml")));
     }
 
     @Test
-    void testUses() throws Exception {
+    void uses() throws Exception {
         try (InputStream is =
                 
Files.newInputStream(Paths.get("src/test/test-data/dir.descriptor.uses/out/module-info.class")))
 {
             JavaModuleDescriptor descriptor = parser.parse(is);
@@ -161,7 +161,7 @@
     }
 
     @Test
-    void testProvides() throws Exception {
+    void provides() throws Exception {
         JavaModuleDescriptor descriptor =
                 
parser.getModuleDescriptor(Paths.get("src/test/test-data/jar.service/threeten-extra-1.4.jar"));
 
@@ -186,7 +186,7 @@
     }
 
     @Test
-    void testRequires() throws Exception {
+    void requires() throws Exception {
         try (InputStream is =
                 
Files.newInputStream(Paths.get("src/test/test-data/dir.descriptor.requires/out/module-info.class")))
 {
             JavaModuleDescriptor descriptor = parser.parse(is);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/CmdModuleNameExtractorTest.java
 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/CmdModuleNameExtractorTest.java
--- 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/CmdModuleNameExtractorTest.java
        2025-04-05 11:30:41.000000000 +0200
+++ 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/CmdModuleNameExtractorTest.java
        2026-08-19 10:11:21.000000000 +0200
@@ -27,7 +27,7 @@
 
 class CmdModuleNameExtractorTest {
     @Test
-    void testMethodCount() throws Exception {
+    void methodCount() throws Exception {
         // ensure that both implementations are in sync
         
assertThat(CmdModuleNameExtractor.class.getDeclaredMethods()).hasSize(2);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/LocationManagerIT.java
 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/LocationManagerIT.java
--- 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/LocationManagerIT.java
 2025-04-05 11:30:41.000000000 +0200
+++ 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/LocationManagerIT.java
 2026-08-19 10:11:21.000000000 +0200
@@ -49,7 +49,7 @@
     private BinaryModuleInfoParser asmParser;
 
     @Mock
-    private SourceModuleInfoParser qdoxParser;
+    private SourceModuleInfoParser sourceParser;
 
     private LocationManager locationManager;
 
@@ -57,7 +57,7 @@
 
     @BeforeEach
     void onSetup() {
-        locationManager = new LocationManager(qdoxParser) {
+        locationManager = new LocationManager(sourceParser) {
             @Override
             ModuleInfoParser getBinaryModuleInfoParser(Path jdkHome) {
                 return asmParser;
@@ -66,11 +66,11 @@
     }
 
     @Test
-    void testManifestWithoutReflectRequires() throws Exception {
+    void manifestWithoutReflectRequires() throws Exception {
         Path abc = Paths.get("src/test/test-data/manifest.without/out");
         JavaModuleDescriptor descriptor =
                 JavaModuleDescriptor.newModule("base").requires("any").build();
-        
when(qdoxParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
+        
when(sourceParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
         ResolvePathsRequest<Path> request =
                 
ResolvePathsRequest.ofPaths(Collections.singletonList(abc)).setMainModuleDescriptor(mockModuleInfoJava);
 
@@ -84,11 +84,11 @@
     }
 
     @Test
-    void testEmptyWithReflectRequires() throws Exception {
+    void emptyWithReflectRequires() throws Exception {
         Path abc = Paths.get("src/test/test-data/empty/out");
         JavaModuleDescriptor descriptor =
                 
JavaModuleDescriptor.newModule("base").requires("a.b.c").build();
-        
when(qdoxParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
+        
when(sourceParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
         ResolvePathsRequest<Path> request =
                 
ResolvePathsRequest.ofPaths(Collections.singletonList(abc)).setMainModuleDescriptor(mockModuleInfoJava);
 
@@ -102,17 +102,14 @@
     }
 
     @Test
-    void testResolvePathWithException() {
-        assertThrows(RuntimeException.class, () -> {
-            Path p = 
Paths.get("src/test/test-data/jar.empty.invalid.name/101-1.0.0-SNAPSHOT.jar");
-            ResolvePathRequest<Path> request = ResolvePathRequest.ofPath(p);
-
-            locationManager.resolvePath(request);
-        });
+    void resolvePathWithException() {
+        Path p = 
Paths.get("src/test/test-data/jar.empty.invalid.name/101-1.0.0-SNAPSHOT.jar");
+        ResolvePathRequest<Path> request = ResolvePathRequest.ofPath(p);
+        assertThrows(RuntimeException.class, () -> 
locationManager.resolvePath(request));
     }
 
     @Test
-    void testClassicJarNameStartsWithNumber() throws Exception {
+    void classicJarNameStartsWithNumber() throws Exception {
         Path p = 
Paths.get("src/test/test-data/jar.empty.invalid.name/101-1.0.0-SNAPSHOT.jar");
         ResolvePathsRequest<Path> request =
                 
ResolvePathsRequest.ofPaths(Collections.singletonList(p)).setMainModuleDescriptor(mockModuleInfoJava);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/LocationManagerTest.java
 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/LocationManagerTest.java
--- 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/LocationManagerTest.java
       2025-04-05 11:30:41.000000000 +0200
+++ 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/LocationManagerTest.java
       2026-08-19 10:11:21.000000000 +0200
@@ -38,7 +38,7 @@
 class LocationManagerTest {
     private BinaryModuleInfoParser asmParser;
 
-    private SourceModuleInfoParser qdoxParser;
+    private SourceModuleInfoParser sourceParser;
 
     private LocationManager locationManager;
 
@@ -47,8 +47,8 @@
     @BeforeEach
     void onSetup() {
         asmParser = mock(BinaryModuleInfoParser.class);
-        qdoxParser = mock(SourceModuleInfoParser.class);
-        locationManager = new LocationManager(qdoxParser) {
+        sourceParser = mock(SourceModuleInfoParser.class);
+        locationManager = new LocationManager(sourceParser) {
             @Override
             ModuleInfoParser getBinaryModuleInfoParser(Path jdkHome) {
                 return asmParser;
@@ -57,7 +57,7 @@
     }
 
     @Test
-    void testNoPaths() throws Exception {
+    void noPaths() throws Exception {
         ResolvePathsResult<File> result =
                 
locationManager.resolvePaths(ResolvePathsRequest.ofFiles(Collections.emptyList()));
         assertThat(result.getMainModuleDescriptor()).isNull();
@@ -68,12 +68,12 @@
     }
 
     @Test
-    void testWithUnknownRequires() throws Exception {
+    void withUnknownRequires() throws Exception {
         JavaModuleDescriptor descriptor = 
JavaModuleDescriptor.newModule("base")
                 .requires("java.base")
                 .requires("jdk.net")
                 .build();
-        
when(qdoxParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
+        
when(sourceParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
         ResolvePathsRequest<File> request = 
ResolvePathsRequest.ofFiles(Collections.emptyList())
                 .setMainModuleDescriptor(mockModuleInfoJava.toFile());
 
@@ -87,12 +87,12 @@
     }
 
     @Test
-    void testManifestWithReflectRequires() throws Exception {
+    void manifestWithReflectRequires() throws Exception {
         Path abc = Paths.get("src/test/test-data/dir.manifest.with/out");
         JavaModuleDescriptor descriptor = 
JavaModuleDescriptor.newModule("base")
                 .requires("auto.by.manifest")
                 .build();
-        
when(qdoxParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
+        
when(sourceParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
         ResolvePathsRequest<Path> request =
                 
ResolvePathsRequest.ofPaths(Collections.singletonList(abc)).setMainModuleDescriptor(mockModuleInfoJava);
 
@@ -107,12 +107,12 @@
     }
 
     @Test
-    void testDirDescriptorWithReflectRequires() throws Exception {
+    void dirDescriptorWithReflectRequires() throws Exception {
         Path abc = Paths.get("src/test/test-data/dir.descriptor/out");
         JavaModuleDescriptor descriptor = 
JavaModuleDescriptor.newModule("base")
                 .requires("dir.descriptor")
                 .build();
-        
when(qdoxParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
+        
when(sourceParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
         ResolvePathsRequest<Path> request =
                 
ResolvePathsRequest.ofPaths(Collections.singletonList(abc)).setMainModuleDescriptor(mockModuleInfoJava);
 
@@ -130,12 +130,12 @@
     }
 
     @Test
-    void testJarWithAsmRequires() throws Exception {
+    void jarWithAsmRequires() throws Exception {
         Path abc = 
Paths.get("src/test/test-data/jar.descriptor/asm-6.0_BETA.jar");
         JavaModuleDescriptor descriptor = 
JavaModuleDescriptor.newModule("base")
                 .requires("org.objectweb.asm")
                 .build();
-        
when(qdoxParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
+        
when(sourceParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
         ResolvePathsRequest<Path> request =
                 
ResolvePathsRequest.ofPaths(Collections.singletonList(abc)).setMainModuleDescriptor(mockModuleInfoJava);
 
@@ -152,12 +152,12 @@
     }
 
     @Test
-    void testIdenticalModuleNames() throws Exception {
+    void identicalModuleNames() throws Exception {
         Path pj1 = 
Paths.get("src/test/test-data/jar.empty/plexus-java-1.0.0-SNAPSHOT.jar");
         Path pj2 = 
Paths.get("src/test/test-data/jar.empty.2/plexus-java-2.0.0-SNAPSHOT.jar");
         JavaModuleDescriptor descriptor =
                 
JavaModuleDescriptor.newModule("base").requires("plexus.java").build();
-        
when(qdoxParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
+        
when(sourceParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
         ResolvePathsRequest<Path> request =
                 ResolvePathsRequest.ofPaths(Arrays.asList(pj1, 
pj2)).setMainModuleDescriptor(mockModuleInfoJava);
 
@@ -182,12 +182,12 @@
     }
 
     @Test
-    public void testIdenticalAutomaticModuleNames() throws Exception {
+    void identicalAutomaticModuleNames() throws Exception {
         Path pj1 = 
Paths.get("src/test/test-data/jar.empty/plexus-java-1.0.0-SNAPSHOT.jar");
         Path pj2 = 
Paths.get("src/test/test-data/jar.empty.2/plexus-java-2.0.0-SNAPSHOT.jar");
         JavaModuleDescriptor descriptor =
                 
JavaModuleDescriptor.newModule("base").requires("plexus.java").build();
-        
when(qdoxParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
+        
when(sourceParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
         ResolvePathsRequest<Path> request =
                 ResolvePathsRequest.ofPaths(Arrays.asList(pj1, 
pj2)).setMainModuleDescriptor(mockModuleInfoJava);
 
@@ -212,12 +212,12 @@
     }
 
     @Test
-    public void testMainJarModuleAndTestJarAutomatic() throws Exception {
+    void mainJarModuleAndTestJarAutomatic() throws Exception {
         Path pj1 = 
Paths.get("src/test/test-data/jar.tests/plexus-java-1.0.0-SNAPSHOT.jar");
         Path pj2 = 
Paths.get("src/test/test-data/jar.tests/plexus-java-1.0.0-SNAPSHOT-tests.jar");
         JavaModuleDescriptor descriptor =
                 
JavaModuleDescriptor.newModule("base").requires("plexus.java").build();
-        
when(qdoxParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
+        
when(sourceParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
         ResolvePathsRequest<Path> request =
                 ResolvePathsRequest.ofPaths(Arrays.asList(pj1, 
pj2)).setMainModuleDescriptor(mockModuleInfoJava);
 
@@ -242,7 +242,7 @@
     }
 
     @Test
-    void testNonJar() throws Exception {
+    void nonJar() throws Exception {
         Path p = Paths.get("src/test/test-data/nonjar/pom.xml");
 
         ResolvePathsRequest<Path> request =
@@ -254,11 +254,11 @@
     }
 
     @Test
-    void testAdditionalModules() throws Exception {
+    void additionalModules() throws Exception {
         Path p = Paths.get("src/test/test-data/mock/jar0.jar");
 
         JavaModuleDescriptor descriptor = 
JavaModuleDescriptor.newModule("base").build();
-        
when(qdoxParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
+        
when(sourceParser.fromSourcePath(any(Path.class))).thenReturn(descriptor);
         ResolvePathsRequest<Path> request = 
ResolvePathsRequest.ofPaths(Collections.singletonList(p))
                 .setMainModuleDescriptor(mockModuleInfoJava)
                 
.setAdditionalModules(Collections.singletonList("plexus.java"));
@@ -276,7 +276,7 @@
     }
 
     @Test
-    void testResolvePath() throws Exception {
+    void resolvePath() throws Exception {
         Path abc = Paths.get("src/test/test-data/mock/jar0.jar");
         ResolvePathRequest<Path> request = ResolvePathRequest.ofPath(abc);
 
@@ -291,13 +291,13 @@
     }
 
     @Test
-    void testNoMatchingProviders() throws Exception {
+    void noMatchingProviders() throws Exception {
         Path abc = Paths.get("src/test/test-data/mock/module-info.java"); // 
some file called module-info.java
         Path def = Paths.get("src/test/test-data/mock/jar0.jar"); // any 
existing file
         ResolvePathsRequest<Path> request =
                 
ResolvePathsRequest.ofPaths(def).setMainModuleDescriptor(abc).setIncludeAllProviders(true);
 
-        when(qdoxParser.fromSourcePath(abc))
+        when(sourceParser.fromSourcePath(abc))
                 
.thenReturn(JavaModuleDescriptor.newModule("abc").uses("device").build());
         when(asmParser.getModuleDescriptor(def))
                 .thenReturn(JavaModuleDescriptor.newModule("def")
@@ -312,13 +312,13 @@
     }
 
     @Test
-    void testMainModuleDescriptorWithProviders() throws Exception {
+    void mainModuleDescriptorWithProviders() throws Exception {
         Path abc = Paths.get("src/test/test-data/mock/module-info.java"); // 
some file called module-info.java
         Path def = Paths.get("src/test/test-data/mock/jar0.jar"); // any 
existing file
         ResolvePathsRequest<Path> request =
                 
ResolvePathsRequest.ofPaths(def).setMainModuleDescriptor(abc).setIncludeAllProviders(true);
 
-        when(qdoxParser.fromSourcePath(abc))
+        when(sourceParser.fromSourcePath(abc))
                 
.thenReturn(JavaModuleDescriptor.newModule("abc").uses("tool").build());
         when(asmParser.getModuleDescriptor(def))
                 .thenReturn(JavaModuleDescriptor.newModule("def")
@@ -333,12 +333,12 @@
     }
 
     @Test
-    void testMainModuleDescriptorWithProvidersDontIncludeProviders() throws 
Exception {
+    void mainModuleDescriptorWithProvidersDontIncludeProviders() throws 
Exception {
         Path abc = Paths.get("src/test/test-data/mock/module-info.java"); // 
some file called module-info.java
         Path def = Paths.get("src/test/test-data/mock/jar0.jar"); // any 
existing file
         ResolvePathsRequest<Path> request = 
ResolvePathsRequest.ofPaths(def).setMainModuleDescriptor(abc);
 
-        when(qdoxParser.fromSourcePath(abc))
+        when(sourceParser.fromSourcePath(abc))
                 
.thenReturn(JavaModuleDescriptor.newModule("abc").uses("tool").build());
         when(asmParser.getModuleDescriptor(def))
                 .thenReturn(JavaModuleDescriptor.newModule("def")
@@ -353,7 +353,7 @@
     }
 
     @Test
-    void testTransitiveProviders() throws Exception {
+    void transitiveProviders() throws Exception {
         Path abc = Paths.get("src/test/test-data/mock/module-info.java"); // 
some file called module-info.java
         Path def = Paths.get("src/test/test-data/mock/jar0.jar"); // any 
existing file
         Path ghi = Paths.get("src/test/test-data/mock/jar1.jar"); // any 
existing file
@@ -361,7 +361,7 @@
                 .setMainModuleDescriptor(abc)
                 .setIncludeAllProviders(true);
 
-        when(qdoxParser.fromSourcePath(abc))
+        when(sourceParser.fromSourcePath(abc))
                 .thenReturn(
                         
JavaModuleDescriptor.newModule("abc").requires("ghi").build());
         when(asmParser.getModuleDescriptor(def))
@@ -379,14 +379,14 @@
     }
 
     @Test
-    void testDontIncludeProviders() throws Exception {
+    void dontIncludeProviders() throws Exception {
         Path abc = Paths.get("src/test/test-data/mock/module-info.java"); // 
some file called module-info.java
         Path def = Paths.get("src/test/test-data/mock/jar0.jar"); // any 
existing file
         Path ghi = Paths.get("src/test/test-data/mock/jar1.jar"); // any 
existing file
         ResolvePathsRequest<Path> request =
                 ResolvePathsRequest.ofPaths(def, 
ghi).setMainModuleDescriptor(abc);
 
-        when(qdoxParser.fromSourcePath(abc))
+        when(sourceParser.fromSourcePath(abc))
                 .thenReturn(
                         
JavaModuleDescriptor.newModule("abc").requires("ghi").build());
         when(asmParser.getModuleDescriptor(def))
@@ -404,7 +404,7 @@
     }
 
     @Test
-    void testAllowAdditionalModulesWithoutMainDescriptor() throws Exception {
+    void allowAdditionalModulesWithoutMainDescriptor() throws Exception {
         Path def = Paths.get("src/test/test-data/mock/jar0.jar"); // any 
existing file
         Path ghi = Paths.get("src/test/test-data/mock/jar1.jar"); // any 
existing file
         ResolvePathsRequest<Path> request =
@@ -423,7 +423,7 @@
     }
 
     @Test
-    void testReuseModuleDescriptor() throws Exception {
+    void reuseModuleDescriptor() throws Exception {
         Path def = Paths.get("src/test/test-data/mock/jar0.jar");
 
         ResolvePathRequest<Path> request1 = ResolvePathRequest.ofPath(def);
@@ -441,9 +441,9 @@
     }
 
     @Test
-    void testParseModuleDescriptor() throws Exception {
+    void parseModuleDescriptor() throws Exception {
         Path descriptorPath = 
Paths.get("src/test/test-data/src.dir/module-info.java");
-        when(qdoxParser.fromSourcePath(descriptorPath))
+        when(sourceParser.fromSourcePath(descriptorPath))
                 .thenReturn(JavaModuleDescriptor.newModule("a.b.c").build());
 
         ResolvePathResult result = 
locationManager.parseModuleDescriptor(descriptorPath);
@@ -460,14 +460,14 @@
     }
 
     @Test
-    void testTransitiveStatic() throws Exception {
+    void transitiveStatic() throws Exception {
         Path moduleA = Paths.get("src/test/test-data/mock/module-info.java"); 
// some file called module-info.java
         Path moduleB = Paths.get("src/test/test-data/mock/jar0.jar"); // any 
existing file
         Path moduleC = Paths.get("src/test/test-data/mock/jar1.jar"); // any 
existing file
         ResolvePathsRequest<Path> request =
                 ResolvePathsRequest.ofPaths(moduleB, 
moduleC).setMainModuleDescriptor(moduleA);
 
-        when(qdoxParser.fromSourcePath(moduleA))
+        when(sourceParser.fromSourcePath(moduleA))
                 .thenReturn(JavaModuleDescriptor.newModule("moduleA")
                         .requires("moduleB")
                         .build());
@@ -486,7 +486,7 @@
     }
 
     @Test
-    void testDirectStatic() throws Exception {
+    void directStatic() throws Exception {
         Path moduleA = Paths.get("src/test/test-data/mock/module-info.java"); 
// some file called module-info.java
         Path moduleB = Paths.get("src/test/test-data/mock/jar0.jar"); // any 
existing file
         Path moduleC = Paths.get("src/test/test-data/mock/jar1.jar"); // any 
existing file
@@ -495,7 +495,7 @@
                 ResolvePathsRequest.ofPaths(moduleB, moduleC, 
moduleD).setMainModuleDescriptor(moduleA);
         // .setIncludeStatic( true );
 
-        when(qdoxParser.fromSourcePath(moduleA))
+        when(sourceParser.fromSourcePath(moduleA))
                 .thenReturn(JavaModuleDescriptor.newModule("moduleA")
                         .requires("moduleB")
                         .requires(Collections.singleton(JavaModifier.STATIC), 
"moduleD")
@@ -517,7 +517,7 @@
     }
 
     @Test
-    void testDuplicateModule() throws Exception {
+    void duplicateModule() throws Exception {
         Path moduleA = Paths.get("src/test/test-data/mock/module-info.java"); 
// some file called module-info.java
         Path moduleB = Paths.get("src/test/test-data/mock/jar0.jar"); // any 
existing file
         Path moduleC = Paths.get("src/test/test-data/mock/jar1.jar"); // any 
existing file
@@ -525,7 +525,7 @@
         ResolvePathsRequest<Path> request =
                 ResolvePathsRequest.ofPaths(moduleB, 
moduleC).setMainModuleDescriptor(moduleA);
 
-        when(qdoxParser.fromSourcePath(moduleA))
+        when(sourceParser.fromSourcePath(moduleA))
                 .thenReturn(JavaModuleDescriptor.newModule("moduleA")
                         .requires("anonymous")
                         .build());
@@ -547,7 +547,7 @@
     }
 
     @Test
-    void testStaticTransitive() throws Exception {
+    void staticTransitive() throws Exception {
         Path moduleA = Paths.get("src/test/test-data/mock/module-info.java"); 
// some file called module-info.java
         Path moduleB = Paths.get("src/test/test-data/mock/jar0.jar"); // any 
existing file
         Path moduleC = Paths.get("src/test/test-data/mock/jar1.jar"); // any 
existing file
@@ -555,7 +555,7 @@
         ResolvePathsRequest<Path> request =
                 ResolvePathsRequest.ofPaths(moduleB, moduleC, 
moduleD).setMainModuleDescriptor(moduleA);
 
-        when(qdoxParser.fromSourcePath(moduleA))
+        when(sourceParser.fromSourcePath(moduleA))
                 .thenReturn(JavaModuleDescriptor.newModule("moduleA")
                         .requires("moduleB")
                         .build());
@@ -588,7 +588,7 @@
         ResolvePathsRequest<Path> request = 
ResolvePathsRequest.ofPaths(moduleA, moduleB, moduleC)
                 .setMainModuleDescriptor(moduleA)
                 .setIncludeStatic(true);
-        when(qdoxParser.fromSourcePath(moduleA))
+        when(sourceParser.fromSourcePath(moduleA))
                 .thenReturn(JavaModuleDescriptor.newModule("moduleA")
                         .requires("moduleB")
                         .build());
@@ -615,7 +615,7 @@
         ResolvePathsRequest<Path> request = 
ResolvePathsRequest.ofPaths(moduleA, moduleB, moduleC, moduleD)
                 .setMainModuleDescriptor(moduleA)
                 .setIncludeStatic(true);
-        when(qdoxParser.fromSourcePath(moduleA))
+        when(sourceParser.fromSourcePath(moduleA))
                 .thenReturn(JavaModuleDescriptor.newModule("moduleA")
                         .requires("moduleB")
                         .build());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/ManifestModuleNameExtractorTest.java
 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/ManifestModuleNameExtractorTest.java
--- 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/ManifestModuleNameExtractorTest.java
   2025-04-05 11:30:41.000000000 +0200
+++ 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/ManifestModuleNameExtractorTest.java
   2026-08-19 10:11:21.000000000 +0200
@@ -29,29 +29,29 @@
     private ManifestModuleNameExtractor extractor = new 
ManifestModuleNameExtractor();
 
     @Test
-    void testNoManifestInJar() throws Exception {
+    void noManifestInJar() throws Exception {
         
assertNull(extractor.extract(Paths.get("src/test/test-data/jar.name/plexus-java-1.0.0-SNAPSHOT.jar")));
     }
 
     @Test
-    void testManifestInJar() throws Exception {
+    void manifestInJar() throws Exception {
         assertEquals(
                 "org.codehaus.plexus.languages.java",
                 
extractor.extract(Paths.get("src/test/test-data/jar.manifest.with/plexus-java-1.0.0-SNAPSHOT.jar")));
     }
 
     @Test
-    void testNoManifestInDir() throws Exception {
+    void noManifestInDir() throws Exception {
         
assertNull(extractor.extract(Paths.get("src/test/test-data/empty/out")));
     }
 
     @Test
-    void testEmptyManifestInDir() throws Exception {
+    void emptyManifestInDir() throws Exception {
         
assertNull(extractor.extract(Paths.get("src/test/test-data/manifest.without/out")));
     }
 
     @Test
-    void testManifestInDir() throws Exception {
+    void manifestInDir() throws Exception {
         assertEquals("auto.by.manifest", 
extractor.extract(Paths.get("src/test/test-data/dir.manifest.with/out")));
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/SourceModuleInfoParserTest.java
 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/SourceModuleInfoParserTest.java
--- 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/SourceModuleInfoParserTest.java
        2025-04-05 11:30:41.000000000 +0200
+++ 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/jpms/SourceModuleInfoParserTest.java
        2026-08-19 10:11:21.000000000 +0200
@@ -85,4 +85,20 @@
         assertArrayEquals(
                 new String[] {"com.example.foo.Impl"}, 
provides.providers().toArray(new String[0]));
     }
+
+    @Test
+    void doesNotParseReferencedSources() throws Exception {
+        JavaModuleDescriptor moduleDescriptor =
+                
parser.fromSourcePath(Paths.get("src/test/test-data/annotated-type-argument/module-info.java"));
+
+        assertEquals("annotated.type.argument", moduleDescriptor.name());
+        assertArrayEquals(
+                new String[] {"example.Service"}, 
moduleDescriptor.uses().toArray(new String[0]));
+
+        JavaProvides provides = moduleDescriptor.provides().iterator().next();
+        assertEquals("example.Service", provides.service());
+        assertArrayEquals(
+                new String[] {"example.ServiceImpl", 
"example.AlternativeServiceImpl"},
+                provides.providers().toArray(new String[0]));
+    }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/version/JavaClassVersionTest.java
 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/version/JavaClassVersionTest.java
--- 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/version/JavaClassVersionTest.java
   2025-04-05 11:30:41.000000000 +0200
+++ 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/version/JavaClassVersionTest.java
   2026-08-19 10:11:21.000000000 +0200
@@ -24,7 +24,7 @@
 
     @ParameterizedTest
     @MethodSource("provideClassFiles")
-    void testFilesClassVersions(Path filePath) {
+    void filesClassVersions(Path filePath) {
         String fileName = filePath.getFileName().toString();
         int javaVersion = 
Integer.parseInt(fileName.substring(fileName.indexOf("-") + 1, 
fileName.length() - 6));
         JavaClassfileVersion classVersion = JavaClassfileVersion.of(filePath);
@@ -47,7 +47,7 @@
     }
 
     @Test
-    void testJavaClassPreview() {
+    void javaClassPreview() {
         Path previewFile = 
Paths.get("src/test/test-data/classfile.version/helloworld-preview.class");
         JavaClassfileVersion previewClass = 
JavaClassfileVersion.of(previewFile);
         assertTrue(previewClass.isPreview());
@@ -56,7 +56,7 @@
     }
 
     @Test
-    void testJavaClassVersionMajor45orAbove() {
+    void javaClassVersionMajor45orAbove() {
         assertThrows(
                 IllegalArgumentException.class,
                 () -> new JavaClassfileVersion(44, 0),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/version/JavaVersionTest.java
 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/version/JavaVersionTest.java
--- 
old/plexus-languages-1.5.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/version/JavaVersionTest.java
        2025-04-05 11:30:41.000000000 +0200
+++ 
new/plexus-languages-1.6.0/plexus-java/src/test/java/org/codehaus/plexus/languages/java/version/JavaVersionTest.java
        2026-08-19 10:11:21.000000000 +0200
@@ -32,7 +32,7 @@
  */
 class JavaVersionTest {
     @Test
-    void testParse() {
+    void parse() {
         
assertThat(JavaVersion.parse("1.4").compareTo(JavaVersion.parse("1.4.2")))
                 .isNegative();
         
assertThat(JavaVersion.parse("1.4").compareTo(JavaVersion.parse("1.5"))).isNegative();
@@ -50,7 +50,7 @@
     }
 
     @Test
-    void testVersionNamingExamples() {
+    void versionNamingExamples() {
         // All GA (FCS) versions are ordered based on the standard 
dot-notation. For example: 1.3.0 < 1.3.0_01 < 1.3.1 <
         // 1.3.1_01.
         // Source: 
http://www.oracle.com/technetwork/java/javase/versioning-naming-139433.html
@@ -67,7 +67,7 @@
     }
 
     @Test
-    void testJEP223Short() {
+    void jep223Short() {
         // http://openjdk.java.net/jeps/223
         
assertThat(JavaVersion.parse("9-ea").compareTo(JavaVersion.parse("9"))).isNegative();
         
assertThat(JavaVersion.parse("9").compareTo(JavaVersion.parse("9.0.1"))).isNegative();
@@ -84,14 +84,14 @@
     }
 
     @Test
-    void testIsAtLeastString() {
+    void isAtLeastString() {
         JavaVersion base = JavaVersion.parse("7");
         assertTrue(base.isAtLeast("7"));
         assertFalse(base.isAtLeast("8"));
     }
 
     @Test
-    void testIsAtLeastVersion() {
+    void isAtLeastVersion() {
         // e.g. can I use the module-path, which is supported since java 9
         JavaVersion j9 = JavaVersion.parse("9");
         assertFalse(JavaVersion.parse("8").isAtLeast(j9));
@@ -99,14 +99,14 @@
     }
 
     @Test
-    void testIsBeforeString() {
+    void isBeforeString() {
         JavaVersion base = JavaVersion.parse("7");
         assertFalse(base.isBefore("7"));
         assertTrue(base.isBefore("8"));
     }
 
     @Test
-    void testIsBeforeStringVersion() {
+    void isBeforeStringVersion() {
         // e.g. can I use -XX:MaxPermSize, which has been removed in Java 9
         JavaVersion j9 = JavaVersion.parse("9");
         assertTrue(JavaVersion.parse("8").isBefore(j9));
@@ -114,7 +114,7 @@
     }
 
     @Test
-    void testEquals() {
+    void equals() {
         JavaVersion seven = JavaVersion.parse("7");
         JavaVersion other = JavaVersion.parse("7");
 
@@ -126,7 +126,7 @@
     }
 
     @Test
-    void testHascode() {
+    void hascode() {
         JavaVersion seven = JavaVersion.parse("7");
         JavaVersion other = JavaVersion.parse("7");
 
@@ -141,7 +141,7 @@
     }
 
     @Test
-    void testAsMajor() {
+    void asMajor() {
         assertEquals(JavaVersion.parse("2"), 
JavaVersion.parse("1.2").asMajor());
         assertEquals(JavaVersion.parse("5.0"), 
JavaVersion.parse("5.0").asMajor());
         // only shift one time
@@ -149,13 +149,13 @@
     }
 
     @Test
-    void testAsMajorEquals() {
+    void asMajorEquals() {
         JavaVersion version = JavaVersion.parse("1.2");
         assertEquals(version, version.asMajor());
     }
 
     @Test
-    void testValueWithGroups() {
+    void valueWithGroups() {
         assertThat(JavaVersion.parse("1").getValue(1)).isEqualTo("1");
         assertThat(JavaVersion.parse("1").getValue(2)).isEqualTo("1.0");
         assertThat(JavaVersion.parse("1").getValue(3)).isEqualTo("1.0.0");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/plexus-languages-1.5.0/plexus-java/src/test/test-data/annotated-type-argument/example/AlternativeServiceImpl.java
 
new/plexus-languages-1.6.0/plexus-java/src/test/test-data/annotated-type-argument/example/AlternativeServiceImpl.java
--- 
old/plexus-languages-1.5.0/plexus-java/src/test/test-data/annotated-type-argument/example/AlternativeServiceImpl.java
       1970-01-01 01:00:00.000000000 +0100
+++ 
new/plexus-languages-1.6.0/plexus-java/src/test/test-data/annotated-type-argument/example/AlternativeServiceImpl.java
       2026-08-19 10:11:21.000000000 +0200
@@ -0,0 +1,8 @@
+package example;
+
+import java.util.List;
+
+public class AlternativeServiceImpl implements Service<Object> {
+    @Override
+    public void accept(List<@Nullable String> values) {}
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/plexus-languages-1.5.0/plexus-java/src/test/test-data/annotated-type-argument/example/Nullable.java
 
new/plexus-languages-1.6.0/plexus-java/src/test/test-data/annotated-type-argument/example/Nullable.java
--- 
old/plexus-languages-1.5.0/plexus-java/src/test/test-data/annotated-type-argument/example/Nullable.java
     1970-01-01 01:00:00.000000000 +0100
+++ 
new/plexus-languages-1.6.0/plexus-java/src/test/test-data/annotated-type-argument/example/Nullable.java
     2026-08-19 10:11:21.000000000 +0200
@@ -0,0 +1,7 @@
+package example;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Target;
+
+@Target(ElementType.TYPE_USE)
+public @interface Nullable {}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/plexus-languages-1.5.0/plexus-java/src/test/test-data/annotated-type-argument/example/Service.java
 
new/plexus-languages-1.6.0/plexus-java/src/test/test-data/annotated-type-argument/example/Service.java
--- 
old/plexus-languages-1.5.0/plexus-java/src/test/test-data/annotated-type-argument/example/Service.java
      1970-01-01 01:00:00.000000000 +0100
+++ 
new/plexus-languages-1.6.0/plexus-java/src/test/test-data/annotated-type-argument/example/Service.java
      2026-08-19 10:11:21.000000000 +0200
@@ -0,0 +1,7 @@
+package example;
+
+import java.util.List;
+
+public interface Service<T extends @Nullable Object> {
+    void accept(List<@Nullable String> values);
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/plexus-languages-1.5.0/plexus-java/src/test/test-data/annotated-type-argument/example/ServiceImpl.java
 
new/plexus-languages-1.6.0/plexus-java/src/test/test-data/annotated-type-argument/example/ServiceImpl.java
--- 
old/plexus-languages-1.5.0/plexus-java/src/test/test-data/annotated-type-argument/example/ServiceImpl.java
  1970-01-01 01:00:00.000000000 +0100
+++ 
new/plexus-languages-1.6.0/plexus-java/src/test/test-data/annotated-type-argument/example/ServiceImpl.java
  2026-08-19 10:11:21.000000000 +0200
@@ -0,0 +1,8 @@
+package example;
+
+import java.util.List;
+
+public class ServiceImpl implements Service<Object> {
+    @Override
+    public void accept(List<@Nullable String> values) {}
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/plexus-languages-1.5.0/plexus-java/src/test/test-data/annotated-type-argument/module-info.java
 
new/plexus-languages-1.6.0/plexus-java/src/test/test-data/annotated-type-argument/module-info.java
--- 
old/plexus-languages-1.5.0/plexus-java/src/test/test-data/annotated-type-argument/module-info.java
  1970-01-01 01:00:00.000000000 +0100
+++ 
new/plexus-languages-1.6.0/plexus-java/src/test/test-data/annotated-type-argument/module-info.java
  2026-08-19 10:11:21.000000000 +0200
@@ -0,0 +1,4 @@
+module annotated.type.argument {
+    uses example.Service;
+    provides example.Service with example.ServiceImpl, 
example.AlternativeServiceImpl;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/plexus-languages-1.5.0/pom.xml 
new/plexus-languages-1.6.0/pom.xml
--- old/plexus-languages-1.5.0/pom.xml  2025-04-05 11:30:41.000000000 +0200
+++ new/plexus-languages-1.6.0/pom.xml  2026-08-19 10:11:21.000000000 +0200
@@ -5,11 +5,11 @@
   <parent>
     <groupId>org.codehaus.plexus</groupId>
     <artifactId>plexus</artifactId>
-    <version>20</version>
+    <version>27</version>
   </parent>
 
   <artifactId>plexus-languages</artifactId>
-  <version>1.5.0</version>
+  <version>1.6.0</version>
   <packaging>pom</packaging>
 
   <name>Plexus Languages</name>
@@ -22,7 +22,7 @@
   <scm>
     
<connection>scm:git:https://github.com/codehaus-plexus/plexus-languages.git</connection>
     
<developerConnection>scm:git:https://github.com/codehaus-plexus/plexus-languages.git</developerConnection>
-    <tag>plexus-languages-1.5.0</tag>
+    <tag>plexus-languages-1.6.0</tag>
     
<url>https://github.com/codehaus-plexus/plexus-languages/tree/plexus-languages</url>
   </scm>
   <issueManagement>
@@ -42,7 +42,7 @@
 
   <properties>
     
<scm.url>scm:git:https://github.com/codehaus-plexus/plexus-languages.git</scm.url>
-    
<project.build.outputTimestamp>2025-04-05T09:30:36Z</project.build.outputTimestamp>
+    
<project.build.outputTimestamp>2026-08-19T08:11:15Z</project.build.outputTimestamp>
   </properties>
 
   <build>
@@ -58,7 +58,6 @@
         <plugin>
           <groupId>com.diffplug.spotless</groupId>
           <artifactId>spotless-maven-plugin</artifactId>
-          <version>${spotless-maven-plugin.version}</version>
           <configuration>
             <java>
               <includes>

++++++ plexus-languages-atinject.patch ++++++
--- /var/tmp/diff_new_pack.6tkJSl/_old  2026-09-29 17:50:59.703251896 +0200
+++ /var/tmp/diff_new_pack.6tkJSl/_new  2026-09-29 17:50:59.706252021 +0200
@@ -2,7 +2,7 @@
 +++ b/plexus-java/src/main/java9/module-info.java
 @@ -19,6 +19,7 @@
  module org.codehaus.plexus.languages.java {
-     requires com.thoughtworks.qdox;
+     requires com.github.javaparser.core;
      requires org.objectweb.asm;
 +    requires java.inject;
  

Reply via email to