[ 
https://issues.apache.org/jira/browse/MNG-7007?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17859646#comment-17859646
 ] 

Guillaume Nodet commented on MNG-7007:
--------------------------------------

We can remove those, but I think it's low priority, since the goal would be to 
migrate plugins to the new API, which means all those classes will be 
completely deprecated at some point. So if this helps cleaning things, we can 
certainly do it.

> Remove documented backward compatibility
> ----------------------------------------
>
>                 Key: MNG-7007
>                 URL: https://issues.apache.org/jira/browse/MNG-7007
>             Project: Maven
>          Issue Type: Task
>    Affects Versions: 3.6.3
>            Reporter: Michael Osipov
>            Priority: Major
>
> These spots document backward compatibility:
> {noformat}
> ./maven-core/src/main/java/org/apache/maven/execution/MavenSession.java:    
> // Backward compat
> ./maven-core/src/main/java/org/apache/maven/plugin/DefaultBuildPluginManager.java:
>             // This is necessary to avoid creating compatibility problems for 
> existing plugins that use
> ./maven-core/src/main/java/org/apache/maven/plugin/LegacySupport.java: * 
> Helps to provide backward-compatibility with plugins that use legacy 
> components. <strong>Warning:</strong> This is an
> ./maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultLegacySupport.java:
>  * Helps to provide backward-compatibility with plugins that use legacy 
> components. <strong>Warning:</strong> This is an
> ./maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuildingHelper.java:
>                  * This is purely for backward-compat with 2.x where 
> <extensions> consisting of a single artifact where
> ./maven-core/src/main/java/org/apache/maven/project/DuplicateArtifactAttachmentException.java:
>  * Currently, this modification would create compatibility problems for 
> existing plugins.
> ./maven-core/src/main/java/org/apache/maven/project/MavenProject.java:     * 
> @throws DuplicateArtifactAttachmentException will never happen but leave it 
> for backward compatibility
> ./maven-core/src/main/java/org/apache/maven/project/artifact/DefaultMetadataSource.java:
>  * This realizes the metadata source via the default hint to provide 
> backward-compat with Maven 2.x whose Plexus version
> ./maven-core/src/main/java/org/apache/maven/toolchain/java/DefaultJavaToolChain.java:
>  * Provides backwards compatibility with Maven 3.2.3 and earlier. Clients 
> that do not require compatibility with Maven
> ./maven-core/src/main/java/org/apache/maven/toolchain/java/DefaultJavaToolChain.java:
>  * @deprecated clients that do not require compatibility with Maven 3.2.3 and 
> earlier should link to
> ./maven-core/src/main/java/org/apache/maven/toolchain/java/JavaToolchainFactory.java:
>         // use DefaultJavaToolChain for compatibility with maven 3.2.3 and 
> earlier
> ./maven-model-builder/src/main/java/org/apache/maven/model/building/ModelBuildingRequest.java:
>      * Denotes validation as performed by Maven 2.0. This validation level is 
> meant as a compatibility mode to allow
> ./maven-model-builder/src/main/java/org/apache/maven/model/inheritance/DefaultInheritanceAssembler.java:
>              * sake of backward-compat with 2.x (MNG-5000). In general, it is 
> wrong to
> ./maven-model-builder/src/main/java/org/apache/maven/model/normalization/DefaultModelNormalizer.java:
>          * NOTE: This is primarily to keep backward-compat with Maven 2.x 
> which did not validate that dependencies are
> ./maven-model-builder/src/main/java/org/apache/maven/model/normalization/DefaultModelNormalizer.java:
>          * the first occurrence. So when we're in lenient/compat mode, we 
> have to deal with such broken POMs and mimic
> ./maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java:
>                      * order to don't break backward-compat with those, only 
> warn but don't error out.
> ./maven-model-builder/src/main/java/org/apache/maven/model/validation/DefaultModelValidator.java:
>             // note this will not be hit for Maven 1.x project.xml as it is 
> an incompatible schema
> {noformat}
> They need to be reviewed one by one and removed if possible.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to