From 112638582ffb237beb67132bb5fba2358b6bfe2a Mon Sep 17 00:00:00 2001 From: Alexandre Archambault Date: Tue, 28 Feb 2017 14:42:28 +0100 Subject: [PATCH] Shade fastparse --- build.sbt | 15 +++++++++-- project/plugins.sbt | 25 +++++++++++++++++++ sbt.properties | 1 + scripts/travis.sh | 3 ++- .../coursier_2.11/1.0.0-SNAPSHOT | 3 --- 5 files changed, 41 insertions(+), 6 deletions(-) diff --git a/build.sbt b/build.sbt index eed714605..138c2a28a 100644 --- a/build.sbt +++ b/build.sbt @@ -12,11 +12,22 @@ lazy val scalazVersion = "7.2.8" lazy val core = crossProject .settings(commonSettings) .settings(mimaPreviousArtifactSettings) + .jvmConfigure(_ + .enablePlugins(_root_.coursier.ShadingPlugin) + ) + .jvmSettings( + shadingNamespace := "coursier.shaded", + libraryDependencies += "com.lihaoyi" %% "fastparse" % "0.4.2" % "shaded", + publish := publish.in(Shading).value, + publishLocal := publishLocal.in(Shading).value + ) + .jsSettings( + libraryDependencies += "com.lihaoyi" %%% "fastparse" % "0.4.2" + ) .settings( name := "coursier", libraryDependencies ++= Seq( - "org.scalaz" %%% "scalaz-core" % scalazVersion, - "com.lihaoyi" %%% "fastparse" % "0.4.2" + "org.scalaz" %%% "scalaz-core" % scalazVersion ), mimaBinaryIssueFilters ++= { import com.typesafe.tools.mima.core._ diff --git a/project/plugins.sbt b/project/plugins.sbt index 64fd9a187..a896010c4 100644 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -8,3 +8,28 @@ addSbtPlugin("io.get-coursier" % "sbt-shading" % "1.0.0-M15-2") addSbtPlugin("com.typesafe.sbt" % "sbt-proguard" % "0.2.2") addSbtPlugin("com.typesafe" % "sbt-mima-plugin" % "0.1.13") libraryDependencies += "org.scala-sbt" % "scripted-plugin" % sbtVersion.value + +// temporary, until sbt-shading 1.0.0-M15-3 (that will pull a fine jarjar version) +resolvers += Resolver.mavenLocal +libraryDependencies += { + + def jarjarVersion = { + val coursierJarjarVersion = "1.0.1-coursier-SNAPSHOT" + val fallbackJarjarVersion = "1.0.0" + def coursierJarjarFoundInM2 = (file(sys.props("user.home")) / s".m2/repository/org/anarres/jarjar/jarjar-core/$coursierJarjarVersion").exists() + + if (sys.env.contains("CI") || coursierJarjarFoundInM2) + coursierJarjarVersion + else { + scala.Console.err.println( + "Ad hoc jarjar version not found. Run\n" + + " git clone https://github.com/alexarchambault/jarjar.git && cd jarjar && git checkout 249c8dbb970f8 && ./gradlew install\n" + + s"to install it. Using version $fallbackJarjarVersion, that doesn't properly\n" + + "shade Scala JARs." + ) + fallbackJarjarVersion + } + } + + "org.anarres.jarjar" % "jarjar-core" % jarjarVersion +} diff --git a/sbt.properties b/sbt.properties index 776e62b03..9046505f9 100644 --- a/sbt.properties +++ b/sbt.properties @@ -14,4 +14,5 @@ plugins = [ dependencies = [ "org.scala-sbt:scripted-plugin:"${sbt.version} + "org.anarres.jarjar:jarjar-core:1.0.1-coursier-SNAPSHOT" ] diff --git a/scripts/travis.sh b/scripts/travis.sh index e5c083259..171079d0a 100755 --- a/scripts/travis.sh +++ b/scripts/travis.sh @@ -67,7 +67,6 @@ runSbtCoursierTests() { } runSbtShadingTests() { - setupCustomJarjar sbt ++$SCALA_VERSION sbt-coursier/publishLocal sbt-shading/scripted } @@ -144,6 +143,8 @@ publish() { # TODO Add coverage once https://github.com/scoverage/sbt-scoverage/issues/111 is fixed +setupCustomJarjar + setupCoursierBinDir downloadInstallSbtExtras diff --git a/tests/shared/src/test/resources/resolutions/io.get-coursier/coursier_2.11/1.0.0-SNAPSHOT b/tests/shared/src/test/resources/resolutions/io.get-coursier/coursier_2.11/1.0.0-SNAPSHOT index a5ddf5449..62382d50e 100644 --- a/tests/shared/src/test/resources/resolutions/io.get-coursier/coursier_2.11/1.0.0-SNAPSHOT +++ b/tests/shared/src/test/resources/resolutions/io.get-coursier/coursier_2.11/1.0.0-SNAPSHOT @@ -1,6 +1,3 @@ -com.lihaoyi:fastparse-utils_2.11:0.4.2:default -com.lihaoyi:fastparse_2.11:0.4.2:default -com.lihaoyi:sourcecode_2.11:0.1.3:default io.get-coursier:coursier_2.11:1.0.0-SNAPSHOT:compile org.jsoup:jsoup:1.10.2:default org.scala-lang:scala-library:2.11.8:default