Skip to content

Commit f5ea746

Browse files
authored
Merge pull request #1064 from yadavan88/scala-3-migration-JAVA-29058
Scala 3 migration of remaining modules JAVA-29058
2 parents a3b3f0c + be742db commit f5ea746

File tree

41 files changed

+42
-52
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+42
-52
lines changed

build.sbt

+18-9
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ lazy val scala_core_7 = (project in file("scala-core-modules/scala-core-7"))
9595
name := "scala-core-7",
9696
scalaVersion := scala3Version,
9797
libraryDependencies ++= scalaTestDeps,
98-
libraryDependencies += jUnitInterface,
98+
libraryDependencies += jUnitInterface
9999
)
100100

101101
lazy val scala_core_8 = (project in file("scala-core-modules/scala-core-8"))
@@ -194,11 +194,11 @@ lazy val scala_core_map =
194194
lazy val scala_test = (project in file("scala-test"))
195195
.settings(
196196
name := "scala-test",
197+
scalaVersion := scala3Version,
197198
libraryDependencies ++=
198199
Seq(
199200
"org.scalatestplus" %% "mockito-3-4" % "3.2.10.0" % Test,
200-
jUnitInterface,
201-
scalaMock
201+
jUnitInterface
202202
) ++ scalaTestDeps
203203
)
204204

