Build Logs
typelevel/fabric • 3.8.0-RC2:2025-11-28
Errors
0
Warnings
4
Total Lines
371
1##################################
2Clonning https://github.com/typelevel/fabric.git into /build/repo using revision v1.18.4
3##################################
4Note: switching to '1c69eafef8fe8106630c36e8b0845cd5185ff4bb'.
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.3.7
22----
23Preparing build for 3.8.0-RC2
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: build.sbt
34Pattern: val scala3 = "3.3.7"
35Replacement: val scala3 = "3.8.0-RC2"
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.3.7"' in build.sbt
40----
41Starting build for 3.8.0-RC2
42Execute tests: true
43sbt project found:
44No prepare script found for project typelevel/fabric
45##################################
46Scala version: 3.8.0-RC2
47Targets: org.typelevel%fabric-core org.typelevel%fabric-io org.typelevel%fabric-reactify
48Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3 = \"3.3.7\"","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-Xmx4G
58-XX:+UseG1GC
59-Dcommunitybuild.scala=3.8.0-RC2
60-Dcommunitybuild.project.dependencies.add=
61-Xmx7G
62-Xms4G
63-Xss8M
64-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
65-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8
66-jar
67/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
68"setCrossScalaVersions 3.8.0-RC2"
69"++3.8.0-RC2 -v"
70"mapScalacOptions ",REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s" ",-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
71"set every credentials := Nil"
72"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
73"removeScalacOptionsStartingWith -P:wartremover"
74
75moduleMappings
76"runBuild 3.8.0-RC2 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3 = \"3.3.7\"","replaceWith":"val scala3 = \"<SCALA_VERSION>\""}]}""" org.typelevel%fabric-core org.typelevel%fabric-io org.typelevel%fabric-reactify"
77
78[info] [launcher] getting org.scala-sbt sbt 1.11.7 (this may take some time)...
79[info] welcome to sbt 1.11.7 (Eclipse Adoptium Java 17.0.8)
80[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
81[info] loading project definition from /build/repo/project
82[info] compiling 2 Scala sources to /build/repo/project/target/scala-2.12/sbt-1.0/classes ...
83[info] Non-compiled module 'compiler-bridge_2.12' for Scala 2.12.20. Compiling...
84[info] Compilation completed in 9.134s.
85[info] done compiling
86[info] loading settings for project root from build.sbt...
87[info] resolving key references (15932 settings) ...
88[info] set current project to fabric (in build file:/build/repo/)
89Execute setCrossScalaVersions: 3.8.0-RC2
90OpenCB::Changing crossVersion 3.8.0-RC2 -> 3.8.0-RC2 in docs/crossScalaVersions
91OpenCB::Changing crossVersion 3.8.0-RC2 -> 3.8.0-RC2 in ioJS/crossScalaVersions
92OpenCB::Changing crossVersion 3.8.0-RC2 -> 3.8.0-RC2 in coreNative/crossScalaVersions
93OpenCB::Changing crossVersion 3.8.0-RC2 -> 3.8.0-RC2 in coreJVM/crossScalaVersions
94OpenCB::Changing crossVersion 3.8.0-RC2 -> 3.8.0-RC2 in rootNative/crossScalaVersions
95OpenCB::Changing crossVersion 3.8.0-RC2 -> 3.8.0-RC2 in coreJS/crossScalaVersions
96OpenCB::Changing crossVersion 3.8.0-RC2 -> 3.8.0-RC2 in rootJS/crossScalaVersions
97OpenCB::Changing crossVersion 3.8.0-RC2 -> 3.8.0-RC2 in reactifyJVM/crossScalaVersions
98OpenCB::Changing crossVersion 3.8.0-RC2 -> 3.8.0-RC2 in bench/crossScalaVersions
99OpenCB::Changing crossVersion 3.8.0-RC2 -> 3.8.0-RC2 in reactifyJS/crossScalaVersions
100OpenCB::Changing crossVersion 3.8.0-RC2 -> 3.8.0-RC2 in root/crossScalaVersions
101OpenCB::Limitting incorrect crossVersions List() -> List(3.8.0-RC2) in root/crossScalaVersions
102OpenCB::Changing crossVersion 3.8.0-RC2 -> 3.8.0-RC2 in util/crossScalaVersions
103OpenCB::Changing crossVersion 3.8.0-RC2 -> 3.8.0-RC2 in rootJVM/crossScalaVersions
104OpenCB::Changing crossVersion 3.8.0-RC2 -> 3.8.0-RC2 in ioJVM/crossScalaVersions
105OpenCB::Changing crossVersion 3.8.0-RC2 -> 3.8.0-RC2 in reactifyNative/crossScalaVersions
106[info] set current project to fabric (in build file:/build/repo/)
107[info] Setting Scala version to 3.8.0-RC2 on 15 projects.
108[info] Switching Scala version on:
109[info] util (3.8.0-RC2, 2.13.17, 2.12.20)
110[info] * root (3.8.0-RC2)
111[info] reactifyJVM (3.8.0-RC2, 2.13.17, 2.12.20)
112[info] rootJS (3.8.0-RC2, 2.13.17, 2.12.20)
113[info] coreNative (3.8.0-RC2, 2.13.17, 2.12.20)
114[info] docs (3.8.0-RC2, 2.13.17, 2.12.20)
115[info] reactifyNative (3.8.0-RC2, 2.13.17, 2.12.20)
116[info] reactifyJS (3.8.0-RC2, 2.13.17, 2.12.20)
117[info] coreJS (3.8.0-RC2, 2.13.17, 2.12.20)
118[info] coreJVM (3.8.0-RC2, 2.13.17, 2.12.20)
119[info] rootJVM (3.8.0-RC2, 2.13.17, 2.12.20)
120[info] rootNative (3.8.0-RC2, 2.13.17, 2.12.20)
121[info] ioJS (3.8.0-RC2, 2.13.17, 2.12.20)
122[info] ioJVM (3.8.0-RC2, 2.13.17, 2.12.20)
123[info] bench (3.8.0-RC2, 2.13.17, 2.12.20)
124[info] Excluding projects:
125[info] Reapplying settings...
126[info] set current project to fabric (in build file:/build/repo/)
127Execute mapScalacOptions: ,REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
128[info] Reapplying settings...
129[info] set current project to fabric (in build file:/build/repo/)
130[info] Defining Global / credentials, bench / credentials and 13 others.
131[info] The new values will be used by Compile / scalafmtOnly, Global / pgpSelectPassphrase and 134 others.
132[info] Run `last` for details.
133[info] Reapplying settings...
134[info] set current project to fabric (in build file:/build/repo/)
135Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
136[info] Reapplying settings...
137OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
138
139 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
140 Did you mean rootJVM / allExcludeDependencies ?
141 , retry without global scopes
142[info] Reapplying settings...
143[info] set current project to fabric (in build file:/build/repo/)
144Execute removeScalacOptionsStartingWith: -P:wartremover
145[info] Reapplying settings...
146[info] set current project to fabric (in build file:/build/repo/)
147[success] Total time: 0 s, completed Nov 28, 2025, 12:38:59 PM
148Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3 = \"3.3.7\"","replaceWith":"val scala3 = \"<SCALA_VERSION>\""}]}
149Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),Full,List()))
150Starting build...
151Projects: Set(coreJVM, ioJVM, reactifyJVM)
152Starting build for ProjectRef(file:/build/repo/,coreJVM) (fabric-core)... [0/3]
153OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.8` in Scala 2.12.20 module Global
154OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
155OpenCB::Filter out '-feature', matches setting pattern '^-?-feature'
156Compile scalacOptions: -encoding, UTF-8, -unchecked, -Wunused:implicits, -Wunused:explicits, -Wunused:imports, -Wunused:locals, -Wunused:params, -Wunused:privates, -Wvalue-discard, -language:implicitConversions, -Xkind-projector, --java-output-version:17, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
157[info] compiling 66 Scala sources to /build/repo/core/jvm/target/scala-3.8.0-RC2/classes ...
158[info] done compiling
159[info] compiling 21 Scala sources to /build/repo/core/jvm/target/scala-3.8.0-RC2/test-classes ...
160[info] done compiling
161[warn] javaOptions will be ignored, fork is set to false
162[info] Scala3Spec:
163[info] Scala 3 Specific Functionality
164[info] - should use derives to convert Person to Json and back
165[info] - should handle built-in enums
166[info] RWSpecManual:
167[info] manual conversion
168[info] - should convert Person to Json and back
169Cryo: 24, Json: 12
170[info] TransformSpec:
171[info] Transform
172[info] - should copy a simple object
173[info] - should move a simple object
174[info] - should rename a top-level entry
175[info] - should rename a simple object
176[info] - should merge a few records
177[info] - should concatenate multiple strings
178[info] - should extract from simple regex
179[info] - should delete a simple object
180*** WARNING: ByteBufferPool overflowed (Tried: 225, Actual: 10). Resizing the pool and trying again.
181{one:Apple,three:3,two:[Banana,Cherry,],}
182[info] SnakeToCamelFilterSpec:
183[info] SnakeToCamelFilter
184[info] - should convert a simple object
185[info] - should don't convert prefixed underscores
186[info] - should only convert snake fields
187[info] FabricDefinitionSpec:
188[info] FabricDefinition
189[info] - should represent an Int properly
190[info] - should represent a Null properly
191[info] - should represent an optional Int properly
192[info] - should represent an optional Int properly starting with Null
193[info] - should represent a simple obj
194[info] - should represent a simple obj with optional value
195[info] - should represent a simple optional obj
196[info] - should represent null lists
197[info] - should represent multiple numeric types
198[info] - should fail with conflicting types
199[info] - should validate a definition
200[info] - should fail to validate a definition
201[info] - should generate a case class based on a definition
202[info] - should generate two case classes based on a definition
203[info] - should generate two case classes based on a definition with an array
204[info] - should generate a schema for a Person
205[info] - should generate a template for a Person
206[info] - should represent a proper optional for a definition with a default value
207[info] - should represent a Map[String, String] properly
208[info] CryoSpec:
209[info] Cryo
210[info] - should freeze and thaw a Str properly
211[info] - should freeze and thaw a simple obj
212[info] - should verify size is efficiently stored
213[info] - should freeze and thaw a complex obj
214[info] - should freeze and thaw a simple obj using the pool
215[info] - should freeze and that a multi-type obj using the pool
216[info] - should freeze and thaw null
217[info] - should dispose the pool and overflow the new pool to verify resizing
218[info] RWSpecAuto:
219[info] automatic conversion
220[info] - should convert Person to Json and back
221[info] - should verify the class name of Person
222[info] - should convert from empty obj to Defaults
223[info] - should convert from single argument to Defaults
224[info] - should supporting generic type on case class
225[info] - should supporting Values in conversions
226[info] - should verify Person's DefType
227[info] - should verify multi reader support works
228[info] - should validate loading of JsonWrapper from Json
229[info] - should validate persistence of JsonWrapper to Json
230[info] - should verify persisting null String values works
231[info] - should supporting sealed traits
232[info] - should work properly with nulls and defaults
233[info] - should properly support Either
234[info] - should properly handle multiple apply methods
235[info] - should verify className extraction
236[info] GenKeySpec:
237[info] JSON genKey
238[info] - should generate a simple key
239[info] SearchSpec:
240[info] Search
241[info] - should find a single path
242[info] - should find multiple with a wildcard
243[info] - should find several with multiple wildcards
244[info] - should find one with multiple wildcards and late filtering
245[info] - should find one double wildcard
246[info] - should find two double wildcard
247[info] - should find via regex
248[info] - should find via nth
249[info] - should find via last
250[info] FabricSpec:
251[info] Fabric
252[info] - should represent AST properly
253[info] - should verify type getting works as expected
254[info] - should extract the state
255[info] - should extract a complex path including indexes
256[info] - should update the hierarchy
257[info] - should remove from the hierarchy
258[info] - should properly merge a simple scenario
259[info] - should properly retain order when merging
260[info] - should convert to/from Special
261[info] - should use polymorphic values
262[info] - should include or exclude null fields
263[info] - should convert snake-case to camel-case
264[info] - should apply SnakeToCamelFilter
265[info] - should apply RemovePathFilter
266[info] - should merge with a custom override
267[info] - should support polymorphic Map
268[info] - should verify object asString should not work
269[info] DeltaSpec:
270[info] Delta
271[info] - should determine numeric changes
272[info] - should determine simple obj changes
273[info] - should determine simple arr changes
274[info] - should build structured diff
275[info] RWSpecGenAuto:
276[info] generated automatic conversion
277[info] - should convert Record to Json and back
278Starting build for ProjectRef(file:/build/repo/,ioJVM) (fabric-io)... [1/3]
279Compile scalacOptions: -encoding, UTF-8, -unchecked, -Wunused:implicits, -Wunused:explicits, -Wunused:imports, -Wunused:locals, -Wunused:params, -Wunused:privates, -Wvalue-discard, -language:implicitConversions, -Xkind-projector, --java-output-version:17, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
280[info] compiling 18 Scala sources to /build/repo/io/jvm/target/scala-3.8.0-RC2/classes ...
281[info] done compiling
282[info] compiling 8 Scala sources to /build/repo/io/jvm/target/scala-3.8.0-RC2/test-classes ...
283[info] done compiling
284[warn] javaOptions will be ignored, fork is set to false
285[info] SimpleJsonParserSpec:
286[info] SimpleJsonParser
287[info] - should parse a simple String
288[info] - should parse a simple integer
289[info] - should parse a simple decimal
290[info] - should parse a simple array
291[info] - should parse a simple object
292[info] - should parse a slightly more complex object
293[info] JsonParsingSpec:
294[info] Json Parsing
295[info] - should parse a simple use-case
296[info] - should parse using interpolation
297[info] - should encode and then decode escaped String
298[info] ComplexDefinitionSpec:
299[info] Complex FabricDefinition
300[info] - should generate complex case classes from large JSON
301[info] JsonFormattingSpec:
302[info] Json Formatting
303[info] - should format complex JSON
304[info] - should parse a String with as support
305[info] - should parse a Array[Byte] with as support
306[info] YamlFormattingSpec:
307[info] Yaml Formatting
308[info] - should format complex JSON
309[info] - should format a minimal JSON file to YAML properly
310[info] - should format a simple JSON file to YAML properly
311[info] - should format a complex JSON file to YAML properly
312[info] RWSpecGenParse:
313[info] generated automatic conversion
314[info] - should serialize and deserialize Json
315[info] JVMParsingSpec:
316[info] JVM Parsing
317[info] - should parse basic YAML
318[info] - should parse basic XML
319[info] - should parse basic HOCON
320[info] - should parse basic Properties
321Starting build for ProjectRef(file:/build/repo/,reactifyJVM) (fabric-reactify)... [2/3]
322Compile scalacOptions: -encoding, UTF-8, -unchecked, -Wunused:implicits, -Wunused:explicits, -Wunused:imports, -Wunused:locals, -Wunused:params, -Wunused:privates, -Wvalue-discard, -language:implicitConversions, -Xkind-projector, --java-output-version:17, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
323[info] compiling 1 Scala source to /build/repo/reactify/jvm/target/scala-3.8.0-RC2/classes ...
324[info] done compiling
325[info] compiling 1 Scala source to /build/repo/reactify/jvm/target/scala-3.8.0-RC2/test-classes ...
326[info] done compiling
327[warn] javaOptions will be ignored, fork is set to false
328[info] ReactParentSpec:
329[info] ReactParent
330[info] - should properly handle initialization of Person
331[info] - should change the name and age
332
333************************
334Build summary:
335[{
336 "module": "fabric-core",
337 "compile": {"status": "ok", "tookMs": 16930, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
338 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
339 "test-compile": {"status": "ok", "tookMs": 9669, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
340 "test": {"status": "ok", "tookMs": 942, "passed": 89, "failed": 0, "ignored": 0, "skipped": 0, "total": 89, "byFramework": [{"framework": "unknown", "stats": {"passed": 89, "failed": 0, "ignored": 0, "skipped": 0, "total": 89}}]},
341 "publish": {"status": "skipped", "tookMs": 0},
342 "metadata": {
343 "crossScalaVersions": ["2.13.17", "2.12.20", "3.3.7"]
344}
345},{
346 "module": "fabric-io",
347 "compile": {"status": "ok", "tookMs": 1467, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
348 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
349 "test-compile": {"status": "ok", "tookMs": 2757, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
350 "test": {"status": "ok", "tookMs": 812, "passed": 22, "failed": 0, "ignored": 0, "skipped": 0, "total": 22, "byFramework": [{"framework": "unknown", "stats": {"passed": 22, "failed": 0, "ignored": 0, "skipped": 0, "total": 22}}]},
351 "publish": {"status": "skipped", "tookMs": 0},
352 "metadata": {
353 "crossScalaVersions": ["2.13.17", "2.12.20", "3.3.7"]
354}
355},{
356 "module": "fabric-reactify",
357 "compile": {"status": "ok", "tookMs": 647, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
358 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
359 "test-compile": {"status": "ok", "tookMs": 1071, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
360 "test": {"status": "ok", "tookMs": 379, "passed": 2, "failed": 0, "ignored": 0, "skipped": 0, "total": 2, "byFramework": [{"framework": "unknown", "stats": {"passed": 2, "failed": 0, "ignored": 0, "skipped": 0, "total": 2}}]},
361 "publish": {"status": "skipped", "tookMs": 0},
362 "metadata": {
363 "crossScalaVersions": ["2.13.17", "2.12.20", "3.3.7"]
364}
365}]
366************************
367[success] Total time: 58 s, completed Nov 28, 2025, 12:39:58 PM
368[0JChecking patch project/plugins.sbt...
369Checking patch build.sbt...
370Applied patch project/plugins.sbt cleanly.
371Applied patch build.sbt cleanly.