laeubi opened a new issue, #11299:
URL: https://github.com/apache/maven/issues/11299

   ### New feature, improvement proposal
   
   Previously maven-core has contained some dependencies in compile scope for 
example guice and javax.inject.
   
   ```
   <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-core</artifactId>
        <version>3.9.11</version>
   </dependency>
   ```
   results in the following list when used as a dependency:
   
   ```
   The following files have been resolved:
      org.apache.maven:maven-core:jar:3.9.11:compile -- module maven.core (auto)
      org.apache.maven:maven-model:jar:3.9.11:compile -- module maven.model 
(auto)
      org.apache.maven:maven-settings:jar:3.9.11:compile -- module 
maven.settings (auto)
      org.apache.maven:maven-settings-builder:jar:3.9.11:compile -- module 
maven.settings.builder (auto)
      org.codehaus.plexus:plexus-sec-dispatcher:jar:2.0:compile -- module 
plexus.sec.dispatcher (auto)
      org.codehaus.plexus:plexus-cipher:jar:2.0:compile -- module plexus.cipher 
(auto)
      org.apache.maven:maven-builder-support:jar:3.9.11:compile -- module 
maven.builder.support (auto)
      org.apache.maven:maven-repository-metadata:jar:3.9.11:compile -- module 
maven.repository.metadata (auto)
      org.apache.maven:maven-artifact:jar:3.9.11:compile -- module 
maven.artifact (auto)
      org.apache.maven:maven-plugin-api:jar:3.9.11:compile -- module 
maven.plugin.api (auto)
      org.apache.maven:maven-model-builder:jar:3.9.11:compile -- module 
maven.model.builder (auto)
      org.apache.maven:maven-resolver-provider:jar:3.9.11:compile -- module 
maven.resolver.provider (auto)
      org.apache.maven.resolver:maven-resolver-impl:jar:1.9.24:compile -- 
module org.apache.maven.resolver.impl [auto]
      org.apache.maven.resolver:maven-resolver-named-locks:jar:1.9.24:compile 
-- module org.apache.maven.resolver.named.locks [auto]
      org.apache.maven.resolver:maven-resolver-api:jar:1.9.24:compile -- module 
org.apache.maven.resolver [auto]
      org.apache.maven.resolver:maven-resolver-spi:jar:1.9.24:compile -- module 
org.apache.maven.resolver.spi [auto]
      org.apache.maven.resolver:maven-resolver-util:jar:1.9.24:compile -- 
module org.apache.maven.resolver.util [auto]
      org.apache.maven.shared:maven-shared-utils:jar:3.4.2:compile -- module 
maven.shared.utils (auto)
      org.eclipse.sisu:org.eclipse.sisu.plexus:jar:0.9.0.M4:compile -- module 
org.eclipse.sisu.plexus (auto)
      org.eclipse.sisu:org.eclipse.sisu.inject:jar:0.9.0.M4:compile -- module 
org.eclipse.sisu.inject (auto)
      org.ow2.asm:asm:jar:9.8:compile -- module org.objectweb.asm
      com.google.inject:guice:jar:classes:5.1.0:compile -- module 
com.google.guice [auto]
      aopalliance:aopalliance:jar:1.0:compile -- module aopalliance (auto)
      com.google.guava:guava:jar:33.4.8-jre:compile -- module com.google.common
      org.jspecify:jspecify:jar:1.0.0:compile -- module org.jspecify
      com.google.guava:failureaccess:jar:1.0.3:compile -- module 
com.google.common.util.concurrent.internal
      javax.inject:javax.inject:jar:1:compile -- module javax.inject (auto)
      org.codehaus.plexus:plexus-utils:jar:3.6.0:compile -- module plexus.utils 
(auto)
      org.codehaus.plexus:plexus-classworlds:jar:2.9.0:compile -- module 
plexus.classworlds (auto)
      org.codehaus.plexus:plexus-interpolation:jar:1.28:compile -- module 
plexus.interpolation (auto)
      org.codehaus.plexus:plexus-component-annotations:jar:2.2.0:compile -- 
module plexus.component.annotations (auto)
      org.slf4j:slf4j-api:jar:1.7.36:compile -- module org.slf4j [auto]
   
   ```
   
   If I now upgrade and change the version to 
   
   ```
   <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-core</artifactId>
        <version>4.0.0-rc-4</version>
   </dependency>
   <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-compat</artifactId>
        <version>4.0.0-rc-4</version>
   </dependency>
   ```
   
   I would expect no compile / runtime problems but e.g. I get compile problems 
