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

Tim te Beek commented on MNG-6825:
----------------------------------

Thank you both for weighing in here; helps to have the goal so clearly stated. 
As said this could be fun to dive into for me, but I don't want to burden 
anyone with review work, especially when these changes are applied at scale. So 
my proposal would be that I start small, but ideally do apply multiple changes 
per pull request, rather than have lots of small pull requests per repository.

My takeaways from above are:
 * remove org.codehaus.plexus.util.StringUtils
 * remove maven-shared-utils
 * prefer JDK methods where possible
 * fall back onto commons-* where there's no equivalent in JDK

Are those takeaways correct?

And could you indicate for which of these repositories you'd like me to create 
a first few pull requests?

apache/maven-acr-plugin @ master
apache/maven-antrun-plugin @ master
apache/maven-archetype @ master
apache/maven-archetypes @ master
apache/maven-archiver @ master
apache/maven-artifact-plugin @ master
apache/maven-artifact-resolver @ master
apache/maven-artifact-transfer @ master
apache/maven-assembly-plugin @ master
apache/maven-build-cache-extension @ master
apache/maven-changelog-plugin @ master
apache/maven-changes-plugin @ master
apache/maven-checkstyle-plugin @ master
apache/maven-clean-plugin @ master
apache/maven-common-artifact-filters @ master
apache/maven-compiler-plugin @ master
apache/maven-dependency-analyzer @ master
apache/maven-dependency-plugin @ master
apache/maven-dependency-tree @ master
apache/maven-deploy-plugin @ master
apache/maven-doap-plugin @ master
apache/maven-docck-plugin @ master
apache/maven-doxia-book-maven-plugin @ master
apache/maven-doxia-book-renderer @ master
apache/maven-doxia-converter @ master
apache/maven-doxia-sitetools @ master
apache/maven-doxia @ master
apache/maven-ear-plugin @ master
apache/maven-ejb-plugin @ master
apache/maven-enforcer @ master
apache/maven-file-management @ master
apache/maven-filtering @ master
apache/maven-gpg-plugin @ master
apache/maven-help-plugin @ master
apache/maven-indexer @ master
apache/maven-install-plugin @ master
apache/maven-integration-testing @ master
apache/maven-invoker-plugin @ master
apache/maven-invoker @ master
apache/maven-jar-plugin @ master
apache/maven-jarsigner-plugin @ master
apache/maven-jarsigner @ master
apache/maven-javadoc-plugin @ master
apache/maven-jdeprscan-plugin @ master
apache/maven-jdeps-plugin @ master
apache/maven-jlink-plugin @ master
apache/maven-jmod-plugin @ master
apache/maven-mapping @ master
apache/maven-patch-plugin @ master
apache/maven-pdf-plugin @ master
apache/maven-plugin-testing @ master
apache/maven-plugin-tools @ master
apache/maven-pmd-plugin @ master
apache/maven-project-info-reports-plugin @ master
apache/maven-project-utils @ master
apache/maven-rar-plugin @ master
apache/maven-release @ master
apache/maven-remote-resources-plugin @ master
apache/maven-reporting-api @ master
apache/maven-reporting-exec @ master
apache/maven-reporting-impl @ master
apache/maven-resolver-ant-tasks @ master
apache/maven-resolver @ master
apache/maven-resources-plugin @ master
apache/maven-runtime @ master
apache/maven-scm-publish-plugin @ master
apache/maven-scm @ master
apache/maven-script-interpreter @ master
apache/maven-scripting-plugin @ master
apache/maven-shade-plugin @ master
apache/maven-shared-incremental @ master
apache/maven-shared-io @ master
apache/maven-shared-jar @ master
apache/maven-shared-utils @ master
apache/maven-site-plugin @ master
apache/maven-source-plugin @ master
apache/maven-stage-plugin @ master
apache/maven-surefire @ master
apache/maven-toolchains-plugin @ master
apache/maven-verifier-plugin @ master
apache/maven-verifier @ master
apache/maven-wagon @ master
apache/maven-war-plugin @ master
apache/maven-wrapper @ master
apache/maven @ master

I'd thought to document any work I do here, and build up a repeatable set of 
recipes that can then later be applied to all repositories if so desired.

> Cleaning Up dependencies 
> plexus-utils/maven-shared-utils/commons-lang3/commons-io
> ---------------------------------------------------------------------------------
>
>                 Key: MNG-6825
>                 URL: https://issues.apache.org/jira/browse/MNG-6825
>             Project: Maven
>          Issue Type: Improvement
>          Components: Bootstrap & Build
>    Affects Versions: 3.6.3
>            Reporter: Karl Heinz Marbaise
>            Assignee: Karl Heinz Marbaise
>            Priority: Minor
>             Fix For: 4.0.x-candidate
>
>
> Experiment to see if we can get rid of commons-lang3 dependency.
> * Identified code duplication between:
> ** {{org.apache.commons.lang3.StringUtils}} from {{commons-lang3}} (501879 
> Bytes commons-lang3-3.8.1.jar)
> ** {{org.codehaus.plexus.util.StringUtil}} from {{plexus-utils}} (261801 
> Bytes plexus-utils-3.2.1.jar)
> ** {{org.apache.maven.shared.utils}} from {{maven-shared-utils}} (166562 
> Bytes maven-shared-utils-3.2.1.jar)
> ** We should replace the self implemented with 
> {{org.codehaus.plexus.util.StringUtil}}. or with {{maven-shared-utils}}
> * {{commons-io}} usage by {{maven-shared-utils}} (208700 Bytes 
> commons-io-2.5.jar)



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

Reply via email to