You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Michael Osipov (Jira)" <ji...@apache.org> on 2020/10/25 20:02:00 UTC

[jira] [Created] (MNG-7007) Remove documented backward compatibility

Michael Osipov created MNG-7007:
-----------------------------------

             Summary: 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


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/lifecycle/DefaultLifecycleExecutor.java:    // NOTE: Backward-compat with maven-help-plugin:2.1
./maven-core/src/main/java/org/apache/maven/lifecycle/mapping/Lifecycle.java:     * NOTE: This exists merely for backward-compat with legacy-style lifecycle definitions and allows configuration
./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/plugin/internal/PluginDependencyResolutionListener.java: * core wagon versions. This is a hack to provide backward-compat with Maven 2 (MNG-4528, MNG-4561).
./maven-core/src/main/java/org/apache/maven/plugin/internal/WagonExcluder.java: * core wagon versions. This is a hack to provide backward-compat with Maven 2 (MNG-4528, MNG-4561).
./maven-core/src/main/java/org/apache/maven/plugin/version/internal/DefaultPluginVersionResolver.java:            logger.debug( "Ignoring incompatible plugin version " + version + ": " + e.getMessage() );
./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-embedder/src/main/java/org/apache/maven/cli/CLIManager.java:        // Adding this back in for compatibility with the verifier that hard codes this option.
./maven-embedder/src/main/java/org/apache/maven/cli/CLIManager.java:        options.addOption( Option.builder( "npr" ).longOpt( "no-plugin-registry" ).desc( "Ineffective, only kept for backward compatibility" ).build() );
./maven-embedder/src/main/java/org/apache/maven/cli/CLIManager.java:        options.addOption( Option.builder( "cpu" ).longOpt( "check-plugin-updates" ).desc( "Ineffective, only kept for backward compatibility" ).build() );
./maven-embedder/src/main/java/org/apache/maven/cli/CLIManager.java:        options.addOption( Option.builder( "up" ).longOpt( "update-plugins" ).desc( "Ineffective, only kept for backward compatibility" ).build() );
./maven-embedder/src/main/java/org/apache/maven/cli/CLIManager.java:        options.addOption( Option.builder( "npu" ).longOpt( "no-plugin-updates" ).desc( "Ineffective, only kept for backward compatibility" ).build() );
./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.3.4#803005)