bump to lm 1.3.0-M3

This also adds `CustomHttp.okhttpClient` and `CustomHttp.okhttpClientBuilder` settings to experimentally customize HTTP client.
This commit is contained in:
Eugene Yokota 2019-04-05 15:28:49 -04:00
parent b40084f6fd
commit 8790a7b45d
3 changed files with 32 additions and 6 deletions

View File

@ -30,7 +30,7 @@ import sbt.internal._
import sbt.internal.inc.JavaInterfaceUtil._ import sbt.internal.inc.JavaInterfaceUtil._
import sbt.internal.inc.ZincUtil import sbt.internal.inc.ZincUtil
import sbt.internal.io.{ Source, WatchState } import sbt.internal.io.{ Source, WatchState }
import sbt.internal.librarymanagement._ import sbt.internal.librarymanagement.{ CustomHttp => _, _ }
import sbt.internal.librarymanagement.mavenint.{ import sbt.internal.librarymanagement.mavenint.{
PomExtraDependencyAttributes, PomExtraDependencyAttributes,
SbtPomExtraProperties SbtPomExtraProperties
@ -217,6 +217,8 @@ object Defaults extends BuildCommon {
artifactClassifier :== None, artifactClassifier :== None,
checksums := Classpaths.bootChecksums(appConfiguration.value), checksums := Classpaths.bootChecksums(appConfiguration.value),
conflictManager := ConflictManager.default, conflictManager := ConflictManager.default,
CustomHttp.okhttpClientBuilder :== CustomHttp.defaultHttpClientBuilder,
CustomHttp.okhttpClient := CustomHttp.okhttpClientBuilder.value.build,
pomExtra :== NodeSeq.Empty, pomExtra :== NodeSeq.Empty,
pomPostProcess :== idFun, pomPostProcess :== idFun,
pomAllRepositories :== false, pomAllRepositories :== false,
@ -2180,8 +2182,11 @@ object Classpaths {
) )
else None else None
}, },
dependencyResolution := IvyDependencyResolution(ivyConfiguration.value), dependencyResolution := IvyDependencyResolution(
publisher := IvyPublisher(ivyConfiguration.value), ivyConfiguration.value,
CustomHttp.okhttpClient.value
),
publisher := IvyPublisher(ivyConfiguration.value, CustomHttp.okhttpClient.value),
ivyConfiguration := mkIvyConfiguration.value, ivyConfiguration := mkIvyConfiguration.value,
ivyConfigurations := { ivyConfigurations := {
val confs = thisProject.value.configurations val confs = thisProject.value.configurations
@ -2428,7 +2433,7 @@ object Classpaths {
private[sbt] def ivySbt0: Initialize[Task[IvySbt]] = private[sbt] def ivySbt0: Initialize[Task[IvySbt]] =
Def.task { Def.task {
Credentials.register(credentials.value, streams.value.log) Credentials.register(credentials.value, streams.value.log)
new IvySbt(ivyConfiguration.value) new IvySbt(ivyConfiguration.value, CustomHttp.okhttpClient.value)
} }
def moduleSettings0: Initialize[Task[ModuleSettings]] = Def.task { def moduleSettings0: Initialize[Task[ModuleSettings]] = Def.task {
ModuleDescriptorConfiguration(projectID.value, projectInfo.value) ModuleDescriptorConfiguration(projectID.value, projectInfo.value)
@ -2499,7 +2504,10 @@ object Classpaths {
).withScalaOrganization(scalaOrganization.value) ).withScalaOrganization(scalaOrganization.value)
) )
}, },
dependencyResolution := IvyDependencyResolution(ivyConfiguration.value), dependencyResolution := IvyDependencyResolution(
ivyConfiguration.value,
CustomHttp.okhttpClient.value
),
updateSbtClassifiers in TaskGlobal := (Def.task { updateSbtClassifiers in TaskGlobal := (Def.task {
val lm = dependencyResolution.value val lm = dependencyResolution.value
val s = streams.value val s = streams.value

View File

@ -0,0 +1,18 @@
package sbt.internal
import sbt.internal.librarymanagement.{ CustomHttp => LMCustomHttp }
import okhttp3._
import sbt.BuildSyntax._
import sbt.KeyRanks._
object CustomHttp {
val okhttpClientBuilder =
settingKey[OkHttpClient.Builder]("Builder for the HTTP client.").withRank(CSetting)
val okhttpClient =
settingKey[OkHttpClient]("HTTP client used for library management.").withRank(CSetting)
def defaultHttpClientBuilder: OkHttpClient.Builder = {
LMCustomHttp.defaultHttpClientBuilder
}
}

View File

@ -14,7 +14,7 @@ object Dependencies {
private val lmVersion = private val lmVersion =
sys.props.get("sbt.build.lm.version") match { sys.props.get("sbt.build.lm.version") match {
case Some(version) => version case Some(version) => version
case _ => "1.3.0-M2" case _ => "1.3.0-M3"
} }
private val zincVersion = "1.3.0-M3" private val zincVersion = "1.3.0-M3"