Skip to content

Commit c8d3755

Browse files
authored
chore: update Scala to version 2.13.6 (#633)
* Scala 2.13.1 -> 2.13.6 * Sbt 1.3.8 -> 1.5.2
1 parent a257ff2 commit c8d3755

File tree

7 files changed

+51
-23
lines changed

7 files changed

+51
-23
lines changed

.bsp/sbt.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"name":"sbt","version":"1.5.2","bspVersion":"2.0.0-M5","languages":["scala"],"argv":["/Users/mouaad.aallam/.sdkman/candidates/java/11.0.10.hs-adpt/bin/java","-Xms100m","-Xmx100m","-classpath","/Users/mouaad.aallam/Library/Application Support/JetBrains/Toolbox/apps/IDEA-U/ch-0/211.7628.21/IntelliJ IDEA.app.plugins/Scala/launcher/sbt-launch.jar","xsbt.boot.Boot","-bsp","--sbt-launch-jar=/Users/mouaad.aallam/Library/Application%20Support/JetBrains/Toolbox/apps/IDEA-U/ch-0/211.7628.21/IntelliJ%20IDEA.app.plugins/Scala/launcher/sbt-launch.jar"]}

build.sbt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
organization := "com.algolia"
22
name := "algoliasearch-scala"
33
description := "Scala client for Algolia Search API"
4-
crossScalaVersions := Seq("2.11.12", "2.12.10", "2.13.1")
5-
scalaVersion := "2.13.1"
6-
testOptions in Test += Tests.Argument("-P10")
4+
crossScalaVersions := Seq("2.11.12", "2.12.10", "2.13.6")
5+
scalaVersion := "2.13.6"
6+
Test / testOptions += Tests.Argument("-P10")
77
publishMavenStyle := true
8-
publishArtifact in Test := false
8+
Test / publishArtifact := false
99
licenses += ("MIT", url("http://opensource.org/licenses/MIT"))
1010
homepage := Some(url("https://github.com/algolia/algoliasearch-client-scala/"))
1111
scmInfo := Some(
@@ -32,7 +32,7 @@ lazy val root = project
3232
.settings(
3333
buildInfoKeys := Seq[BuildInfoKey](name, version, scalaVersion, sbtVersion),
3434
buildInfoPackage := "algolia",
35-
evictionWarningOptions in update := EvictionWarningOptions.default
35+
update / evictionWarningOptions := EvictionWarningOptions.default
3636
.withWarnTransitiveEvictions(false)
3737
.withWarnDirectEvictions(false)
3838
.withWarnScalaVersionEviction(false)

project/build.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
sbt.version=1.3.8
1+
sbt.version=1.5.2

src/main/scala/algolia/dsl/GetDsl.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ trait GetDsl {
7777
def personalizationRecommendationStrategy() =
7878
GetRecommendationStrategyDefinition()
7979

80-
def dictionarySettings(): GetSettingsDictionaryDefinition =
80+
def dictionarySettings: GetSettingsDictionaryDefinition =
8181
GetSettingsDictionaryDefinition()
8282

8383
}

src/test/scala/algolia/integration/LogIntegrationTest.scala

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -25,25 +25,24 @@
2525

2626
package algolia.integration
2727

28-
import algolia.responses.{LogType, Logs}
29-
import algolia.AlgoliaTest
3028
import algolia.AlgoliaDsl._
29+
import algolia.AlgoliaTest
30+
import algolia.responses.LogType
3131

32-
import scala.concurrent.Future
32+
import scala.concurrent.duration.DurationInt
33+
import scala.concurrent.{Await, Future}
34+
import scala.language.postfixOps
3335

3436
class LogIntegrationTest extends AlgoliaTest {
3537

36-
val indexName: String = getTestIndexName("indexToSearch")
37-
3838
it("should get the logs") {
39-
val indexRes = AlgoliaTest.client.execute {
40-
index into indexName `object` Obj("1")
41-
}
42-
43-
taskShouldBeCreatedAndWaitForIt(indexRes, indexName)
39+
val listIndices1 = AlgoliaTest.client.execute { list indexes }
40+
val listIndices2 = AlgoliaTest.client.execute { list indexes }
41+
val futures = Future.sequence(Seq(listIndices1, listIndices2))
42+
Await.result(futures, 10 seconds)
4443

4544
val getLogsRes = AlgoliaTest.client.execute {
46-
getLogs offset 0 length 10 `type` LogType.all
45+
getLogs offset 0 length 2 `type` LogType.all
4746
}
4847

4948
whenReady(getLogsRes) { r =>

src/test/scala/algolia/integration/MCMIntegrationTest.scala

Lines changed: 32 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,19 +27,19 @@ package algolia.integration
2727

2828
import java.time.format.DateTimeFormatter
2929
import java.time.{LocalDateTime, ZoneOffset, ZonedDateTime}
30-
3130
import algolia.AlgoliaDsl._
3231
import algolia.inputs.{UserIDAssignment, UserIDsAssignment}
3332
import algolia.responses.{ClusterData, UserDataWithCluster}
3433
import algolia.{
3534
AlgoliaClient,
3635
AlgoliaClientConfiguration,
36+
AlgoliaClientException,
3737
AlgoliaHttpClient,
3838
AlgoliaTest,
3939
SkipInCI
4040
}
41-
import org.scalatest.Ignore
4241

42+
import scala.annotation.tailrec
4343
import scala.concurrent.duration._
4444
import scala.concurrent.{Await, Future}
4545
import scala.language.postfixOps
@@ -119,7 +119,7 @@ class MCMIntegrationTest extends AlgoliaTest {
119119
10 seconds
120120
)
121121

122-
Thread.sleep(3000)
122+
waitUserID(mcmClient, userID)
123123

124124
val hits = Await
125125
.result(
@@ -132,10 +132,38 @@ class MCMIntegrationTest extends AlgoliaTest {
132132
hits.exists(_.userID == u) should be(true)
133133
)
134134

135-
val mappingFuture = mcmClient execute (has pendingMappings)
135+
removeUserId(mcmClient, userID)
136+
137+
val mappingFuture = mcmClient execute has.pendingMappings()
136138
noException should be thrownBy whenReady(mappingFuture) { res =>
137139
res.pending should not be None
138140
}
139141

140142
}
143+
144+
@tailrec
145+
final def waitUserID(client: AlgoliaClient, id: String): Unit = {
146+
try Await.result(client.execute(get userID id), 10 seconds)
147+
catch {
148+
case e: AlgoliaClientException =>
149+
if (e.getMessage.contains("Mapping does not exist for this userID")) {
150+
Thread.sleep(1000)
151+
waitUserID(client, id)
152+
}
153+
}
154+
}
155+
156+
@tailrec
157+
final def removeUserId(client: AlgoliaClient, id: String): Unit = {
158+
try Await.result(client.execute(remove userID id), 10 seconds)
159+
catch {
160+
case e: AlgoliaClientException =>
161+
if (e.getMessage.contains(
162+
"Another mapping operation is already running for this userID"
163+
)) {
164+
Thread.sleep(1000)
165+
removeUserId(client, id)
166+
}
167+
}
168+
}
141169
}

src/test/scala/algolia/integration/RecommendationIntegrationTest.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ class RecommendationIntegrationTest extends AlgoliaTest {
3838

3939
it("should get personalization strategy without failing") {
4040
val task: Future[GetStrategyResponse] = AlgoliaTest.client.execute {
41-
get personalizationRecommendationStrategy
41+
get.personalizationRecommendationStrategy()
4242
}
4343

4444
whenReady(task) { strategy =>

0 commit comments

Comments
 (0)