Build Logs

sbt/contraband • 3.8.0:2026-01-13

Errors

0

Warnings

63

Total Lines

343

1##################################
2Clonning https://github.com/sbt/contraband.git into /build/repo using revision v0.8.0
3##################################
4Note: switching to 'a7c6a560592593a8747d712a9a6426bac7b18acd'.
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
21Would override fixed Scala version: 3.7.2
22----
23Preparing build for 3.8.0
24Scala binary version found: 3.8
25Implicitly using source version 3.8
26Scala binary version found: 3.8
27Implicitly using source version 3.8
28Would try to apply common scalacOption (best-effort, sbt/mill only):
29Append: ,REQUIRE:-source:3.8
30Remove: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
31
32Try apply source patch:
33Path: project/Dependencies.scala
34Pattern: val scala3 = "3.7.2"
35Replacement: val scala3 = "3.8.0"
36Starting compilation server
37Compiling project (Scala 3.7.3, JVM (17))
38Compiled project (Scala 3.7.3, JVM (17))
39Successfully applied pattern 'val scala3 = "3.7.2"' in project/Dependencies.scala
40----
41Starting build for 3.8.0
42Execute tests: true
43sbt project found:
44No prepare script found for project sbt/contraband
45##################################
46Scala version: 3.8.0
47Targets: org.scala-sbt%contraband
48Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"project/Dependencies.scala","pattern":"val scala3 = \"3.7.2\"","replaceWith":"val scala3 = \"<SCALA_VERSION>\""}]}
49##################################
50Using extra scalacOptions: ,REQUIRE:-source:3.8
51Filtering out scalacOptions: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
52[sbt_options] declare -a sbt_options=()
53[process_args] java_version = '17'
54[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8/rt.jar'
55# Executing command line:
56java
57-Dfile.encoding=UTF-8
58-Dcommunitybuild.scala=3.8.0
59-Dcommunitybuild.project.dependencies.add=
60-Xmx7G
61-Xms4G
62-Xss8M
63-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
64-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8
65-jar
66/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
67"setCrossScalaVersions 3.8.0"
68"++3.8.0 -v"
69"mapScalacOptions ",REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s" ",-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
70"set every credentials := Nil"
71"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
72"removeScalacOptionsStartingWith -P:wartremover"
73
74moduleMappings
75"runBuild 3.8.0 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"project/Dependencies.scala","pattern":"val scala3 = \"3.7.2\"","replaceWith":"val scala3 = \"<SCALA_VERSION>\""}]}""" org.scala-sbt%contraband"
76
77[info] welcome to sbt 1.11.5 (Eclipse Adoptium Java 17.0.8)
78[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
79[info] loading project definition from /build/repo/project
80[info] compiling 6 Scala sources to /build/repo/project/target/scala-2.12/sbt-1.0/classes ...
81[info] Non-compiled module 'compiler-bridge_2.12' for Scala 2.12.20. Compiling...
82[info] Compilation completed in 8.707s.
83[info] done compiling
84[info] loading settings for project root from build.sbt...
85[info] set current project to contraband root (in build file:/build/repo/)
86Execute setCrossScalaVersions: 3.8.0
87OpenCB::Changing crossVersion 3.8.0 -> 3.8.0 in library/crossScalaVersions
88OpenCB::Changing crossVersion 3.8.0 -> 3.8.0 in plugin/crossScalaVersions
89OpenCB::Limitting incorrect crossVersions List() -> List(2.12.20) in root/crossScalaVersions
90[info] set current project to contraband root (in build file:/build/repo/)
91[info] Setting Scala version to 3.8.0 on 2 projects.
92[info] Switching Scala version on:
93[info] library (2.13.15, 2.12.20, 3.8.0)
94[info] plugin (2.12.20, 3.8.0)
95[info] Excluding projects:
96[info] * root (2.12.20)
97[info] Reapplying settings...
98[info] set current project to contraband root (in build file:/build/repo/)
99Execute mapScalacOptions: ,REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
100[info] Reapplying settings...
101[info] set current project to contraband root (in build file:/build/repo/)
102[info] Defining Global / credentials, credentials and 1 others.
103[info] The new values will be used by Compile / scalafmtOnly, Global / pgpSelectPassphrase and 23 others.
104[info] Run `last` for details.
105[info] Reapplying settings...
106[info] set current project to contraband root (in build file:/build/repo/)
107Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
108[info] Reapplying settings...
109OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
110
111 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
112 Did you mean allExcludeDependencies ?
113 , retry without global scopes
114[info] Reapplying settings...
115[info] set current project to contraband root (in build file:/build/repo/)
116Execute removeScalacOptionsStartingWith: -P:wartremover
117[info] Reapplying settings...
118[info] set current project to contraband root (in build file:/build/repo/)
119[success] Total time: 0 s, completed Jan 13, 2026, 4:02:12 PM
120Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"project/Dependencies.scala","pattern":"val scala3 = \"3.7.2\"","replaceWith":"val scala3 = \"<SCALA_VERSION>\""}]}
121Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),Full,List()))
122Starting build...
123Projects: Set(library)
124Starting build for ProjectRef(file:/build/repo/,library) (contraband)... [0/1]
125OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.8` in Scala 2.12.20 module Global
126OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.8` in Scala 2.12.20 module Scope(Select(BuildRef(file:/build/repo/)), Zero, Zero, Zero)
127Compile scalacOptions: -Xsource:3, -Xsemanticdb, -semanticdb-target, /build/repo/library/target/scala-3.8.0/meta, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
128[info] compiling 14 Scala sources to /build/repo/library/target/scala-3.8.0/classes ...
129[warn] bad option '-Xsource:3' was ignored
130[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/library/src/main/scala/sbt/contraband/JavaCodeGen.scala:147:50
131[warn] 147 | private def genRealTpe(tpe: ast.Type): String = tpe match {
132[warn] | ^^^
133[warn] | match may not be exhaustive.
134[warn] |
135[warn] | It would fail on pattern case: _: sbt.contraband.ast.Type
136[warn] |
137[warn] | longer explanation available when compiling with `-explain`
138[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/library/src/main/scala/sbt/contraband/JavaCodeGen.scala:266:8
139[warn] 266 | case f if provided contains f => s"_${f.name}"
140[warn] | ^
141[warn] |match may not be exhaustive.
142[warn] |
143[warn] |It would fail on pattern case: sbt.contraband.ast.FieldDefinition(_, _, _, _, _, _, _)
144[warn] |
145[warn] | longer explanation available when compiling with `-explain`
146[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/library/src/main/scala/sbt/contraband/JavaCodeGen.scala:271:8
147[warn] 271 | case f if provided contains f => s"${f.name} = _${f.name};"
148[warn] | ^
149[warn] |match may not be exhaustive.
150[warn] |
151[warn] |It would fail on pattern case: sbt.contraband.ast.FieldDefinition(_, _, _, _, _, _, _)
152[warn] |
153[warn] | longer explanation available when compiling with `-explain`
154[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/library/src/main/scala/sbt/contraband/JavaCodeGen.scala:286:12
155[warn] 286 | case f if (provided contains f) && f.fieldType.isOptionalType && !f.fieldType.isLazyType =>
156[warn] | ^
157[warn] |match may not be exhaustive.
158[warn] |
159[warn] |It would fail on pattern case: sbt.contraband.ast.FieldDefinition(_, _, _, _, _, _, _)
160[warn] |
161[warn] | longer explanation available when compiling with `-explain`
162[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/library/src/main/scala/sbt/contraband/JavaCodeGen.scala:294:14
163[warn] 294 | case f if (provided contains f) && f.fieldType.isOptionalType && !f.fieldType.isLazyType =>
164[warn] | ^
165[warn] |match may not be exhaustive.
166[warn] |
167[warn] |It would fail on pattern case: sbt.contraband.ast.FieldDefinition(_, _, _, _, _, _, _)
168[warn] |
169[warn] | longer explanation available when compiling with `-explain`
170[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/library/src/main/scala/sbt/contraband/ScalaCodeGen.scala:248:6
171[warn] 248 | tpe match {
172[warn] | ^^^
173[warn] | match may not be exhaustive.
174[warn] |
175[warn] | It would fail on pattern case: _: sbt.contraband.ast.Type
176[warn] |
177[warn] | longer explanation available when compiling with `-explain`
178[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/library/src/main/scala/sbt/contraband/ScalaCodeGen.scala:428:12
179[warn] 428 | case f if provided contains f => bq(f.name)
180[warn] | ^
181[warn] |match may not be exhaustive.
182[warn] |
183[warn] |It would fail on pattern case: sbt.contraband.ast.FieldDefinition(_, _, _, _, _, _, _)
184[warn] |
185[warn] | longer explanation available when compiling with `-explain`
186[warn] there was 1 deprecation warning; re-run with -deprecation for details
187[warn] 9 warnings found
188[info] done compiling
189[info] compiling 14 Scala sources to /build/repo/library/target/scala-3.8.0/test-classes ...
190[warn] bad option '-Xsource:3' was ignored
191[warn] there were 2 feature warnings; re-run with -feature for details
192[warn] there were 14 deprecation warnings; re-run with -deprecation for details
193[warn] three warnings found
194[info] done compiling
195[info] sbt.contraband.GraphQLScalaCodeGenSpec
196[info] - generate(Enumeration) should generate a simple enumeration
197[info] - generate(Record) should generate a record
198[info] - generate with xinterface
199[info] - generate Map[String, String] from StringStringMap
200[info] - grow a record from 0 to 1 field
201[info] - grow a record from 0 to 2 field
202[info] - generate with modifier
203[info] - generate(Interface) should generate an interface with one child
204[info] - generate messages
205[info] - generate with customization
206[info] sbt.contraband.GraphQLSchemaParserSpec
207[info] - SchemaParser should parse an empty type
208[info] - parse two types
209[info] - parse a type with doc comments
210[info] - parse a type with extra comments
211[info] - parse a type with target directive
212[info] - parse a type with fields
213[info] - parse a type with fields with defaults
214[info] - parse a type with fields with since directive
215[info] - parse an interface
216[info] - parse an interface with a parent
217[info] - parse an enumueration
218[info] - parse a type with package
219[info] sbt.contraband.GraphQLCodecCodeGenSpec
220[info] - generate(Interface) should generate a codec for an interface
221[info] - generate a codec for a two-level hierarchy of interfaces
222[info] - generate a codec for an interfaces, whose child contains custom field
223[info] sbt.contraband.GraphQLJavaCodeGenSpec
224[info] GraphQLMixedCodeGenSpec:
225[info] - generate(Enumeration) should generate a simple enumeration
226[info] - generate(Record) should generate a record
227[info] - generate with xinterface
228[info] - grow a record from 0 to 1 field
229[info] - grow a record from 0 to 2 field
230[info] - generate(Interface) should generate an interface with one child
231[info] - generate messages
232[info] generate(Record)
233[info] - should handle mixed Java-Scala inheritance
234[info] JsonScalaCodeGenSpec:
235[info] generate(Enumeration)
236[info] - should generate a simple enumeration
237[info] generate(Interface)
238[info] - should generate a simple interface
239[info] - should generate a simple interface with one child
240[info] - should generate nested interfaces
241[info] - should generate messages
242[info] generate(Record)
243[info] - should generate a simple record
244[info] - should grow a record from 0 to 1 field
245[info] - should grow a record from 0 to 1 to 2 fields
246[info] - should generate correct types
247[info] - should generate with different modifier
248[info] generate(Schema)
249[info] - should generate a complete schema
250[info] - should generate and indent a complete schema
251[info] - should generate correct type references
252[info] - should generate correct type references (no lazy)
253[info] JsonJavaCodeGenSpec:
254[info] generate(Enumeration)
255[info] - should generate a simple enumeration
256[info] generate(Interface)
257[info] - should generate a simple interface
258[info] - should generate a simple interface with one child
259[info] - should generate nested interfaces
260[info] - should generate messages
261[info] generate(Record)
262[info] - should generate a simple record
263[info] - should grow a record from 0 to 1 field
264[info] - should grow a record from 0 to 1 to 2 fields
265[info] - should generate correct types
266[info] - should generate with different modifier
267[info] generate(Schema)
268[info] - should generate a complete schema
269[info] - should generate and indent a complete schema
270[info] - should generate correct type references
271[info] - should generate correct type references (no lazy)
272[info] JsonSchemaSpec:
273[info] Document.parse should
274[info] - should parse empty schemas
275[info] - should parse complete example
276[info] TypeDefinitions.parse
277[info] - should parse interface
278[info] - should parse record
279[info] - should parse enumeration
280[info] - should throw an error on invalid definition kind
281[info] InterfaceTypeDefinition.parse
282[info] - should parse simple interface
283[info] - should parse interface with one child
284[info] - should parse nested interfaces
285[info] Record.parse
286[info] - should parse simple record
287[info] Enumeration.parse
288[info] - should parse simple enumeration
289[info] FieldDefinition.parseMessage
290[info] - should parse
291[info] FieldDefinition.parse
292[info] - should parse
293[info] - should parse multiline doc comments
294[info] Type.parse
295[info] - should parse simple types
296[info] - should parse lazy types
297[info] - should parse array types
298[info] - should parse option types
299[info] - should parse lazy array types
300[info] - should parse lazy option types
301[info] JsonCodecCodeGenSpec:
302[info] generate(Enumeration)
303[info] - should generate a simple enumeration
304[info] generate(Interface)
305[info] - should generate a simple interface
306[info] - should generate a simple interface with one child
307[info] - should generate nested interfaces
308[info] - should generate messages
309[info] generate(Record)
310[info] - should generate a simple record
311[info] - should grow a record from 0 to 1 field
312[info] - should grow a record from 0 to 1 to 2 fields
313[info] - should generate correct types
314[info] - should generate with different modifier
315[info] generate(Schema)
316[info] - should generate a complete schema
317[info] - should generate and indent a complete schema
318[info] - should generate correct type references
319[info] - should generate correct type references (no lazy)
320[info] The full codec object
321[info] - should include the codec of all protocol defined in the schema
322
323************************
324Build summary:
325[{
326 "module": "contraband",
327 "compile": {"status": "ok", "tookMs": 24019, "warnings": 7, "errors": 0, "sourceVersion": "3.8"},
328 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
329 "test-compile": {"status": "ok", "tookMs": 5623, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
330 "test": {"status": "ok", "tookMs": 957, "passed": 96, "failed": 0, "ignored": 0, "skipped": 0, "total": 96, "byFramework": [{"framework": "unknown", "stats": {"passed": 96, "failed": 0, "ignored": 0, "skipped": 0, "total": 96}}]},
331 "publish": {"status": "skipped", "tookMs": 0},
332 "metadata": {
333 "crossScalaVersions": ["2.13.15", "2.12.20", "3.7.2"]
334}
335}]
336************************
337[success] Total time: 32 s, completed Jan 13, 2026, 4:02:45 PM
338[0JChecking patch project/plugins.sbt...
339Checking patch project/Dependencies.scala...
340Checking patch build.sbt...
341Applied patch project/plugins.sbt cleanly.
342Applied patch project/Dependencies.scala cleanly.
343Applied patch build.sbt cleanly.