Build Logs

cake-lier/tuples-space-core • 3.8.0:2026-01-13

Errors

3

Warnings

398

Total Lines

942

1##################################
2Clonning https://github.com/cake-lier/tuples-space-core.git into /build/repo using revision v1.0.2
3##################################
4Note: switching to 'ebf8612a568fbb3db75c2b2a3b7aaed596c24b2a'.
5
6You are in 'detached HEAD' state. You can look around, make experimental
7changes and commit them, and you can discard any commits you make in this
8state without impacting any branches by switching back to a branch.
9
10If you want to create a new branch to retain commits you create, you may
11do so (now or later) by using -c with the switch command. Example:
12
13 git switch -c <new-branch-name>
14
15Or undo this operation with:
16
17 git switch -
18
19Turn off this advice by setting config variable advice.detachedHead to false
20
21Using target Scala version for migration: 3.7.4
22Migrating project for -source:3.4 using Scala 3.7.4
23----
24Preparing build for 3.7.4
25Would try to apply common scalacOption (best-effort, sbt/mill only):
26Append: -rewrite,REQUIRE:-source:3.4-migration
27Remove: -indent,-no-indent,-new-syntax,,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
28----
29Starting build for 3.7.4
30Execute tests: false
31sbt project found:
32Sbt version 1.9.3 is not supported, minimal supported version is 1.11.5
33Enforcing usage of sbt in version 1.11.5
34No prepare script found for project cake-lier/tuples-space-core
35##################################
36Scala version: 3.7.4
37Targets: io.github.cake-lier%tuples-space-core
38Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","sourceVersion":"3.4","migrationVersions":["3.4"],"sourcePatches":[]}
39##################################
40Using extra scalacOptions: -rewrite,REQUIRE:-source:3.4-migration
41Filtering out scalacOptions: -indent,-no-indent,-new-syntax,,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
42[sbt_options] declare -a sbt_options=()
43[process_args] java_version = '17'
44[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8/rt.jar'
45# Executing command line:
46java
47-Dfile.encoding=UTF-8
48-Dcommunitybuild.scala=3.7.4
49-Dcommunitybuild.project.dependencies.add=
50-Xmx7G
51-Xms4G
52-Xss8M
53-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
54-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8
55-jar
56/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
57"setCrossScalaVersions 3.7.4"
58"++3.7.4 -v"
59"mapScalacOptions "-rewrite,REQUIRE:-source:3.4-migration,-Wconf:msg=can be rewritten automatically under:s" "-indent,-no-indent,-new-syntax,,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
60"set every credentials := Nil"
61"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
62"removeScalacOptionsStartingWith -P:wartremover"
63
64moduleMappings
65"runBuild 3.7.4 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","sourceVersion":"3.4","migrationVersions":["3.4"],"sourcePatches":[]}""" io.github.cake-lier%tuples-space-core"
66
67[info] welcome to sbt 1.11.5 (Eclipse Adoptium Java 17.0.8)
68[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
69[info] loading project definition from /build/repo/project
70[info] compiling 3 Scala sources to /build/repo/project/target/scala-2.12/sbt-1.0/classes ...
71[info] Non-compiled module 'compiler-bridge_2.12' for Scala 2.12.20. Compiling...
72[info] Compilation completed in 8.533s.
73[info] done compiling
74[info] loading settings for project root from build.sbt...
75[info] set current project to tuples-space-core (in build file:/build/repo/)
76[warn] there are 6 keys that are not used by any other settings/tasks:
77[warn]
78[warn] * ThisBuild / name
79[warn] +- /build/repo/build.sbt:15
80[warn] * ThisBuild / pomIncludeRepository
81[warn] +- /build/repo/build.sbt:39
82[warn] * ThisBuild / publishMavenStyle
83[warn] +- /build/repo/build.sbt:40
84[warn] * Zero / runBuild / aggregate
85[warn] +- /build/repo/project/CommunityBuildPlugin.scala:674
86[warn] * root / commands
87[warn] +- (xerial.sbt.Sonatype.sonatypeSettings) Sonatype.scala:142
88[warn] +- /build/repo/build.sbt:74
89[warn] * root / crossScalaVersions
90[warn] +- /build/repo/project/CommunityBuildPlugin.scala:104
91[warn]
92[warn] note: a setting might still be used by a command; to exclude a key from this `lintUnused` check
93[warn] either append it to `Global / excludeLintKeys` or call .withRank(KeyRanks.Invisible) on the key
94Execute setCrossScalaVersions: 3.7.4
95OpenCB::Changing crossVersion 3.3.0 -> 3.7.4 in root/crossScalaVersions
96OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.7.4) in root/crossScalaVersions
97[info] set current project to tuples-space-core (in build file:/build/repo/)
98[info] Setting Scala version to 3.7.4 on 1 projects.
99[info] Switching Scala version on:
100[info] * root (3.7.4)
101[info] Excluding projects:
102[info] Reapplying settings...
103[info] set current project to tuples-space-core (in build file:/build/repo/)
104Execute mapScalacOptions: -rewrite,REQUIRE:-source:3.4-migration,-Wconf:msg=can be rewritten automatically under:s -indent,-no-indent,-new-syntax,,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
105[info] Reapplying settings...
106[info] set current project to tuples-space-core (in build file:/build/repo/)
107[info] Defining Global / credentials, credentials
108[info] The new values will be used by Global / pgpSelectPassphrase, Global / pgpSigningKey and 5 others.
109[info] Run `last` for details.
110[info] Reapplying settings...
111[info] set current project to tuples-space-core (in build file:/build/repo/)
112Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
113[info] Reapplying settings...
114OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
115
116 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
117 Did you mean allExcludeDependencies ?
118 , retry without global scopes
119[info] Reapplying settings...
120[info] set current project to tuples-space-core (in build file:/build/repo/)
121Execute removeScalacOptionsStartingWith: -P:wartremover
122[info] Reapplying settings...
123[info] set current project to tuples-space-core (in build file:/build/repo/)
124[success] Total time: 0 s, completed Jan 13, 2026, 3:16:48 PM
125Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","sourceVersion":"3.4","migrationVersions":["3.4"],"sourcePatches":[]}
126Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),CompileOnly,List()))
127Starting build...
128Projects: Set(root)
129Starting build for ProjectRef(file:/build/repo/,root) (tuples-space-core)... [0/1]
130OpenCB::Exclude Scala3 specific scalacOption `-rewrite` in Scala 2.12.20 module Global
131OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.4-migration` in Scala 2.12.20 module Global
132OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
133OpenCB::Filter out '-Xfatal-warnings', matches setting pattern '^-?-Xfatal-warnings'
134Compile scalacOptions: -Xsemanticdb, -semanticdb-target, /build/repo/target/scala-3.7.4/meta, -rewrite, -Wconf:msg=can be rewritten automatically under:s, -source:3.4-migration
135[info] Headers created for 15 files:
136[info] /build/repo/src/main/scala/tuples/space/dsl/numeric/NumericTemplate.scala
137[info] /build/repo/src/main/scala/tuples/space/TupleOps.scala
138[info] /build/repo/src/main/scala/tuples/space/dsl/numeric/FloatTemplate.scala
139[info] /build/repo/src/main/scala/tuples/space/dsl/numeric/IntTemplate.scala
140[info] /build/repo/src/main/scala/tuples/space/JsonSerializable.scala
141[info] /build/repo/src/main/scala/tuples/space/JsonElement.scala
142[info] /build/repo/src/main/scala/tuples/space/dsl/numeric/DoubleTemplate.scala
143[info] /build/repo/src/main/scala/AnyOps.scala
144[info] /build/repo/src/main/scala/tuples/space/DSL.scala
145[info] /build/repo/src/main/scala/tuples/space/dsl/numeric/IntegralTemplate.scala
146[info] /build/repo/src/main/scala/tuples/space/JsonTemplate.scala
147[info] /build/repo/src/main/scala/tuples/space/dsl/Template.scala
148[info] /build/repo/src/main/scala/tuples/space/dsl/numeric/LongTemplate.scala
149[info] /build/repo/src/main/scala/tuples/space/JsonTuple.scala
150[info] /build/repo/src/main/scala/tuples/space/dsl/StringTemplate.scala
151[info] compiling 15 Scala sources to /build/repo/target/scala-3.7.4/classes ...
152[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:80:33
153[warn] 80 | case v: JsonTuple => v.asJson
154[warn] | ^
155[warn] |Result of implicit search for io.circe.Encoder[io.github.cakelier.tuples.space.JsonTuple] will change.
156[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTuple will be no longer eligible
157[warn] | because it is not defined before the search position.
158[warn] |Result with new rules: No Matching Implicit.
159[warn] |To opt into the new rules, compile with `-source future` or use
160[warn] |the `scala.language.future` language import.
161[warn] |
162[warn] |To fix the problem without the language import, you could try one of the following:
163[warn] | - use a `given ... with` clause as the enclosing given,
164[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTuple comes earlier,
165[warn] | - use an explicit argument.
166[warn] |This will be an error in Scala 3.5 and later.
167[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:94:61
168[warn] 94 | .orElse[DecodingFailure, JsonElement](c.as[JsonTuple])
169[warn] | ^
170[warn] |Result of implicit search for io.circe.Decoder[io.github.cakelier.tuples.space.JsonTuple] will change.
171[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTuple will be no longer eligible
172[warn] | because it is not defined before the search position.
173[warn] |Result with new rules: No Matching Implicit.
174[warn] |To opt into the new rules, compile with `-source future` or use
175[warn] |the `scala.language.future` language import.
176[warn] |
177[warn] |To fix the problem without the language import, you could try one of the following:
178[warn] | - use a `given ... with` clause as the enclosing given,
179[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTuple comes earlier,
180[warn] | - use an explicit argument.
181[warn] |This will be an error in Scala 3.5 and later.
182[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:117:39
183[warn] 117 | "templates" -> t.templates.asJson,
184[warn] | ^
185[warn] |Result of implicit search for io.circe.Encoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
186[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate will be no longer eligible
187[warn] | because it is not defined before the search position.
188[warn] |Result with new rules: No Matching Implicit.
189[warn] |To opt into the new rules, compile with `-source future` or use
190[warn] |the `scala.language.future` language import.
191[warn] |
192[warn] |To fix the problem without the language import, you could try one of the following:
193[warn] | - use a `given ... with` clause as the enclosing given,
194[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate comes earlier,
195[warn] | - use an explicit argument.
196[warn] |This will be an error in Scala 3.5 and later.
197[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:121:102
198[warn] 121 | private given Decoder[JsonAnyOfTemplate] = Decoder.forProduct1("templates")(JsonAnyOfTemplate.apply)
199[warn] | ^
200[warn] |Result of implicit search for io.circe.Decoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
201[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate will be no longer eligible
202[warn] | because it is not defined before the search position.
203[warn] |Result with new rules: No Matching Implicit.
204[warn] |To opt into the new rules, compile with `-source future` or use
205[warn] |the `scala.language.future` language import.
206[warn] |
207[warn] |To fix the problem without the language import, you could try one of the following:
208[warn] | - use a `given ... with` clause as the enclosing given,
209[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate comes earlier,
210[warn] | - use an explicit argument.
211[warn] |This will be an error in Scala 3.5 and later.
212[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:125:39
213[warn] 125 | "templates" -> t.templates.asJson,
214[warn] | ^
215[warn] |Result of implicit search for io.circe.Encoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
216[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate will be no longer eligible
217[warn] | because it is not defined before the search position.
218[warn] |Result with new rules: No Matching Implicit.
219[warn] |To opt into the new rules, compile with `-source future` or use
220[warn] |the `scala.language.future` language import.
221[warn] |
222[warn] |To fix the problem without the language import, you could try one of the following:
223[warn] | - use a `given ... with` clause as the enclosing given,
224[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate comes earlier,
225[warn] | - use an explicit argument.
226[warn] |This will be an error in Scala 3.5 and later.
227[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:129:102
228[warn] 129 | private given Decoder[JsonAllOfTemplate] = Decoder.forProduct1("templates")(JsonAllOfTemplate.apply)
229[warn] | ^
230[warn] |Result of implicit search for io.circe.Decoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
231[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate will be no longer eligible
232[warn] | because it is not defined before the search position.
233[warn] |Result with new rules: No Matching Implicit.
234[warn] |To opt into the new rules, compile with `-source future` or use
235[warn] |the `scala.language.future` language import.
236[warn] |
237[warn] |To fix the problem without the language import, you could try one of the following:
238[warn] | - use a `given ... with` clause as the enclosing given,
239[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate comes earlier,
240[warn] | - use an explicit argument.
241[warn] |This will be an error in Scala 3.5 and later.
242[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:133:39
243[warn] 133 | "templates" -> t.templates.asJson,
244[warn] | ^
245[warn] |Result of implicit search for io.circe.Encoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
246[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate will be no longer eligible
247[warn] | because it is not defined before the search position.
248[warn] |Result with new rules: No Matching Implicit.
249[warn] |To opt into the new rules, compile with `-source future` or use
250[warn] |the `scala.language.future` language import.
251[warn] |
252[warn] |To fix the problem without the language import, you could try one of the following:
253[warn] | - use a `given ... with` clause as the enclosing given,
254[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate comes earlier,
255[warn] | - use an explicit argument.
256[warn] |This will be an error in Scala 3.5 and later.
257[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:137:102
258[warn] 137 | private given Decoder[JsonOneOfTemplate] = Decoder.forProduct1("templates")(JsonOneOfTemplate.apply)
259[warn] | ^
260[warn] |Result of implicit search for io.circe.Decoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
261[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate will be no longer eligible
262[warn] | because it is not defined before the search position.
263[warn] |Result with new rules: No Matching Implicit.
264[warn] |To opt into the new rules, compile with `-source future` or use
265[warn] |the `scala.language.future` language import.
266[warn] |
267[warn] |To fix the problem without the language import, you could try one of the following:
268[warn] | - use a `given ... with` clause as the enclosing given,
269[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate comes earlier,
270[warn] | - use an explicit argument.
271[warn] |This will be an error in Scala 3.5 and later.
272[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:142:37
273[warn] 142 | "template" -> t.template.asJson
274[warn] | ^
275[warn] |Result of implicit search for io.circe.Encoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
276[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate will be no longer eligible
277[warn] | because it is not defined before the search position.
278[warn] |Result with new rules: No Matching Implicit.
279[warn] |To opt into the new rules, compile with `-source future` or use
280[warn] |the `scala.language.future` language import.
281[warn] |
282[warn] |To fix the problem without the language import, you could try one of the following:
283[warn] | - use a `given ... with` clause as the enclosing given,
284[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate comes earlier,
285[warn] | - use an explicit argument.
286[warn] |This will be an error in Scala 3.5 and later.
287[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:145:97
288[warn] 145 | private given Decoder[JsonNotTemplate] = Decoder.forProduct1("template")(JsonNotTemplate.apply)
289[warn] | ^
290[warn] |Result of implicit search for io.circe.Decoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
291[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate will be no longer eligible
292[warn] | because it is not defined before the search position.
293[warn] |Result with new rules: No Matching Implicit.
294[warn] |To opt into the new rules, compile with `-source future` or use
295[warn] |the `scala.language.future` language import.
296[warn] |
297[warn] |To fix the problem without the language import, you could try one of the following:
298[warn] | - use a `given ... with` clause as the enclosing given,
299[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate comes earlier,
300[warn] | - use an explicit argument.
301[warn] |This will be an error in Scala 3.5 and later.
302[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:149:49
303[warn] 149 | "itemsTemplates" -> t.itemsTemplates.asJson,
304[warn] | ^
305[warn] |Result of implicit search for io.circe.Encoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
306[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate will be no longer eligible
307[warn] | because it is not defined before the search position.
308[warn] |Result with new rules: No Matching Implicit.
309[warn] |To opt into the new rules, compile with `-source future` or use
310[warn] |the `scala.language.future` language import.
311[warn] |
312[warn] |To fix the problem without the language import, you could try one of the following:
313[warn] | - use a `given ... with` clause as the enclosing given,
314[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate comes earlier,
315[warn] | - use an explicit argument.
316[warn] |This will be an error in Scala 3.5 and later.
317[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:155:85
318[warn] 155 | Decoder.forProduct2("itemsTemplates", "additionalItems")(JsonTupleTemplate.apply)
319[warn] | ^
320[warn] |Result of implicit search for io.circe.Decoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
321[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate will be no longer eligible
322[warn] | because it is not defined before the search position.
323[warn] |Result with new rules: No Matching Implicit.
324[warn] |To opt into the new rules, compile with `-source future` or use
325[warn] |the `scala.language.future` language import.
326[warn] |
327[warn] |To fix the problem without the language import, you could try one of the following:
328[warn] | - use a `given ... with` clause as the enclosing given,
329[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate comes earlier,
330[warn] | - use an explicit argument.
331[warn] |This will be an error in Scala 3.5 and later.
332[warn] 12 warnings found
333[info] done compiling
334[info] Headers created for 5 files:
335[info] /build/repo/src/test/scala/tuples/space/DSLTemplateTest.scala
336[info] /build/repo/src/test/scala/tuples/space/JsonTemplateTest.scala
337[info] /build/repo/src/test/scala/tuples/space/JsonTupleTest.scala
338[info] /build/repo/src/test/scala/tuples/space/JsonSerializationTest.scala
339[info] /build/repo/src/test/scala/tuples/space/DSLIntegralTemplateTest.scala
340[info] compiling 5 Scala sources to /build/repo/target/scala-3.7.4/test-classes ...
341[info] [patched file /build/repo/src/test/scala/tuples/space/DSLIntegralTemplateTest.scala]
342[info] [patched file /build/repo/src/test/scala/tuples/space/DSLTemplateTest.scala]
343[info] done compiling
344[info] compiling 2 Scala sources to /build/repo/target/scala-3.7.4/test-classes ...
345[info] done compiling
346
347************************
348Build summary:
349[{
350 "module": "tuples-space-core",
351 "compile": {"status": "ok", "tookMs": 9692, "warnings": 12, "errors": 0, "sourceVersion": "3.4-migration"},
352 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
353 "test-compile": {"status": "ok", "tookMs": 7824, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
354 "test": {"status": "skipped", "tookMs": 0, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
355 "publish": {"status": "skipped", "tookMs": 0},
356 "metadata": {
357 "crossScalaVersions": ["2.12.20"]
358}
359}]
360************************
361[success] Total time: 21 s, completed Jan 13, 2026, 3:17:09 PM
362[0JChecking patch project/plugins.sbt...
363Checking patch project/build.properties...
364Checking patch build.sbt...
365Applied patch project/plugins.sbt cleanly.
366Applied patch project/build.properties cleanly.
367Applied patch build.sbt cleanly.
368Commit migration rewrites
369Switched to a new branch 'opencb/migrate-source-3.4'
370[opencb/migrate-source-3.4 f4e4f98] Apply Scala compiler rewrites using -source:3.4-migration using Scala 3.7.4
371 20 files changed, 140 insertions(+), 140 deletions(-)
372----
373Preparing build for 3.8.0
374Scala binary version found: 3.8
375Using configured source version: 3.4
376Scala binary version found: 3.8
377Using configured source version: 3.4
378Would try to apply common scalacOption (best-effort, sbt/mill only):
379Append: ,REQUIRE:-source:3.4
380Remove: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
381----
382Starting build for 3.8.0
383Execute tests: true
384sbt project found:
385Sbt version 1.9.3 is not supported, minimal supported version is 1.11.5
386Enforcing usage of sbt in version 1.11.5
387No prepare script found for project cake-lier/tuples-space-core
388##################################
389Scala version: 3.8.0
390Targets: io.github.cake-lier%tuples-space-core
391Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","sourceVersion":"3.4","migrationVersions":["3.4"],"sourcePatches":[]}
392##################################
393Using extra scalacOptions: ,REQUIRE:-source:3.4
394Filtering out scalacOptions: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
395[sbt_options] declare -a sbt_options=()
396[process_args] java_version = '17'
397[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8/rt.jar'
398# Executing command line:
399java
400-Dfile.encoding=UTF-8
401-Dcommunitybuild.scala=3.8.0
402-Dcommunitybuild.project.dependencies.add=
403-Xmx7G
404-Xms4G
405-Xss8M
406-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
407-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8
408-jar
409/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
410"setCrossScalaVersions 3.8.0"
411"++3.8.0 -v"
412"mapScalacOptions ",REQUIRE:-source:3.4,-Wconf:msg=can be rewritten automatically under:s" ",-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
413"set every credentials := Nil"
414"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
415"removeScalacOptionsStartingWith -P:wartremover"
416
417moduleMappings
418"runBuild 3.8.0 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","sourceVersion":"3.4","migrationVersions":["3.4"],"sourcePatches":[]}""" io.github.cake-lier%tuples-space-core"
419
420[info] welcome to sbt 1.11.5 (Eclipse Adoptium Java 17.0.8)
421[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
422[info] loading project definition from /build/repo/project
423[info] loading settings for project root from build.sbt...
424[info] set current project to tuples-space-core (in build file:/build/repo/)
425[warn] there are 6 keys that are not used by any other settings/tasks:
426[warn]
427[warn] * ThisBuild / name
428[warn] +- /build/repo/build.sbt:15
429[warn] * ThisBuild / pomIncludeRepository
430[warn] +- /build/repo/build.sbt:39
431[warn] * ThisBuild / publishMavenStyle
432[warn] +- /build/repo/build.sbt:40
433[warn] * Zero / runBuild / aggregate
434[warn] +- /build/repo/project/CommunityBuildPlugin.scala:674
435[warn] * root / commands
436[warn] +- (xerial.sbt.Sonatype.sonatypeSettings) Sonatype.scala:142
437[warn] +- /build/repo/build.sbt:74
438[warn] * root / crossScalaVersions
439[warn] +- /build/repo/project/CommunityBuildPlugin.scala:104
440[warn]
441[warn] note: a setting might still be used by a command; to exclude a key from this `lintUnused` check
442[warn] either append it to `Global / excludeLintKeys` or call .withRank(KeyRanks.Invisible) on the key
443Execute setCrossScalaVersions: 3.8.0
444OpenCB::Changing crossVersion 3.3.0 -> 3.8.0 in root/crossScalaVersions
445OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.8.0) in root/crossScalaVersions
446[info] set current project to tuples-space-core (in build file:/build/repo/)
447[info] Setting Scala version to 3.8.0 on 1 projects.
448[info] Switching Scala version on:
449[info] * root (3.8.0)
450[info] Excluding projects:
451[info] Reapplying settings...
452[info] set current project to tuples-space-core (in build file:/build/repo/)
453Execute mapScalacOptions: ,REQUIRE:-source:3.4,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
454[info] Reapplying settings...
455[info] set current project to tuples-space-core (in build file:/build/repo/)
456[info] Defining Global / credentials, credentials
457[info] The new values will be used by Global / pgpSelectPassphrase, Global / pgpSigningKey and 5 others.
458[info] Run `last` for details.
459[info] Reapplying settings...
460[info] set current project to tuples-space-core (in build file:/build/repo/)
461Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
462[info] Reapplying settings...
463OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
464
465 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
466 Did you mean allExcludeDependencies ?
467 , retry without global scopes
468[info] Reapplying settings...
469[info] set current project to tuples-space-core (in build file:/build/repo/)
470Execute removeScalacOptionsStartingWith: -P:wartremover
471[info] Reapplying settings...
472[info] set current project to tuples-space-core (in build file:/build/repo/)
473[success] Total time: 0 s, completed Jan 13, 2026, 3:17:18 PM
474Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","sourceVersion":"3.4","migrationVersions":["3.4"],"sourcePatches":[]}
475Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),Full,List()))
476Starting build...
477Projects: Set(root)
478Starting build for ProjectRef(file:/build/repo/,root) (tuples-space-core)... [0/1]
479OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.4` in Scala 2.12.20 module Global
480OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
481OpenCB::Filter out '-Xfatal-warnings', matches setting pattern '^-?-Xfatal-warnings'
482Compile scalacOptions: -Xsemanticdb, -semanticdb-target, /build/repo/target/scala-3.8.0/meta, -Wconf:msg=can be rewritten automatically under:s, -source:3.4
483[info] compiling 15 Scala sources to /build/repo/target/scala-3.8.0/classes ...
484[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:80:33
485[warn] 80 | case v: JsonTuple => v.asJson
486[warn] | ^
487[warn] |Result of implicit search for io.circe.Encoder[io.github.cakelier.tuples.space.JsonTuple] will change.
488[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTuple will be no longer eligible
489[warn] | because it is not defined before the search position.
490[warn] |Result with new rules: No Matching Implicit.
491[warn] |To opt into the new rules, compile with `-source future` or use
492[warn] |the `scala.language.future` language import.
493[warn] |
494[warn] |To fix the problem without the language import, you could try one of the following:
495[warn] | - use a `given ... with` clause as the enclosing given,
496[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTuple comes earlier,
497[warn] | - use an explicit argument.
498[warn] |This will be an error in Scala 3.5 and later.
499[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:94:61
500[warn] 94 | .orElse[DecodingFailure, JsonElement](c.as[JsonTuple])
501[warn] | ^
502[warn] |Result of implicit search for io.circe.Decoder[io.github.cakelier.tuples.space.JsonTuple] will change.
503[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTuple will be no longer eligible
504[warn] | because it is not defined before the search position.
505[warn] |Result with new rules: No Matching Implicit.
506[warn] |To opt into the new rules, compile with `-source future` or use
507[warn] |the `scala.language.future` language import.
508[warn] |
509[warn] |To fix the problem without the language import, you could try one of the following:
510[warn] | - use a `given ... with` clause as the enclosing given,
511[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTuple comes earlier,
512[warn] | - use an explicit argument.
513[warn] |This will be an error in Scala 3.5 and later.
514[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:117:39
515[warn] 117 | "templates" -> t.templates.asJson,
516[warn] | ^
517[warn] |Result of implicit search for io.circe.Encoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
518[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate will be no longer eligible
519[warn] | because it is not defined before the search position.
520[warn] |Result with new rules: No Matching Implicit.
521[warn] |To opt into the new rules, compile with `-source future` or use
522[warn] |the `scala.language.future` language import.
523[warn] |
524[warn] |To fix the problem without the language import, you could try one of the following:
525[warn] | - use a `given ... with` clause as the enclosing given,
526[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate comes earlier,
527[warn] | - use an explicit argument.
528[warn] |This will be an error in Scala 3.5 and later.
529[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:121:102
530[warn] 121 | private given Decoder[JsonAnyOfTemplate] = Decoder.forProduct1("templates")(JsonAnyOfTemplate.apply)
531[warn] | ^
532[warn] |Result of implicit search for io.circe.Decoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
533[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate will be no longer eligible
534[warn] | because it is not defined before the search position.
535[warn] |Result with new rules: No Matching Implicit.
536[warn] |To opt into the new rules, compile with `-source future` or use
537[warn] |the `scala.language.future` language import.
538[warn] |
539[warn] |To fix the problem without the language import, you could try one of the following:
540[warn] | - use a `given ... with` clause as the enclosing given,
541[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate comes earlier,
542[warn] | - use an explicit argument.
543[warn] |This will be an error in Scala 3.5 and later.
544[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:125:39
545[warn] 125 | "templates" -> t.templates.asJson,
546[warn] | ^
547[warn] |Result of implicit search for io.circe.Encoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
548[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate will be no longer eligible
549[warn] | because it is not defined before the search position.
550[warn] |Result with new rules: No Matching Implicit.
551[warn] |To opt into the new rules, compile with `-source future` or use
552[warn] |the `scala.language.future` language import.
553[warn] |
554[warn] |To fix the problem without the language import, you could try one of the following:
555[warn] | - use a `given ... with` clause as the enclosing given,
556[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate comes earlier,
557[warn] | - use an explicit argument.
558[warn] |This will be an error in Scala 3.5 and later.
559[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:129:102
560[warn] 129 | private given Decoder[JsonAllOfTemplate] = Decoder.forProduct1("templates")(JsonAllOfTemplate.apply)
561[warn] | ^
562[warn] |Result of implicit search for io.circe.Decoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
563[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate will be no longer eligible
564[warn] | because it is not defined before the search position.
565[warn] |Result with new rules: No Matching Implicit.
566[warn] |To opt into the new rules, compile with `-source future` or use
567[warn] |the `scala.language.future` language import.
568[warn] |
569[warn] |To fix the problem without the language import, you could try one of the following:
570[warn] | - use a `given ... with` clause as the enclosing given,
571[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate comes earlier,
572[warn] | - use an explicit argument.
573[warn] |This will be an error in Scala 3.5 and later.
574[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:133:39
575[warn] 133 | "templates" -> t.templates.asJson,
576[warn] | ^
577[warn] |Result of implicit search for io.circe.Encoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
578[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate will be no longer eligible
579[warn] | because it is not defined before the search position.
580[warn] |Result with new rules: No Matching Implicit.
581[warn] |To opt into the new rules, compile with `-source future` or use
582[warn] |the `scala.language.future` language import.
583[warn] |
584[warn] |To fix the problem without the language import, you could try one of the following:
585[warn] | - use a `given ... with` clause as the enclosing given,
586[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate comes earlier,
587[warn] | - use an explicit argument.
588[warn] |This will be an error in Scala 3.5 and later.
589[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:137:102
590[warn] 137 | private given Decoder[JsonOneOfTemplate] = Decoder.forProduct1("templates")(JsonOneOfTemplate.apply)
591[warn] | ^
592[warn] |Result of implicit search for io.circe.Decoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
593[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate will be no longer eligible
594[warn] | because it is not defined before the search position.
595[warn] |Result with new rules: No Matching Implicit.
596[warn] |To opt into the new rules, compile with `-source future` or use
597[warn] |the `scala.language.future` language import.
598[warn] |
599[warn] |To fix the problem without the language import, you could try one of the following:
600[warn] | - use a `given ... with` clause as the enclosing given,
601[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate comes earlier,
602[warn] | - use an explicit argument.
603[warn] |This will be an error in Scala 3.5 and later.
604[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:142:37
605[warn] 142 | "template" -> t.template.asJson
606[warn] | ^
607[warn] |Result of implicit search for io.circe.Encoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
608[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate will be no longer eligible
609[warn] | because it is not defined before the search position.
610[warn] |Result with new rules: No Matching Implicit.
611[warn] |To opt into the new rules, compile with `-source future` or use
612[warn] |the `scala.language.future` language import.
613[warn] |
614[warn] |To fix the problem without the language import, you could try one of the following:
615[warn] | - use a `given ... with` clause as the enclosing given,
616[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate comes earlier,
617[warn] | - use an explicit argument.
618[warn] |This will be an error in Scala 3.5 and later.
619[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:145:97
620[warn] 145 | private given Decoder[JsonNotTemplate] = Decoder.forProduct1("template")(JsonNotTemplate.apply)
621[warn] | ^
622[warn] |Result of implicit search for io.circe.Decoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
623[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate will be no longer eligible
624[warn] | because it is not defined before the search position.
625[warn] |Result with new rules: No Matching Implicit.
626[warn] |To opt into the new rules, compile with `-source future` or use
627[warn] |the `scala.language.future` language import.
628[warn] |
629[warn] |To fix the problem without the language import, you could try one of the following:
630[warn] | - use a `given ... with` clause as the enclosing given,
631[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate comes earlier,
632[warn] | - use an explicit argument.
633[warn] |This will be an error in Scala 3.5 and later.
634[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:149:49
635[warn] 149 | "itemsTemplates" -> t.itemsTemplates.asJson,
636[warn] | ^
637[warn] |Result of implicit search for io.circe.Encoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
638[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate will be no longer eligible
639[warn] | because it is not defined before the search position.
640[warn] |Result with new rules: No Matching Implicit.
641[warn] |To opt into the new rules, compile with `-source future` or use
642[warn] |the `scala.language.future` language import.
643[warn] |
644[warn] |To fix the problem without the language import, you could try one of the following:
645[warn] | - use a `given ... with` clause as the enclosing given,
646[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Encoder_JsonTemplate comes earlier,
647[warn] | - use an explicit argument.
648[warn] |This will be an error in Scala 3.5 and later.
649[warn] -- Warning: /build/repo/src/main/scala/tuples/space/JsonSerializable.scala:155:85
650[warn] 155 | Decoder.forProduct2("itemsTemplates", "additionalItems")(JsonTupleTemplate.apply)
651[warn] | ^
652[warn] |Result of implicit search for io.circe.Decoder[io.github.cakelier.tuples.space.JsonTemplate] will change.
653[warn] |Current result io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate will be no longer eligible
654[warn] | because it is not defined before the search position.
655[warn] |Result with new rules: No Matching Implicit.
656[warn] |To opt into the new rules, compile with `-source future` or use
657[warn] |the `scala.language.future` language import.
658[warn] |
659[warn] |To fix the problem without the language import, you could try one of the following:
660[warn] | - use a `given ... with` clause as the enclosing given,
661[warn] | - rearrange definitions so that io.github.cakelier.tuples.space.JsonSerializable.given_Decoder_JsonTemplate comes earlier,
662[warn] | - use an explicit argument.
663[warn] |This will be an error in Scala 3.5 and later.
664[warn] 12 warnings found
665[info] done compiling
666[info] compiling 5 Scala sources to /build/repo/target/scala-3.8.0/test-classes ...
667[info] done compiling
668[info] DSLTemplateTest:
669[info] The complete keyword
670[info] when compiling a template via the DSL
671[info] - should create a json tuple template without additional items
672[info] The partial keyword
673[info] when compiling a template via the DSL
674[info] - should create a json tuple template with additional items
675[info] The anyOf keyword
676[info] when compiling a template via the DSL
677[info] - should create a json anyOf template
678[info] The allOf keyword
679[info] when compiling a template via the DSL
680[info] - should create a json allOf template
681[info] The oneOf keyword
682[info] when compiling a template via the DSL
683[info] - should create a json oneOf template
684[info] The not keyword
685[info] when compiling a template via the DSL
686[info] - should create a json not template
687[info] The * keyword
688[info] when compiling a template via the DSL
689[info] - should create a json any template
690[info] The nil keyword
691[info] when compiling a template via the DSL
692[info] - should create a json null template
693[info] A boolean
694[info] when compiling a template via the DSL
695[info] - should create a json boolean template
696[info] The bool keyword
697[info] when compiling a template via the DSL
698[info] - should create a json boolean template
699[info] A string
700[info] when compiling a template via the DSL
701[info] - should create a json string template
702[info] The string keyword
703[info] when compiling a template via the DSL
704[info] - should create a json string template
705[info] A float
706[info] when compiling a template via the DSL
707[info] - should create a json float template with a constant element
708[info] The float keyword
709[info] when compiling a template via the DSL
710[info] - should create a json float template
711[info] A double
712[info] when compiling a template via the DSL
713[info] - should create a json double template with a constant element
714[info] The double keyword
715[info] when compiling a template via the DSL
716[info] - should create a json double template
717[info] DSLIntegralTemplateTest:
718[info] An int
719[info] when compiling a template via the DSL
720[info] - should create a json int template with a constant element
721[info] The int keyword
722[info] when compiling a template via the DSL
723[info] - should create a json int template
724[info] A long
725[info] when compiling a template via the DSL
726[info] - should create a json long template with a constant element
727[info] The long keyword
728[info] when compiling a template via the DSL
729[info] - should create a json long template
730[info] JsonTupleTest:
731[info] A json tuple
732[info] when created empty
733[info] - should be empty
734[info] when created with only one element
735[info] - should contain that element
736[info] when created with multiple elements
737[info] - should contain them all
738[info] when created from a Seq
739[info] - should contain all Seq elements
740[info] when calculating its arity
741[info] - should return the correct value
742[info] when appending an element
743[info] - should have the element appended
744[info] when concatenating another tuple
745[info] - should create a new tuple with the elements of the second appended to the first
746[info] when dropping some elements
747[info] - should drop the specified elements
748[info] when extracting some elements
749[info] - should given the specified element if it exists
750[info] when filtering some elements
751[info] - should keep the elements passing the filter
752[info] when mapping some elements
753[info] - should map every element in the tuple
754[info] when flatmapping some elements
755[info] - should map every element in the tuple and then flatten it
756[info] when folding left over some elements
757[info] - should aggregate all elements starting from the leftmost and going to the right
758[info] when folding right over some elements
759[info] - should aggregate all elements starting from the rightmost and going to the left
760[info] when taking its head
761[info] - should return it if the tuple is not empty
762[info] when taking its tail
763[info] - should return it if the tuple has at least two elements
764[info] when taking its initial portion
765[info] - should return it if the tuple has at least two elements
766[info] when taking its last element
767[info] - should return it if the tuple has at least one elements
768[info] when splitting in two json tuples
769[info] - should return a tuple made by the two halves
770[info] when taking some elements
771[info] - should take the specified elements
772[info] when zipping another tuple
773[info] - should zip the elements of the two tuples two by two creating a tuple of two-elements tuples
774[info] when transformed into a Seq
775[info] - should put all its elements into the Seq
776[info] when executing an action for each element
777[info] - should apply it for each one of them
778[info] JsonTemplateTest:
779[info] A json boolean template
780[info] when used to match a json boolean value
781[info] - should correctly match it
782[info] when used to match a different json value
783[info] - should not match it under any circumstance
784[info] A json int template
785[info] when used to match a json int value
786[info] - should correctly match it
787[info] when used to match a different json value
788[info] - should not match it under any circumstance
789[info] A json long template
790[info] when used to match a json long value
791[info] - should correctly match it
792[info] when used to match a different json value
793[info] - should not match it under any circumstance
794[info] A json double template
795[info] when used to match a json double value
796[info] - should correctly match it
797[info] when used to match a different json value
798[info] - should not match it under any circumstance
799[info] A json float template
800[info] when used to match a json float value
801[info] - should correctly match it
802[info] when used to match a different json value
803[info] - should not match it under any circumstance
804[info] A json string template
805[info] when used to match a json string value
806[info] - should correctly match it
807[info] when used to match a different json value
808[info] - should not match it under any circumstance
809[info] when used in an equals comparison
810[info] - should return the correct value for equals and hashCode
811[info] A json null template
812[info] when used to match a json null value
813[info] - should correctly match it
814[info] when used to match a different json value
815[info] - should not match it under any circumstance
816[info] A json any template
817[info] when used to match any json value
818[info] - should correctly match it
819[info] A json tuple template
820[info] when used to match exactly a json tuple value
821[info] - should correctly match it
822[info] when used to match partially a json tuple value
823[info] - should correctly match it starting from the leftmost element of it
824[info] when used to match partially a different json value
825[info] - should not match it under any circumstance
826[info] A json not template
827[info] when used on another template
828[info] - should return the opposite answer that the first template returns
829[info] A json anyOf template
830[info] when used on other templates
831[info] - should match only if at least one of those templates match
832[info] A json allOf template
833[info] when used on other templates
834[info] - should match only if all those templates match
835[info] A json oneOf template
836[info] when used on other templates
837[info] - should match only if exactly one of those templates match
838[info] JsonSerializationTest:
839[info] A json element
840[info] when JSON serialized
841[info] - should be serialized in the expected way
842[info] when JSON deserialized
843[info] - should be deserialized in the expected way
844[info] when JSON deserialized with a wrongly formatted value
845[info] - should throw an exception
846[info] A json tuple
847[info] when JSON serialized
848[info] - should be serialized in the expected way
849[info] when JSON deserialized
850[info] - should be deserialized in the expected way
851[info] when JSON deserialized with a wrongly formatted value
852[info] - should throw an exception
853[info] A json template
854[info] when JSON deserialized with a wrongly formatted value
855[info] - should throw an exception
856[info] A json boolean template
857[info] when JSON serialized
858[info] - should be serialized in the expected way
859[info] when JSON deserialized
860[info] - should be deserialized in the expected way
861[info] A json int template
862[info] when JSON serialized
863[info] - should be serialized in the expected way
864[info] when JSON deserialized
865[info] - should be deserialized in the expected way
866[info] A json long template
867[info] when JSON serialized
868[info] - should be serialized in the expected way
869[info] when JSON deserialized
870[info] - should be deserialized in the expected way
871[info] A json double template
872[info] when JSON serialized
873[info] - should be serialized in the expected way
874[info] when JSON deserialized
875[info] - should be deserialized in the expected way
876[info] A json float template
877[info] when JSON serialized
878[info] - should be serialized in the expected way
879[info] when JSON deserialized
880[info] - should be deserialized in the expected way
881[info] A json string template
882[info] when JSON serialized
883[info] - should be serialized in the expected way
884[info] when JSON deserialized
885[info] - should be deserialized in the expected way
886[info] A json null template
887[info] when JSON serialized
888[info] - should be serialized in the expected way
889[info] when JSON deserialized
890[info] - should be deserialized in the expected way
891[info] A json any template
892[info] when JSON serialized
893[info] - should be serialized in the expected way
894[info] when JSON deserialized
895[info] - should be deserialized in the expected way
896[info] A json tuple template
897[info] when JSON serialized
898[info] - should be serialized in the expected way
899[info] when JSON deserialized
900[info] - should be deserialized in the expected way
901[info] A json not template
902[info] when JSON serialized
903[info] - should be serialized in the expected way
904[info] when JSON deserialized
905[info] - should be deserialized in the expected way
906[info] A json anyOf template
907[info] when JSON serialized
908[info] - should be serialized in the expected way
909[info] when JSON deserialized
910[info] - should be deserialized in the expected way
911[info] A json allOf template
912[info] when JSON serialized
913[info] - should be serialized in the expected way
914[info] when JSON deserialized
915[info] - should be deserialized in the expected way
916[info] A json oneOf template
917[info] when JSON serialized
918[info] - should be serialized in the expected way
919[info] when JSON deserialized
920[info] - should be deserialized in the expected way
921
922************************
923Build summary:
924[{
925 "module": "tuples-space-core",
926 "compile": {"status": "ok", "tookMs": 10112, "warnings": 12, "errors": 0, "sourceVersion": "3.4"},
927 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
928 "test-compile": {"status": "ok", "tookMs": 8158, "warnings": 0, "errors": 0, "sourceVersion": "3.4"},
929 "test": {"status": "ok", "tookMs": 894, "passed": 99, "failed": 0, "ignored": 0, "skipped": 0, "total": 99, "byFramework": [{"framework": "unknown", "stats": {"passed": 99, "failed": 0, "ignored": 0, "skipped": 0, "total": 99}}]},
930 "publish": {"status": "skipped", "tookMs": 0},
931 "metadata": {
932 "crossScalaVersions": ["2.12.20"]
933}
934}]
935************************
936[success] Total time: 22 s, completed Jan 13, 2026, 3:17:39 PM
937[0JChecking patch project/plugins.sbt...
938Checking patch project/build.properties...
939Checking patch build.sbt...
940Applied patch project/plugins.sbt cleanly.
941Applied patch project/build.properties cleanly.
942Applied patch build.sbt cleanly.