From 975156a72112967af51f33bc1c45c15284a9c1b9 Mon Sep 17 00:00:00 2001 From: xuwei-k <6b656e6a69@gmail.com> Date: Sat, 13 Jun 2026 08:59:47 +0900 Subject: [PATCH] -Yfuture-lazy-vals --- build.sbt | 30 +++++++++++++++++++++++++----- 1 file changed, 25 insertions(+), 5 deletions(-) diff --git a/build.sbt b/build.sbt index 6d269f84..d20746c4 100644 --- a/build.sbt +++ b/build.sbt @@ -43,7 +43,6 @@ lazy val kindProjector = "org.typelevel" % "kind-projector" % "0.13.4" cross Cro lazy val buildSettings = Seq( scalacOptions ++= Seq( - "-release:8", "-encoding", "UTF-8", "-feature", @@ -133,10 +132,31 @@ lazy val scalaNativeSettings = Seq( tlMimaPreviousVersions := Set.empty ) -lazy val monocleSettings = buildSettings -lazy val monocleJvmSettings = monocleSettings -lazy val monocleJsSettings = monocleSettings ++ scalajsSettings -lazy val monocleNativeSettings = monocleSettings ++ scalaNativeSettings +lazy val defaultReleaseOption = "-release:8" + +lazy val monocleSettings = buildSettings +lazy val monocleJvmSettings = monocleSettings ++ Seq( + scalacOptions ++= { + if (scalaVersion.value.startsWith("3.3.")) { + Seq( + "-Yfuture-lazy-vals", + "-release:11" + ) + } else if (scalaBinaryVersion.value == "3") { + Nil + } else { + Seq( + defaultReleaseOption + ) + } + } +) +lazy val monocleJsSettings = monocleSettings ++ scalajsSettings ++ Seq( + scalacOptions += defaultReleaseOption +) +lazy val monocleNativeSettings = monocleSettings ++ scalaNativeSettings ++ Seq( + scalacOptions += defaultReleaseOption +) lazy val root = tlCrossRootProject.aggregate( core,