Build Logs
rcardin/raise4s • 3.8.0-RC4:2025-12-22
Errors
16
Warnings
4
Total Lines
443
1##################################
2Clonning https://github.com/rcardin/raise4s.git into /build/repo using revision v0.5.0
3##################################
4Note: switching to '9d3c180cadcb91fa3df9f6fcb220c24a84e43f3c'.
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.6.2
22----
23Preparing build for 3.8.0-RC4
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 scala3Version = "3.6.2"
35Replacement: val scala3Version = "3.8.0-RC4"
36Starting compilation server
37Compiling project (Scala 3.7.3, JVM (17))
38Compiled project (Scala 3.7.3, JVM (17))
39Successfully applied pattern 'val scala3Version = "3.6.2"' in build.sbt
40----
41Starting build for 3.8.0-RC4
42Execute tests: true
43sbt project found:
44Sbt version 1.10.7 is not supported, minimal supported version is 1.11.5
45Enforcing usage of sbt in version 1.11.5
46No prepare script found for project rcardin/raise4s
47##################################
48Scala version: 3.8.0-RC4
49Targets: in.rcard.raise4s%cats-raise4s in.rcard.raise4s%core in.rcard.raise4s%raise4s
50Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3Version = \"3.6.2\"","replaceWith":"val scala3Version = \"<SCALA_VERSION>\""}]}
51##################################
52Using extra scalacOptions: ,REQUIRE:-source:3.8
53Filtering out scalacOptions: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
54[sbt_options] declare -a sbt_options=()
55[process_args] java_version = '17'
56[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8/rt.jar'
57# Executing command line:
58java
59-Dfile.encoding=UTF-8
60-Dcommunitybuild.scala=3.8.0-RC4
61-Dcommunitybuild.project.dependencies.add=
62-Xmx7G
63-Xms4G
64-Xss8M
65-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
66-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8
67-jar
68/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
69"setCrossScalaVersions 3.8.0-RC4"
70"++3.8.0-RC4 -v"
71"mapScalacOptions ",REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s" ",-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
72"set every credentials := Nil"
73"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
74"removeScalacOptionsStartingWith -P:wartremover"
75
76moduleMappings
77"runBuild 3.8.0-RC4 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3Version = \"3.6.2\"","replaceWith":"val scala3Version = \"<SCALA_VERSION>\""}]}""" in.rcard.raise4s%cats-raise4s in.rcard.raise4s%core in.rcard.raise4s%raise4s"
78
79[info] welcome to sbt 1.11.5 (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 8.709s.
85[info] done compiling
86[info] loading settings for project raise4s from build.sbt...
87[info] set current project to raise4s (in build file:/build/repo/)
88Execute setCrossScalaVersions: 3.8.0-RC4
89OpenCB::Changing crossVersion 3.8.0-RC4 -> 3.8.0-RC4 in raise4s/crossScalaVersions
90OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.8.0-RC4) in raise4s/crossScalaVersions
91OpenCB::Changing crossVersion 3.8.0-RC4 -> 3.8.0-RC4 in cats-raise4s/crossScalaVersions
92OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.8.0-RC4) in cats-raise4s/crossScalaVersions
93OpenCB::Changing crossVersion 3.8.0-RC4 -> 3.8.0-RC4 in core/crossScalaVersions
94OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.8.0-RC4) in core/crossScalaVersions
95OpenCB::Changing crossVersion 3.8.0-RC4 -> 3.8.0-RC4 in munit-raise4s/crossScalaVersions
96OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.8.0-RC4) in munit-raise4s/crossScalaVersions
97[info] set current project to raise4s (in build file:/build/repo/)
98[info] Setting Scala version to 3.8.0-RC4 on 4 projects.
99[info] Switching Scala version on:
100[info] * raise4s (3.8.0-RC4)
101[info] core (3.8.0-RC4)
102[info] cats-raise4s (3.8.0-RC4)
103[info] munit-raise4s (3.8.0-RC4)
104[info] Excluding projects:
105[info] Reapplying settings...
106[info] set current project to raise4s (in build file:/build/repo/)
107Execute mapScalacOptions: ,REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
108[info] Reapplying settings...
109[info] set current project to raise4s (in build file:/build/repo/)
110[info] Defining Global / credentials, cats-raise4s / credentials and 2 others.
111[info] The new values will be used by Compile / scalafmtOnly, Global / pgpSelectPassphrase and 31 others.
112[info] Run `last` for details.
113[info] Reapplying settings...
114[info] set current project to raise4s (in build file:/build/repo/)
115Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
116[info] Reapplying settings...
117OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
118
119 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
120 Did you mean allExcludeDependencies ?
121 , retry without global scopes
122[info] Reapplying settings...
123[info] set current project to raise4s (in build file:/build/repo/)
124Execute removeScalacOptionsStartingWith: -P:wartremover
125[info] Reapplying settings...
126[info] set current project to raise4s (in build file:/build/repo/)
127[success] Total time: 0 s, completed Dec 22, 2025, 6:15:16 PM
128Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3Version = \"3.6.2\"","replaceWith":"val scala3Version = \"<SCALA_VERSION>\""}]}
129Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),Full,List()))
130Starting build...
131Projects: Set(cats-raise4s, core, raise4s)
132Starting build for ProjectRef(file:/build/repo/,cats-raise4s) (cats-raise4s)... [0/3]
133OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.8` in Scala 2.12.20 module Global
134Compile scalacOptions: -Wconf:msg=can be rewritten automatically under:s, -source:3.8
135[info] compiling 7 Scala sources to /build/repo/core/target/scala-3.8.0-RC4/classes ...
136[info] done compiling
137[info] compiling 4 Scala sources to /build/repo/cats-raise4s/target/scala-3.8.0-RC4/classes ...
138[info] done compiling
139[info] compiling 4 Scala sources to /build/repo/cats-raise4s/target/scala-3.8.0-RC4/test-classes ...
140[info] done compiling
141[info] RaiseInstancesSpec:
142[info] implicit resolution
143[info] - should work for RaiseMonadError
144[info] CatsBindSpec:
145[info] Validated.value
146[info] - should return the value if it's valid
147[info] - should raise an error if it's invalid
148[info] - should work with invalid ValidatedNel
149[info] - should work with invalid ValidatedNec
150[info] values extension function
151[info] - should map all the element of the iterable
152[info] - should accumulate all the errors
153[info] values extension function on non-empty list
154[info] - should map all the element of the non-empty list
155[info] - should accumulate all the errors
156[info] combineErrorS on Semigroup[Error]
157[info] - should map all the element of the iterable
158[info] - should accumulate all the errors using the combine function
159[info] combineErrorS on NonEmptyList
160[info] - should map all the element of the iterable
161[info] - should accumulate all the errors using the combine function
162[info] RaiseMonadErrorSpec:
163[info] raiseError
164[info] - should raise an error
165[info] pure
166[info] - should lift a value into the Raise context
167[info] flatMap
168[info] - should chain successful Raise computations
169[info] - should short-circuit the computation when the first lambda raises an error
170[info] - should short-circuit the computation when the second lambda raises an error
171[info] ap
172[info] - should apply a function in the Raise context to a value in the Raise context
173[info] - should short-circuit the computation when the function raises an error
174[info] - should short-circuit the computation when the value raises an error
175[info] tailRecM
176[info] - should chain Raise computations
177[info] - should short-circuit the computation when the lambda raises an error
178[info] handleErrorWith
179[info] - should recover from an error
180[info] - should do nothing when the computation is successful
181[info] CatsRaiseSpec:
182[info] mapOrAccumulate on Semigroup[Error]
183[info] - should map all the element of the iterable
184[info] - should accumulate all the errors using the combine function
185[info] mapOrAccumulateS on NonEmptyList
186[info] - should map all the element of the iterable
187[info] - should accumulate all the errors using the combine function
188[info] mapOrAccumulate to NonEmptyList
189[info] - should map all the element of the iterable
190[info] - should accumulate all the errors
191[info] mapOrAccumulate on a NonEmptyList to NonEmptyList
192[info] - should map all the element of the iterable
193[info] - should accumulate all the errors
194[info] zipOrAccumulateS with combine
195[info] - should zip 9 elements
196[info] - should accumulate errors combining them
197[info] zipOrAccumulate on NonEmptyList
198[info] - should zip 9 elements
199[info] - should accumulate errors
200[info] The 'validated' builder
201[info] - should create a Valid instance
202[info] - should create an Invalid instance
203[info] The 'validatedNec' builder
204[info] - should create a Valid instance
205[info] - should create an Invalid instance
206[info] The 'validatedNel' builder
207[info] - should create a Valid instance
208[info] - should create an Invalid instance
209Starting build for ProjectRef(file:/build/repo/,core) (core)... [1/3]
210Compile scalacOptions: -Wconf:msg=can be rewritten automatically under:s, -source:3.8
211[info] compiling 7 Scala sources to /build/repo/core/target/scala-3.8.0-RC4/test-classes ...
212[warn] /build/repo/core/src/main/scala/in/rcard/raise4s/Raise.scala:1807:12: the type test for in.rcard.raise4s.Strategies.Traced[String] cannot be checked at runtime because its type arguments can't be determined from Throwable
213[warn] case traced: Traced[Error] =>
214[warn] ^
215[warn] there were 8 feature warnings; re-run with -feature for details
216[warn] two warnings found
217[info] done compiling
218in.rcard.raise4s.Strategies$Traced
219 at in.rcard.raise4s.Strategies$Traced$.apply(Strategies.scala:89)
220 at in.rcard.raise4s.Strategies$TracedRaise.raise(Strategies.scala:80)
221 at in.rcard.raise4s.StrategiesSpec.$anonfun$12(StrategiesSpec.scala:51)
222 at in.rcard.raise4s.Raise$.fold(Raise.scala:283)
223 at in.rcard.raise4s.StrategiesSpec.testFun$proxy5$1(StrategiesSpec.scala:54)
224 at in.rcard.raise4s.StrategiesSpec.$init$$$anonfun$5(StrategiesSpec.scala:43)
225 at org.scalatest.Transformer.apply$$anonfun$1(Transformer.scala:22)
226 at org.scalatest.OutcomeOf.outcomeOf(OutcomeOf.scala:85)
227 at org.scalatest.OutcomeOf.outcomeOf$(OutcomeOf.scala:31)
228 at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)
229 at org.scalatest.Transformer.apply(Transformer.scala:22)
230 at org.scalatest.Transformer.apply(Transformer.scala:21)
231 at org.scalatest.flatspec.AnyFlatSpecLike$$anon$5.apply(AnyFlatSpecLike.scala:1717)
232 at org.scalatest.TestSuite.withFixture(TestSuite.scala:196)
233 at org.scalatest.TestSuite.withFixture$(TestSuite.scala:138)
234 at org.scalatest.flatspec.AnyFlatSpec.withFixture(AnyFlatSpec.scala:1685)
235 at org.scalatest.flatspec.AnyFlatSpecLike.invokeWithFixture$1(AnyFlatSpecLike.scala:1723)
236 at org.scalatest.flatspec.AnyFlatSpecLike.runTest$$anonfun$1(AnyFlatSpecLike.scala:1727)
237 at org.scalatest.SuperEngine.runTestImpl(Engine.scala:306)
238 at org.scalatest.flatspec.AnyFlatSpecLike.runTest(AnyFlatSpecLike.scala:1727)
239 at org.scalatest.flatspec.AnyFlatSpecLike.runTest$(AnyFlatSpecLike.scala:51)
240 at org.scalatest.flatspec.AnyFlatSpec.runTest(AnyFlatSpec.scala:1685)
241 at org.scalatest.flatspec.AnyFlatSpecLike.runTests$$anonfun$1(AnyFlatSpecLike.scala:1785)
242 at org.scalatest.SuperEngine.traverseSubNodes$1$$anonfun$1(Engine.scala:413)
243 at scala.runtime.function.JProcedure1.apply(JProcedure1.java:15)
244 at scala.runtime.function.JProcedure1.apply(JProcedure1.java:10)
245 at scala.collection.immutable.List.foreach(List.scala:327)
246 at org.scalatest.SuperEngine.traverseSubNodes$1(Engine.scala:429)
247 at org.scalatest.SuperEngine.runTestsInBranch(Engine.scala:390)
248 at org.scalatest.SuperEngine.traverseSubNodes$1$$anonfun$1(Engine.scala:427)
249 at scala.runtime.function.JProcedure1.apply(JProcedure1.java:15)
250 at scala.runtime.function.JProcedure1.apply(JProcedure1.java:10)
251 at scala.collection.immutable.List.foreach(List.scala:327)
252 at org.scalatest.SuperEngine.traverseSubNodes$1(Engine.scala:429)
253 at org.scalatest.SuperEngine.runTestsInBranch(Engine.scala:396)
254 at org.scalatest.SuperEngine.runTestsImpl(Engine.scala:475)
255 at org.scalatest.flatspec.AnyFlatSpecLike.runTests(AnyFlatSpecLike.scala:1785)
256 at org.scalatest.flatspec.AnyFlatSpecLike.runTests$(AnyFlatSpecLike.scala:51)
257 at org.scalatest.flatspec.AnyFlatSpec.runTests(AnyFlatSpec.scala:1685)
258 at org.scalatest.Suite.run(Suite.scala:1114)
259 at org.scalatest.Suite.run$(Suite.scala:564)
260 at org.scalatest.flatspec.AnyFlatSpec.org$scalatest$flatspec$AnyFlatSpecLike$$super$run(AnyFlatSpec.scala:1685)
261 at org.scalatest.flatspec.AnyFlatSpecLike.run$$anonfun$1(AnyFlatSpecLike.scala:1830)
262 at org.scalatest.SuperEngine.runImpl(Engine.scala:535)
263 at org.scalatest.flatspec.AnyFlatSpecLike.run(AnyFlatSpecLike.scala:1830)
264 at org.scalatest.flatspec.AnyFlatSpecLike.run$(AnyFlatSpecLike.scala:51)
265 at org.scalatest.flatspec.AnyFlatSpec.run(AnyFlatSpec.scala:1685)
266 at org.scalatest.tools.Framework.org$scalatest$tools$Framework$$runSuite(Framework.scala:321)
267 at org.scalatest.tools.Framework$ScalaTestTask.execute(Framework.scala:517)
268 at sbt.TestRunner.runTest$1(TestFramework.scala:153)
269 at sbt.TestRunner.run(TestFramework.scala:168)
270 at sbt.TestFramework$$anon$3$$anonfun$$lessinit$greater$1.$anonfun$apply$1(TestFramework.scala:336)
271 at sbt.TestFramework$.sbt$TestFramework$$withContextLoader(TestFramework.scala:296)
272 at sbt.TestFramework$$anon$3$$anonfun$$lessinit$greater$1.apply(TestFramework.scala:336)
273 at sbt.TestFramework$$anon$3$$anonfun$$lessinit$greater$1.apply(TestFramework.scala:336)
274 at sbt.TestFunction.apply(TestFramework.scala:348)
275 at sbt.Tests$.$anonfun$toTask$1(Tests.scala:436)
276 at sbt.std.Transform$$anon$3.$anonfun$apply$2(Transform.scala:47)
277 at sbt.std.Transform$$anon$4.work(Transform.scala:69)
278 at sbt.Execute.$anonfun$submit$2(Execute.scala:283)
279 at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:24)
280 at sbt.Execute.work(Execute.scala:292)
281 at sbt.Execute.$anonfun$submit$1(Execute.scala:283)
282 at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:265)
283 at sbt.CompletionService$$anon$2.call(CompletionService.scala:65)
284 at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
285 at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
286 at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
287 at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
288 at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
289 at java.base/java.lang.Thread.run(Thread.java:833)
290[info] BindSpec:
291[info] Either.value
292[info] - should return the value if it is not an error and raise an Error otherwise
293[info] Option.value
294[info] - should return the value for a Some and raise an error for a None
295[info] Try.value
296[info] - should return the value if it is not an error and raise an Error otherwise
297[info] List[Either[Error, A]].value
298[info] - should return a value if the list doesn't contain errors and raise an error otherwise
299[info] BuildersSpec:
300[info] The either builder
301[info] - should create a Left instance
302[info] - should create a Right instance
303[info] The option builder
304[info] - should create a None instance
305[info] - should create a Some instance
306[info] The try builder
307[info] - should create a Failure instance
308[info] - should create a Success instance
309[info] The succeed extension method
310[info] - should lift a value in the raise context
311[info] - should be composable with any other raising lambda
312[info] The raise builder
313[info] - should raise an error using the extension receiver value
314[info] StrategiesSpec:
315[info] anyRaised
316[info] - should allow defining a strategy that throw any given error
317[info] - should return the happy path value if no error is raised
318[info] MapError
319[info] - should allow defining a strategy that map an error to another one
320[info] - should return the happy path value if no error is raised
321[info] TraceWith
322[info] - should allow defining a strategy that trace the error and return it
323[info] - should return the happy path value if no error is raised
324[info] AccumulationSpec:
325[info] accumulate function
326[info] - should combine different values
327[info] - should accumulate errors
328[info] accumulate
329[info] - should map all the element of the list
330[info] - should accumulate all the errors
331[info] RuntimeSpec:
332[info] Raise.run
333[info] - should return the happy path value is no error was risen
334[info] - should return the error value if an error was risen
335[info] - should be transparent to any thrown exception
336[info] RaiseSpec:
337[info] ensure
338[info] - should return Unit if the given condition is met
339[info] - should return the error if the condition is not met
340[info] ensureNotNull
341[info] - should return the value if it is not null
342[info] - should return the error if the value is null
343[info] recover
344[info] - should return the value if it is not an error
345[info] - should return the recovery value if the value is an error
346[info] - should rethrow the exception
347[info] recover with catchBlock
348[info] - should return the value if it is not an error
349[info] - should return the recovery value if the value is an error
350[info] - should return the recovery value if the value is an exception
351[info] catching
352[info] - should return the value if no exception is thrown
353[info] - should return the recovery value if an exception is thrown
354[info] - should rethrow any fatal exception
355[info] withError
356[info] - should return the value if it is not an error
357[info] - should return the transformed error if the value is an error
358[info] catching as an extension method
359[info] - should return the value if no exception is thrown
360[info] - should return the recovery value if an exception is thrown
361[info] - should rethrow any fatal exception
362[info] recoverable block
363[info] - should return the value if it is not an error
364[info] - should return the recovery value if the value is an error
365[info] - should rethrow the exception
366[info] withDefault
367[info] - should return the value if it is not an error
368[info] - should return the default value if the value is an error
369[info] FoldSpec:
370[info] The fold function with four parameters
371[info] - should transform the result of the given Raise function
372[info] - should transform the result of the given Raise function when it throws an exception
373[info] - should transform the result of the given Raise function when it returns an error
374[info] - should rethrows any fatal exception
375[info] The fold function without the 'catch' block
376[info] - should transform the result of the given Raise function
377[info] - should transform the result of the given Raise function when it returns an error
378[info] - should rethrows any exception
379[info] mapOrAccumulate
380[info] - should map all the element of the iterable
381[info] - should accumulate all the errors
382[info] Values extension method
383[info] - should extract the values from the iterable
384[info] - should accumulate all the errors
385[info] mapOrAccumulate with combine function
386[info] - should map all the element of the iterable
387[info] - should accumulate all the errors using the combine function
388[info] The extension function mapOrAccumulate
389[info] - should map all the element of the receiver
390[info] - should accumulate all the errors on the receiver
391[info] combineErrors extension function
392[info] - should map all the element of the iterable
393[info] - should accumulate all the errors using the combine function
394[info] zipOrAccumulate
395[info] - should zip 9 elements
396[info] - should accumulate errors
397[info] zipOrAccumulate with combine
398[info] - should zip 9 elements
399[info] - should accumulate errors combining them
400Starting build for ProjectRef(file:/build/repo/,raise4s) (raise4s)... [2/3]
401Compile scalacOptions: -Wconf:msg=can be rewritten automatically under:s, -source:3.8
402
403************************
404Build summary:
405[{
406 "module": "cats-raise4s",
407 "compile": {"status": "ok", "tookMs": 10378, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
408 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
409 "test-compile": {"status": "ok", "tookMs": 6220, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
410 "test": {"status": "ok", "tookMs": 788, "passed": 43, "failed": 0, "ignored": 0, "skipped": 0, "total": 43, "byFramework": [{"framework": "unknown", "stats": {"passed": 43, "failed": 0, "ignored": 0, "skipped": 0, "total": 43}}]},
411 "publish": {"status": "skipped", "tookMs": 0},
412 "metadata": {
413 "crossScalaVersions": ["2.12.20", "3.6.2"]
414}
415},{
416 "module": "core",
417 "compile": {"status": "ok", "tookMs": 56, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
418 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
419 "test-compile": {"status": "ok", "tookMs": 5216, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
420 "test": {"status": "ok", "tookMs": 454, "passed": 70, "failed": 0, "ignored": 0, "skipped": 0, "total": 70, "byFramework": [{"framework": "unknown", "stats": {"passed": 70, "failed": 0, "ignored": 0, "skipped": 0, "total": 70}}]},
421 "publish": {"status": "skipped", "tookMs": 0},
422 "metadata": {
423 "crossScalaVersions": ["2.12.20", "3.6.2"]
424}
425},{
426 "module": "raise4s",
427 "compile": {"status": "ok", "tookMs": 60, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
428 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
429 "test-compile": {"status": "ok", "tookMs": 94, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
430 "test": {"status": "ok", "tookMs": 85, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
431 "publish": {"status": "skipped", "tookMs": 0},
432 "metadata": {
433 "crossScalaVersions": ["2.12.20", "3.6.2"]
434}
435}]
436************************
437[success] Total time: 38 s, completed Dec 22, 2025, 6:15:54 PM
438[0JChecking patch project/plugins.sbt...
439Checking patch project/build.properties...
440Checking patch build.sbt...
441Applied patch project/plugins.sbt cleanly.
442Applied patch project/build.properties cleanly.
443Applied patch build.sbt cleanly.