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


##########
api/maven-api-core/src/main/java/org/apache/maven/api/DependencyCoordinates.java:
##########
@@ -42,22 +42,22 @@ public interface DependencyCoordinates extends 
ArtifactCoordinates {
      * {@return the type of the dependency}
      * A dependency can be a <abbr>JAR</abbr> file,
      * a modular-<abbr>JAR</abbr> if it is intended to be placed on the module 
path,
-     * a <abbr>JAR</abbr> containing test classes, <i>etc.</i>
+     * a <abbr>JAR</abbr> containing test classes, a POM file, <i>etc.</i>
      */
     @Nonnull
     Type getType();
 
     /**
      * {@return the time at which the dependency will be used}
-     * It may be, for example, at compile time only, at run time or at test 
time.
+     * It may be, for example, at compile time only, at run time, or at test 
time.
      */
     @Nonnull
     DependencyScope getScope();
 
     /**
      * Returns whether the dependency is optional, mandatory, or of 
unspecified obligation.
      *
-     * @return the obligation, or {@code null} if unspecified
+     * @return true if optional, false if mandatory, or {@code null} if 
unspecified

Review Comment:
   `{@code true}` and `{@code false}` ?



##########
api/maven-api-core/src/main/java/org/apache/maven/api/Dependency.java:
##########
@@ -57,7 +57,7 @@ public interface Dependency extends Artifact {
 
     /**
      * Returns whether the dependency is optional or mandatory.
-     * Contrarily to {@link DependencyCoordinates}, the obligation of a {@code 
Dependency} is always present.
+     * Contrary to {@link DependencyCoordinates}, the obligation of a {@code 
Dependency} is always present.

Review Comment:
   `Unlike {@link DependencyCoordinates}`



##########
api/maven-api-core/src/main/java/org/apache/maven/api/package-info.java:
##########
@@ -23,31 +23,32 @@
  * <h3>Dependency management</h3>
  *
  * <p>{@link org.apache.maven.api.ArtifactCoordinates} instances are used to 
locate artifacts in a repository.
- * Each instance is basically a pointer to a file in the Maven repository, 
except that the version may not be
- * defined precisely.</p>
+ * Each instance identifies an artifact or version range of artifacts in the 
Maven repository system.</p>
  *
- * <p>{@link org.apache.maven.api.Artifact} instances are the pointed 
artifacts in the repository.
+ * <p>{@link org.apache.maven.api.Artifact} instances represent artifacts in 
the repository.
  * They are created when <dfn>resolving</dfn> an {@code ArtifactCoordinates}. 
Resolving is the process
- * that selects a particular version and downloads the artifact in the local 
repository.
- * There are two sub-interfaces, {@link 
org.apache.maven.api.DownloadedArtifact} which is used when
- * an artifact has been resolved</p>
- *
- * <p>{@link org.apache.maven.api.DependencyCoordinates} instances are used to 
express a dependency.
- * They are a {@code ArtifactCoordinates} completed with information about how 
the artifact will be used:
- * type, scope and obligation (whether the dependency is optional or 
mandatory).
+ * that selects a particular version and downloads the artifact to the local 
repository.
+ * The sub-interface {@link org.apache.maven.api.DownloadedArtifact} 
represents an artifact
+ * that has been downloaded to and installed in the local repository.</p>
+ *
+ * <p>{@link org.apache.maven.api.DependencyCoordinates} instances represent a 
dependency element in a POM.
+ * A {@code DependencyCoordinates} extends {@code ArtifactCoordinates} with 
additional information about how
+ * A {@code DependencyCoordinates} extends {@code ArtifactCoordinates} with 
additional information about how

Review Comment:
   Line is duplicated



##########
api/maven-api-core/src/main/java/org/apache/maven/api/package-info.java:
##########
@@ -23,31 +23,32 @@
  * <h3>Dependency management</h3>
  *
  * <p>{@link org.apache.maven.api.ArtifactCoordinates} instances are used to 
locate artifacts in a repository.
- * Each instance is basically a pointer to a file in the Maven repository, 
except that the version may not be
- * defined precisely.</p>
+ * Each instance identifies an artifact or version range of artifacts in the 
Maven repository system.</p>
  *
- * <p>{@link org.apache.maven.api.Artifact} instances are the pointed 
artifacts in the repository.
+ * <p>{@link org.apache.maven.api.Artifact} instances represent artifacts in 
the repository.
  * They are created when <dfn>resolving</dfn> an {@code ArtifactCoordinates}. 
Resolving is the process
- * that selects a particular version and downloads the artifact in the local 
repository.
- * There are two sub-interfaces, {@link 
org.apache.maven.api.DownloadedArtifact} which is used when
- * an artifact has been resolved</p>
- *
- * <p>{@link org.apache.maven.api.DependencyCoordinates} instances are used to 
express a dependency.
- * They are a {@code ArtifactCoordinates} completed with information about how 
the artifact will be used:
- * type, scope and obligation (whether the dependency is optional or 
mandatory).
+ * that selects a particular version and downloads the artifact to the local 
repository.
+ * The sub-interface {@link org.apache.maven.api.DownloadedArtifact} 
represents an artifact
+ * that has been downloaded to and installed in the local repository.</p>

Review Comment:
   I actually pushed a change to finish that sentence: 
https://github.com/apache/maven/pull/2142/files#diff-6d251daa1f9f9999870189b5fae1922bab17789adb2e2f45ed632f6a4a86ef09R48-R49



##########
api/maven-api-core/src/main/java/org/apache/maven/api/package-info.java:
##########
@@ -60,12 +61,13 @@
  * <p><dfn>Artifact resolution</dfn> is the process of {@linkplain 
org.apache.maven.api.services.VersionResolver
  * resolving the version} and then downloading the file.</p>
  *
- * <p><dfn>Dependency collection</dfn> builds a graph of {@link 
org.apache.maven.api.Node} objects representing
+ * <p><dfn>Dependency collection</dfn> builds a graph of {@link 
org.apache.maven.api.Node} objects containing
  * all the dependencies.</p>
  *
- * <p>The <dfn>Dependency graph flattening</dfn> process in Maven involves 
reducing a complex,
- * multi-level dependency graph to a simpler list where only the most relevant 
version of each artifact
- * (based on groupId and artifactId) is retained, resolving conflicts and 
eliminating duplicates to ensure
+ * <p>The <dfn>Dependency graph flattening</dfn> process in Maven reduces a 
complex,
+ * multi-level dependency graph to an ordered list that can be turned into a 
classpath.

Review Comment:
   This would have to be slightly updated wrt to recent changes.
   See 
https://github.com/apache/maven/blob/master/api/maven-api-core/src/main/java/org/apache/maven/api/services/DependencyResolverResult.java#L81-L97
   



-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to