@@ -20,7 +20,7 @@ def scalaVersions = Seq("2.12.15", "2.13.8")
2020def mainScalaVersion = scalaVersions.last
2121
2222object core extends Cross [Core ](scalaVersions : _* )
23- object cli extends Cross [ Cli ]( scalaVersions : _* )
23+ object cli extends Cli
2424
2525class Core (val crossScalaVersion : String ) extends CrossSbtModule with SnailgunPublishModule {
2626 object test extends Tests {
@@ -36,17 +36,15 @@ class Core(val crossScalaVersion: String) extends CrossSbtModule with SnailgunPu
3636}
3737
3838def ghOrg = " scala-cli"
39- class Cli (val crossScalaVersion : String )
40- extends CrossSbtModule
41- with NativeImage
42- with SnailgunPublishModule {
39+ trait Cli extends SbtModule with NativeImage with SnailgunPublishModule {
40+ def scalaVersion = mainScalaVersion
4341 def moduleDeps = Seq (
44- core()
42+ core(mainScalaVersion )
4543 )
4644 def ivyDeps = super .ivyDeps() ++ Seq (
4745 ivy " com.github.alexarchambault::case-app:2.1.0-M14 "
4846 )
49- def mainClass = Some (" snailgun.Cli " )
47+ def mainClass = Some (" snailgun.Snailgun " )
5048
5149 def nativeImageClassPath = runClasspath()
5250 def nativeImageMainClass = mainClass().getOrElse {
@@ -197,7 +195,7 @@ private def finalPublishVersion = {
197195}
198196
199197def nativeImage = T {
200- cli(mainScalaVersion) .nativeImage()
198+ cli.nativeImage()
201199}
202200
203201object ci extends Module {
@@ -257,7 +255,7 @@ object ci extends Module {
257255 }
258256
259257 def copyLauncher (directory : String = " artifacts" ) = T .command {
260- val nativeLauncher = cli(mainScalaVersion) .nativeImage().path
258+ val nativeLauncher = cli.nativeImage().path
261259 Upload .copyLauncher(
262260 nativeLauncher,
263261 directory,
@@ -268,7 +266,7 @@ object ci extends Module {
268266
269267 def copyJvmLauncher (directory : String = " artifacts" ) = T .command {
270268 val platformExecutableJarExtension = if (Properties .isWin) " .bat" else " "
271- val launcher = cli(mainScalaVersion) .standaloneLauncher().path
269+ val launcher = cli.standaloneLauncher().path
272270 os.copy(
273271 launcher,
274272 os.Path (directory, os.pwd) / s " snailgun $platformExecutableJarExtension" ,
@@ -281,7 +279,7 @@ object ci extends Module {
281279 sys.error(" UPLOAD_GH_TOKEN not set" )
282280 }
283281 def uploadLaunchers (directory : String = " artifacts" ) = T .command {
284- val version = cli(mainScalaVersion) .publishVersion()
282+ val version = cli.publishVersion()
285283
286284 val path = os.Path (directory, os.pwd)
287285 val launchers = os.list(path).filter(os.isFile(_)).map { path =>
0 commit comments