Build Logs
lampepfl/gears • 3.8.1-RC1:2026-01-13
Errors
7
Warnings
50
Total Lines
306
1##################################
2Clonning https://github.com/lampepfl/gears.git into /build/repo using revision v0.2.0
3##################################
4Note: switching to 'a4a6b721442ce1ad964376b759766d7846947daf'.
5
6You are in 'detached HEAD' state. You can look around, make experimental
7changes and commit them, and you can discard any commits you make in this
8state without impacting any branches by switching back to a branch.
9
10If you want to create a new branch to retain commits you create, you may
11do so (now or later) by using -c with the switch command. Example:
12
13 git switch -c <new-branch-name>
14
15Or undo this operation with:
16
17 git switch -
18
19Turn off this advice by setting config variable advice.detachedHead to false
20
21----
22Preparing build for 3.8.1-RC1
23Scala binary version found: 3.8
24Implicitly using source version 3.8
25Scala binary version found: 3.8
26Implicitly using source version 3.8
27Would try to apply common scalacOption (best-effort, sbt/mill only):
28Append: ,REQUIRE:-source:3.8
29Remove: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
30----
31Starting build for 3.8.1-RC1
32Execute tests: true
33sbt project found:
34Sbt version 1.10.0 is not supported, minimal supported version is 1.11.5
35Enforcing usage of sbt in version 1.11.5
36No prepare script found for project lampepfl/gears
37##################################
38Scala version: 3.8.1-RC1
39Targets: ch.epfl.lamp%gears
40Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[]}
41##################################
42Using extra scalacOptions: ,REQUIRE:-source:3.8
43Filtering out scalacOptions: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
44[sbt_options] declare -a sbt_options=()
45[process_args] java_version = '21'
46[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_21/rt.jar'
47# Executing command line:
48java
49-Dfile.encoding=UTF-8
50-Dcommunitybuild.scala=3.8.1-RC1
51-Dcommunitybuild.project.dependencies.add=
52-Xmx7G
53-Xms4G
54-Xss8M
55-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
56-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_21
57-jar
58/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
59"setCrossScalaVersions 3.8.1-RC1"
60"++3.8.1-RC1 -v"
61"mapScalacOptions ",REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s" ",-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
62"set every credentials := Nil"
63"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
64"removeScalacOptionsStartingWith -P:wartremover"
65
66moduleMappings
67"runBuild 3.8.1-RC1 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[]}""" ch.epfl.lamp%gears"
68
69[info] welcome to sbt 1.11.5 (Eclipse Adoptium Java 21)
70[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
71[info] loading project definition from /build/repo/project
72[info] compiling 2 Scala sources to /build/repo/project/target/scala-2.12/sbt-1.0/classes ...
73[info] Non-compiled module 'compiler-bridge_2.12' for Scala 2.12.20. Compiling...
74[info] Compilation completed in 8.214s.
75[info] done compiling
76[info] loading settings for project repo from build.sbt...
77[info] set current project to repo (in build file:/build/repo/)
78Execute setCrossScalaVersions: 3.8.1-RC1
79OpenCB::Changing crossVersion 3.3.3 -> 3.8.1-RC1 in rootJVM/crossScalaVersions
80OpenCB::Changing crossVersion 3.3.3 -> 3.8.1-RC1 in rootNative/crossScalaVersions
81OpenCB::Changing crossVersion 3.3.3 -> 3.8.1-RC1 in repo/crossScalaVersions
82[info] set current project to repo (in build file:/build/repo/)
83[info] Setting Scala version to 3.8.1-RC1 on 3 projects.
84[info] Switching Scala version on:
85[info] * repo (3.8.1-RC1)
86[info] rootJVM (3.8.1-RC1)
87[info] rootNative (3.8.1-RC1)
88[info] Excluding projects:
89[info] Reapplying settings...
90[info] set current project to repo (in build file:/build/repo/)
91Execute mapScalacOptions: ,REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
92[info] Reapplying settings...
93[info] set current project to repo (in build file:/build/repo/)
94[info] Defining Global / credentials, credentials and 1 others.
95[info] The new values will be used by Global / pgpSelectPassphrase, Global / pgpSigningKey and 14 others.
96[info] Run `last` for details.
97[info] Reapplying settings...
98[info] set current project to repo (in build file:/build/repo/)
99Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
100[info] Reapplying settings...
101OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
102
103 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
104 Did you mean rootJVM / allExcludeDependencies ?
105 , retry without global scopes
106[info] Reapplying settings...
107[info] set current project to repo (in build file:/build/repo/)
108Execute removeScalacOptionsStartingWith: -P:wartremover
109[info] Reapplying settings...
110[info] set current project to repo (in build file:/build/repo/)
111[success] Total time: 0 s, completed Jan 13, 2026, 8:23:58 PM
112Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[]}
113Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),Full,List()))
114Starting build...
115Projects: Set(rootJVM)
116Starting build for ProjectRef(file:/build/repo/,rootJVM) (gears)... [0/1]
117OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.8` in Scala 2.12.20 module Global
118Compile scalacOptions: -Wconf:msg=can be rewritten automatically under:s, -source:3.8
119[info] compiling 21 Scala sources to /build/repo/jvm/target/scala-3.8.1-RC1/classes ...
120[warn] -- [E197] Potential Issue Warning: /build/repo/shared/src/main/scala/async/Listener.scala:53:8
121[warn] 53 | new Listener[T]:
122[warn] | ^
123[warn] | New anonymous class definition will be duplicated at each inline site
124[warn] |
125[warn] | longer explanation available when compiling with `-explain`
126[warn] there were 17 deprecation warnings; re-run with -deprecation for details
127[warn] two warnings found
128[info] done compiling
129[info] compiling 11 Scala sources to /build/repo/jvm/target/scala-3.8.1-RC1/test-classes ...
130[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/shared/src/test/scala/ChannelBehavior.scala:309:32
131[warn] 309 | a.readSource handle { case Right(v) =>
132[warn] | ^
133[warn] | match may not be exhaustive.
134[warn] |
135[warn] | It would fail on pattern case: Left(_)
136[warn] |
137[warn] | longer explanation available when compiling with `-explain`
138[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/shared/src/test/scala/ChannelBehavior.scala:312:36
139[warn] 312 | b.sendSource(10) handle { case Right(_) =>
140[warn] | ^
141[warn] | match may not be exhaustive.
142[warn] |
143[warn] | It would fail on pattern case: Left(_)
144[warn] |
145[warn] | longer explanation available when compiling with `-explain`
146[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/shared/src/test/scala/SourceBehavior.scala:134:43
147[warn] 134 | assertEquals(f.transformValuesWith({ case Success(i) => i + 1 }).awaitResult, 11)
148[warn] | ^
149[warn] | match may not be exhaustive.
150[warn] |
151[warn] | It would fail on pattern case: scala.util.Failure(_)
152[warn] |
153[warn] | longer explanation available when compiling with `-explain`
154[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/shared/src/test/scala/SourceBehavior.scala:136:43
155[warn] 136 | assertEquals(g.transformValuesWith({ case Failure(_) => 17 }).awaitResult, 17)
156[warn] | ^
157[warn] | match may not be exhaustive.
158[warn] |
159[warn] | It would fail on pattern case: scala.util.Success(_)
160[warn] |
161[warn] | longer explanation available when compiling with `-explain`
162[warn] -- [E092] Pattern Match Unchecked Warning: /build/repo/shared/src/test/scala/FutureBehavior.scala:184:13
163[warn] 184 | case _: Failure[CancellationException] => ()
164[warn] | ^
165[warn] |the type test for scala.util.Failure[java.util².concurrent.CancellationException] cannot be checked at runtime because its type arguments can't be determined from scala.util.Try[Int]
166[warn] |
167[warn] |where: util is a package in package scala
168[warn] | util² is a package in package java
169[warn] |
170[warn] | longer explanation available when compiling with `-explain`
171[warn] there were 33 deprecation warnings; re-run with -deprecation for details
172[warn] 6 warnings found
173[info] done compiling
174[warn] javaOptions will be ignored, fork is set to false
175CancellationBehavior:
176 + no cancel 0.43s
177 + group cancel 0.002s
178 + link group 0.003s
179 + nested link group 0.004s
180 + link to already cancelled 0.502s
181 + link to already cancelled awaited 0.001s
182RetryBehavior:
183 + Exponential backoff(2) 50ms, 5 times total schedule 0.78s
184 + UntilSuccess 150ms 0.602s
185 + UntilFailure 150ms 0.603s
186 + delay policies 0.006s
187SchedulerBehavior:
188 + schedule cancellation works 1.027s
189 + schedule cancellation doesn't abort inner code 1.052s
190 + execute works 0.001s
191SourceBehavior:
192 + onComplete register after completion runs immediately 0.001s
193 + poll is asynchronous 0.001s
194 + onComplete is asynchronous 0.001s
195 + await is synchronous 0.352s
196 + sources wait on children sources when they block 0.143s
197 + sources do not wait on zombie sources (which are killed at the end of Async.Blocking) 0.002s
198 + poll() 0.101s
199 + onComplete() fires 0.202s
200 + dropped onComplete() listener does not fire 0.202s
201 + transform values with 0.003s
202 + all listeners in chain fire 0.164s
203 + either 0.402s
204 + source values 0.207s
205 + transformValuesWith unsubscribes 0.002s
206JVMCancellationBehavior:
207 + no cancel -> timeout 5.029s
208TaskScheduleBehavior:
209 + Every 100ms, 3 times total schedule 0.204s
210 + Exponential backoff(2) 50ms, 5 times total schedule 0.753s
211 + Fibonacci backoff 10ms, 6 times total schedule 0.124s
212 + UntilSuccess 150ms 0.603s
213 + UntilFailure 150ms 0.603s
214true false
215ListenerBehavior:
216 + race two futures 0.002s
217 + lock two listeners 0.002s
218 + lock two listeners where one fails 0.002s
219 + lock two races 0.001s
220 + lock two races in reverse order 0.001s
221 + lock two nested races 0.002s
222 + lock two nested races in reverse order 0.001s
223 + race successful without wait 0.002s
224 + race successful with wait 0.003s
225 + race polling 0.001s
226 + race failed without wait 0.001s
227 + lockBoth of race with competing lock 0.001s
228 + conflicting locks 0.001s
229 + failing downstream listener is dropped in race 0.002s
230 + succeeding downstream listener is dropped in race 0.002s
231TimerBehavior:
232 + sleeping does sleep 0.201s
233 + timer does sleep 1.004s
234 + racing with a sleeping future 2.253s
235ChannelBehavior:
236 + sending is blocking in SyncChannel 0.509s
237 + sending is nonblocking in empty BufferedChannel 0.503s
238 + sending is blocking in full BufferedChannel 0.503s
239 + read blocks until value is available in SyncChannel 1.001s
240 + read blocks until value is available in BufferedChannel 1.004s
241 + values arrive in order 0.086s
242 + reading a closed channel returns Failure(ChannelClosedException) 0.004s
243 + writing to a closed channel throws ChannelClosedException 0.001s
244 + send a lot of values via a channel and check their sum 0.126s
245 + multiple writers, multiple readers 6.002s
246 + race reads 0.059s
247 + unbounded channels with sync sending 0.001s
248 + race sends 0.116s
249 + race syntax 0.002s
250 + ChannelMultiplexer multiplexes - all subscribers read the same stream 0.006s
251 + ChannelMultiplexer multiple readers and writers 1.006s
2521
253FutureBehavior:
254 + Old test 0.003s
255 + Constant returns 0.003s
256 + Future.now returning 0.001s
257 + Constant future with timeout 0.051s
258 + or 0.003s
259 + orWithCancel of 2 futures 0.603s
260 + zip 0.001s
261 + result wraps exceptions 0.002s
262 + result wraps values 0.002s
263 + value propagates exceptions exceptions through futures 0.002s
264 + futures can be nested 0.027s
265 + future are cancelled via .interrupt() and not checking the flag in async 0.003s
266 + future should cancel its group when the main body is completed 1.502s
267 + zombie threads exist and run to completion after the Async.blocking barrier 0.302s
268==> i FutureBehavior.cancelled futures return the same constant CancellationException with no stack attached ignored 0.0s
269 + noninterruptible future immediate return 0.001s
270 + Noninterruptible future cannot be interrupted immediately but throws later 0.301s
271 + Promise can be cancelled 0.001s
272 + Promise can't be cancelled after completion 0.0s
273 + Future.withResolver cancel handler is run once 0.003s
274 + Future.withResolver cancel handler is not run after being completed 0.001s
275 + Future.withResolver is only completed after handler decides 0.002s
276 + Nesting of cancellations 0.402s
277 + future collector 1.002s
278 + mutable collector 2.002s
279 + future collection: awaitAll* 1.004s
280 + future collection: awaitFirst* 1.005s
281 + uninterruptible should continue even when Future is cancelled 0.001s
282StressTest:
283 + survives a stress test that hammers on creating futures 11.11s
284 + survives a stress test that hammers on suspending 20.086s
285
286************************
287Build summary:
288[{
289 "module": "gears",
290 "compile": {"status": "ok", "tookMs": 10016, "warnings": 1, "errors": 0, "sourceVersion": "3.8"},
291 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
292 "test-compile": {"status": "ok", "tookMs": 4488, "warnings": 5, "errors": 0, "sourceVersion": "3.8"},
293 "test": {"status": "ok", "tookMs": 33659, "passed": 96, "failed": 0, "ignored": 1, "skipped": 0, "total": 97, "byFramework": [{"framework": "munit", "stats": {"passed": 96, "failed": 0, "ignored": 1, "skipped": 0, "total": 97}}]},
294 "publish": {"status": "skipped", "tookMs": 0},
295 "metadata": {
296 "crossScalaVersions": ["3.3.3"]
297}
298}]
299************************
300[success] Total time: 50 s, completed Jan 13, 2026, 8:24:48 PM
301[0JChecking patch project/plugins.sbt...
302Checking patch project/build.properties...
303Checking patch build.sbt...
304Applied patch project/plugins.sbt cleanly.
305Applied patch project/build.properties cleanly.
306Applied patch build.sbt cleanly.