From 7391290d8a518b563eabf81448318c9945a946f2 Mon Sep 17 00:00:00 2001 From: jvican Date: Wed, 10 May 2017 20:34:41 +0200 Subject: [PATCH] Add comments to `SbtChainResolver` implementation --- .../internal/librarymanagement/ivyint/SbtChainResolver.scala | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/librarymanagement/src/main/scala/sbt/internal/librarymanagement/ivyint/SbtChainResolver.scala b/librarymanagement/src/main/scala/sbt/internal/librarymanagement/ivyint/SbtChainResolver.scala index da7e9f13d..cb7f0cbfa 100644 --- a/librarymanagement/src/main/scala/sbt/internal/librarymanagement/ivyint/SbtChainResolver.scala +++ b/librarymanagement/src/main/scala/sbt/internal/librarymanagement/ivyint/SbtChainResolver.scala @@ -255,6 +255,11 @@ private[sbt] case class SbtChainResolver( * This is a custom sbt chain operation that produces better error output and deals with * cases that the conventional ivy resolver does not. It accumulates the resolution of * several resolvers and returns the module which fits the provided resolution strategy. + * + * These are the differences with regard to the default ivy [[ChainResolver]]: + * 1. It skips resolution if "return first" is set to true. + * 2. It skips resolution if a previously resolved or cached resolution is found. + * 3. It always checks all the resolvers and compares timestamps for changing dependencies. */ def getDependency(dd: DependencyDescriptor, data0: ResolveData): ResolvedModuleRevision = { val isDynamic = dd.isChanging || IvySbt.isChanging(dd.getDependencyRevisionId)