1) I use “import” scope to define BOMs. 2) (I’m not a maintainer) I believe your pull request to enhance document would be welcomed and will be a good start point for the discussion.
Regards, Tomo On Sat, Jul 1, 2023 at 02:11 #ZHAO LIDA# <lida...@e.ntu.edu.sg.invalid> wrote: > 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%). > > > Regards, > > NTU CSL > > -- Regards, Tomo