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

ASF GitHub Bot commented on MNG-8026:
-------------------------------------

gnodet commented on code in PR #1391:
URL: https://github.com/apache/maven/pull/1391#discussion_r1466288875


##########
api/maven-api-core/src/main/java/org/apache/maven/api/Artifact.java:
##########
@@ -105,6 +105,14 @@ default String key() {
      */
     boolean isSnapshot();
 
+    /**
+     * The artifact properties.
+     *
+     * @return the artifact properties, never {@code null}
+     */
+    @Nonnull
+    ArtifactProperties getArtifactProperties();

Review Comment:
   > Side note: the long time ago pattern of doing pom for deps is still 
accurate today and bom created more mess than helped there - but unrelated to 
the PR, just wanted to highlight this is still used for goods and not legacy.
   > 
   > Ok but it means we need a dependency handler as we have an artifact 
handler (think it is a bit complex). Ultimately, do we need dependency outside 
the model (literally ) or can it not just be artifacts? I understand what you 
mean but it seems like a lot of work for not much gain, no? Can't we merge it 
somehow in new api?
   
   There's no ArtifactHandler in the v4 api.  It's called `Type` and it 
represents the usage of an Artifact as a Dependency.  There's nothing to handle 
afaik on an Artifact: it's just a pointer to a file in a repository.  How it's 
used needs to be taken care of and that's done in the `Dependency` which is 
associated to a `Type` and `Scope` and `DependencyProperties`.  If we move 
things to the Artifact or merge Artifact and Dependency, I think that's a 
source of confusion.





> Maven should define from ground up scopes used with Resolver
> ------------------------------------------------------------
>
>                 Key: MNG-8026
>                 URL: https://issues.apache.org/jira/browse/MNG-8026
>             Project: Maven
>          Issue Type: Task
>            Reporter: Tamas Cservenak
>            Priority: Major
>             Fix For: 4.0.0, 4.0.0-alpha-13
>
>
> See MRESOLVER-471, it is actually role of Maven (as a resolver consumer 
> project) to define all these things:
>  * supported scopes
>  * transformations of scopes to build path scopes
>  * fine tune conflict resolution and related things (in session)



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

Reply via email to