Build Logs
tmccarthy/tmm-scala-collections • 3.8.0-RC5:2025-12-31
Errors
0
Warnings
42
Total Lines
1337
1##################################
2Clonning https://github.com/tmccarthy/tmm-scala-collections.git into /build/repo using revision v0.2.0
3##################################
4Note: switching to '9e995bb834fd10cb2a926289be197a7e1a502de3'.
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
21Using target Scala version for migration: 3.7.4
22Migrating project for -source:3.4 using Scala 3.7.4
23----
24Preparing build for 3.7.4
25Would try to apply common scalacOption (best-effort, sbt/mill only):
26Append: -rewrite,REQUIRE:-source:3.4-migration
27Remove: -indent,-no-indent,-new-syntax,,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
28
29Try apply source patch:
30Path: build.sbt
31Pattern: ThisBuild / tlFatalWarnings := true
32Replacement:
33Starting compilation server
34Compiling project (Scala 3.7.3, JVM (17))
35Compiled project (Scala 3.7.3, JVM (17))
36Successfully applied pattern 'ThisBuild / tlFatalWarnings := true' in build.sbt
37----
38Starting build for 3.7.4
39Execute tests: false
40sbt project found:
41Sbt version 1.7.0 is not supported, minimal supported version is 1.11.5
42Enforcing usage of sbt in version 1.11.5
43No prepare script found for project tmccarthy/tmm-scala-collections
44##################################
45Scala version: 3.7.4
46Targets: au.id.tmm.tmm-scala-collections%tmm-scala-collections-cats au.id.tmm.tmm-scala-collections%tmm-scala-collections-circe au.id.tmm.tmm-scala-collections%tmm-scala-collections-core au.id.tmm.tmm-scala-collections%tmm-scala-collections-scalacheck
47Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[{"path":"build.sbt","pattern":"ThisBuild / tlFatalWarnings := true","replaceWith":""}]}
48##################################
49Using extra scalacOptions: -rewrite,REQUIRE:-source:3.4-migration
50Filtering out scalacOptions: -indent,-no-indent,-new-syntax,,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
51[sbt_options] declare -a sbt_options=()
52[process_args] java_version = '17'
53[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8/rt.jar'
54# Executing command line:
55java
56-Dfile.encoding=UTF-8
57-Dcommunitybuild.scala=3.7.4
58-Dcommunitybuild.project.dependencies.add=
59-Xmx7G
60-Xms4G
61-Xss8M
62-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
63-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8
64-jar
65/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
66"setCrossScalaVersions 3.7.4"
67"++3.7.4 -v"
68"mapScalacOptions "-rewrite,REQUIRE:-source:3.4-migration,-Wconf:msg=can be rewritten automatically under:s" "-indent,-no-indent,-new-syntax,,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
69"set every credentials := Nil"
70"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
71"removeScalacOptionsStartingWith -P:wartremover"
72
73moduleMappings
74"runBuild 3.7.4 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[{"path":"build.sbt","pattern":"ThisBuild / tlFatalWarnings := true","replaceWith":""}]}""" au.id.tmm.tmm-scala-collections%tmm-scala-collections-cats au.id.tmm.tmm-scala-collections%tmm-scala-collections-circe au.id.tmm.tmm-scala-collections%tmm-scala-collections-core au.id.tmm.tmm-scala-collections%tmm-scala-collections-scalacheck"
75
76[info] welcome to sbt 1.11.5 (Eclipse Adoptium Java 17.0.8)
77[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
78[info] loading project definition from /build/repo/project
79[info] compiling 2 Scala sources to /build/repo/project/target/scala-2.12/sbt-1.0/classes ...
80[info] Non-compiled module 'compiler-bridge_2.12' for Scala 2.12.20. Compiling...
81[info] Compilation completed in 8.468s.
82[info] done compiling
83[info] loading settings for project root from build.sbt...
84[info] set scmInfo to https://github.com/tmccarthy/tmm-scala-collections
85[info] set current project to tmm-scala-collections (in build file:/build/repo/)
86Execute setCrossScalaVersions: 3.7.4
87OpenCB::Changing crossVersion 3.1.3 -> 3.7.4 in rootNative/crossScalaVersions
88OpenCB::Changing crossVersion 3.1.3 -> 3.7.4 in rootJS/crossScalaVersions
89OpenCB::Changing crossVersion 3.1.3 -> 3.7.4 in core/crossScalaVersions
90OpenCB::Changing crossVersion 3.1.3 -> 3.7.4 in circe/crossScalaVersions
91OpenCB::Changing crossVersion 3.1.3 -> 3.7.4 in root/crossScalaVersions
92OpenCB::Changing crossVersion 3.1.3 -> 3.7.4 in cats/crossScalaVersions
93OpenCB::Changing crossVersion 3.1.3 -> 3.7.4 in rootJVM/crossScalaVersions
94[info] set scmInfo to https://github.com/tmccarthy/tmm-scala-collections
95OpenCB::Changing crossVersion 3.1.3 -> 3.7.4 in scalaCheck/crossScalaVersions
96[info] set current project to tmm-scala-collections (in build file:/build/repo/)
97[info] Setting Scala version to 3.7.4 on 8 projects.
98[info] Switching Scala version on:
99[info] * root (2.13.8, 3.7.4)
100[info] rootJS (2.13.8, 3.7.4)
101[info] rootJVM (2.13.8, 3.7.4)
102[info] rootNative (2.13.8, 3.7.4)
103[info] circe (2.13.8, 3.7.4)
104[info] cats (2.13.8, 3.7.4)
105[info] core (2.13.8, 3.7.4)
106[info] scalaCheck (2.13.8, 3.7.4)
107[info] Excluding projects:
108[info] Reapplying settings...
109[info] set scmInfo to https://github.com/tmccarthy/tmm-scala-collections
110[info] set current project to tmm-scala-collections (in build file:/build/repo/)
111Execute mapScalacOptions: -rewrite,REQUIRE:-source:3.4-migration,-Wconf:msg=can be rewritten automatically under:s -indent,-no-indent,-new-syntax,,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
112[info] Reapplying settings...
113[info] set scmInfo to https://github.com/tmccarthy/tmm-scala-collections
114[info] set current project to tmm-scala-collections (in build file:/build/repo/)
115[info] Defining Global / credentials, cats / credentials and 6 others.
116[info] The new values will be used by allCredentials, cats / allCredentials and 45 others.
117[info] Run `last` for details.
118[info] Reapplying settings...
119[info] set scmInfo to https://github.com/tmccarthy/tmm-scala-collections
120[info] set current project to tmm-scala-collections (in build file:/build/repo/)
121Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
122[info] Reapplying settings...
123OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
124
125 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
126 Did you mean allExcludeDependencies ?
127 , retry without global scopes
128[info] Reapplying settings...
129[info] set scmInfo to https://github.com/tmccarthy/tmm-scala-collections
130[info] set current project to tmm-scala-collections (in build file:/build/repo/)
131Execute removeScalacOptionsStartingWith: -P:wartremover
132[info] Reapplying settings...
133[info] set scmInfo to https://github.com/tmccarthy/tmm-scala-collections
134[info] set current project to tmm-scala-collections (in build file:/build/repo/)
135[success] Total time: 0 s, completed Dec 31, 2025, 9:48:42 PM
136Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[{"path":"build.sbt","pattern":"ThisBuild / tlFatalWarnings := true","replaceWith":""}]}
137Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),CompileOnly,List()))
138Starting build...
139Projects: Set(cats, circe, core, scalaCheck)
140Starting build for ProjectRef(file:/build/repo/,cats) (tmm-scala-collections-cats)... [0/4]
141OpenCB::Exclude Scala3 specific scalacOption `-rewrite` in Scala 2.12.20 module Global
142OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.4-migration` in Scala 2.12.20 module Global
143OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
144OpenCB::Filter out '-feature', matches setting pattern '^-?-feature'
145OpenCB::Filter out '-source:3.0-migration', matches setting pattern '^-?-source(:.*)?'
146Compile scalacOptions: -encoding, UTF-8, -unchecked, -language:implicitConversions, -Ykind-projector, -rewrite, -Wconf:msg=can be rewritten automatically under:s, -source:3.4-migration
147[info] compiling 15 Scala sources to /build/repo/core/target/scala-3.7.4/classes ...
148[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
149[info] [patched file /build/repo/core/src/main/scala/au/id/tmm/collections/DupelessSeq.scala]
150[info] [patched file /build/repo/core/src/main/scala/au/id/tmm/collections/NonEmptySeqOps.scala]
151[info] [patched file /build/repo/core/src/main/scala/au/id/tmm/collections/NonEmptyMap.scala]
152[warn] one warning found
153[info] done compiling
154[info] compiling 6 Scala sources to /build/repo/scalacheck/target/scala-3.7.4/classes ...
155[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
156[warn] one warning found
157[info] done compiling
158[info] compiling 21 Scala sources to /build/repo/cats/target/scala-3.7.4/classes ...
159[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
160[info] [patched file /build/repo/cats/src/main/scala/au/id/tmm/collections/cats/instances/unlawful/NonEmptySetUnlawfulInstances.scala]
161[info] [patched file /build/repo/cats/src/main/scala/au/id/tmm/collections/cats/instances/NonEmptyMapInstances.scala]
162[info] [patched file /build/repo/cats/src/main/scala/au/id/tmm/collections/cats/instances/NonEmptyArraySeqInstances.scala]
163[info] [patched file /build/repo/cats/src/main/scala/au/id/tmm/collections/cats/instances/DupelessSeqInstances.scala]
164[info] [patched file /build/repo/cats/src/main/scala/au/id/tmm/collections/cats/instances/NonEmptySetInstances.scala]
165[info] [patched file /build/repo/cats/src/main/scala/au/id/tmm/collections/cats/instances/NonEmptyDupelessSeqInstances.scala]
166[warn] one warning found
167[info] done compiling
168[info] compiling 3 Scala sources to /build/repo/core/target/scala-3.7.4/classes ...
169[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
170[warn] one warning found
171[info] done compiling
172[info] compiling 4 Scala sources to /build/repo/core/target/scala-3.7.4/classes ...
173[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
174[warn] two warnings found
175[info] done compiling
176[info] compiling 6 Scala sources to /build/repo/cats/target/scala-3.7.4/classes ...
177[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
178[warn] one warning found
179[info] done compiling
180[info] compiling 3 Scala sources to /build/repo/cats/target/scala-3.7.4/classes ...
181[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
182[warn] two warnings found
183[info] done compiling
184[info] compiling 17 Scala sources to /build/repo/cats/target/scala-3.7.4/test-classes ...
185[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
186[info] [patched file /build/repo/cats/src/test/scala/au/id/tmm/collections/cats/instances/NonEmptySetInstancesLawsSpec.scala]
187[info] [patched file /build/repo/cats/src/test/scala/au/id/tmm/collections/cats/instances/unlawful/MapUnlawfulInstancesSpec.scala]
188[info] [patched file /build/repo/cats/src/test/scala/au/id/tmm/collections/cats/instances/NonEmptyDupelessSeqInstancesLawsSpec.scala]
189[warn] one warning found
190[info] done compiling
191[info] compiling 3 Scala sources to /build/repo/cats/target/scala-3.7.4/test-classes ...
192[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
193[warn] one warning found
194[info] done compiling
195Starting build for ProjectRef(file:/build/repo/,circe) (tmm-scala-collections-circe)... [1/4]
196Compile scalacOptions: -encoding, UTF-8, -unchecked, -language:implicitConversions, -Ykind-projector, -rewrite, -Wconf:msg=can be rewritten automatically under:s, -source:3.4-migration
197[info] compiling 8 Scala sources to /build/repo/circe/target/scala-3.7.4/classes ...
198[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
199[warn] one warning found
200[info] done compiling
201[info] compiling 7 Scala sources to /build/repo/circe/target/scala-3.7.4/test-classes ...
202[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
203[info] [patched file /build/repo/circe/src/test/scala/au/id/tmm/collections/circe/codecs/NonEmptyMapCodecsSpec.scala]
204[info] [patched file /build/repo/circe/src/test/scala/au/id/tmm/collections/circe/codecs/ArraySeqDecodersSpec.scala]
205[warn] one warning found
206[info] done compiling
207[info] compiling 2 Scala sources to /build/repo/circe/target/scala-3.7.4/test-classes ...
208[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
209[warn] one warning found
210[info] done compiling
211Starting build for ProjectRef(file:/build/repo/,core) (tmm-scala-collections-core)... [2/4]
212Compile scalacOptions: -encoding, UTF-8, -unchecked, -language:implicitConversions, -Ykind-projector, -rewrite, -Wconf:msg=can be rewritten automatically under:s, -source:3.4-migration
213[info] compiling 11 Scala sources to /build/repo/core/target/scala-3.7.4/test-classes ...
214[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
215[info] [patched file /build/repo/core/src/test/scala/au/id/tmm/collections/NonEmptyArraySeqSpec.scala]
216[info] [patched file /build/repo/core/src/test/scala/au/id/tmm/collections/syntax/IteratorOpsSpec.scala]
217[info] [patched file /build/repo/core/src/test/scala/au/id/tmm/collections/DupelessSeqSpec.scala]
218[warn] one warning found
219[info] done compiling
220[info] compiling 3 Scala sources to /build/repo/core/target/scala-3.7.4/test-classes ...
221[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
222[warn] one warning found
223[info] done compiling
224Starting build for ProjectRef(file:/build/repo/,scalaCheck) (tmm-scala-collections-scalacheck)... [3/4]
225Compile scalacOptions: -encoding, UTF-8, -unchecked, -language:implicitConversions, -Ykind-projector, -rewrite, -Wconf:msg=can be rewritten automatically under:s, -source:3.4-migration
226
227************************
228Build summary:
229[{
230 "module": "tmm-scala-collections-cats",
231 "compile": {"status": "ok", "tookMs": 12079, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
232 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
233 "test-compile": {"status": "ok", "tookMs": 7927, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
234 "test": {"status": "skipped", "tookMs": 0, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
235 "publish": {"status": "skipped", "tookMs": 0},
236 "metadata": {
237 "crossScalaVersions": ["2.13.8", "3.1.3"]
238}
239},{
240 "module": "tmm-scala-collections-circe",
241 "compile": {"status": "ok", "tookMs": 909, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
242 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
243 "test-compile": {"status": "ok", "tookMs": 1338, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
244 "test": {"status": "skipped", "tookMs": 0, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
245 "publish": {"status": "skipped", "tookMs": 0},
246 "metadata": {
247 "crossScalaVersions": ["2.13.8", "3.1.3"]
248}
249},{
250 "module": "tmm-scala-collections-core",
251 "compile": {"status": "ok", "tookMs": 76, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
252 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
253 "test-compile": {"status": "ok", "tookMs": 1613, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
254 "test": {"status": "skipped", "tookMs": 0, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
255 "publish": {"status": "skipped", "tookMs": 0},
256 "metadata": {
257 "crossScalaVersions": ["2.13.8", "3.1.3"]
258}
259},{
260 "module": "tmm-scala-collections-scalacheck",
261 "compile": {"status": "ok", "tookMs": 80, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
262 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
263 "test-compile": {"status": "ok", "tookMs": 101, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
264 "test": {"status": "skipped", "tookMs": 0, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
265 "publish": {"status": "skipped", "tookMs": 0},
266 "metadata": {
267 "crossScalaVersions": ["2.13.8", "3.1.3"]
268}
269}]
270************************
271[success] Total time: 32 s, completed Dec 31, 2025, 9:49:13 PM
272[0JChecking patch project/plugins.sbt...
273Checking patch project/build.properties...
274Checking patch build.sbt...
275Applied patch project/plugins.sbt cleanly.
276Applied patch project/build.properties cleanly.
277Applied patch build.sbt cleanly.
278Commit migration rewrites
279Switched to a new branch 'opencb/migrate-source-3.4'
280[opencb/migrate-source-3.4 19faa6c] Apply Scala compiler rewrites using -source:3.4-migration using Scala 3.7.4
281 17 files changed, 32 insertions(+), 32 deletions(-)
282----
283Preparing build for 3.8.0-RC5
284Scala binary version found: 3.8
285Implicitly using source version 3.8
286Scala binary version found: 3.8
287Implicitly using source version 3.8
288Would try to apply common scalacOption (best-effort, sbt/mill only):
289Append: ,REQUIRE:-source:3.8
290Remove: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
291
292Try apply source patch:
293Path: build.sbt
294Pattern: ThisBuild / tlFatalWarnings := true
295Replacement:
296Successfully applied pattern 'ThisBuild / tlFatalWarnings := true' in build.sbt
297----
298Starting build for 3.8.0-RC5
299Execute tests: true
300sbt project found:
301Sbt version 1.7.0 is not supported, minimal supported version is 1.11.5
302Enforcing usage of sbt in version 1.11.5
303No prepare script found for project tmccarthy/tmm-scala-collections
304##################################
305Scala version: 3.8.0-RC5
306Targets: au.id.tmm.tmm-scala-collections%tmm-scala-collections-cats au.id.tmm.tmm-scala-collections%tmm-scala-collections-circe au.id.tmm.tmm-scala-collections%tmm-scala-collections-core au.id.tmm.tmm-scala-collections%tmm-scala-collections-scalacheck
307Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":["3.4"],"sourcePatches":[{"path":"build.sbt","pattern":"ThisBuild / tlFatalWarnings := true","replaceWith":""}]}
308##################################
309Using extra scalacOptions: ,REQUIRE:-source:3.8
310Filtering out scalacOptions: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
311[sbt_options] declare -a sbt_options=()
312[process_args] java_version = '17'
313[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8/rt.jar'
314# Executing command line:
315java
316-Dfile.encoding=UTF-8
317-Dcommunitybuild.scala=3.8.0-RC5
318-Dcommunitybuild.project.dependencies.add=
319-Xmx7G
320-Xms4G
321-Xss8M
322-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
323-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8
324-jar
325/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
326"setCrossScalaVersions 3.8.0-RC5"
327"++3.8.0-RC5 -v"
328"mapScalacOptions ",REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s" ",-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
329"set every credentials := Nil"
330"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
331"removeScalacOptionsStartingWith -P:wartremover"
332
333moduleMappings
334"runBuild 3.8.0-RC5 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":["3.4"],"sourcePatches":[{"path":"build.sbt","pattern":"ThisBuild / tlFatalWarnings := true","replaceWith":""}]}""" au.id.tmm.tmm-scala-collections%tmm-scala-collections-cats au.id.tmm.tmm-scala-collections%tmm-scala-collections-circe au.id.tmm.tmm-scala-collections%tmm-scala-collections-core au.id.tmm.tmm-scala-collections%tmm-scala-collections-scalacheck"
335
336[info] welcome to sbt 1.11.5 (Eclipse Adoptium Java 17.0.8)
337[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
338[info] loading project definition from /build/repo/project
339[info] loading settings for project root from build.sbt...
340[info] set scmInfo to https://github.com/tmccarthy/tmm-scala-collections
341[info] set current project to tmm-scala-collections (in build file:/build/repo/)
342Execute setCrossScalaVersions: 3.8.0-RC5
343OpenCB::Changing crossVersion 3.1.3 -> 3.8.0-RC5 in rootNative/crossScalaVersions
344OpenCB::Changing crossVersion 3.1.3 -> 3.8.0-RC5 in rootJS/crossScalaVersions
345OpenCB::Changing crossVersion 3.1.3 -> 3.8.0-RC5 in core/crossScalaVersions
346OpenCB::Changing crossVersion 3.1.3 -> 3.8.0-RC5 in circe/crossScalaVersions
347OpenCB::Changing crossVersion 3.1.3 -> 3.8.0-RC5 in root/crossScalaVersions
348OpenCB::Changing crossVersion 3.1.3 -> 3.8.0-RC5 in cats/crossScalaVersions
349OpenCB::Changing crossVersion 3.1.3 -> 3.8.0-RC5 in rootJVM/crossScalaVersions
350OpenCB::Changing crossVersion 3.1.3 -> 3.8.0-RC5 in scalaCheck/crossScalaVersions
351[info] set scmInfo to https://github.com/tmccarthy/tmm-scala-collections
352[info] set current project to tmm-scala-collections (in build file:/build/repo/)
353[info] Setting Scala version to 3.8.0-RC5 on 8 projects.
354[info] Switching Scala version on:
355[info] * root (2.13.8, 3.8.0-RC5)
356[info] rootJS (2.13.8, 3.8.0-RC5)
357[info] rootJVM (2.13.8, 3.8.0-RC5)
358[info] rootNative (2.13.8, 3.8.0-RC5)
359[info] circe (2.13.8, 3.8.0-RC5)
360[info] cats (2.13.8, 3.8.0-RC5)
361[info] core (2.13.8, 3.8.0-RC5)
362[info] scalaCheck (2.13.8, 3.8.0-RC5)
363[info] Excluding projects:
364[info] Reapplying settings...
365[info] set scmInfo to https://github.com/tmccarthy/tmm-scala-collections
366[info] set current project to tmm-scala-collections (in build file:/build/repo/)
367Execute mapScalacOptions: ,REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
368[info] Reapplying settings...
369[info] set scmInfo to https://github.com/tmccarthy/tmm-scala-collections
370[info] set current project to tmm-scala-collections (in build file:/build/repo/)
371[info] Defining Global / credentials, cats / credentials and 6 others.
372[info] The new values will be used by allCredentials, cats / allCredentials and 45 others.
373[info] Run `last` for details.
374[info] Reapplying settings...
375[info] set scmInfo to https://github.com/tmccarthy/tmm-scala-collections
376[info] set current project to tmm-scala-collections (in build file:/build/repo/)
377Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
378[info] Reapplying settings...
379OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
380
381 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
382 Did you mean allExcludeDependencies ?
383 , retry without global scopes
384[info] Reapplying settings...
385[info] set scmInfo to https://github.com/tmccarthy/tmm-scala-collections
386[info] set current project to tmm-scala-collections (in build file:/build/repo/)
387Execute removeScalacOptionsStartingWith: -P:wartremover
388[info] Reapplying settings...
389[info] set scmInfo to https://github.com/tmccarthy/tmm-scala-collections
390[info] set current project to tmm-scala-collections (in build file:/build/repo/)
391[success] Total time: 0 s, completed Dec 31, 2025, 9:49:26 PM
392Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":["3.4"],"sourcePatches":[{"path":"build.sbt","pattern":"ThisBuild / tlFatalWarnings := true","replaceWith":""}]}
393Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),Full,List()))
394Starting build...
395Projects: Set(cats, circe, core, scalaCheck)
396Starting build for ProjectRef(file:/build/repo/,cats) (tmm-scala-collections-cats)... [0/4]
397OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.8` in Scala 2.12.20 module Global
398OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
399OpenCB::Filter out '-feature', matches setting pattern '^-?-feature'
400OpenCB::Filter out '-source:3.0-migration', matches setting pattern '^-?-source(:.*)?'
401Compile scalacOptions: -encoding, UTF-8, -unchecked, -language:implicitConversions, -Ykind-projector, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
402[info] compiling 15 Scala sources to /build/repo/core/target/scala-3.8.0-RC5/classes ...
403[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
404[warn] one warning found
405[info] done compiling
406[info] compiling 6 Scala sources to /build/repo/scalacheck/target/scala-3.8.0-RC5/classes ...
407[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
408[warn] one warning found
409[info] done compiling
410[info] compiling 21 Scala sources to /build/repo/cats/target/scala-3.8.0-RC5/classes ...
411[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
412[warn] one warning found
413[info] done compiling
414[info] compiling 17 Scala sources to /build/repo/cats/target/scala-3.8.0-RC5/test-classes ...
415[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
416[warn] one warning found
417[info] done compiling
418au.id.tmm.collections.cats.instances.DupelessSeqInstancesSpec:
419au.id.tmm.collections.cats.instances.NonEmptyDupelessSeqInstancesSpec:
420au.id.tmm.collections.cats.syntax.safegroupby.SafeGroupBySyntaxSpec:
421 + safe group by for Set should work 0.089s
422 + the semigroup instance for NonEmptyDupelessSeq can be found with a simple import 0.091s
423 + safe group by for Set should work for groupMap 0.002s
424 + safe group by for Set should work for the key value 0.004s
425 + the show instance for NonEmptyDupelessSeq should produce a sensible string 0.01s
426 + combineN work for an empty DupelessSeq 0.124s
427au.id.tmm.collections.cats.syntax.NonEmptySetOpsSpec:
428 + a non-empty set can be converted to a cats NonEmptyList 0.008s
429 + safe group by for List should work for a list of tuples 0.065s
430 + safe group by for List should work for an empty list 0.0s
431 + a non-empty set can be converted to a cats NonEmptyVector 0.028s
432 + a non-empty list can be converted to a tmmUtils NonEmptySet 0.003s
433 + a non-empty vector can be converted to a tmmUtils NonEmptySet 0.001s
434au.id.tmm.collections.cats.syntax.ArraySeqConversionsSpec:
435 + a non-empty arrayseq can be converted to a non-empty vector 0.003s
436au.id.tmm.collections.cats.instances.MapOverKeysInstancesLawsSpec:
437 + a non-empty vector can be converted to a non-empty arrayseq 0.001s
438 + a non-empty vector can be converted to a specialised non-empty arraySeq 0.0s
439au.id.tmm.collections.cats.instances.MapOverKeysInstancesSpec:
440 + the monoid for a map over keys should combine values 0.014s
441au.id.tmm.collections.cats.instances.unlawful.NonEmptyMapUnlawfulInstancesSpec:
442au.id.tmm.collections.cats.instances.NonEmptyArraySeqInstancesLawsSpec:
443au.id.tmm.collections.cats.instances.NonEmptySetInstancesLawsSpec:
444==> i au.id.tmm.collections.cats.instances.NonEmptySetInstancesLawsSpec.Eq for tmmUtils NonEmptySet: eq.antisymmetry eq ignored 0.0s
445 + Eq for tmmUtils NonEmptySet: eq.reflexivity eq 0.072s
446 + Eq for NonEmptyArraySeq: eq.antisymmetry eq 0.121s
447 + Eq for NonEmptyArraySeq: eq.reflexivity eq 0.024s
448 + Traverse for NonEmptyMap: traverse.collectFirst reference 0.248s
449 + Eq for tmmUtils NonEmptySet: eq.symmetry eq 0.107s
450 + Eq for NonEmptyArraySeq: eq.symmetry eq 0.05s
451 + Eq for NonEmptyArraySeq: eq.transitivity eq 0.051s
452 + Eq for tmmUtils NonEmptySet: eq.transitivity eq 0.067s
453 + Traverse for NonEmptyMap: traverse.collectFirstSome reference 0.082s
454 + Hash for tmmUtils NonEmptySet: hash.antisymmetry eq 0.023s
455 + Hash for NonEmptyArraySeq: hash.antisymmetry eq 0.043s
456 + Hash for tmmUtils NonEmptySet: hash.hash compatibility 0.018s
457 + Hash for tmmUtils NonEmptySet: hash.reflexivity eq 0.008s
458 + Hash for NonEmptyArraySeq: hash.hash compatibility 0.042s
459 + Hash for tmmUtils NonEmptySet: hash.same as scala hashing 0.048s
460 + Hash for NonEmptyArraySeq: hash.reflexivity eq 0.017s
461 + Hash for NonEmptyArraySeq: hash.same as scala hashing 0.017s
462 + Hash for tmmUtils NonEmptySet: hash.same as universal hash 0.037s
463 + Hash for NonEmptyArraySeq: hash.same as universal hash 0.021s
464 + Hash for NonEmptyArraySeq: hash.symmetry eq 0.012s
465 + Hash for tmmUtils NonEmptySet: hash.symmetry eq 0.023s
466 + Hash for NonEmptyArraySeq: hash.transitivity eq 0.01s
467 + Functor for Map over keys: functor.covariant composition 0.605s
468 + Hash for tmmUtils NonEmptySet: hash.transitivity eq 0.047s
469 + Functor for Map over keys: functor.covariant identity 0.061s
470 + Semilattice for tmmUtils NonEmptySet: semilattice.associative 0.079s
471 + Traverse for NonEmptyMap: traverse.contains all elements from itself 0.361s
472 + Traverse for NonEmptyMap: traverse.contains consistent with exists 0.04s
473 + Traverse for NonEmptyMap: traverse.contains consistent with forall 0.046s
474 + Functor for Map over keys: functor.invariant composition 0.295s
475 + Traverse for NonEmptyMap: traverse.covariant composition 0.121s
476 + Functor for Map over keys: functor.invariant identity 0.042s
477 + Bimonad for NonEmptyArraySeq: bimonad.ap consistent with product + map 0.443s
478 + Bimonad for NonEmptyArraySeq: bimonad.applicative homomorphism 0.006s
479 + Traverse for NonEmptyMap: traverse.covariant identity 0.039s
480 + MonoidK for Map over keys: monoidK.monoidK left identity 0.039s
481 + Bimonad for NonEmptyArraySeq: bimonad.applicative identity 0.011s
482 + Bimonad for NonEmptyArraySeq: bimonad.applicative interchange 0.029s
483 + Semilattice for tmmUtils NonEmptySet: semilattice.combineAllOption 0.377s
484 + MonoidK for Map over keys: monoidK.monoidK right identity 0.047s
485 + Bimonad for NonEmptyArraySeq: bimonad.applicative map 0.019s
486 + Bimonad for NonEmptyArraySeq: bimonad.applicative unit 0.001s
487 + Semilattice for tmmUtils NonEmptySet: semilattice.commutative 0.015s
488 + Traverse for NonEmptyMap: traverse.dropWhile_ reference 0.068s
489 + Semilattice for tmmUtils NonEmptySet: semilattice.idempotency 0.008s
490 + Traverse for NonEmptyMap: traverse.exists consistent with find 0.055s
491 + Traverse for NonEmptyMap: traverse.exists is lazy 0.051s
492 + MonoidK for Map over keys: monoidK.semigroupK associative 0.133s
493 + Traverse for NonEmptyMap: traverse.filter_ reference 0.043s
494au.id.tmm.collections.cats.instances.NonEmptyMapInstancesLawsSpec:
495 + Traverse for NonEmptyMap: traverse.fold reference 0.057s
496 + Eq for tmmUtils NonEmptyMap: eq.antisymmetry eq 0.1s
497 + Eq for tmmUtils NonEmptyMap: eq.reflexivity eq 0.032s
498 + Eq for tmmUtils NonEmptyMap: eq.symmetry eq 0.036s
499 + Semilattice for tmmUtils NonEmptySet: semilattice.intercalateCombineAllOption 0.373s
500 + Semilattice for tmmUtils NonEmptySet: semilattice.intercalateIntercalates 0.011s
501 + Semilattice for tmmUtils NonEmptySet: semilattice.intercalateRepeat1 0.006s
502 + Semilattice for tmmUtils NonEmptySet: semilattice.intercalateRepeat2 0.01s
503 + Semilattice for tmmUtils NonEmptySet: semilattice.repeat1 0.004s
504 + Eq for tmmUtils NonEmptyMap: eq.transitivity eq 0.082s
505 + Semilattice for tmmUtils NonEmptySet: semilattice.repeat2 0.005s
506 + Hash for tmmUtils NonEmptyMap: hash.antisymmetry eq 0.08s
507 + Traverse for NonEmptyMap: traverse.foldLeft consistent with foldMap 0.283s
508 + Hash for tmmUtils NonEmptyMap: hash.hash compatibility 0.083s
509 + Traverse for NonEmptyMap: traverse.foldM identity 0.093s
510 + Hash for tmmUtils NonEmptyMap: hash.reflexivity eq 0.043s
511 + Traverse for NonEmptyMap: traverse.foldRight consistent with foldMap 0.03s
512 + Traverse for NonEmptyMap: traverse.foldRight is lazy 0.024s
513 + Semilattice for tmmUtils NonEmptySet: semilattice.reverseCombineAllOption 0.233s
514 + Semilattice for tmmUtils NonEmptySet: semilattice.reverseRepeat1 0.017s
515 + Semilattice for tmmUtils NonEmptySet: semilattice.reverseRepeat2 0.005s
516 + Semilattice for tmmUtils NonEmptySet: semilattice.reverseReverses 0.013s
517 + Traverse for NonEmptyMap: traverse.foldRightDefer consistency 0.054s
518 + SemigroupK for tmmUtils NonEmptySet: semigroupK.semigroupK associative 0.017s
519 + Hash for tmmUtils NonEmptyMap: hash.same as scala hashing 0.085s
520 + Traverse for NonEmptyMap: traverse.forall consistent with exists 0.045s
521 + Hash for tmmUtils NonEmptyMap: hash.same as universal hash 0.06s
522 + UnorderedTraverse for tmmUtils NonEmptySet: unorderedTraverse.contains all elements from itself 0.086s
523 + Traverse for NonEmptyMap: traverse.forall is lazy 0.041s
524 + UnorderedTraverse for tmmUtils NonEmptySet: unorderedTraverse.contains consistent with exists 0.017s
525 + UnorderedTraverse for tmmUtils NonEmptySet: unorderedTraverse.contains consistent with forall 0.008s
526 + UnorderedTraverse for tmmUtils NonEmptySet: unorderedTraverse.exists is lazy 0.006s
527 + UnorderedTraverse for tmmUtils NonEmptySet: unorderedTraverse.forall consistent with exists 0.005s
528 + UnorderedTraverse for tmmUtils NonEmptySet: unorderedTraverse.forall is lazy 0.005s
529 + Hash for tmmUtils NonEmptyMap: hash.symmetry eq 0.061s
530 + UnorderedTraverse for tmmUtils NonEmptySet: unorderedTraverse.forall true if empty 0.004s
531 + Traverse for NonEmptyMap: traverse.forall true if empty 0.048s
532 + UnorderedTraverse for tmmUtils NonEmptySet: unorderedTraverse.nonEmpty reference 0.021s
533 + UnorderedTraverse for tmmUtils NonEmptySet: unorderedTraverse.unordered traverse consistent with sequence 0.048s
534 + UnorderedTraverse for tmmUtils NonEmptySet: unorderedTraverse.unordered traverse parallel composition 0.035s
535 + Traverse for NonEmptyMap: traverse.get reference 0.107s
536 + Hash for tmmUtils NonEmptyMap: hash.transitivity eq 0.132s
537 + UnorderedTraverse for tmmUtils NonEmptySet: unorderedTraverse.unordered traverse sequential composition 0.054s
538 + UnorderedTraverse for tmmUtils NonEmptySet: unorderedTraverse.unorderedFold consistent with unorderedFoldMap 0.008s
539 + Traverse for NonEmptyMap: traverse.invariant composition 0.078s
540 + Traverse for NonEmptyMap: traverse.invariant identity 0.032s
541 + Traverse for NonEmptyMap: traverse.nonEmpty reference 0.027s
542 + Traverse for NonEmptyMap: traverse.ordered consistency 0.029s
543 + Traverse for NonEmptyMap: traverse.reduceLeftOption consistent with reduceLeftToOption 0.031s
544 + Traverse for NonEmptyMap: traverse.reduceRightOption consistent with reduceRightToOption 0.076s
545 + UnorderedTraverse for tmmUtils NonEmptyMap: unorderedTraverse.contains all elements from itself 0.283s
546 + Traverse for NonEmptyMap: traverse.takeWhile_ reference 0.04s
547 + UnorderedTraverse for tmmUtils NonEmptyMap: unorderedTraverse.contains consistent with exists 0.019s
548 + UnorderedTraverse for tmmUtils NonEmptyMap: unorderedTraverse.contains consistent with forall 0.018s
549 + Traverse for NonEmptyMap: traverse.toList reference 0.031s
550 + UnorderedTraverse for tmmUtils NonEmptyMap: unorderedTraverse.exists is lazy 0.017s
551 + UnorderedTraverse for tmmUtils NonEmptyMap: unorderedTraverse.forall consistent with exists 0.023s
552 + Traverse for NonEmptyMap: traverse.traverse derive foldMap 0.038s
553 + Monad for NonEmptySet: monad.ap consistent with product + map 0.344s
554 + UnorderedTraverse for tmmUtils NonEmptyMap: unorderedTraverse.forall is lazy 0.026s
555 + Monad for NonEmptySet: monad.applicative homomorphism 0.005s
556 + Traverse for NonEmptyMap: traverse.traverse identity 0.028s
557 + Monad for NonEmptySet: monad.applicative identity 0.012s
558 + UnorderedTraverse for tmmUtils NonEmptyMap: unorderedTraverse.forall true if empty 0.027s
559 + UnorderedTraverse for tmmUtils NonEmptyMap: unorderedTraverse.nonEmpty reference 0.013s
560 + Monad for NonEmptySet: monad.applicative interchange 0.028s
561 + Monad for NonEmptySet: monad.applicative map 0.013s
562 + Monad for NonEmptySet: monad.applicative unit 0.001s
563 + Traverse for NonEmptyMap: traverse.traverse order consistency 0.05s
564 + UnorderedTraverse for tmmUtils NonEmptyMap: unorderedTraverse.unordered traverse consistent with sequence 0.023s
565 + Traverse for NonEmptyMap: traverse.traverse parallel composition 0.062s
566 + UnorderedTraverse for tmmUtils NonEmptyMap: unorderedTraverse.unordered traverse parallel composition 0.074s
567 + UnorderedTraverse for tmmUtils NonEmptyMap: unorderedTraverse.unordered traverse sequential composition 0.049s
568 + UnorderedTraverse for tmmUtils NonEmptyMap: unorderedTraverse.unorderedFold consistent with unorderedFoldMap 0.016s
569 + Functor for tmmUtils NonEmptyMap: functor.covariant composition 0.047s
570 + Functor for tmmUtils NonEmptyMap: functor.covariant identity 0.025s
571 + Traverse for NonEmptyMap: traverse.traverse ref mapAccumulate 0.179s
572 + Functor for tmmUtils NonEmptyMap: functor.invariant composition 0.04s
573 + Functor for tmmUtils NonEmptyMap: functor.invariant identity 0.015s
574 + Traverse for NonEmptyMap: traverse.traverse ref mapWithIndex 0.137s
575 + Align for tmmUtils NonEmptyMap: align.align associativity 0.143s
576 + Traverse for NonEmptyMap: traverse.traverse ref traverseWithIndexM 0.063s
577 + Align for tmmUtils NonEmptyMap: align.align homomorphism 0.109s
578 + Traverse for NonEmptyMap: traverse.traverse ref zipWithIndex 0.12s
579 + Traverse for NonEmptyMap: traverse.traverse sequential composition 0.054s
580 + Traverse for NonEmptyMap: traverse.traverse traverseTap 0.024s
581 + Align for tmmUtils NonEmptyMap: align.alignWith consistent 0.119s
582 + Traverse for NonEmptyMap: traverse.unordered traverse consistent with sequence 0.032s
583 + CommutativeSemigroup for tmmUtils NonEmptyMap: commutativeSemigroup.associative 0.06s
584 + Traverse for NonEmptyMap: traverse.unordered traverse parallel composition 0.058s
585 + Traverse for NonEmptyMap: traverse.unordered traverse sequential composition 0.036s
586 + Traverse for NonEmptyMap: traverse.unorderedFold consistent with unorderedFoldMap 0.014s
587au.id.tmm.collections.cats.instances.DupelessSeqInstancesLawsSpec:
588 + Eq for DupelessSeq: eq.antisymmetry eq 0.027s
589 + Eq for DupelessSeq: eq.reflexivity eq 0.003s
590 + Eq for DupelessSeq: eq.symmetry eq 0.014s
591 + Eq for DupelessSeq: eq.transitivity eq 0.017s
592 + Hash for DupelessSeq: hash.antisymmetry eq 0.011s
593 + Hash for DupelessSeq: hash.hash compatibility 0.006s
594 + Hash for DupelessSeq: hash.reflexivity eq 0.004s
595 + Hash for DupelessSeq: hash.same as scala hashing 0.013s
596 + Hash for DupelessSeq: hash.same as universal hash 0.009s
597 + Hash for DupelessSeq: hash.symmetry eq 0.008s
598 + Hash for DupelessSeq: hash.transitivity eq 0.011s
599 + Monoid for DupelessSeq: monoid.associative 0.042s
600 + Monoid for DupelessSeq: monoid.collect0 0.003s
601 + CommutativeSemigroup for tmmUtils NonEmptyMap: commutativeSemigroup.combineAllOption 0.743s
602 + CommutativeSemigroup for tmmUtils NonEmptyMap: commutativeSemigroup.commutative 0.029s
603 + Monoid for DupelessSeq: monoid.combine all 0.836s
604 + CommutativeSemigroup for tmmUtils NonEmptyMap: commutativeSemigroup.intercalateCombineAllOption 0.511s
605 + CommutativeSemigroup for tmmUtils NonEmptyMap: commutativeSemigroup.intercalateIntercalates 0.076s
606 + CommutativeSemigroup for tmmUtils NonEmptyMap: commutativeSemigroup.intercalateRepeat1 0.046s
607 + CommutativeSemigroup for tmmUtils NonEmptyMap: commutativeSemigroup.intercalateRepeat2 0.044s
608 + CommutativeSemigroup for tmmUtils NonEmptyMap: commutativeSemigroup.repeat1 0.038s
609 + CommutativeSemigroup for tmmUtils NonEmptyMap: commutativeSemigroup.repeat2 0.02s
610 + Monoid for DupelessSeq: monoid.combineAllOption 0.65s
611 + CommutativeSemigroup for tmmUtils NonEmptyMap: commutativeSemigroup.reverseCombineAllOption 0.504s
612 + CommutativeSemigroup for tmmUtils NonEmptyMap: commutativeSemigroup.reverseRepeat1 0.011s
613 + CommutativeSemigroup for tmmUtils NonEmptyMap: commutativeSemigroup.reverseRepeat2 0.012s
614 + CommutativeSemigroup for tmmUtils NonEmptyMap: commutativeSemigroup.reverseReverses 0.028s
615 + Semigroup for tmmUtils NonEmptyMap: semigroup.associative 0.053s
616 + Monad for NonEmptySet: monad.apply composition 3.152s
617 + Monad for NonEmptySet: monad.covariant composition 0.005s
618 + Monad for NonEmptySet: monad.covariant identity 0.003s
619 + Monoid for DupelessSeq: monoid.intercalateCombineAllOption 0.73s
620 + Monoid for DupelessSeq: monoid.intercalateIntercalates 0.007s
621 + Monoid for DupelessSeq: monoid.intercalateRepeat1 0.005s
622 + Monoid for DupelessSeq: monoid.intercalateRepeat2 0.006s
623 + Monoid for DupelessSeq: monoid.is id 0.003s
624 + Monoid for DupelessSeq: monoid.left identity 0.003s
625 + Monoid for DupelessSeq: monoid.repeat0 0.002s
626 + Monoid for DupelessSeq: monoid.repeat1 0.002s
627 + Monoid for DupelessSeq: monoid.repeat2 0.003s
628 + Semigroup for tmmUtils NonEmptyMap: semigroup.combineAllOption 0.474s
629 + Bimonad for NonEmptyArraySeq: bimonad.apply composition 5.263s
630 + Semigroup for tmmUtils NonEmptyMap: semigroup.intercalateCombineAllOption 0.602s
631 + Monoid for DupelessSeq: monoid.reverseCombineAllOption 0.667s
632 + Monoid for DupelessSeq: monoid.reverseRepeat1 0.002s
633 + Monoid for DupelessSeq: monoid.reverseRepeat2 0.002s
634 + Monoid for DupelessSeq: monoid.reverseReverses 0.004s
635 + Monoid for DupelessSeq: monoid.right identity 0.003s
636 + Band for DupelessSeq: band.associative 0.007s
637 + Semigroup for tmmUtils NonEmptyMap: semigroup.intercalateIntercalates 0.051s
638 + Semigroup for tmmUtils NonEmptyMap: semigroup.intercalateRepeat1 0.022s
639 + Semigroup for tmmUtils NonEmptyMap: semigroup.intercalateRepeat2 0.024s
640 + Semigroup for tmmUtils NonEmptyMap: semigroup.repeat1 0.01s
641 + Semigroup for tmmUtils NonEmptyMap: semigroup.repeat2 0.012s
642 + Bimonad for NonEmptyArraySeq: bimonad.coflatMap associativity 0.268s
643 + Bimonad for NonEmptyArraySeq: bimonad.coflatMap identity 0.016s
644 + Bimonad for NonEmptyArraySeq: bimonad.coflatMapIdentity 0.006s
645 + Bimonad for NonEmptyArraySeq: bimonad.coflatten coherence 0.021s
646 + Bimonad for NonEmptyArraySeq: bimonad.coflatten throughMap 0.039s
647 + Bimonad for NonEmptyArraySeq: bimonad.coflattenCoherence 0.015s
648 + Monad for NonEmptySet: monad.flatMap associativity 1.052s
649 + Bimonad for NonEmptyArraySeq: bimonad.coflattenThroughMap 0.017s
650 + Bimonad for NonEmptyArraySeq: bimonad.comonad left identity 0.006s
651 + Bimonad for NonEmptyArraySeq: bimonad.comonad right identity 0.008s
652 + Bimonad for NonEmptyArraySeq: bimonad.covariant composition 0.005s
653 + Bimonad for NonEmptyArraySeq: bimonad.covariant identity 0.002s
654 + Bimonad for NonEmptyArraySeq: bimonad.extract/flatMap entwining 0.023s
655 + Bimonad for NonEmptyArraySeq: bimonad.extractCoflattenIdentity 0.003s
656 + Monad for NonEmptySet: monad.flatMap consistent apply 0.094s
657 + Monad for NonEmptySet: monad.flatMap from tailRecM consistency 0.092s
658 + Monad for NonEmptySet: monad.invariant composition 0.005s
659 + Monad for NonEmptySet: monad.invariant identity 0.002s
660 + Monad for NonEmptySet: monad.map flatMap coherence 0.006s
661 + Monad for NonEmptySet: monad.map2/map2Eval consistency 0.086s
662 + Band for DupelessSeq: band.combineAllOption 0.547s
663 + Band for DupelessSeq: band.idempotency 0.001s
664 + Semigroup for tmmUtils NonEmptyMap: semigroup.reverseCombineAllOption 0.545s
665 + Semigroup for tmmUtils NonEmptyMap: semigroup.reverseRepeat1 0.012s
666 + Semigroup for tmmUtils NonEmptyMap: semigroup.reverseRepeat2 0.013s
667 + Monad for NonEmptySet: monad.map2/product-map consistency 0.122s
668 + Monad for NonEmptySet: monad.monad left identity 0.004s
669 + Monad for NonEmptySet: monad.monad right identity 0.003s
670 + Semigroup for tmmUtils NonEmptyMap: semigroup.reverseReverses 0.027s
671 + Monad for NonEmptySet: monad.monoidal left identity 0.008s
672 + Monad for NonEmptySet: monad.monoidal right identity 0.008s
673 + Functor over keys for tmmUtils NonEmptyMap: functor.covariant composition 0.127s
674 + Functor over keys for tmmUtils NonEmptyMap: functor.covariant identity 0.021s
675 + Monad for NonEmptySet: monad.mproduct consistent flatMap 0.166s
676 + Monad for NonEmptySet: monad.productL consistent map2 0.026s
677 + Monad for NonEmptySet: monad.productR consistent map2 0.018s
678 + Functor over keys for tmmUtils NonEmptyMap: functor.invariant composition 0.111s
679 + Functor over keys for tmmUtils NonEmptyMap: functor.invariant identity 0.021s
680 + Monad for NonEmptySet: monad.replicateA_ consistent with replicateA.void 0.088s
681 + SemigroupK over keys for tmmUtils NonEmptyMap: semigroupK.semigroupK associative 0.043s
682au.id.tmm.collections.cats.instances.unlawful.MapUnlawfulInstancesSpec:
683 + the group for map should subtract elements as appropriate 0.007s
684 + Unlawful Group for Map: group.associative 0.069s
685 + Unlawful Group for Map: group.collect0 0.015s
686 + Band for DupelessSeq: band.intercalateCombineAllOption 0.815s
687 + Band for DupelessSeq: band.intercalateIntercalates 0.009s
688 + Band for DupelessSeq: band.intercalateRepeat1 0.002s
689 + Band for DupelessSeq: band.intercalateRepeat2 0.006s
690 + Band for DupelessSeq: band.repeat1 0.001s
691 + Band for DupelessSeq: band.repeat2 0.002s
692 + Unlawful Group for Map: group.combine all 0.501s
693 + Unlawful Group for Map: group.combineAllOption 0.486s
694 + Unlawful Group for Map: group.consistent inverse 0.028s
695 + Band for DupelessSeq: band.reverseCombineAllOption 0.971s
696 + Band for DupelessSeq: band.reverseRepeat1 0.001s
697 + Band for DupelessSeq: band.reverseRepeat2 0.002s
698 + Band for DupelessSeq: band.reverseReverses 0.004s
699 + MonoidK for DupelessSeq: monoidK.monoidK left identity 0.002s
700 + MonoidK for DupelessSeq: monoidK.monoidK right identity 0.002s
701 + MonoidK for DupelessSeq: monoidK.semigroupK associative 0.008s
702 + Traverse for DupelessSeq: traverse.collectFirst reference 0.013s
703 + Traverse for DupelessSeq: traverse.collectFirstSome reference 0.014s
704 + Bimonad for NonEmptyArraySeq: bimonad.flatMap associativity 2.107s
705 + Traverse for DupelessSeq: traverse.contains all elements from itself 0.03s
706 + Traverse for DupelessSeq: traverse.contains consistent with exists 0.005s
707 + Traverse for DupelessSeq: traverse.contains consistent with forall 0.005s
708 + Traverse for DupelessSeq: traverse.covariant composition 0.025s
709 + Traverse for DupelessSeq: traverse.covariant identity 0.004s
710 + Traverse for DupelessSeq: traverse.dropWhile_ reference 0.006s
711 + Traverse for DupelessSeq: traverse.exists consistent with find 0.004s
712 + Bimonad for NonEmptyArraySeq: bimonad.flatMap consistent apply 0.083s
713 + Traverse for DupelessSeq: traverse.exists is lazy 0.007s
714 + Traverse for DupelessSeq: traverse.filter_ reference 0.009s
715 + Traverse for DupelessSeq: traverse.fold reference 0.005s
716 + Unlawful Group for Map: group.intercalateCombineAllOption 0.42s
717 + Bimonad for NonEmptyArraySeq: bimonad.flatMap from tailRecM consistency 0.093s
718 + Bimonad for NonEmptyArraySeq: bimonad.invariant composition 0.007s
719 + Bimonad for NonEmptyArraySeq: bimonad.invariant identity 0.001s
720 + Bimonad for NonEmptyArraySeq: bimonad.map flatMap coherence 0.004s
721 + Unlawful Group for Map: group.intercalateIntercalates 0.052s
722 + Unlawful Group for Map: group.intercalateRepeat1 0.038s
723 + Unlawful Group for Map: group.intercalateRepeat2 0.048s
724 + Unlawful Group for Map: group.is id 0.019s
725 + Bimonad for NonEmptyArraySeq: bimonad.map2/map2Eval consistency 0.153s
726 + Unlawful Group for Map: group.left identity 0.02s
727==> i au.id.tmm.collections.cats.instances.unlawful.MapUnlawfulInstancesSpec.Unlawful Group for Map: group.left inverse ignored 0.0s
728 + Unlawful Group for Map: group.repeat0 0.016s
729 + Unlawful Group for Map: group.repeat1 0.009s
730 + Unlawful Group for Map: group.repeat2 0.012s
731 + Bimonad for NonEmptyArraySeq: bimonad.map2/product-map consistency 0.085s
732 + Bimonad for NonEmptyArraySeq: bimonad.mapCoflatMapCoherence 0.005s
733 + Bimonad for NonEmptyArraySeq: bimonad.mapCoflattenIdentity 0.002s
734 + Bimonad for NonEmptyArraySeq: bimonad.monad left identity 0.002s
735 + Bimonad for NonEmptyArraySeq: bimonad.monad right identity 0.001s
736 + Bimonad for NonEmptyArraySeq: bimonad.monoidal left identity 0.005s
737 + Bimonad for NonEmptyArraySeq: bimonad.monoidal right identity 0.008s
738 + Bimonad for NonEmptyArraySeq: bimonad.mproduct consistent flatMap 0.089s
739 + Bimonad for NonEmptyArraySeq: bimonad.productL consistent map2 0.023s
740 + Traverse for DupelessSeq: traverse.foldLeft consistent with foldMap 0.479s
741 + Bimonad for NonEmptyArraySeq: bimonad.productR consistent map2 0.022s
742 + Bimonad for NonEmptyArraySeq: bimonad.pure andThen extract = id 0.004s
743 + Bimonad for NonEmptyArraySeq: bimonad.pure/coflatMap entwining 0.001s
744 + Bimonad for NonEmptyArraySeq: bimonad.replicateA_ consistent with replicateA.void 0.015s
745 + Traverse for DupelessSeq: traverse.foldM identity 0.154s
746 + Monad for NonEmptySet: monad.semigroupal associativity 2.246s
747 + Monad for NonEmptySet: monad.tailRecM consistent flatMap 0.127s
748 + Traverse for DupelessSeq: traverse.foldRight consistent with foldMap 0.263s
749 + Traverse for DupelessSeq: traverse.foldRight is lazy 0.003s
750 + Monad for NonEmptySet: monad.tailRecM stack safety 0.062s
751 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.collectFirst reference 0.007s
752 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.collectFirstSome reference 0.006s
753 + Unlawful Group for Map: group.reverseCombineAllOption 0.645s
754 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.contains all elements from itself 0.028s
755 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.contains consistent with exists 0.006s
756 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.contains consistent with forall 0.005s
757 + Unlawful Group for Map: group.reverseRepeat1 0.022s
758 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.covariant composition 0.014s
759 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.covariant identity 0.002s
760 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.dropWhile_ reference 0.007s
761 + Unlawful Group for Map: group.reverseRepeat2 0.021s
762 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.exists consistent with find 0.005s
763 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.exists is lazy 0.003s
764 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.filter_ reference 0.007s
765 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.fold reference 0.006s
766 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.foldLeft consistent with foldMap 0.005s
767 + Traverse for DupelessSeq: traverse.foldRightDefer consistency 0.105s
768 + Unlawful Group for Map: group.reverseReverses 0.025s
769 + Traverse for DupelessSeq: traverse.forall consistent with exists 0.004s
770 + Traverse for DupelessSeq: traverse.forall is lazy 0.003s
771 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.foldM identity 0.008s
772 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.foldRight consistent with foldMap 0.004s
773 + Traverse for DupelessSeq: traverse.forall true if empty 0.007s
774 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.foldRight is lazy 0.004s
775 + Traverse for DupelessSeq: traverse.get reference 0.005s
776 + Unlawful Group for Map: group.right identity 0.018s
777==> i au.id.tmm.collections.cats.instances.unlawful.MapUnlawfulInstancesSpec.Unlawful Group for Map: group.right inverse ignored 0.0s
778 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.foldRightDefer consistency 0.009s
779 + Traverse for DupelessSeq: traverse.invariant composition 0.01s
780 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.forall consistent with exists 0.008s
781 + Traverse for DupelessSeq: traverse.invariant identity 0.002s
782 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.forall is lazy 0.002s
783 + Traverse for DupelessSeq: traverse.nonEmpty reference 0.002s
784 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.forall true if empty 0.003s
785 + Traverse for DupelessSeq: traverse.ordered consistency 0.005s
786 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.get reference 0.007s
787 + Traverse for DupelessSeq: traverse.reduceLeftOption consistent with reduceLeftToOption 0.008s
788 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.invariant composition 0.008s
789 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.invariant identity 0.002s
790 + Traverse for DupelessSeq: traverse.reduceRightOption consistent with reduceRightToOption 0.013s
791 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.nonEmpty reference 0.002s
792 + Traverse for DupelessSeq: traverse.takeWhile_ reference 0.005s
793 + Unlawful CommutativeGroup for Map: group.associative 0.052s
794 + Traverse for DupelessSeq: traverse.toList reference 0.004s
795 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.nonEmptySequence_ consistent with sequence_ 0.018s
796 + Unlawful CommutativeGroup for Map: group.collect0 0.019s
797 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.nonEmptyTraverse derive reduceMap 0.027s
798 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.nonEmptyTraverse identity 0.01s
799 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.nonEmptyTraverse parallel composition 0.034s
800 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.nonEmptyTraverse sequential composition 0.083s
801 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.nonEmptyTraverse_ consistent with traverse_ 0.008s
802 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.ordered consistency 0.003s
803 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.reduce consistent with reduceLeft 0.007s
804 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.reduceLeftOption consistent with reduceLeftToOption 0.012s
805 + Traverse for DupelessSeq: traverse.traverse derive foldMap 0.221s
806 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.reduceLeftTo consistent with reduceMap 0.008s
807 + Traverse for DupelessSeq: traverse.traverse identity 0.006s
808 + Traverse for DupelessSeq: traverse.traverse order consistency 0.01s
809 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.reduceRight consistent with reduceRightOption 0.014s
810 + Traverse for DupelessSeq: traverse.traverse parallel composition 0.012s
811 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.reduceRightOption consistent with reduceRightToOption 0.012s
812 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.reduceRightTo consistent with reduceMap 0.008s
813 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.reduceRightTo consistent with reduceRightToOption 0.01s
814 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.size consistent with reduceMap 0.012s
815 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.takeWhile_ reference 0.01s
816 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.toList reference 0.002s
817 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.traverse derive foldMap 0.01s
818 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.traverse identity 0.011s
819==> i au.id.tmm.collections.cats.instances.NonEmptySetInstancesLawsSpec.NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.traverse order consistency ignored 0.0s
820 + Traverse for DupelessSeq: traverse.traverse ref mapAccumulate 0.098s
821 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.traverse parallel composition 0.029s
822 + Traverse for DupelessSeq: traverse.traverse ref mapWithIndex 0.022s
823 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.traverse ref mapAccumulate 0.027s
824 + Traverse for DupelessSeq: traverse.traverse ref traverseWithIndexM 0.015s
825 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.traverse ref mapWithIndex 0.02s
826 + Traverse for DupelessSeq: traverse.traverse ref zipWithIndex 0.029s
827 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.traverse ref traverseWithIndexM 0.012s
828 + Traverse for DupelessSeq: traverse.traverse sequential composition 0.012s
829 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.traverse ref zipWithIndex 0.017s
830 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.traverse sequential composition 0.01s
831 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.traverse traverseTap 0.008s
832 + Traverse for DupelessSeq: traverse.traverse traverseTap 0.035s
833 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.unordered traverse consistent with sequence 0.012s
834 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.unordered traverse parallel composition 0.018s
835 + Traverse for DupelessSeq: traverse.unordered traverse consistent with sequence 0.031s
836 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.unordered traverse sequential composition 0.011s
837 + NonEmptyTraverse for NonEmptySet: nonEmptyTraverse.unorderedFold consistent with unorderedFoldMap 0.006s
838au.id.tmm.collections.cats.instances.NonEmptySetInstancesSpec:
839 + the show for a NonEmptySet should produce a sensible string 0.001s
840 + the traverse for a NonEmptySet should traverse the set 0.001s
841au.id.tmm.collections.cats.instances.NonEmptyDupelessSeqInstancesLawsSpec:
842 + Eq for NonEmptyDupelessSeq: eq.antisymmetry eq 0.011s
843 + Eq for NonEmptyDupelessSeq: eq.reflexivity eq 0.006s
844 + Traverse for DupelessSeq: traverse.unordered traverse parallel composition 0.081s
845 + Eq for NonEmptyDupelessSeq: eq.symmetry eq 0.006s
846 + Eq for NonEmptyDupelessSeq: eq.transitivity eq 0.007s
847 + Hash for NonEmptyDupelessSeq: hash.antisymmetry eq 0.007s
848 + Hash for NonEmptyDupelessSeq: hash.hash compatibility 0.003s
849 + Hash for NonEmptyDupelessSeq: hash.reflexivity eq 0.005s
850 + Hash for NonEmptyDupelessSeq: hash.same as scala hashing 0.006s
851 + Hash for NonEmptyDupelessSeq: hash.same as universal hash 0.007s
852 + Unlawful CommutativeGroup for Map: group.combine all 0.602s
853 + Hash for NonEmptyDupelessSeq: hash.symmetry eq 0.005s
854 + Hash for NonEmptyDupelessSeq: hash.transitivity eq 0.007s
855 + Traverse for DupelessSeq: traverse.unordered traverse sequential composition 0.057s
856 + Traverse for DupelessSeq: traverse.unorderedFold consistent with unorderedFoldMap 0.003s
857 + Band for NonEmptyDupelessSeq: band.associative 0.015s
858 + Monad for DupelessSeq: monad.ap consistent with product + map 0.248s
859 + Monad for DupelessSeq: monad.applicative homomorphism 0.004s
860 + Monad for DupelessSeq: monad.applicative identity 0.003s
861 + Monad for DupelessSeq: monad.applicative interchange 0.017s
862 + Monad for DupelessSeq: monad.applicative map 0.005s
863 + Monad for DupelessSeq: monad.applicative unit 0.002s
864 + Unlawful CommutativeGroup for Map: group.combineAllOption 0.498s
865 + Unlawful CommutativeGroup for Map: group.consistent inverse 0.035s
866 + Bimonad for NonEmptyArraySeq: bimonad.semigroupal associativity 1.746s
867 + Bimonad for NonEmptyArraySeq: bimonad.tailRecM consistent flatMap 0.164s
868 + Bimonad for NonEmptyArraySeq: bimonad.tailRecM stack safety 0.068s
869 + SemigroupK for NonEmptyArraySeq: semigroupK.semigroupK associative 0.004s
870 + Align for NonEmptyArraySeq: align.align associativity 0.026s
871 + Align for NonEmptyArraySeq: align.align homomorphism 0.023s
872 + Align for NonEmptyArraySeq: align.alignWith consistent 0.018s
873 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.collectFirst reference 0.006s
874 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.collectFirstSome reference 0.002s
875 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.contains all elements from itself 0.035s
876 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.contains consistent with exists 0.003s
877 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.contains consistent with forall 0.002s
878 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.covariant composition 0.005s
879 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.covariant identity 0.001s
880 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.dropWhile_ reference 0.006s
881 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.exists consistent with find 0.007s
882 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.exists is lazy 0.001s
883 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.filter_ reference 0.005s
884 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.fold reference 0.006s
885 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.foldLeft consistent with foldMap 0.006s
886 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.foldM identity 0.007s
887 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.foldRight consistent with foldMap 0.007s
888 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.foldRight is lazy 0.005s
889 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.foldRightDefer consistency 0.008s
890 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.forall consistent with exists 0.002s
891 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.forall is lazy 0.002s
892 + Band for NonEmptyDupelessSeq: band.combineAllOption 0.971s
893 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.forall true if empty 0.002s
894 + Band for NonEmptyDupelessSeq: band.idempotency 0.003s
895 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.get reference 0.004s
896 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.invariant composition 0.01s
897 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.invariant identity 0.0s
898 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.nonEmpty reference 0.001s
899 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.nonEmptySequence_ consistent with sequence_ 0.006s
900 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.nonEmptyTraverse derive reduceMap 0.019s
901 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.nonEmptyTraverse identity 0.024s
902 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.nonEmptyTraverse parallel composition 0.021s
903 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.nonEmptyTraverse sequential composition 0.011s
904 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.nonEmptyTraverse_ consistent with traverse_ 0.01s
905 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.ordered consistency 0.002s
906 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.reduce consistent with reduceLeft 0.004s
907 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.reduceLeftOption consistent with reduceLeftToOption 0.008s
908 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.reduceLeftTo consistent with reduceMap 0.006s
909 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.reduceRight consistent with reduceRightOption 0.011s
910 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.reduceRightOption consistent with reduceRightToOption 0.014s
911 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.reduceRightTo consistent with reduceMap 0.007s
912 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.reduceRightTo consistent with reduceRightToOption 0.128s
913 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.size consistent with reduceMap 0.002s
914 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.takeWhile_ reference 0.011s
915 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.toList reference 0.004s
916 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.traverse derive foldMap 0.008s
917 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.traverse identity 0.003s
918 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.traverse order consistency 0.003s
919 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.traverse parallel composition 0.017s
920 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.traverse ref mapAccumulate 0.021s
921 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.traverse ref mapWithIndex 0.013s
922 + Unlawful CommutativeGroup for Map: group.intercalateCombineAllOption 0.865s
923 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.traverse ref traverseWithIndexM 0.004s
924 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.traverse ref zipWithIndex 0.014s
925 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.traverse sequential composition 0.014s
926 + Unlawful CommutativeGroup for Map: group.intercalateIntercalates 0.036s
927 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.traverse traverseTap 0.013s
928 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.unordered traverse consistent with sequence 0.002s
929 + Unlawful CommutativeGroup for Map: group.intercalateRepeat1 0.025s
930 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.unordered traverse parallel composition 0.014s
931 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.unordered traverse sequential composition 0.012s
932 + NonEmptyTraverse for NonEmptyArraySeq: nonEmptyTraverse.unorderedFold consistent with unorderedFoldMap 0.005s
933 + Semigroup for NonEmptyArraySeq: semigroup.associative 0.003s
934 + Unlawful CommutativeGroup for Map: group.intercalateRepeat2 0.028s
935 + Unlawful CommutativeGroup for Map: group.is id 0.011s
936 + Unlawful CommutativeGroup for Map: group.left identity 0.013s
937==> i au.id.tmm.collections.cats.instances.unlawful.MapUnlawfulInstancesSpec.Unlawful CommutativeGroup for Map: group.left inverse ignored 0.0s
938 + Unlawful CommutativeGroup for Map: group.repeat0 0.011s
939 + Semigroup for NonEmptyArraySeq: semigroup.combineAllOption 0.05s
940 + Unlawful CommutativeGroup for Map: group.repeat1 0.012s
941 + Unlawful CommutativeGroup for Map: group.repeat2 0.012s
942 + Semigroup for NonEmptyArraySeq: semigroup.intercalateCombineAllOption 0.046s
943 + Semigroup for NonEmptyArraySeq: semigroup.intercalateIntercalates 0.002s
944 + Semigroup for NonEmptyArraySeq: semigroup.intercalateRepeat1 0.002s
945 + Semigroup for NonEmptyArraySeq: semigroup.intercalateRepeat2 0.004s
946 + Semigroup for NonEmptyArraySeq: semigroup.repeat1 0.003s
947 + Semigroup for NonEmptyArraySeq: semigroup.repeat2 0.001s
948 + Semigroup for NonEmptyArraySeq: semigroup.reverseCombineAllOption 0.039s
949 + Semigroup for NonEmptyArraySeq: semigroup.reverseRepeat1 0.003s
950 + Semigroup for NonEmptyArraySeq: semigroup.reverseRepeat2 0.001s
951 + Semigroup for NonEmptyArraySeq: semigroup.reverseReverses 0.002s
952 + Band for NonEmptyDupelessSeq: band.intercalateCombineAllOption 0.923s
953 + Band for NonEmptyDupelessSeq: band.intercalateIntercalates 0.006s
954 + Band for NonEmptyDupelessSeq: band.intercalateRepeat1 0.003s
955 + Unlawful CommutativeGroup for Map: group.reverseCombineAllOption 0.386s
956 + Band for NonEmptyDupelessSeq: band.intercalateRepeat2 0.006s
957 + Band for NonEmptyDupelessSeq: band.repeat1 0.001s
958 + Band for NonEmptyDupelessSeq: band.repeat2 0.002s
959 + Unlawful CommutativeGroup for Map: group.reverseRepeat1 0.009s
960 + Unlawful CommutativeGroup for Map: group.reverseRepeat2 0.008s
961 + Unlawful CommutativeGroup for Map: group.reverseReverses 0.015s
962 + Unlawful CommutativeGroup for Map: group.right identity 0.007s
963==> i au.id.tmm.collections.cats.instances.unlawful.MapUnlawfulInstancesSpec.Unlawful CommutativeGroup for Map: group.right inverse ignored 0.0s
964 + Band for NonEmptyDupelessSeq: band.reverseCombineAllOption 0.302s
965 + Band for NonEmptyDupelessSeq: band.reverseRepeat1 0.002s
966 + Band for NonEmptyDupelessSeq: band.reverseRepeat2 0.001s
967 + Band for NonEmptyDupelessSeq: band.reverseReverses 0.003s
968 + SemigroupK for NonEmptyDupelessSeq: semigroupK.semigroupK associative 0.005s
969 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.collectFirst reference 0.002s
970 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.collectFirstSome reference 0.003s
971 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.contains all elements from itself 0.005s
972 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.contains consistent with exists 0.002s
973 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.contains consistent with forall 0.002s
974 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.covariant composition 0.011s
975 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.covariant identity 0.003s
976 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.dropWhile_ reference 0.002s
977 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.exists consistent with find 0.002s
978 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.exists is lazy 0.001s
979 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.filter_ reference 0.002s
980 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.fold reference 0.001s
981 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.foldLeft consistent with foldMap 0.002s
982 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.foldM identity 0.1s
983 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.foldRight consistent with foldMap 0.005s
984 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.foldRight is lazy 0.002s
985 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.foldRightDefer consistency 0.008s
986 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.forall consistent with exists 0.002s
987 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.forall is lazy 0.002s
988 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.forall true if empty 0.002s
989 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.get reference 0.004s
990 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.invariant composition 0.016s
991 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.invariant identity 0.003s
992 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.nonEmpty reference 0.003s
993 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.nonEmptySequence_ consistent with sequence_ 0.004s
994 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.nonEmptyTraverse derive reduceMap 0.014s
995 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.nonEmptyTraverse identity 0.007s
996 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.nonEmptyTraverse parallel composition 0.013s
997 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.nonEmptyTraverse sequential composition 0.01s
998 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.nonEmptyTraverse_ consistent with traverse_ 0.005s
999 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.ordered consistency 0.002s
1000 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.reduce consistent with reduceLeft 0.006s
1001 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.reduceLeftOption consistent with reduceLeftToOption 0.007s
1002 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.reduceLeftTo consistent with reduceMap 0.006s
1003 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.reduceRight consistent with reduceRightOption 0.007s
1004 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.reduceRightOption consistent with reduceRightToOption 0.006s
1005 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.reduceRightTo consistent with reduceMap 0.003s
1006 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.reduceRightTo consistent with reduceRightToOption 0.005s
1007 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.size consistent with reduceMap 0.003s
1008 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.takeWhile_ reference 0.002s
1009 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.toList reference 0.001s
1010 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.traverse derive foldMap 0.004s
1011 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.traverse identity 0.003s
1012 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.traverse order consistency 0.004s
1013 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.traverse parallel composition 0.009s
1014 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.traverse ref mapAccumulate 0.009s
1015 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.traverse ref mapWithIndex 0.009s
1016 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.traverse ref traverseWithIndexM 0.006s
1017 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.traverse ref zipWithIndex 0.011s
1018 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.traverse sequential composition 0.006s
1019 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.traverse traverseTap 0.005s
1020 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.unordered traverse consistent with sequence 0.005s
1021 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.unordered traverse parallel composition 0.006s
1022 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.unordered traverse sequential composition 0.004s
1023 + NonEmptyTraverse for NonEmptyDupelessSeq: nonEmptyTraverse.unorderedFold consistent with unorderedFoldMap 0.002s
1024 + Monad for NonEmptyDupelessSeq: monad.ap consistent with product + map 0.112s
1025 + Monad for NonEmptyDupelessSeq: monad.applicative homomorphism 0.001s
1026 + Monad for NonEmptyDupelessSeq: monad.applicative identity 0.003s
1027 + Monad for NonEmptyDupelessSeq: monad.applicative interchange 0.008s
1028 + Monad for NonEmptyDupelessSeq: monad.applicative map 0.004s
1029 + Monad for NonEmptyDupelessSeq: monad.applicative unit 0.001s
1030 + Monad for DupelessSeq: monad.apply composition 3.598s
1031 + Monad for DupelessSeq: monad.covariant composition 0.004s
1032 + Monad for DupelessSeq: monad.covariant identity 0.002s
1033 + Monad for NonEmptyDupelessSeq: monad.apply composition 2.045s
1034 + Monad for NonEmptyDupelessSeq: monad.covariant composition 0.003s
1035 + Monad for NonEmptyDupelessSeq: monad.covariant identity 0.001s
1036 + Monad for DupelessSeq: monad.flatMap associativity 1.093s
1037 + Monad for DupelessSeq: monad.flatMap consistent apply 0.058s
1038 + Monad for DupelessSeq: monad.flatMap from tailRecM consistency 0.058s
1039 + Monad for DupelessSeq: monad.invariant composition 0.006s
1040 + Monad for DupelessSeq: monad.invariant identity 0.001s
1041 + Monad for DupelessSeq: monad.map flatMap coherence 0.003s
1042 + Monad for DupelessSeq: monad.map2/map2Eval consistency 0.035s
1043 + Monad for DupelessSeq: monad.map2/product-map consistency 0.056s
1044 + Monad for DupelessSeq: monad.monad left identity 0.003s
1045 + Monad for DupelessSeq: monad.monad right identity 0.002s
1046 + Monad for DupelessSeq: monad.monoidal left identity 0.003s
1047 + Monad for DupelessSeq: monad.monoidal right identity 0.005s
1048 + Monad for DupelessSeq: monad.mproduct consistent flatMap 0.085s
1049 + Monad for DupelessSeq: monad.productL consistent map2 0.011s
1050 + Monad for DupelessSeq: monad.productR consistent map2 0.009s
1051 + Monad for DupelessSeq: monad.replicateA_ consistent with replicateA.void 0.039s
1052 + Monad for NonEmptyDupelessSeq: monad.flatMap associativity 1.18s
1053 + Monad for NonEmptyDupelessSeq: monad.flatMap consistent apply 0.064s
1054 + Monad for NonEmptyDupelessSeq: monad.flatMap from tailRecM consistency 0.039s
1055 + Monad for NonEmptyDupelessSeq: monad.invariant composition 0.005s
1056 + Monad for NonEmptyDupelessSeq: monad.invariant identity 0.001s
1057 + Monad for NonEmptyDupelessSeq: monad.map flatMap coherence 0.003s
1058 + Monad for NonEmptyDupelessSeq: monad.map2/map2Eval consistency 0.041s
1059 + Monad for NonEmptyDupelessSeq: monad.map2/product-map consistency 0.048s
1060 + Monad for NonEmptyDupelessSeq: monad.monad left identity 0.002s
1061 + Monad for NonEmptyDupelessSeq: monad.monad right identity 0.002s
1062 + Monad for NonEmptyDupelessSeq: monad.monoidal left identity 0.004s
1063 + Monad for NonEmptyDupelessSeq: monad.monoidal right identity 0.003s
1064 + Monad for NonEmptyDupelessSeq: monad.mproduct consistent flatMap 0.074s
1065 + Monad for NonEmptyDupelessSeq: monad.productL consistent map2 0.009s
1066 + Monad for NonEmptyDupelessSeq: monad.productR consistent map2 0.01s
1067 + Monad for NonEmptyDupelessSeq: monad.replicateA_ consistent with replicateA.void 0.019s
1068 + Monad for DupelessSeq: monad.semigroupal associativity 2.012s
1069 + Monad for DupelessSeq: monad.tailRecM consistent flatMap 0.162s
1070 + Monad for DupelessSeq: monad.tailRecM stack safety 0.021s
1071 + Monad for NonEmptyDupelessSeq: monad.semigroupal associativity 12.582s
1072 + Monad for NonEmptyDupelessSeq: monad.tailRecM consistent flatMap 0.048s
1073 + Monad for NonEmptyDupelessSeq: monad.tailRecM stack safety 0.011s
1074Starting build for ProjectRef(file:/build/repo/,circe) (tmm-scala-collections-circe)... [1/4]
1075Compile scalacOptions: -encoding, UTF-8, -unchecked, -language:implicitConversions, -Ykind-projector, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
1076[info] compiling 8 Scala sources to /build/repo/circe/target/scala-3.8.0-RC5/classes ...
1077[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
1078[warn] one warning found
1079[info] done compiling
1080[info] compiling 7 Scala sources to /build/repo/circe/target/scala-3.8.0-RC5/test-classes ...
1081[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
1082[warn] one warning found
1083[info] done compiling
1084au.id.tmm.collections.circe.codecs.NonEmptyDupelessSeqCodecsSpec:
1085au.id.tmm.collections.circe.codecs.DupelessSeqCodecsSpec:
1086au.id.tmm.collections.circe.codecs.NonEmptySetCodecSpec:
1087au.id.tmm.collections.circe.codecs.ArraySeqDecodersSpec:
1088 + the dupelessSeqEncoder should encode a dupeless seq 0.09s
1089 + the nonEmptyDupelessSeqEncoder should encode a dupeless seq 0.092s
1090 + the non empty set encoder should encode a non-empty set of ordered elements 0.09s
1091 + the non empty set encoder can encode a non-empty set of unordered elements 0.004s
1092 + the ArraySeq decoder should return a ref ArraySeq if its usage is untagged 0.134s
1093 + the non-empty set decoder can decode a non-empty json array 0.042s
1094 + the ArraySeq decoder should return a ref ArraySeq for a tagged reference type 0.001s
1095 + the ArraySeq decoder should return a specialised ArraySeq for a tagged primative type 0.0s
1096 + the dupelessSeqDecoder should decode an array 0.047s
1097 + the dupelessSeqDecoder should silently drop duplicates when decoding 0.0s
1098 + the nonEmptyDupelessSeqDecoder should decode an array 0.046s
1099 + the nonEmptyDupelessSeqDecoder should silently drop duplicates when decoding 0.0s
1100 + the non-empty set decoder can not decode an empty json array 0.005s
1101 + the nonEmptyDupelessSeqDecoder should error if decoding an empty array 0.004s
1102au.id.tmm.collections.circe.codecs.NonEmptyArraySeqCodecsSpec:
1103au.id.tmm.collections.circe.codecs.NonEmptyMapCodecsSpec:
1104 + the nonEmptyArraySeqEncoder should encode a dupeless seq 0.005s
1105 + the nonEmptyArraySeqDecoder should decode an array 0.003s
1106 + the nonEmptyArraySeqDecoder should error if decoding an empty array 0.001s
1107 + the nonEmptyArraySeqDecoder should specialise the underlying ArraySeq if a classtag is available 0.0s
1108 + the non empty map encoder should encode a non-empty map with ordered keys 0.012s
1109 + the non empty map encoder can encode a non-empty map with unordered keys 0.011s
1110 + the non-empty map decoder can decode a non-empty json object 0.008s
1111 + the non-empty map decoder can not decode an empty json object 0.0s
1112au.id.tmm.collections.circe.codecs.CirceCodecLawsSuite:
1113 + ArraySeq codecs: codec.consistency with accumulating 0.116s
1114 + ArraySeq codecs: codec.decoder serializability 0.018s
1115 + ArraySeq codecs: codec.encoder serializability 0.008s
1116 + ArraySeq codecs: codec.roundTrip 0.016s
1117 + NonEmptyArraySeq codecs: codec.consistency with accumulating 0.043s
1118 + NonEmptyArraySeq codecs: codec.decoder serializability 0.011s
1119 + NonEmptyArraySeq codecs: codec.encoder serializability 0.002s
1120 + NonEmptyArraySeq codecs: codec.roundTrip 0.01s
1121 + DupelessSeq codecs: codec.consistency with accumulating 0.053s
1122 + DupelessSeq codecs: codec.decoder serializability 0.004s
1123 + DupelessSeq codecs: codec.encoder serializability 0.002s
1124 + DupelessSeq codecs: codec.roundTrip 0.009s
1125 + NonEmptyDupelessSeq codecs: codec.consistency with accumulating 0.02s
1126 + NonEmptyDupelessSeq codecs: codec.decoder serializability 0.003s
1127 + NonEmptyDupelessSeq codecs: codec.encoder serializability 0.001s
1128 + NonEmptyDupelessSeq codecs: codec.roundTrip 0.008s
1129 + NonEmptySet codecs: codec.consistency with accumulating 0.021s
1130 + NonEmptySet codecs: codec.decoder serializability 0.003s
1131 + NonEmptySet codecs: codec.encoder serializability 0.003s
1132 + NonEmptySet codecs: codec.roundTrip 0.007s
1133Starting build for ProjectRef(file:/build/repo/,core) (tmm-scala-collections-core)... [2/4]
1134Compile scalacOptions: -encoding, UTF-8, -unchecked, -language:implicitConversions, -Ykind-projector, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
1135[info] compiling 11 Scala sources to /build/repo/core/target/scala-3.8.0-RC5/test-classes ...
1136[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
1137[warn] one warning found
1138[info] done compiling
1139au.id.tmm.collections.classes.SafeGroupBySpec:
1140au.id.tmm.collections.syntax.IterableOpsSpec:
1141au.id.tmm.collections.NonEmptyDupelessSeqSpec:
1142au.id.tmm.collections.DupelessSeqSpec:
1143 + a non-empty dupelessSeq be flattened 0.013s
1144 + a DupelessSeq retain the order of the earliest element when initialised 0.012s
1145 + at most one return None for an empty iterable 0.015s
1146 + a DupelessSeq not contain duplicates 0.002s
1147 + a non-empty dupelessSeq be flatMapped to another non-empty dupelessSeq 0.002s
1148 + safe group by for a Set work 0.016s
1149 + a non-empty dupelessSeq be flatMapped to a possibly empty collection 0.001s
1150 + a non-empty dupelessSeq be converted to an ArraySeq 0.0s
1151 + a DupelessSeq retain insertion order 0.001s
1152 + a non-empty dupelessSeq be converted to a NonEmptySet 0.0s
1153 + at most one return Some for a single element list 0.003s
1154 + safe group by for a NonEmptyDupelessSeq work 0.002s
1155 + a non-empty dupelessSeq be grouped 0.001s
1156 + a DupelessSeq correctly implement contains 0.003s
1157 + at most one return an error for a 2 element list 0.001s
1158 + safe group by for a NonEmptySet work 0.002s
1159 + a DupelessSeq correctly implement size 0.001s
1160 + a DupelessSeq correctly implement size for the empty seq 0.001s
1161 + at most one return an error for an infinitely sized list 0.002s
1162 + a DupelessSeq append an element correctly 0.001s
1163 + a DupelessSeq return the same seq when appending a duplicate element 0.001s
1164 + a DupelessSeq prepend an element correctly 0.0s
1165 + a DupelessSeq return the same seq when prepending a duplicate element 0.0s
1166 + only element return an error for an empty iterable 0.002s
1167 + only element return the element for a 1 element iterable 0.0s
1168 + only element return an error for a 2 element list 0.002s
1169 + only element return an error for an infinitely sized list 0.001s
1170 + a DupelessSeq remove an element correctly 0.006s
1171 + head or error return an error for an empty iterable 0.001s
1172 + head or error return the element for a 1 element iterable 0.0s
1173 + head or error return the first element for a 2 element list 0.001s
1174au.id.tmm.collections.NonEmptyMapSpec:
1175au.id.tmm.collections.syntax.UnzipOpsSpec:
1176 + a DupelessSeq return the same seq when removing an element not in the seq 0.006s
1177 + head or error return the first element for an infinitely sized list 0.005s
1178 + a DupelessSeq have a sensible toString 0.0s
1179 + a DupelessSeq allow random access 0.0s
1180 + last or error return an error for an empty iterable 0.001s
1181 + last or error return the element for a 1 element iterable 0.0s
1182 + a DupelessSeq support splitting at an index 0.001s
1183 + last or error return an error for a 2 element list 0.0s
1184 + a DupelessSeq support updating an element with a new element 0.002s
1185 + emptyOr return unit for an empty iterable 0.003s
1186 + a DupelessSeq remove an element when updating it with an element that exists before it in the seq 0.001s
1187 + a non-empty map be flatMapped with a possibly empty collection of tuples 0.007s
1188 + a non-empty map be flatMapped with a possibly empty collection of single elements 0.001s
1189 + a non-empty map be flatMapped with another NonEmptyMap of tuples 0.001s
1190 + unzip10 unzip 0.009s
1191 + emptyOr return an error if the iterable is nonempty 0.003s
1192 + unzip9 unzip 0.002s
1193 + count occurrences count the occurances of each element 0.001s
1194 + count occurrences return an empty map for an empty collection 0.0s
1195 + unzip8 unzip 0.001s
1196 + a DupelessSeq remove the later element when updating it with an element that exists after it in the seq 0.0s
1197 + a DupelessSeq pad the end of the seq with an element that is not in the seq 0.0s
1198 + a DupelessSeq return the same seq if padded with an element already in the seq 0.0s
1199 + groupByKey group by the key for a list of tuples 0.004s
1200 + groupByKey group by the the key for a Set of tuples 0.0s
1201 + unzip7 unzip 0.004s
1202 + groupByKey return an empty map for an empty list of tuples 0.0s
1203 + a non-empty map be constructed from a non-empty arrayseq 0.01s
1204 + a DupelessSeq support sorting 0.003s
1205 + a DupelessSeq be reversed 0.0s
1206 + a DupelessSeq be iterated over 0.001s
1207 + unzip6 unzip 0.005s
1208 + unzip5 unzip 0.003s
1209 + a DupelessSeq be iterated over in reverse 0.005s
1210 + a DupelessSeq return itself when asked for distinct elements 0.001s
1211au.id.tmm.collections.syntax.SeqOpsSpec:
1212au.id.tmm.collections.NonEmptySetSpec:
1213 + unzip4 unzip 0.006s
1214 + finding every nth element return empty for an empty seq 0.003s
1215 + finding every nth element return the first element if there are less than n elements 0.001s
1216 + finding every nth element return every nth element 0.0s
1217 + a DupelessSeq be converted to a Set 0.005s
1218 + a DupelessSeq be converted to a Set of a higher type 0.001s
1219 + A non-empty set be constructed with a single element 0.005s
1220 + A non-empty set be constructed with multiple elements 0.001s
1221 + a DupelessSeq be converted to a Vector 0.001s
1222 + finding every nth element drop any extra elements 0.004s
1223 + a DupelessSeq be equal to a DupelessSeq with the same elements and order 0.002s
1224 + a DupelessSeq not be equal to a DupelessSeq with the same elements and a different order 0.001s
1225 + A non-empty set not be equal to another set with a different implementation but same elements 0.003s
1226 + a DupelessSeq not be equal to a DupelessSeq with different elements 0.001s
1227 + a DupelessSeq not be equal to a list with the same elements 0.0s
1228au.id.tmm.collections.syntax.BufferedIteratorOpsSpec:
1229 + a DupelessSeq not be equal to a list with duplicated elements 0.002s
1230 + A non-empty set be constructed from a non-empty set 0.003s
1231 + A non-empty set not be constructed from an empty set 0.0s
1232 + A non-empty set be constructed unsafely from a non-empty set 0.001s
1233 + a DupelessSeq not be equal to a set with the same elements 0.002s
1234 + a DupelessSeq allow appending an element 0.0s
1235 + A non-empty set not be constructed unsafely from an empty set 0.001s
1236 + a DupelessSeq allow appending a list 0.0s
1237 + a DupelessSeq be converted to a NonEmptyDupelessSeq if it is nonEmpty 0.002s
1238 + the empty DupelessSeq be a singleton 0.0s
1239 + A non-empty set produce subsets 0.004s
1240 + the empty DupelessSeq not be converted to a NonEmptyDupelessSeq 0.002s
1241 + A non-empty set have a sensible toString 0.001s
1242 + the DupelessSeq builder build the empty seq 0.001s
1243 + A non-empty set be constructed from a non-empty iterable 0.0s
1244 + takeUpTo work for an empty iterator 0.008s
1245 + A non-empty set be constructed from a non-empty iterable which is a Set 0.002s
1246 + the empty DupelessSeq build a seq with 2 distinct items 0.002s
1247 + takeUpTo work for a collection where the first element does not match predicate 0.002s
1248 + A non-empty set not be constructed from an empty iterable 0.0s
1249 + the empty DupelessSeq iterate in the order of first insertion 0.0s
1250 + the empty DupelessSeq be cleared 0.001s
1251 + the empty DupelessSeq append multiple elements at once 0.0s
1252 + the empty DupelessSeq accept a size hint 0.0s
1253 + takeUpTo take elements from the front of the iterator until the first element that fails the test 0.001s
1254 + the empty DupelessSeq be converted to an ArraySeq 0.002s
1255 + takeUpTo not progress the underlying iterator beyond the first failed element 0.001s
1256 + the empty DupelessSeq allow appending an element 0.001s
1257 + takeUpTo return an iterator with a known size if the underlying iterator is empty 0.001s
1258 + A non-empty set be constructed unsafely from a non-empty iterable 0.005s
1259 + takeUpTo return an iterator with a known size if the head does not match the predicate 0.0s
1260 + A non-empty set not be constructed unsafely from an empty iterable 0.001s
1261au.id.tmm.collections.syntax.IteratorOpsSpec:
1262 + the empty DupelessSeq allow appending a list 0.003s
1263 + A non-empty set be constructed from cons 0.001s
1264 + A non-empty set map 0.001s
1265 + A non-empty set flatMap 0.001s
1266 + takeUpTo return an unknown size if the head matches the predicate 0.004s
1267 + A non-empty set be flattened 0.003s
1268au.id.tmm.collections.NonEmptyArraySeqSpec:
1269 + The specialised factory methods create a specialised NonEmptyArraySeq from one element 0.001s
1270 + The specialised factory methods create a specialised NonEmptyArraySeq from many elements 0.0s
1271 + readAtMost read the first n elements of the iterator 0.013s
1272 + readAtMost leave the underlying iterator iterating through the subsequent elements 0.0s
1273 + readAtMost read only as many elements remain in the iterator 0.0s
1274 + The specialised factory methods create a specialised NonEmptyArraySeq from a head and a tail 0.003s
1275 + The specialised factory methods create a specialised NonEmptyArraySeq from an iterable 0.0s
1276 + The untagged factory methods create an unspecialised NonEmptyArraySeq from one element 0.0s
1277 + readUntil read until encountering an element matching the condition 0.004s
1278 + readUntil leave the underlying iterator iterating through the subsequent elements 0.0s
1279 + readUntil read only as many elements remain in the iterator 0.001s
1280 + readAtMostUntil read until encountering an element matching the condition if that is less than the size limit 0.0s
1281 + readAtMostUntil read up to the size limit if no elements match condition 0.001s
1282 + readAtMostUntil leave the underlying iterator iterating through the subsequent elements when hitting the number limit 0.0s
1283 + readAtMostUntil leave the underlying iterator iterating through the subsequent elements when finding an element that matches 0.001s
1284Starting build for ProjectRef(file:/build/repo/,scalaCheck) (tmm-scala-collections-scalacheck)... [3/4]
1285Compile scalacOptions: -encoding, UTF-8, -unchecked, -language:implicitConversions, -Ykind-projector, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
1286
1287************************
1288Build summary:
1289[{
1290 "module": "tmm-scala-collections-cats",
1291 "compile": {"status": "ok", "tookMs": 12557, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
1292 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
1293 "test-compile": {"status": "ok", "tookMs": 4499, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
1294 "test": {"status": "ok", "tookMs": 30381, "passed": 635, "failed": 0, "ignored": 0, "skipped": 6, "total": 641, "byFramework": [{"framework": "munit", "stats": {"passed": 635, "failed": 0, "ignored": 0, "skipped": 6, "total": 641}}]},
1295 "publish": {"status": "skipped", "tookMs": 0},
1296 "metadata": {
1297 "crossScalaVersions": ["2.13.8", "3.1.3"]
1298}
1299},{
1300 "module": "tmm-scala-collections-circe",
1301 "compile": {"status": "ok", "tookMs": 1110, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
1302 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
1303 "test-compile": {"status": "ok", "tookMs": 1689, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
1304 "test": {"status": "ok", "tookMs": 959, "passed": 42, "failed": 0, "ignored": 0, "skipped": 0, "total": 42, "byFramework": [{"framework": "munit", "stats": {"passed": 42, "failed": 0, "ignored": 0, "skipped": 0, "total": 42}}]},
1305 "publish": {"status": "skipped", "tookMs": 0},
1306 "metadata": {
1307 "crossScalaVersions": ["2.13.8", "3.1.3"]
1308}
1309},{
1310 "module": "tmm-scala-collections-core",
1311 "compile": {"status": "ok", "tookMs": 57, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
1312 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
1313 "test-compile": {"status": "ok", "tookMs": 1872, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
1314 "test": {"status": "ok", "tookMs": 256, "passed": 134, "failed": 0, "ignored": 0, "skipped": 0, "total": 134, "byFramework": [{"framework": "munit", "stats": {"passed": 134, "failed": 0, "ignored": 0, "skipped": 0, "total": 134}}]},
1315 "publish": {"status": "skipped", "tookMs": 0},
1316 "metadata": {
1317 "crossScalaVersions": ["2.13.8", "3.1.3"]
1318}
1319},{
1320 "module": "tmm-scala-collections-scalacheck",
1321 "compile": {"status": "ok", "tookMs": 114, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
1322 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
1323 "test-compile": {"status": "ok", "tookMs": 139, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
1324 "test": {"status": "ok", "tookMs": 116, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
1325 "publish": {"status": "skipped", "tookMs": 0},
1326 "metadata": {
1327 "crossScalaVersions": ["2.13.8", "3.1.3"]
1328}
1329}]
1330************************
1331[success] Total time: 59 s, completed Dec 31, 2025, 9:50:24 PM
1332[0JChecking patch project/plugins.sbt...
1333Checking patch project/build.properties...
1334Checking patch build.sbt...
1335Applied patch project/plugins.sbt cleanly.
1336Applied patch project/build.properties cleanly.
1337Applied patch build.sbt cleanly.