Build Logs
sbt/contraband • 3.8.0-RC3:2025-12-04
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-RC3
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-RC3"
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-RC3
42Execute tests: true
43sbt project found:
44No prepare script found for project sbt/contraband
45##################################
46Scala version: 3.8.0-RC3
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-RC3
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-RC3"
68"++3.8.0-RC3 -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-RC3 """{"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.716s.
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-RC3
87OpenCB::Changing crossVersion 3.8.0-RC3 -> 3.8.0-RC3 in library/crossScalaVersions
88OpenCB::Changing crossVersion 3.8.0-RC3 -> 3.8.0-RC3 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-RC3 on 2 projects.
92[info] Switching Scala version on:
93[info] library (2.13.15, 2.12.20, 3.8.0-RC3)
94[info] plugin (2.12.20, 3.8.0-RC3)
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 Dec 4, 2025, 3:50:45 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-RC3/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-RC3/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-RC3/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.GraphQLSchemaParserSpec
196[info] - SchemaParser should parse an empty type
197[info] - parse two types
198[info] - parse a type with doc comments
199[info] - parse a type with extra comments
200[info] - parse a type with target directive
201[info] - parse a type with fields
202[info] - parse a type with fields with defaults
203[info] - parse a type with fields with since directive
204[info] - parse an interface
205[info] - parse an interface with a parent
206[info] - parse an enumueration
207[info] - parse a type with package
208[info] JsonSchemaSpec:
209[info] Document.parse should
210[info] - should parse empty schemas
211[info] - should parse complete example
212[info] TypeDefinitions.parse
213[info] - should parse interface
214[info] - should parse record
215[info] - should parse enumeration
216[info] - should throw an error on invalid definition kind
217[info] InterfaceTypeDefinition.parse
218[info] - should parse simple interface
219[info] - should parse interface with one child
220[info] - should parse nested interfaces
221[info] Record.parse
222[info] - should parse simple record
223[info] Enumeration.parse
224[info] - should parse simple enumeration
225[info] FieldDefinition.parseMessage
226[info] - should parse
227[info] FieldDefinition.parse
228[info] - should parse
229[info] - should parse multiline doc comments
230[info] Type.parse
231[info] - should parse simple types
232[info] - should parse lazy types
233[info] - should parse array types
234[info] - should parse option types
235[info] - should parse lazy array types
236[info] - should parse lazy option types
237[info] JsonCodecCodeGenSpec:
238[info] generate(Enumeration)
239[info] - should generate a simple enumeration
240[info] generate(Interface)
241[info] - should generate a simple interface
242[info] - should generate a simple interface with one child
243[info] - should generate nested interfaces
244[info] - should generate messages
245[info] generate(Record)
246[info] - should generate a simple record
247[info] - should grow a record from 0 to 1 field
248[info] - should grow a record from 0 to 1 to 2 fields
249[info] - should generate correct types
250[info] - should generate with different modifier
251[info] generate(Schema)
252[info] - should generate a complete schema
253[info] - should generate and indent a complete schema
254[info] - should generate correct type references
255[info] - should generate correct type references (no lazy)
256[info] The full codec object
257[info] - should include the codec of all protocol defined in the schema
258[info] sbt.contraband.GraphQLScalaCodeGenSpec
259[info] - generate(Enumeration) should generate a simple enumeration
260[info] - generate(Record) should generate a record
261[info] - generate with xinterface
262[info] - generate Map[String, String] from StringStringMap
263[info] - grow a record from 0 to 1 field
264[info] - grow a record from 0 to 2 field
265[info] - generate with modifier
266[info] - generate(Interface) should generate an interface with one child
267[info] - generate messages
268[info] - generate with customization
269[info] JsonJavaCodeGenSpec:
270[info] generate(Enumeration)
271[info] - should generate a simple enumeration
272[info] generate(Interface)
273[info] - should generate a simple interface
274[info] - should generate a simple interface with one child
275[info] - should generate nested interfaces
276[info] - should generate messages
277[info] generate(Record)
278[info] - should generate a simple record
279[info] - should grow a record from 0 to 1 field
280[info] - should grow a record from 0 to 1 to 2 fields
281[info] - should generate correct types
282[info] - should generate with different modifier
283[info] generate(Schema)
284[info] - should generate a complete schema
285[info] - should generate and indent a complete schema
286[info] - should generate correct type references
287[info] - should generate correct type references (no lazy)
288[info] sbt.contraband.GraphQLJavaCodeGenSpec
289[info] - generate(Enumeration) should generate a simple enumeration
290[info] - generate(Record) should generate a record
291[info] - generate with xinterface
292[info] - grow a record from 0 to 1 field
293[info] - grow a record from 0 to 2 field
294[info] - generate(Interface) should generate an interface with one child
295[info] - generate messages
296[info] GraphQLMixedCodeGenSpec:
297[info] sbt.contraband.GraphQLCodecCodeGenSpec
298[info] - generate(Interface) should generate a codec for an interface
299[info] - generate a codec for a two-level hierarchy of interfaces
300[info] - generate a codec for an interfaces, whose child contains custom field
301[info] generate(Record)
302[info] - should handle mixed Java-Scala inheritance
303[info] JsonScalaCodeGenSpec:
304[info] generate(Enumeration)
305[info] - should generate a simple enumeration
306[info] generate(Interface)
307[info] - should generate a simple interface
308[info] - should generate a simple interface with one child
309[info] - should generate nested interfaces
310[info] - should generate messages
311[info] generate(Record)
312[info] - should generate a simple record
313[info] - should grow a record from 0 to 1 field
314[info] - should grow a record from 0 to 1 to 2 fields
315[info] - should generate correct types
316[info] - should generate with different modifier
317[info] generate(Schema)
318[info] - should generate a complete schema
319[info] - should generate and indent a complete schema
320[info] - should generate correct type references
321[info] - should generate correct type references (no lazy)
322
323************************
324Build summary:
325[{
326 "module": "contraband",
327 "compile": {"status": "ok", "tookMs": 26013, "warnings": 7, "errors": 0, "sourceVersion": "3.8"},
328 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
329 "test-compile": {"status": "ok", "tookMs": 5945, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
330 "test": {"status": "ok", "tookMs": 954, "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: 48 s, completed Dec 4, 2025, 3:51:34 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.