@@ -2,7 +2,9 @@ import Deps._
2
2
import Util ._
3
3
import com .typesafe .tools .mima .core ._ , ProblemFilters ._
4
4
5
- lazy val keepFullClasses = settingKey[Seq [String ]](" Fully qualified names of classes that proguard should preserve the non-private API of." )
5
+ lazy val keepFullClasses = settingKey[Seq [String ]](
6
+ " Fully qualified names of classes that proguard should preserve the non-private API of."
7
+ )
6
8
7
9
Global / onChangedBuildSource := ReloadOnSourceChanges
8
10
ThisBuild / dynverSonatypeSnapshots := true
@@ -12,7 +14,7 @@ ThisBuild / version := {
12
14
else orig
13
15
}
14
16
ThisBuild / description := " Standalone launcher for maven/ivy deployed projects"
15
- ThisBuild / scalaVersion := " 2.13.6 "
17
+ ThisBuild / scalaVersion := " 2.13.14 "
16
18
ThisBuild / publishMavenStyle := true
17
19
ThisBuild / crossPaths := false
18
20
ThisBuild / resolvers += Resolver .typesafeIvyRepo(" releases" )
@@ -31,9 +33,9 @@ lazy val root = (project in file("."))
31
33
packageDoc in Compile := (packageDoc in Compile in launchSub).value
32
34
commands += Command .command(" release" ) { state =>
33
35
" clean" ::
34
- " test" ::
35
- " publishSigned" ::
36
- state
36
+ " test" ::
37
+ " publishSigned" ::
38
+ state
37
39
}
38
40
validNamespaces ++= Set (" xsbt" , " xsbti" , " scala" , " org.apache.ivy" , " org.fusesource.jansi" )
39
41
validEntries ++= Set (" LICENSE" , " NOTICE" , " module.properties" )
@@ -56,19 +58,26 @@ def proguardedLauncherSettings = Seq(
56
58
57
59
def launchSettings =
58
60
inConfig(Compile )(Transform .configSettings) ++
59
- inConfig(Compile )(Transform .transSourceSettings ++ Seq (
60
- // TODO - these should be shared between sbt core + sbt-launcher...
61
- Transform .inputSourceDirectory := sourceDirectory.value / " input_sources" ,
62
- Transform .sourceProperties := Map (" cross.package0" -> " xsbt" , " cross.package1" -> " boot" )
63
- ))
61
+ inConfig(Compile )(
62
+ Transform .transSourceSettings ++ Seq (
63
+ // TODO - these should be shared between sbt core + sbt-launcher...
64
+ Transform .inputSourceDirectory := sourceDirectory.value / " input_sources" ,
65
+ Transform .sourceProperties := Map (" cross.package0" -> " xsbt" , " cross.package1" -> " boot" )
66
+ )
67
+ )
64
68
65
69
// The interface JAR for projects which want to be launched by sbt.
66
70
lazy val launchInterfaceSub = (project in file(" launcher-interface" ))
67
71
.settings(javaOnly)
68
72
.settings(nocomma {
69
73
name := " Launcher Interface"
70
- resourceGenerators in Compile += Def .task{
71
- generateVersionFile(" sbt.launcher.version.properties" )(version.value, resourceManaged.value, streams.value, (compile in Compile ).value)
74
+ resourceGenerators in Compile += Def .task {
75
+ generateVersionFile(" sbt.launcher.version.properties" )(
76
+ version.value,
77
+ resourceManaged.value,
78
+ streams.value,
79
+ (compile in Compile ).value
80
+ )
72
81
}.taskValue
73
82
description := " Interfaces for launching projects with the sbt launcher"
74
83
mimaPreviousArtifacts := Set (organization.value % moduleName.value % " 1.0.1" )
@@ -119,10 +128,10 @@ lazy val launchSub = (project in file("launcher-implementation"))
119
128
Proguard / proguardOptions ++= keepFullClasses.value map (" -keep public class " + _ + " {\n\t public protected * ;\n }" )
120
129
Proguard / proguardInputFilter := { file =>
121
130
file.name match {
122
- case x if x.startsWith(" scala-library" ) => Some (libraryFilter)
123
- case x if x.startsWith(" ivy-2.3.0" ) => Some (ivyFilter)
131
+ case x if x.startsWith(" scala-library" ) => Some (libraryFilter)
132
+ case x if x.startsWith(" ivy-2.3.0" ) => Some (ivyFilter)
124
133
case x if x.startsWith(" launcher-implementation" ) => None
125
- case _ => Some (generalFilter)
134
+ case _ => Some (generalFilter)
126
135
}
127
136
}
128
137
Proguard / proguardOptions += ProguardOptions .keepMain(" xsbt.boot.Boot" )
@@ -156,7 +165,6 @@ def ivyFilter = {
156
165
excludeString(ivyResources)
157
166
}
158
167
159
-
160
168
// used to test the retrieving and loading of an application: sample app is packaged and published to the local repository
161
169
lazy val testSamples = (project in file(" test-sample" ))
162
170
.dependsOn(launchInterfaceSub)
@@ -169,20 +177,25 @@ lazy val testSamples = (project in file("test-sample"))
169
177
})
170
178
171
179
ThisBuild / organization := " org.scala-sbt"
172
- ThisBuild / pomIncludeRepository := { x => false }
180
+ ThisBuild / pomIncludeRepository := { x =>
181
+ false
182
+ }
173
183
ThisBuild / homepage := Some (url(" https://scala-sbt.org" ))
174
184
ThisBuild / licenses += " Apache-2.0" -> url(" https://www.apache.org/licenses/LICENSE-2.0.txt" )
175
- ThisBuild / scmInfo := Some (ScmInfo (
176
- browseUrl = url(" https://github.com/sbt/launcher" ),
177
- connection
= " scm:[email protected] :sbt/launcher.git"
178
- ))
185
+ ThisBuild / scmInfo := Some (
186
+ ScmInfo (
187
+ browseUrl = url(" https://github.com/sbt/launcher" ),
188
+ connection
= " scm:[email protected] :sbt/launcher.git"
189
+ )
190
+ )
179
191
ThisBuild / developers := List (
180
192
Developer (" eed3si9n" , " Eugene Yokota" , " @eed3si9n" , url(" https://github.com/eed3si9n" )),
181
193
Developer (" jsuereth" , " Josh Suereth" , " @jsuereth" , url(" https://github.com/jsuereth" )),
182
194
Developer (" dwijnand" , " Dale Wijnand" , " @dwijnand" , url(" https://github.com/dwijnand" ))
183
195
)
184
196
ThisBuild / publishTo := {
185
197
val nexus = " https://oss.sonatype.org/"
186
- if (version.value.trim.endsWith(" SNAPSHOT" )) Some (" snapshots" at nexus + " content/repositories/snapshots" )
187
- else Some (" releases" at nexus + " service/local/staging/deploy/maven2" )
198
+ if (version.value.trim.endsWith(" SNAPSHOT" ))
199
+ Some (" snapshots" at nexus + " content/repositories/snapshots" )
200
+ else Some (" releases" at nexus + " service/local/staging/deploy/maven2" )
188
201
}
0 commit comments