jira-importer opened a new issue, #81:
URL: https://github.com/apache/maven-apache-resources/issues/81

   
**[NRYet](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=JIRAUSER281746)**
 opened 
**[MASFRES-66](https://issues.apache.org/jira/browse/MASFRES-66?redirect=false)**
 and commented
   
   > Dear Maven maintainers, we are studying Maven dependency specifications 
and we would like to offer several possible improvements for Maven.
   > 
   > (1) The scope management of Maven is complicated and hard to distinguish. 
Maven maintained 6 scopes (i.e., {_}compile{_}, {_}runtime{_}, {_}provided{_}, 
{_}system{_}, {_}test{_}, and {_}import{_}). Compare to newer package managers 
such as NPM, which only has two scopes (i.e., {_}dependencies{_}, 
{_}devdependencies{_}), Maven has too many types of scopes, which makes it more 
difficult for users to understand. We went over all POMs on the Maven Central 
(around 8M artifacts, collected in March 2022) and count the frequency of all 
types of scope. Some of the scopes are rarely used. Only 0.35% of POMs in the 
Maven Center used _system_ scope. Also, _system_ scope is similar to _provided_ 
scope, and _import_ scope can hardly be regarded as a dependency scope. We 
suggest simplifying the types of scopes by merging _system_ into _provided_ and 
removing {_}import{_}.
   > 
   > (2) In the documentation of Default Artifact Handlers 
(https://maven.apache.org/ref/3.9.3/maven-core/artifact-handlers.html), _type_ 
and _classifier_ should introduce more commonly used values as their default 
value to provide better examples. We found that the default values are rarely 
used and are not good examples for users to understand the use of the settings. 
Setting commonly used values as default can help users understand the usage of 
the settings. We went over all POMs on the Maven Central (around 8M artifacts, 
collected in March 2022) and count the frequency of all possible values of 
classifier and type. According to our research, in {_}classifier{_}, the 
default values have low frequencies, including _tests_ (1.05%), _javadoc_ 
(0.35%), _sources_ (0.29%), and {_}client{_}(0.01%). More commonly used values 
are _features_ (1.20%), _linux-x86_64_ (0.34%), and _osx-x86_64_ (0.27%). As 
for type, the top default values are _pom_ (4.38%), _test-jar_ (2.85%), _war_ 
(1.08%) and
  the rest of the values are all below 0.1%. Other common examples are _esa_ 
(2.53%), _zip_ (1.88%), and _xml_ (1.31%).
   
   
   
   ---
   No further details from 
[MASFRES-66](https://issues.apache.org/jira/browse/MASFRES-66?redirect=false)


-- 
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: issues-unsubscr...@maven.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to