Skip to content

Commit aaf7dd7

Browse files
Drop Java 8 support / JNI stuff / Windows named pipe support (#11)
1 parent 602e458 commit aaf7dd7

File tree

16 files changed

+15
-317
lines changed

16 files changed

+15
-317
lines changed

build.sc

Lines changed: 3 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
import $ivy.`com.lihaoyi::mill-contrib-bloop:$MILL_VERSION`
22
import $ivy.`de.tototec::de.tobiasroeser.mill.vcs.version_mill0.9:0.1.1`
33

4-
import $file.jarmanifest
5-
import $file.zip
6-
74
import de.tobiasroeser.mill.vcs.version._
85
import mill._
96
import mill.scalalib._
@@ -15,11 +12,7 @@ def scala213 = "2.13.7"
1512
def scala212 = "2.12.15"
1613
def scalaVersions = Seq(scala3, scala213, scala212)
1714

18-
object library extends Cross[Library](scalaVersions: _*)
19-
object tests extends Cross[Tests](scalaVersions: _*)
20-
object `jni-tests` extends Cross[JniTests](scalaVersions: _*)
21-
22-
object library16 extends Cross[Library16](scalaVersions: _*)
15+
object library extends Cross[Library](scalaVersions: _*)
2316

2417
def tmpDirBase =
2518
if (System.getenv("CI") == null)
@@ -31,60 +24,16 @@ def tmpDirBase =
3124
PathRef(os.home / ".test-data")
3225
}
3326