@@ -373,6 +373,7 @@ lazy val scala_libraries_3 = (project in file("scala-libraries-3"))
373373
lazy val scala_libraries_os = (project in file("scala-libraries-os"))
374374
.settings(
375375
name := "scala-libraries",
376+
scalaVersion := scala3Version,
376377
libraryDependencies ++= scalaTestDeps,
377378
libraryDependencies ++= Seq(
378379
"org.apache.logging.log4j" %% "log4j-api-scala" % "13.0.0",
@@ -472,8 +473,9 @@ lazy val scala_strings = (project in file("scala-strings"))
472473
lazy val scala_design_patterns = (project in file("scala-design-patterns"))
473474
.settings(
474475
name := "scala-design-patterns",
476+
scalaVersion := scala3Version,
475477
libraryDependencies ++= scalaTestDeps,
476-
libraryDependencies += scalaMock,
478+
libraryDependencies += "org.scalatestplus" %% "mockito-3-4" % "3.2.10.0" % Test,
477479
libraryDependencies += "com.novocode" % "junit-interface" % "0.11" % Test
478480
)
479481

@@ -534,16 +536,18 @@ lazy val doobie = (project in file("doobie"))
534536
// lazy val scala_native = (project in file("scala-native"))
535537
// .settings(
536538
// name := "scala-native",
537-
// libraryDependencies += "com.lihaoyi" %%% "fansi" % "0.3.0"
539+
// scalaVersion := scala3Version,
540+
// libraryDependencies += "com.lihaoyi" %%% "fansi" % "0.4.0"
538541
// )
539542

540543
// ScalaPy Python Project is disabled as it needs clang and python to installed in the target machine.
541544
// To test this code, install clang, python and then uncommment this build
542545
// lazy val scala_python = (project in file("scala-python"))
543546
// .settings(
544547
// name := "scala-python",
545-
// libraryDependencies += "me.shadaj" %% "scalapy-core" % "0.5.2",
546-
// fork := true
548+
// libraryDependencies += "dev.scalapy" %%% "scalapy-core" % "0.5.3",
549+
// fork := true,
550+
// scalaVersion := scala3Version
547551
// )
548552

549553
lazy val reflection = (project in file("reflection"))
@@ -559,7 +563,9 @@ lazy val scala3_libraries = (project in file("scala3-libraries"))
559563
name := "scala3-libraries",
560564
libraryDependencies ++= Seq(
561565
"com.github.japgolly.clearconfig" %% "core" % "3.1.0",
562-
"org.scalameta" %% "munit" % "0.7.29" % Test
566+
"org.scalameta" %% "munit" % "0.7.29" % Test,
567+
"org.tpolecat" %% "doobie-core" % "1.0.0-RC2",
568+
"org.tpolecat" %% "doobie-postgres" % "1.0.0-RC2"
563569
)
564570
)
565571

@@ -612,7 +618,10 @@ addCommandAlias(
612618
lazy val playGroup = (project in file("play-scala"))
613619

614620
//Uncomment this to enable scala-js module. It needs nodejs module as well in local machine
615-
//lazy val scalajs = project in file("scala-js")
621+
//lazy val scalajs = (project in file("scala-js"))
622+
// .settings(
623+
// scalaVersion := scala3Version
624+
// )
616625
lazy val scalatra = project in file("scalatra")
617626
lazy val benchmark = project in file("specialized-benchmark")
618627

doobie/README.md

-3
This file was deleted.

project/plugins.sbt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
addSbtPlugin("org.scalameta" % "sbt-scalafmt" % "2.5.0")
22

3-
addSbtPlugin("org.scala-native" % "sbt-scala-native" % "0.4.10")
3+
addSbtPlugin("org.scala-native" % "sbt-scala-native" % "0.4.16")
44
addSbtPlugin("org.scala-js" % "sbt-scalajs" % "1.13.0")
55

66
addSbtPlugin("com.lightbend.akka.grpc" % "sbt-akka-grpc" % "2.2.1")

scala-design-patterns/src/main/scala-2/com/baeldung/scala/magnetpattern/MagnetPattern.scala renamed to scala-design-patterns/src/main/scala/com/baeldung/scala/magnetpattern/MagnetPattern.scala

+8-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package com.baeldung.scala.magnetpattern
22

3+
import scala.language.implicitConversions
4+
35
object MagnetPattern extends App {
46

57
/*
@@ -20,11 +22,15 @@ object MagnetPattern extends App {
2022

2123
def combineElements(magnet: CombineMagnet): magnet.Result = magnet()
2224

23-
implicit def intCombineMagnet(intList: List[Int]) = new CombineMagnet {
25+
implicit def intCombineMagnet(
26+
intList: List[Int]
27+
): CombineMagnet { type Result = Int } = new CombineMagnet {
2428
override type Result = Int
2529
override def apply(): Result = intList.reduce((i, c) => i + c)
2630
}
27-
implicit def strCombineMagnet(stringList: List[String]) = new CombineMagnet {
31+
implicit def strCombineMagnet(
32+
stringList: List[String]
33+
): CombineMagnet { type Result = String } = new CombineMagnet {
2834
override type Result = String
2935
override def apply(): Result = stringList.reduce((s, c) => s.concat(c))
3036
}

scala-design-patterns/src/test/scala-2/com/baeldung/scala/cakepattern/CakePatternUnitTest.scala renamed to scala-design-patterns/src/test/scala/com/baeldung/scala/cakepattern/CakePatternUnitTest.scala

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,22 @@
11
package com.baeldung.scala.cakepattern
22

33
import com.baeldung.scala.cakepattern.CakePattern.Test
4-
import org.scalamock.scalatest.MockFactory
4+
import org.mockito.Mockito.when
55
import org.scalatest.flatspec.AnyFlatSpec
6+
import org.scalatestplus.mockito.MockitoSugar
67

78
trait TestRegistry
89
extends CakePattern.TestExecutorComponent
910
with CakePattern.TestEnvironmentComponent
10-
with MockFactory {
11+
with MockitoSugar {
1112
override val env: TestEnvironment = mock[TestEnvironment]
1213
override val testExecutor: TestExecutor = new TestExecutor
1314
}
1415

1516
class CakePatternUnitTest extends AnyFlatSpec with TestRegistry {
1617

1718
"A TestExecutor" should "execute tests using a given environment" in {
18-
(env.readEnvironmentProperties _).expects().returning(Map("ENV" -> "true"))
19+
when(env.readEnvironmentProperties).thenReturn(Map("ENV" -> "true"))
1920
val test = Test(
2021
"test-1",
2122
{ environment =>

scala-js/build.sbt

+2-4
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,9 @@ version := "1.0-SNAPSHOT"
55

66
enablePlugins(ScalaJSPlugin)
77

8-
scalaVersion := "2.13.12"
9-
108
scalaJSUseMainModuleInitializer := true
11-
libraryDependencies += "org.scala-js" %%% "scalajs-dom" % "2.2.0"
12-
libraryDependencies += "org.scalatest" %%% "scalatest" % "3.1.2" % Test
9+
libraryDependencies += "org.scala-js" %%% "scalajs-dom" % "2.8.0"
10+
libraryDependencies += "org.scalatest" %%% "scalatest" % "3.2.17" % Test
1311

1412
//enable the below setting after installing npm package jsdom.
1513
jsEnv := new org.scalajs.jsenv.jsdomnodejs.JSDOMNodeJSEnv()

scala-native/src/main/scala-2/com/baeldung/native/NativeApp.scala renamed to scala-native/src/main/scala/com/baeldung/native/NativeApp.scala

+4-4
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,10 @@ object NativeApp {
4141
}
4242

4343
def main(args: Array[String]): Unit = {
44-
printFromNative
45-
simpleNative
46-
nativeFromCFile
47-
testCurl
44+
printFromNative()
45+
simpleNative()
46+
nativeFromCFile()
47+
testCurl()
4848
}
4949

5050
}
-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
11
addSbtPlugin("com.eed3si9n" % "sbt-buildinfo" % "0.10.0")
22

33
addSbtPlugin("org.scoverage" % "sbt-scoverage" % "2.0.8")
4-

scala-test/src/test/scala-2/com/baeldung/scala/scalatest/.scala-build/ide-inputs.json

-1
This file was deleted.

scala-test/src/test/scala-2/com/baeldung/scala/scalatest/.scala-build/ide-options-v2.json

-1
This file was deleted.

scala-test/src/test/scala-2/com/baeldung/scala/scalatest/ScalaMockFlatSpecUnitTest.scala

-19
This file was deleted.

scala-test/src/test/scala-2/com/baeldung/scala/scalatest/collectiontest/CollectionTest.scala renamed to scala-test/src/test/scala/com/baeldung/scala/scalatest/collectiontest/CollectionTest.scala

+2-2
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,8 @@ class CollectionTest extends AnyFlatSpec with Matchers {
7373
val cities2 = List("Barcelona", "Hamburg")
7474
Random.shuffle(cities) should contain theSameElementsAs (cities2)
7575
cities shouldBe cities2
76-
cities ++ cities should contain only (cities2: _*) // but duplicates are allowed
77-
cities should contain only (cities2: _*)
76+
cities ++ cities should contain only ("Barcelona", "Hamburg") // but duplicates are allowed
77+
cities should contain only ("Barcelona", "Hamburg")
7878
}
7979

8080
it should "pass if both collections contains exactly same elements in same order" in {

scala3-libraries/README.md

+1

doobie/src/main/scala/com/baeldung/scala/doobie/DoobieFragments.scala renamed to scala3-libraries/src/main/scala/com/baledung/doobie/DoobieFragments.scala

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.baeldung.scala.doobie
1+
package com.baledung.doobie
22

33
import cats.effect.{IO, IOApp}
44
import doobie.implicits._

doobie/src/main/scala/com/baeldung/scala/doobie/DoobieQuickStart.scala renamed to scala3-libraries/src/main/scala/com/baledung/doobie/DoobieQuickStart.scala

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.baeldung.scala.doobie
1+
package com.baledung.doobie
22

33
import cats.effect.{IO, IOApp}
44
import doobie.implicits._

0 commit comments

Comments
 (0)