Build Logs
tmccarthy/tmmutils • 3.8.0-RC4:2025-12-22
Errors
25
Warnings
28
Total Lines
600
1##################################
2Clonning https://github.com/tmccarthy/tmmutils.git into /build/repo using revision v0.10.0
3##################################
4Note: switching to '785b1a72dd52be60aeb9cca60889b39e19e288dc'.
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
21----
22Preparing build for 3.8.0-RC4
23Scala binary version found: 3.8
24Implicitly using source version 3.8
25Scala binary version found: 3.8
26Implicitly using source version 3.8
27Would try to apply common scalacOption (best-effort, sbt/mill only):
28Append: ,REQUIRE:-source:3.8
29Remove: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
30
31Try apply source patch:
32Path: build.sbt
33Pattern: ThisBuild / tlFatalWarnings := true
34Replacement:
35Starting compilation server
36Compiling project (Scala 3.7.3, JVM (17))
37Compiled project (Scala 3.7.3, JVM (17))
38Successfully applied pattern 'ThisBuild / tlFatalWarnings := true' in build.sbt
39----
40Starting build for 3.8.0-RC4
41Execute tests: true
42sbt project found:
43Sbt version 1.7.0 is not supported, minimal supported version is 1.11.5
44Enforcing usage of sbt in version 1.11.5
45No prepare script found for project tmccarthy/tmmutils
46##################################
47Scala version: 3.8.0-RC4
48Targets: au.id.tmm.tmm-utils%tmm-utils-cats au.id.tmm.tmm-utils%tmm-utils-cats-effect au.id.tmm.tmm-utils%tmm-utils-circe au.id.tmm.tmm-utils%tmm-utils-errors au.id.tmm.tmm-utils%tmm-utils-syntax au.id.tmm.tmm-utils%tmm-utils-testing-cats au.id.tmm.tmm-utils%tmm-utils-testing-core au.id.tmm.tmm-utils%tmm-utils-testing-scalacheck
49Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"ThisBuild / tlFatalWarnings := true","replaceWith":""}]}
50##################################
51Using extra scalacOptions: ,REQUIRE:-source:3.8
52Filtering out scalacOptions: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
53[sbt_options] declare -a sbt_options=()
54[process_args] java_version = '17'
55[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8/rt.jar'
56# Executing command line:
57java
58-Dfile.encoding=UTF-8
59-Dcommunitybuild.scala=3.8.0-RC4
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-RC4"
69"++3.8.0-RC4 -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-RC4 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"ThisBuild / tlFatalWarnings := true","replaceWith":""}]}""" au.id.tmm.tmm-utils%tmm-utils-cats au.id.tmm.tmm-utils%tmm-utils-cats-effect au.id.tmm.tmm-utils%tmm-utils-circe au.id.tmm.tmm-utils%tmm-utils-errors au.id.tmm.tmm-utils%tmm-utils-syntax au.id.tmm.tmm-utils%tmm-utils-testing-cats au.id.tmm.tmm-utils%tmm-utils-testing-core au.id.tmm.tmm-utils%tmm-utils-testing-scalacheck"
77
78[info] welcome to sbt 1.11.5 (Eclipse Adoptium Java 17.0.8)
79[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
80[info] loading project definition from /build/repo/project
81[info] compiling 2 Scala sources to /build/repo/project/target/scala-2.12/sbt-1.0/classes ...
82[info] Non-compiled module 'compiler-bridge_2.12' for Scala 2.12.20. Compiling...
83[info] Compilation completed in 8.571s.
84[info] done compiling
85[info] loading settings for project root from build.sbt...
86[info] resolving key references (11737 settings) ...
87[info] set scmInfo to https://github.com/tmccarthy/tmmutils
88[info] set current project to tmm-utils (in build file:/build/repo/)
89Execute setCrossScalaVersions: 3.8.0-RC4
90OpenCB::Changing crossVersion 3.1.1 -> 3.8.0-RC4 in rootJS/crossScalaVersions
91OpenCB::Changing crossVersion 3.1.1 -> 3.8.0-RC4 in rootNative/crossScalaVersions
92OpenCB::Changing crossVersion 3.1.1 -> 3.8.0-RC4 in errors/crossScalaVersions
93OpenCB::Changing crossVersion 3.1.1 -> 3.8.0-RC4 in circe/crossScalaVersions
94OpenCB::Changing crossVersion 3.1.1 -> 3.8.0-RC4 in testingScalacheck/crossScalaVersions
95[info] set scmInfo to https://github.com/tmccarthy/tmmutils
96OpenCB::Changing crossVersion 3.1.1 -> 3.8.0-RC4 in root/crossScalaVersions
97OpenCB::Changing crossVersion 3.1.1 -> 3.8.0-RC4 in cats/crossScalaVersions
98OpenCB::Changing crossVersion 3.1.1 -> 3.8.0-RC4 in testingCats/crossScalaVersions
99OpenCB::Changing crossVersion 3.1.1 -> 3.8.0-RC4 in testingCore/crossScalaVersions
100OpenCB::Changing crossVersion 3.1.1 -> 3.8.0-RC4 in syntax/crossScalaVersions
101OpenCB::Changing crossVersion 3.1.1 -> 3.8.0-RC4 in rootJVM/crossScalaVersions
102OpenCB::Changing crossVersion 3.1.1 -> 3.8.0-RC4 in catsEffect/crossScalaVersions
103[info] set current project to tmm-utils (in build file:/build/repo/)
104[info] Setting Scala version to 3.8.0-RC4 on 12 projects.
105[info] Switching Scala version on:
106[info] * root (2.13.8, 3.8.0-RC4)
107[info] testingCats (2.13.8, 3.8.0-RC4)
108[info] testingCore (2.13.8, 3.8.0-RC4)
109[info] rootJS (2.13.8, 3.8.0-RC4)
110[info] testingScalacheck (2.13.8, 3.8.0-RC4)
111[info] errors (2.13.8, 3.8.0-RC4)
112[info] syntax (2.13.8, 3.8.0-RC4)
113[info] rootJVM (2.13.8, 3.8.0-RC4)
114[info] rootNative (2.13.8, 3.8.0-RC4)
115[info] circe (2.13.8, 3.8.0-RC4)
116[info] catsEffect (2.13.8, 3.8.0-RC4)
117[info] cats (2.13.8, 3.8.0-RC4)
118[info] Excluding projects:
119[info] Reapplying settings...
120[info] set scmInfo to https://github.com/tmccarthy/tmmutils
121[info] set current project to tmm-utils (in build file:/build/repo/)
122Execute mapScalacOptions: ,REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
123[info] Reapplying settings...
124[info] set scmInfo to https://github.com/tmccarthy/tmmutils
125[info] set current project to tmm-utils (in build file:/build/repo/)
126[info] Defining Global / credentials, cats / credentials and 10 others.
127[info] The new values will be used by allCredentials, cats / allCredentials and 69 others.
128[info] Run `last` for details.
129[info] Reapplying settings...
130[info] set scmInfo to https://github.com/tmccarthy/tmmutils
131[info] set current project to tmm-utils (in build file:/build/repo/)
132Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
133[info] Reapplying settings...
134OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
135
136 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
137 Did you mean allExcludeDependencies ?
138 , retry without global scopes
139[info] Reapplying settings...
140[info] set scmInfo to https://github.com/tmccarthy/tmmutils
141[info] set current project to tmm-utils (in build file:/build/repo/)
142Execute removeScalacOptionsStartingWith: -P:wartremover
143[info] Reapplying settings...
144[info] set scmInfo to https://github.com/tmccarthy/tmmutils
145[info] set current project to tmm-utils (in build file:/build/repo/)
146[success] Total time: 0 s, completed Dec 22, 2025, 6:49:29 PM
147Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"ThisBuild / tlFatalWarnings := true","replaceWith":""}]}
148Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),Full,List()))
149Starting build...
150Projects: Set(testingCats, testingCore, testingScalacheck, errors, syntax, circe, catsEffect, cats)
151Starting build for ProjectRef(file:/build/repo/,circe) (tmm-utils-circe)... [0/8]
152OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.8` in Scala 2.12.20 module Global
153OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
154OpenCB::Filter out '-feature', matches setting pattern '^-?-feature'
155OpenCB::Filter out '-source:3.0-migration', matches setting pattern '^-?-source(:.*)?'
156Compile scalacOptions: -encoding, UTF-8, -unchecked, -language:implicitConversions, -Ykind-projector, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
157[info] compiling 3 Scala sources to /build/repo/circe/target/scala-3.8.0-RC4/classes ...
158[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
159[warn] one warning found
160[info] done compiling
161[info] compiling 8 Scala sources to /build/repo/testing/core/target/scala-3.8.0-RC4/classes ...
162[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
163[warn] one warning found
164[info] done compiling
165[info] compiling 8 Scala sources to /build/repo/testing/cats/target/scala-3.8.0-RC4/classes ...
166[info] compiling 8 Scala sources to /build/repo/testing/scalacheck/target/scala-3.8.0-RC4/classes ...
167[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
168[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
169[warn] one warning found
170[info] done compiling
171[warn] one warning found
172[info] done compiling
173[info] compiling 2 Scala sources to /build/repo/circe/target/scala-3.8.0-RC4/test-classes ...
174[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
175[warn] one warning found
176[info] done compiling
177au.id.tmm.utilities.circe.AdtDecoderSpec:
178au.id.tmm.utilities.circe.EnumeratedCodecSpec:
179 + work for a wrapped int 0.102s
180 + decode successfully 0.098s
181 + fail to decode an invalid value 0.006s
182 + work for a wrapped string 0.007s
183 + encode successfully 0.003s
184 + fail for an array 0.003s
185 + fail to encode 0.002s
186 + not be constructed when there are duplicate keys 0.001s
187 + not be constructed when there are duplicate values 0.0s
188Starting build for ProjectRef(file:/build/repo/,errors) (tmm-utils-errors)... [1/8]
189Compile scalacOptions: -encoding, UTF-8, -unchecked, -language:implicitConversions, -Ykind-projector, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
190[info] compiling 10 Scala sources to /build/repo/errors/target/scala-3.8.0-RC4/classes ...
191[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
192[warn] one warning found
193[info] done compiling
194[info] compiling 6 Scala sources to /build/repo/errors/target/scala-3.8.0-RC4/test-classes ...
195[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
196[warn] one warning found
197[info] done compiling
198au.id.tmm.utilities.errors.ExceptionOrSpec:
199au.id.tmm.utilities.errors.StructuredExceptionSpec:
200au.id.tmm.utilities.errors.ThrowableOrSpec:
201au.id.tmm.utilities.errors.ProductExceptionSpec:
202 + an exception that is a product type should have a message from its toString 0.008s
203 + ExceptionOr.catchIn should return success 0.01s
204 + it can be created without a cause 0.01s
205 + ThrowableOr.catchNonFatal should return success 0.01s
206 + ThrowableOr.catchNonFatal should catch non-fatal throwables 0.001s
207 + it can be copied to add a cause 0.002s
208 + ThrowableOr.catchNonFatal should not catch fatal throwables 0.003s
209 + an exception with a cause that is a product type should have a message from its toString 0.004s
210 + ExceptionOr.catchIn should catch exceptions 0.003s
211 + ExceptionOr.catchIn should not non-exception throwables 0.001s
212 + ExceptionOr.catchOnly should return success 0.001s
213 + an exception with a cause that is a product type should have a cause 0.004s
214 + ExceptionOr.catchOnly should catch the specified exception type 0.001s
215 + ThrowableOr.throwFatal should throw a ControlThrowable 0.005s
216 + it should produce a sensible message 0.004s
217 + ThrowableOr.throwFatal should not throw for a Right 0.0s
218 + ThrowableOr.throwFatal should not throw an exception 0.0s
219 + it should produce a sensible message when one value is an iterable 0.002s
220 + it should produce a sensible message when one value is an empty iterable 0.001s
221 + it should produce a sensible message when there are no fields 0.0s
222 + ExceptionOr.catchOnly should catch subtypes of the specified exception type 0.001s
223 + ExceptionOr.flatCatch should return success 0.004s
224 + ExceptionOr.flatCatch should return a returned exception 0.001s
225au.id.tmm.utilities.errors.syntax.ErrorsSyntaxSpec:
226 + ExceptionOr.flatCatch should return a thrown exception 0.0s
227 + ThrowableOr.throwErrors should throw a ControlThrowable 0.005s
228 + ExceptionOr.flatCatch should not catch a NonExceptionThrowable 0.0s
229 + ThrowableOr.throwErrors should not throw an exception 0.0s
230 + ThrowableOr.throwErrors should not throw for a Right 0.001s
231 + ThrowableOr.throwErrors should narrow the left-hand type for values where the type is not an exception 0.0s
232 + ThrowableOr.throwErrors should not compile where the left-hand type is an exception subtype 0.002s
233 + an error message or string can be converted to an exception 0.007s
234 + a throwable or string can wrap an exception with another exception 0.0s
235 + a throwable or string can wrap an exception with a message 0.001s
236 + a throwable or string can wrap an exception with a structured exception 0.002s
237 + a throwable or string can get the right value 0.0s
238 + a throwable or string can throw the left value 0.001s
239Starting build for ProjectRef(file:/build/repo/,syntax) (tmm-utils-syntax)... [2/8]
240Compile scalacOptions: -encoding, UTF-8, -unchecked, -language:implicitConversions, -Ykind-projector, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
241[info] compiling 1 Scala source to /build/repo/syntax/target/scala-3.8.0-RC4/classes ...
242[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
243[warn] one warning found
244[info] done compiling
245[info] compiling 1 Scala source to /build/repo/syntax/target/scala-3.8.0-RC4/test-classes ...
246[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
247[warn] one warning found
248[info] done compiling
249au.id.tmm.utilities.syntax.tuples.TupleSyntaxSpec:
250 + the tuple type syntax should work in a collection 0.007s
251Starting build for ProjectRef(file:/build/repo/,testingCore) (tmm-utils-testing-core)... [3/8]
252Compile scalacOptions: -encoding, UTF-8, -unchecked, -language:implicitConversions, -Ykind-projector, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
253[info] compiling 2 Scala sources to /build/repo/testing/core/target/scala-3.8.0-RC4/test-classes ...
254[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
255[warn] one warning found
256[info] done compiling
257au.id.tmm.utilities.testing.syntax.TestingSyntaxSpec:
258 + get on Either should return the right value 0.008s
259 + get on Either should throw an assertion error if the value is a left 0.001s
260 + get on Either should throw an assertion error with the left value as the cause if the left is throwable 0.002s
261 + getLeft on Either should return the left value 0.0s
262 + getLeft on Either should throw an assertion error if the value is a right 0.0s
263au.id.tmm.utilities.testing.MiniFloatSpec:
264 + allValues contains no duplicates 0.006s
265 + allValues contains MiniFloat(0.0) 0.001s
266 + allValues contains MiniFloat(-1.0) 0.0s
267 + allValues contains MiniFloat(1.0) 0.001s
268 + allValues contains MiniFloat(8.0) 0.0s
269 + allValues contains MiniFloat(-8.0) 0.001s
270 + allValues contains MiniFloat(0.5) 0.0s
271 + allValues contains MiniFloat(Infinity) 0.0s
272 + allValues contains MiniFloat(-Infinity) 0.001s
273 + allValues contains NaN 0.001s
274 + allValues has max 0.003s
275 + allValues has min 0.001s
276 + behaves the same as Float for all operations on some key values 0.184s
277 + MiniFloat.fromFloat(-Infinity) === MiniFloat(-Infinity) 0.0s
278 + MiniFloat.fromFloat(-3.4028235E38) === MiniFloat(-Infinity) 0.001s
279 + MiniFloat.fromFloat(-16.0) === MiniFloat(-Infinity) 0.0s
280 + MiniFloat.fromFloat(-12.000001) === MiniFloat(-Infinity) 0.0s
281 + MiniFloat.fromFloat(-12.0) === -8.0 0.0s
282 + MiniFloat.fromFloat(-6.0000005) === -8.0 0.0s
283 + MiniFloat.fromFloat(-6.0) === -4.0 0.0s
284 + MiniFloat.fromFloat(-3.0000002) === -4.0 0.0s
285 + MiniFloat.fromFloat(-3.0) === -2.0 0.0s
286 + MiniFloat.fromFloat(-1.0) === MiniFloat(-1.0) 0.0s
287 + MiniFloat.fromFloat(1.0) === MiniFloat(1.0) 0.0s
288 + MiniFloat.fromFloat(0.0) === MiniFloat(0.0) 0.0s
289 + MiniFloat.fromFloat(1.4E-45) === MiniFloat(0.0) 0.0s
290 + MiniFloat.fromFloat(-0.0) === MiniFloat(0.0) 0.0s
291 + MiniFloat.fromFloat(0.12499999) === MiniFloat(0.0) 0.0s
292 + MiniFloat.fromFloat(0.125) === MiniFloat(0.0) 0.001s
293 + MiniFloat.fromFloat(0.24999999) === MiniFloat(0.0) 0.0s
294 + MiniFloat.fromFloat(0.25) === MiniFloat(0.0) 0.0s
295 + MiniFloat.fromFloat(0.5) === 0.5 0.0s
296 + MiniFloat.fromFloat(1.0) === 1.0 0.0s
297 + MiniFloat.fromFloat(2.0) === 2.0 0.0s
298 + MiniFloat.fromFloat(2.9999998) === 2.0 0.001s
299 + MiniFloat.fromFloat(3.0) === 4.0 0.0s
300 + MiniFloat.fromFloat(4.0) === 4.0 0.0s
301 + MiniFloat.fromFloat(5.0) === 4.0 0.0s
302 + MiniFloat.fromFloat(6.0) === 8.0 0.0s
303 + MiniFloat.fromFloat(7.0) === 8.0 0.0s
304 + MiniFloat.fromFloat(8.0) === 8.0 0.001s
305 + MiniFloat.fromFloat(11.999999) === 8.0 0.0s
306 + MiniFloat.fromFloat(12.0) === MiniFloat(Infinity) 0.0s
307 + MiniFloat.fromFloat(16.0) === MiniFloat(Infinity) 0.0s
308 + MiniFloat.fromFloat(3.4028235E38) === MiniFloat(Infinity) 0.001s
309 + MiniFloat.fromFloat(Infinity) === MiniFloat(Infinity) 0.0s
310 + MiniFloat.fromFloat(NaN) === MiniFloat(NaN) 0.0s
311 + MiniFloat.fromFloat(-0) is not negative 0.0s
312 + fromDouble consistent with fromFloat 0.064s
313 + toDouble consistent with toFloat 0.016s
314 + MiniFloat(NaN) isNan true 0.0s
315 + MiniFloat(NaN) isFinite false 0.001s
316 + MiniFloat(Infinity) isNan false 0.0s
317 + MiniFloat(Infinity) isFinite false 0.0s
318 + MiniFloat(-Infinity) isNan false 0.0s
319 + MiniFloat(-Infinity) isFinite false 0.0s
320 + MiniFloat(0.0) isNan false 0.0s
321 + MiniFloat(0.0) isFinite true 0.001s
322 + MiniFloat(8.0) isNan false 0.0s
323 + MiniFloat(8.0) isFinite true 0.0s
324 + MiniFloat(-8.0) isNan false 0.0s
325 + MiniFloat(-8.0) isFinite true 0.001s
326 + MiniFloat(0.5) isNan false 0.0s
327 + MiniFloat(0.5) isFinite true 0.0s
328 + NaN != all MiniFloat 0.018s
329 + negate zero is zero 0.0s
330 + negate one is one 0.001s
331 + negate ∞ is -∞ 0.0s
332 + negate -∞ is ∞ 0.001s
333 + negate NaN is NaN 0.001s
334 + negation inverse 0.021s
335 + add commutative 0.028s
336 + zero addition identity 0.013s
337 + max plus 1 0.0s
338 + max plus max 0.001s
339 + ∞ + ∞ 0.0s
340 + ∞ + 1 0.001s
341 + ∞ + (-∞) 0.0s
342 + NaN addition 0.009s
343 + subtract consistent with addition 0.023s
344 + NaN subtraction 0.011s
345 + ∞ - ∞ 0.001s
346 + multiplication commutative 0.019s
347 + one multiplicative identity 0.011s
348 + max * 1 0.001s
349 + max * max 0.0s
350 + ∞ * ∞ 0.001s
351 + ∞ * 1 0.0s
352 + ∞ * (-∞) 0.0s
353 + NaN multiplication 0.008s
354 + divide by zero 0.008s
355 + division consistent with float division 0.012s
356 + ordering consistent with float 0.012s
357Starting build for ProjectRef(file:/build/repo/,testingScalacheck) (tmm-utils-testing-scalacheck)... [4/8]
358Compile scalacOptions: -encoding, UTF-8, -unchecked, -language:implicitConversions, -Ykind-projector, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
359Starting build for ProjectRef(file:/build/repo/,cats) (tmm-utils-cats)... [5/8]
360Compile scalacOptions: -encoding, UTF-8, -unchecked, -language:implicitConversions, -Ykind-projector, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
361[info] compiling 6 Scala sources to /build/repo/cats/cats-core/target/scala-3.8.0-RC4/classes ...
362[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
363[warn] one warning found
364[info] done compiling
365[info] compiling 4 Scala sources to /build/repo/cats/cats-core/target/scala-3.8.0-RC4/test-classes ...
366[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
367[warn] one warning found
368[info] done compiling
369au.id.tmm.utilities.cats.instances.NumericInstancesSpec:
370au.id.tmm.utilities.cats.syntax.ThrowableMonadErrorOpsSpec:
371 + the fractional instance should be resolved correctly 0.016s
372 + the monad error syntax should allow wrapping an exception with a message 0.017s
373au.id.tmm.utilities.cats.classes.InvariantKSpec:
374 + Monad for InvariantK[MonadError[WrappedOption]]: monad.ap consistent with product + map 0.039s
375 + Monad for InvariantK[MonadError[WrappedOption]]: monad.applicative homomorphism 0.011s
376 + Monad for InvariantK[MonadError[WrappedOption]]: monad.applicative identity 0.004s
377 + Monad for InvariantK[MonadError[WrappedOption]]: monad.applicative interchange 0.007s
378 + Monad for InvariantK[MonadError[WrappedOption]]: monad.applicative map 0.007s
379 + Monad for InvariantK[MonadError[WrappedOption]]: monad.applicative unit 0.003s
380 + Monad for InvariantK[MonadError[WrappedOption]]: monad.apply composition 0.006s
381 + Monad for InvariantK[MonadError[WrappedOption]]: monad.covariant composition 0.005s
382 + Monad for InvariantK[MonadError[WrappedOption]]: monad.covariant identity 0.003s
383 + Monad for InvariantK[MonadError[WrappedOption]]: monad.flatMap associativity 0.009s
384 + Monad for InvariantK[MonadError[WrappedOption]]: monad.flatMap consistent apply 0.004s
385 + Monad for InvariantK[MonadError[WrappedOption]]: monad.flatMap from tailRecM consistency 0.005s
386 + Monad for InvariantK[MonadError[WrappedOption]]: monad.invariant composition 0.008s
387 + Monad for InvariantK[MonadError[WrappedOption]]: monad.invariant identity 0.002s
388 + Monad for InvariantK[MonadError[WrappedOption]]: monad.map flatMap coherence 0.139s
389 + Monad for InvariantK[MonadError[WrappedOption]]: monad.map2/map2Eval consistency 0.007s
390 + Monad for InvariantK[MonadError[WrappedOption]]: monad.map2/product-map consistency 0.005s
391 + Monad for InvariantK[MonadError[WrappedOption]]: monad.monad left identity 0.002s
392 + Monad for InvariantK[MonadError[WrappedOption]]: monad.monad right identity 0.002s
393 + Monad for InvariantK[MonadError[WrappedOption]]: monad.monoidal left identity 0.004s
394 + Monad for InvariantK[MonadError[WrappedOption]]: monad.monoidal right identity 0.003s
395 + Monad for InvariantK[MonadError[WrappedOption]]: monad.mproduct consistent flatMap 0.004s
396 + Monad for InvariantK[MonadError[WrappedOption]]: monad.productL consistent map2 0.003s
397 + Monad for InvariantK[MonadError[WrappedOption]]: monad.productR consistent map2 0.002s
398 + Monad for InvariantK[MonadError[WrappedOption]]: monad.semigroupal associativity 0.006s
399 + Monad for InvariantK[MonadError[WrappedOption]]: monad.tailRecM consistent flatMap 0.006s
400 + Monad for InvariantK[MonadError[WrappedOption]]: monad.tailRecM stack safety 0.019s
401 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.collectFirst reference 0.05s
402 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.collectFirstSome reference 0.024s
403 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.covariant composition 0.047s
404 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.covariant identity 0.007s
405 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.dropWhile_ reference 0.006s
406 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.exists consistent with find 0.005s
407 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.exists is lazy 0.003s
408 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.filter_ reference 0.008s
409 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.fold reference 0.016s
410 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.foldLeft consistent with foldMap 0.214s
411 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.foldM identity 0.252s
412 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.foldRight consistent with foldMap 0.157s
413 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.foldRight is lazy 0.003s
414 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.foldRightDefer consistency 0.12s
415 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.forall consistent with exists 0.004s
416 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.forall is lazy 0.003s
417 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.forall true if empty 0.003s
418 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.get reference 0.015s
419 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.invariant composition 0.019s
420 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.invariant identity 0.006s
421 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.nonEmpty reference 0.004s
422 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.ordered consistency 0.005s
423 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.reduceLeftOption consistent with reduceLeftToOption 0.009s
424 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.reduceRightOption consistent with reduceRightToOption 0.022s
425 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.takeWhile_ reference 0.004s
426 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.toList reference 0.004s
427 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.traverse derive foldMap 0.161s
428 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.traverse identity 0.008s
429 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.traverse order consistency 0.013s
430 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.traverse parallel composition 0.034s
431 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.traverse ref mapWithIndex 0.098s
432 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.traverse ref traverseWithIndexM 0.027s
433 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.traverse ref zipWithIndex 0.035s
434 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.traverse sequential composition 0.023s
435 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.traverse traverseTap 0.028s
436 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.unordered traverse consistent with sequence 0.017s
437 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.unordered traverse parallel composition 0.046s
438 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.unordered traverse sequential composition 0.043s
439 + Traverse for InvariantK[Traverse[WrappedList]]: traverse.unorderedFold consistent with unorderedFoldMap 0.006s
440 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.ap consistent with product + map 0.055s
441 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.applicative homomorphism 0.001s
442 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.applicative identity 0.003s
443 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.applicative interchange 0.003s
444 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.applicative map 0.004s
445 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.applicative unit 0.001s
446 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.apply composition 1.794s
447 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.covariant composition 0.004s
448 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.covariant identity 0.001s
449 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.invariant composition 0.003s
450 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.invariant identity 0.002s
451 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.left distributivity 0.007s
452 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.map2/map2Eval consistency 0.05s
453 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.map2/product-map consistency 0.048s
454 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.monoidK left identity 0.001s
455 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.monoidK right identity 0.002s
456 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.monoidal left identity 0.001s
457 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.monoidal right identity 0.002s
458 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.productL consistent map2 0.01s
459 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.productR consistent map2 0.007s
460 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.right absorption 0.001s
461 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.right distributivity 0.115s
462 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.semigroupK associative 0.004s
463 + Alternative for InvariantK[Alternative[WrappedList]]: alternative.semigroupal associativity 0.192s
464 + InvariantK for Functor: invariantK.invariant composition 0.049s
465 + InvariantK for Functor: invariantK.invariantK identity 0.019s
466Starting build for ProjectRef(file:/build/repo/,testingCats) (tmm-utils-testing-cats)... [6/8]
467Compile scalacOptions: -encoding, UTF-8, -unchecked, -language:implicitConversions, -Ykind-projector, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
468[info] compiling 2 Scala sources to /build/repo/testing/cats/target/scala-3.8.0-RC4/test-classes ...
469[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
470[warn] one warning found
471[info] done compiling
472au.id.tmm.utilities.testing.cats.instances.MiniFloatInstancesSpec:
473au.id.tmm.utilities.testing.cats.instances.WrappedInstancesSpec:
474 + MiniFloat Order: order.antisymmetry 0.037s
475 + Wrapped Invariant: invariant.invariant composition 0.039s
476 + MiniFloat Order: order.antisymmetry eq 0.013s
477 + Wrapped Invariant: invariant.invariant identity 0.006s
478 + MiniFloat Order: order.compare 0.009s
479 + MiniFloat Order: order.gt 0.007s
480 + WrappedK Invariant: invariant.invariant composition 0.017s
481 + MiniFloat Order: order.gteqv 0.012s
482 + WrappedK Invariant: invariant.invariant identity 0.009s
483 + MiniFloat Order: order.lt 0.007s
484 + MiniFloat Order: order.max 0.007s
485 + MiniFloat Order: order.min 0.004s
486 + MiniFloat Order: order.partialCompare 0.004s
487 + MiniFloat Order: order.pmax 0.004s
488 + MiniFloat Order: order.pmin 0.006s
489 + MiniFloat Order: order.reflexivity eq 0.003s
490 + MiniFloat Order: order.reflexivity gt 0.006s
491 + MiniFloat Order: order.reflexivity lt 0.001s
492 + MiniFloat Order: order.symmetry eq 0.003s
493 + MiniFloat Order: order.totality 0.001s
494 + MiniFloat Order: order.transitivity 0.002s
495 + MiniFloat Order: order.transitivity eq 0.002s
496 + MiniFloat Hash: hash.antisymmetry eq 0.003s
497 + MiniFloat Hash: hash.hash compatibility 0.003s
498 + MiniFloat Hash: hash.reflexivity eq 0.001s
499 + MiniFloat Hash: hash.same as scala hashing 0.006s
500 + MiniFloat Hash: hash.same as universal hash 0.002s
501 + MiniFloat Hash: hash.symmetry eq 0.002s
502 + MiniFloat Hash: hash.transitivity eq 0.005s
503Starting build for ProjectRef(file:/build/repo/,catsEffect) (tmm-utils-cats-effect)... [7/8]
504Compile scalacOptions: -encoding, UTF-8, -unchecked, -language:implicitConversions, -Ykind-projector, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
505[info] compiling 1 Scala source to /build/repo/cats/cats-effect/target/scala-3.8.0-RC4/classes ...
506[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
507[warn] one warning found
508[info] done compiling
509
510************************
511Build summary:
512[{
513 "module": "tmm-utils-circe",
514 "compile": {"status": "ok", "tookMs": 8591, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
515 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
516 "test-compile": {"status": "ok", "tookMs": 5866, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
517 "test": {"status": "ok", "tookMs": 803, "passed": 9, "failed": 0, "ignored": 0, "skipped": 0, "total": 9, "byFramework": [{"framework": "munit", "stats": {"passed": 9, "failed": 0, "ignored": 0, "skipped": 0, "total": 9}}]},
518 "publish": {"status": "skipped", "tookMs": 0},
519 "metadata": {
520 "crossScalaVersions": ["2.13.8", "3.1.1"]
521}
522},{
523 "module": "tmm-utils-errors",
524 "compile": {"status": "ok", "tookMs": 903, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
525 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
526 "test-compile": {"status": "ok", "tookMs": 1708, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
527 "test": {"status": "ok", "tookMs": 236, "passed": 36, "failed": 0, "ignored": 0, "skipped": 0, "total": 36, "byFramework": [{"framework": "munit", "stats": {"passed": 36, "failed": 0, "ignored": 0, "skipped": 0, "total": 36}}]},
528 "publish": {"status": "skipped", "tookMs": 0},
529 "metadata": {
530 "crossScalaVersions": ["2.13.8", "3.1.1"]
531}
532},{
533 "module": "tmm-utils-syntax",
534 "compile": {"status": "ok", "tookMs": 169, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
535 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
536 "test-compile": {"status": "ok", "tookMs": 339, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
537 "test": {"status": "ok", "tookMs": 140, "passed": 1, "failed": 0, "ignored": 0, "skipped": 0, "total": 1, "byFramework": [{"framework": "munit", "stats": {"passed": 1, "failed": 0, "ignored": 0, "skipped": 0, "total": 1}}]},
538 "publish": {"status": "skipped", "tookMs": 0},
539 "metadata": {
540 "crossScalaVersions": ["2.13.8", "3.1.1"]
541}
542},{
543 "module": "tmm-utils-testing-core",
544 "compile": {"status": "ok", "tookMs": 52, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
545 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
546 "test-compile": {"status": "ok", "tookMs": 1458, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
547 "test": {"status": "ok", "tookMs": 676, "passed": 98, "failed": 0, "ignored": 0, "skipped": 0, "total": 98, "byFramework": [{"framework": "munit", "stats": {"passed": 98, "failed": 0, "ignored": 0, "skipped": 0, "total": 98}}]},
548 "publish": {"status": "skipped", "tookMs": 0},
549 "metadata": {
550 "crossScalaVersions": ["2.13.8", "3.1.1"]
551}
552},{
553 "module": "tmm-utils-testing-scalacheck",
554 "compile": {"status": "ok", "tookMs": 99, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
555 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
556 "test-compile": {"status": "ok", "tookMs": 129, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
557 "test": {"status": "ok", "tookMs": 138, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
558 "publish": {"status": "skipped", "tookMs": 0},
559 "metadata": {
560 "crossScalaVersions": ["2.13.8", "3.1.1"]
561}
562},{
563 "module": "tmm-utils-cats",
564 "compile": {"status": "ok", "tookMs": 1494, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
565 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
566 "test-compile": {"status": "ok", "tookMs": 1907, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
567 "test": {"status": "ok", "tookMs": 4781, "passed": 94, "failed": 0, "ignored": 0, "skipped": 0, "total": 94, "byFramework": [{"framework": "munit", "stats": {"passed": 94, "failed": 0, "ignored": 0, "skipped": 0, "total": 94}}]},
568 "publish": {"status": "skipped", "tookMs": 0},
569 "metadata": {
570 "crossScalaVersions": ["2.13.8", "3.1.1"]
571}
572},{
573 "module": "tmm-utils-testing-cats",
574 "compile": {"status": "ok", "tookMs": 119, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
575 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
576 "test-compile": {"status": "ok", "tookMs": 746, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
577 "test": {"status": "ok", "tookMs": 481, "passed": 29, "failed": 0, "ignored": 0, "skipped": 0, "total": 29, "byFramework": [{"framework": "munit", "stats": {"passed": 29, "failed": 0, "ignored": 0, "skipped": 0, "total": 29}}]},
578 "publish": {"status": "skipped", "tookMs": 0},
579 "metadata": {
580 "crossScalaVersions": ["2.13.8", "3.1.1"]
581}
582},{
583 "module": "tmm-utils-cats-effect",
584 "compile": {"status": "ok", "tookMs": 223, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
585 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
586 "test-compile": {"status": "ok", "tookMs": 224, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
587 "test": {"status": "ok", "tookMs": 206, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
588 "publish": {"status": "skipped", "tookMs": 0},
589 "metadata": {
590 "crossScalaVersions": ["2.13.8", "3.1.1"]
591}
592}]
593************************
594[success] Total time: 63 s (0:01:03.0), completed Dec 22, 2025, 6:50:32 PM
595[0JChecking patch project/plugins.sbt...
596Checking patch project/build.properties...
597Checking patch build.sbt...
598Applied patch project/plugins.sbt cleanly.
599Applied patch project/build.properties cleanly.
600Applied patch build.sbt cleanly.