34-
def libraryDeps = Seq(
35-
ivy"org.scala-sbt.ipcsocket:ipcsocket:1.4.0"
36-
)
37-
3827
class Library(val crossScalaVersion: String) extends CrossScalaModule with LibDaemonPublish {
3928
def artifactName = "libdaemon"
40-
def ivyDeps = super.ivyDeps() ++ libraryDeps
4129
def compileIvyDeps = super.compileIvyDeps() ++ Seq(
4230
ivy"org.graalvm.nativeimage:svm:21.2.0"
4331
)
4432
def javacOptions = super.javacOptions() ++ Seq(
4533
"--release",
46-
"8"
34+
"16"
4735
)
48-
49-
def baseJar = T {
50-
super.jar()
51-
}
52-
def mrJar = T {
53-
val newJar = T.dest / "mr.jar"
54-
val baseJar0 = baseJar()
55-
val java16Jar = library16().jar()
56-
val extraEntries = zip.entries(java16Jar.path)
57-
.filter(_._1.getName.startsWith("libdaemonjvm"))
58-
.map {
59-
case (e, b) =>
60-
val e0 = zip.newEntry("META-INF/versions/16/" + e.getName, e)
61-
(e0, b)
62-
}
63-
assert(extraEntries.nonEmpty)
64-
val (manifestEntries, baseEntries) =
65-
zip.entries(baseJar0.path).partition(_._1.getName == "META-INF/MANIFEST.MF")
66-
assert(manifestEntries.length == 1)
67-
val (manifestEntry, manifestContent) = manifestEntries.head
68-
val updatedManifestContent = jarmanifest.addAttributes(manifestContent)(
69-
"Multi-Release" -> "true"
70-
)
71-
val allEntries = ((manifestEntry, updatedManifestContent) +: baseEntries) ++ extraEntries
72-
zip.write(newJar, allEntries)
73-
PathRef(newJar)
74-
}
75-
def jar = mrJar()
76-
}
77-
78-
class Library16(val crossScalaVersion: String) extends CrossScalaModule {
79-
def moduleDeps = Seq(
80-
library()
81-
)
82-
}
83-
84-
abstract class TestsBase extends CrossScalaModule { self =>
85-
def ivyDeps = super.ivyDeps() ++ libraryDeps
86-
trait Tests extends super.Tests {
87-
def unmanagedClasspath = super.unmanagedClasspath() ++ self.unmanagedClasspath()
36+
object test extends Tests {
8837
def ivyDeps = super.ivyDeps() ++ Seq(
8938
ivy"org.scalameta::munit:0.7.29",
9039
ivy"com.eed3si9n.expecty::expecty:0.15.4",
@@ -97,24 +46,6 @@ abstract class TestsBase extends CrossScalaModule { self =>
9746
}
9847
}
9948

100-
class Tests(val crossScalaVersion: String) extends TestsBase {
101-
def unmanagedClasspath = super.unmanagedClasspath() ++ Seq(
102-
library().jar()
103-
)
104-
object test extends Tests
105-
}
106-
107-
class JniTests(val crossScalaVersion: String) extends TestsBase {
108-
def unmanagedClasspath = super.unmanagedClasspath() ++ Seq(
109-
library().baseJar()
110-
)
111-
object test extends Tests {
112-
def sources = T.sources {
113-
tests().test.sources()
114-
}
115-
}
116-
}
117-
11849
object manual extends Module {
11950
object server extends ScalaModule {
12051
def scalaVersion = scala3

jarmanifest.sc

Lines changed: 0 additions & 11 deletions
This file was deleted.

library/src/libdaemonjvm/LockFiles.scala

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -64,13 +64,12 @@ object LockFiles {
6464
)
6565
}
6666

67-
def under(dir: Path, windowsPipeName: String): LockFiles =
68-
under(dir, windowsPipeName, addPipePrefix = true)
69-
def under(dir: Path, windowsPipeName: String, addPipePrefix: Boolean): LockFiles =
70-
under(dir, windowsPipeName, addPipePrefix, checkPermissions = true)
67+
def under(dir: Path): LockFiles =
68+
under(dir, addPipePrefix = true)
69+
def under(dir: Path, addPipePrefix: Boolean): LockFiles =
70+
under(dir, addPipePrefix, checkPermissions = true)
7171
def under(
7272
dir: Path,
73-
windowsPipeName: String,
7473
addPipePrefix: Boolean,
7574
checkPermissions: Boolean
7675
): LockFiles = {
@@ -87,10 +86,7 @@ object LockFiles {
8786
LockFiles(
8887
lockFile = dir.resolve("lock"),
8988
pidFile = dir.resolve("pid"),
90-
socketPaths = SocketPaths(
91-
dir.resolve("socket"),
92-
if (addPipePrefix) "\\\\.\\pipe\\" + windowsPipeName else windowsPipeName
93-
)
89+
socketPaths = SocketPaths(dir.resolve("socket"))
9490
)
9591
}
9692
}

library/src/libdaemonjvm/SocketPaths.scala

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,5 @@ package libdaemonjvm
33
import java.nio.file.Path
44

55
final case class SocketPaths(
6-
path: Path,
7-
windowsPipeName: String
6+
path: Path
87
)
Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package libdaemonjvm.internal
22

3+
import scala.util.Properties
4+
35
object DefaultSocketHandler {
46
def default: SocketHandler =
5-
JniSocketHandler
7+
Java16SocketHandler
68
}

library/src/libdaemonjvm/internal/JniSocketHandler.scala

Lines changed: 0 additions & 59 deletions
This file was deleted.

library/src/libdaemonjvm/internal/SocketMaker.java

Lines changed: 0 additions & 23 deletions
This file was deleted.

library/src/libdaemonjvm/internal/SocketMakerUnixSubst.java

Lines changed: 0 additions & 24 deletions
This file was deleted.

library/src/libdaemonjvm/internal/SocketMakerWindowsSubst.java

Lines changed: 0 additions & 25 deletions
This file was deleted.

tests/test/src/libdaemonjvm/tests/TestUtil.scala renamed to library/test/src/libdaemonjvm/tests/TestUtil.scala

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,7 @@ object TestUtil {
3838
os.makeDir.all(dir)
3939
os.perms.set(dir, "rwx------")
4040
}
41-
LockFiles.under(
42-
dir.toNIO,
43-
"libdaemonjvm-tests-" + dir.segments.toVector.drop(dir.segmentCount - 2).mkString("-")
44-
)
41+
LockFiles.under(dir.toNIO)
4542
}
4643

4744
private val count = new AtomicInteger

library16/src/libdaemonjvm/internal/DefaultSocketHandler.scala

Lines changed: 0 additions & 20 deletions
This file was deleted.

manual/client/src/libdaemonjvm/TestClient.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import java.security.SecureRandom
77

88
object TestClient {
99
def main(args: Array[String]): Unit = {
10-
val files = LockFiles.under(Paths.get("data-dir"), "libdaemonjvm\\test-server-client\\pipe")
10+
val files = LockFiles.under(Paths.get("data-dir"))
1111
val canConnect = SocketFile.canConnect(files.socketPaths)
1212
println(s"canConnect: $canConnect")
1313
}

manual/server/src/libdaemonjvm/TestServer.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ object TestServer {
4848
).asJava
4949
)
5050
}
51-
val files = LockFiles.under(path, "libdaemonjvm\\test-server-client\\pipe")
51+
val files = LockFiles.under(path)
5252
Lock.tryAcquire(files)(s => runServer(() => s.fold(_.accept(), _.accept()))) match {
5353
case Left(e) => throw e
5454
case Right(()) =>

0 commit comments

Comments
 (0)