because `javax.inject` is missing and at least guice seems to be required for 
using maven-plugin-testing, there are might be even more.
   
   As it is quite cumbersome to find out what might be missing, I would like to 
ask to add all dependencies that where previously provided as compile time as 
well in the `maven-compat` layer for maximum compatibility. These should then 
explicitly being marked with a comment `<!-- only for backward compatibility 
-->` to prevent them from being accidentally being removed and to make it 
easier for people to se what they might need during the migration. 
   
   For reference I made a `dependency:list` of the current state, 
`slf4j-api:1.7.36` can be seen as already there as the 2.x variant is compile 
compatible, but the rest needs to be checked and possible added added:
   
   ```
   The following files have been resolved:
      org.apache.maven:maven-core:jar:4.0.0-rc-4:compile -- module maven.core 
(auto)
      org.apache.maven:maven-api-annotations:jar:4.0.0-rc-4:compile -- module 
maven.api.annotations (auto)
      org.apache.maven:maven-api-core:jar:4.0.0-rc-4:compile -- module 
maven.api.core (auto)
      org.apache.maven:maven-api-di:jar:4.0.0-rc-4:compile -- module 
maven.api.di (auto)
      org.apache.maven:maven-api-metadata:jar:4.0.0-rc-4:compile -- module 
maven.api.metadata (auto)
      org.apache.maven:maven-api-model:jar:4.0.0-rc-4:compile -- module 
maven.api.model (auto)
      org.apache.maven:maven-api-plugin:jar:4.0.0-rc-4:compile -- module 
maven.api.plugin (auto)
      org.apache.maven:maven-api-settings:jar:4.0.0-rc-4:compile -- module 
maven.api.settings (auto)
      org.apache.maven:maven-api-spi:jar:4.0.0-rc-4:compile -- module 
maven.api.spi (auto)
      org.apache.maven:maven-api-toolchain:jar:4.0.0-rc-4:compile -- module 
maven.api.toolchain (auto)
      org.apache.maven:maven-api-xml:jar:4.0.0-rc-4:compile -- module 
maven.api.xml (auto)
      org.apache.maven:maven-di:jar:4.0.0-rc-4:compile -- module maven.di (auto)
      org.apache.maven:maven-impl:jar:4.0.0-rc-4:compile -- module maven.impl 
(auto)
      org.apache.maven:maven-support:jar:4.0.0-rc-4:compile -- module 
maven.support (auto)
      com.fasterxml.woodstox:woodstox-core:jar:7.1.1:compile -- module 
com.ctc.wstx
      org.codehaus.woodstox:stax2-api:jar:4.2.2:compile -- module 
org.codehaus.stax2
      org.apache.maven.resolver:maven-resolver-named-locks:jar:2.0.9:compile -- 
module org.apache.maven.resolver.named.locks [auto]
      
org.apache.maven.resolver:maven-resolver-connector-basic:jar:2.0.9:compile -- 
module org.apache.maven.resolver.connector.basic [auto]
      org.codehaus.plexus:plexus-sec-dispatcher:jar:4.1.0:compile -- module 
plexus.sec.dispatcher (auto)
      org.apache.maven:maven-jline:jar:4.0.0-rc-4:compile -- module maven.jline 
(auto)
      org.jline:jline-reader:jar:3.30.4:compile -- module org.jline.reader 
[auto]
      org.jline:jline-style:jar:3.30.4:compile -- module org.jline.style [auto]
      org.jline:jline-builtins:jar:3.30.4:compile -- module org.jline.builtins 
[auto]
      org.jline:jline-console:jar:3.30.4:compile -- module org.jline.console 
[auto]
      org.jline:jline-console-ui:jar:3.30.4:compile -- module 
org.jline.consoleui [auto]
      org.jline:jline-terminal:jar:3.30.4:compile -- module org.jline.terminal 
[auto]
      org.jline:jline-native:jar:3.30.4:compile -- module org.jline.nativ [auto]
      org.jline:jline-terminal-jni:jar:3.30.4:compile -- module 
org.jline.terminal.jni [auto]
      org.jline:jansi-core:jar:3.30.4:compile -- module org.jansi.core [auto]
      org.apache.maven:maven-logging:jar:4.0.0-rc-4:compile -- module 
maven.logging (auto)
      org.apache.maven:maven-xml:jar:4.0.0-rc-4:compile -- module maven.xml 
(auto)
      org.apache.maven:maven-artifact:jar:4.0.0-rc-4:compile -- module 
maven.artifact (auto)
      org.apache.maven:maven-model:jar:4.0.0-rc-4:compile -- module maven.model 
(auto)
      org.apache.maven:maven-model-builder:jar:4.0.0-rc-4:compile -- module 
maven.model.builder (auto)
      org.apache.maven:maven-builder-support:jar:4.0.0-rc-4:compile -- module 
maven.builder.support (auto)
      org.apache.maven:maven-plugin-api:jar:4.0.0-rc-4:compile -- module 
maven.plugin.api (auto)
      org.eclipse.sisu:org.eclipse.sisu.plexus:jar:0.9.0.M4:compile -- module 
org.eclipse.sisu.plexus (auto)
      org.apache.maven:maven-repository-metadata:jar:4.0.0-rc-4:compile -- 
module maven.repository.metadata (auto)
      org.apache.maven:maven-settings:jar:4.0.0-rc-4:compile -- module 
maven.settings (auto)
      org.apache.maven:maven-toolchain-model:jar:4.0.0-rc-4:compile -- module 
maven.toolchain.model (auto)
      org.apache.maven.resolver:maven-resolver-api:jar:2.0.9:compile -- module 
org.apache.maven.resolver
      org.apache.maven.resolver:maven-resolver-spi:jar:2.0.9:compile -- module 
org.apache.maven.resolver.spi
      com.google.code.gson:gson:jar:2.13.1:compile -- module com.google.gson
      org.apache.maven.resolver:maven-resolver-util:jar:2.0.9:compile -- module 
org.apache.maven.resolver.util
      org.apache.maven.resolver:maven-resolver-impl:jar:2.0.9:compile -- module 
org.apache.maven.resolver.impl [auto]
      org.slf4j:slf4j-api:jar:2.0.17:compile -- module org.slf4j
      org.codehaus.plexus:plexus-classworlds:jar:2.9.0:compile -- module 
plexus.classworlds (auto)
      org.codehaus.plexus:plexus-xml:jar:4.1.0:compile -- module plexus.xml 
(auto)
      org.apache.maven:maven-compat:jar:4.0.0-rc-4:compile -- module 
maven.compat (auto)
      org.apache.maven:maven-settings-builder:jar:4.0.0-rc-4:compile -- module 
maven.settings.builder (auto)
      org.apache.maven:maven-toolchain-builder:jar:4.0.0-rc-4:compile -- module 
maven.toolchain.builder (auto)
      org.apache.maven:maven-resolver-provider:jar:4.0.0-rc-4:compile -- module 
maven.resolver.provider (auto)
      org.apache.maven.resolver:maven-resolver-transport-file:jar:2.0.9:compile 
-- module org.apache.maven.resolver.transport.file [auto]
      
org.apache.maven.resolver:maven-resolver-transport-apache:jar:2.0.9:compile -- 
module org.apache.maven.resolver.transport.apache [auto]
      org.apache.httpcomponents:httpclient:jar:4.5.14:compile -- module 
org.apache.httpcomponents.httpclient [auto]
      org.apache.httpcomponents:httpcore:jar:4.4.16:compile -- module 
org.apache.httpcomponents.httpcore [auto]
      commons-codec:commons-codec:jar:1.18.0:runtime -- module 
org.apache.commons.codec
      org.slf4j:jcl-over-slf4j:jar:2.0.17:runtime -- module 
org.apache.commons.logging
      org.codehaus.plexus:plexus-interactivity-api:jar:1.4:compile -- module 
plexus.interactivity.api (auto)
      org.codehaus.plexus:plexus-interpolation:jar:1.28:compile -- module 
plexus.interpolation (auto)
      org.apache.maven.wagon:wagon-provider-api:jar:3.5.3:compile -- module 
wagon.provider.api (auto)
      org.codehaus.plexus:plexus-utils:jar:4.0.2:compile -- module plexus.utils 
(auto)
      org.codehaus.plexus:plexus-component-annotations:jar:2.1.0:compile -- 
module plexus.component.annotations (auto)
   ```
   
   


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to