Build Logs
lichess-org/lila-fishnet • 3.8.0:2026-01-13
Errors
15
Warnings
8
Total Lines
253
1##################################
2Clonning https://github.com/lichess-org/lila-fishnet.git into /build/repo using revision
3##################################
4----
5Preparing build for 3.8.0
6Scala binary version found: 3.8
7Implicitly using source version 3.8
8Scala binary version found: 3.8
9Implicitly using source version 3.8
10Would try to apply common scalacOption (best-effort, sbt/mill only):
11Append: ,REQUIRE:-source:3.8
12Remove: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
13----
14Starting build for 3.8.0
15Execute tests: true
16sbt project found:
17No prepare script found for project lichess-org/lila-fishnet
18##################################
19Scala version: 3.8.0
20Targets: *%*
21Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"25"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[]}
22##################################
23Using extra scalacOptions: ,REQUIRE:-source:3.8
24Filtering out scalacOptions: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
25[sbt_options] declare -a sbt_options=()
26[process_args] java_version = '25'
27[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_25/rt.jar'
28# Executing command line:
29java
30-Dfile.encoding=UTF-8
31--add-opens=java.base/java.util=ALL-UNNAMED
32--add-opens=java.base/java.lang=ALL-UNNAMED
33-Dcommunitybuild.scala=3.8.0
34-Dcommunitybuild.project.dependencies.add=
35-Xmx7G
36-Xms4G
37-Xss8M
38-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
39-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_25
40-jar
41/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
42"setCrossScalaVersions 3.8.0"
43"++3.8.0 -v"
44"mapScalacOptions ",REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s" ",-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
45"set every credentials := Nil"
46"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
47"removeScalacOptionsStartingWith -P:wartremover"
48
49moduleMappings
50"runBuild 3.8.0 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"25"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[]}""" *%*"
51
52[info] [launcher] getting org.scala-sbt sbt 1.11.7 (this may take some time)...
53WARNING: A terminally deprecated method in sun.misc.Unsafe has been called
54WARNING: sun.misc.Unsafe::arrayBaseOffset has been called by net.openhft.hashing.UnsafeAccess (file:/root/.sbt/boot/scala-2.12.20/org.scala-sbt/sbt/1.11.7/zero-allocation-hashing-0.16.jar)
55WARNING: Please consider reporting this to the maintainers of class net.openhft.hashing.UnsafeAccess
56WARNING: sun.misc.Unsafe::arrayBaseOffset will be removed in a future release
57WARNING: A restricted method in java.lang.System has been called
58WARNING: java.lang.System::load has been called by com.sun.jna.Native in an unnamed module (file:/root/.sbt/boot/scala-2.12.20/org.scala-sbt/sbt/1.11.7/jna-5.12.0.jar)
59WARNING: Use --enable-native-access=ALL-UNNAMED to avoid a warning for callers in this module
60WARNING: Restricted methods will be blocked in a future release unless native access is enabled
61
62[info] welcome to sbt 1.11.7 (Eclipse Adoptium Java 25)
63[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
64[info] loading project definition from /build/repo/project
65[info] compiling 4 Scala sources to /build/repo/project/target/scala-2.12/sbt-1.0/classes ...
66[info] Non-compiled module 'compiler-bridge_2.12' for Scala 2.12.20. Compiling...
67[info] Compilation completed in 8.534s.
68[info] done compiling
69[info] loading settings for project root from build.sbt, version.sbt...
70[info] set current project to root (in build file:/build/repo/)
71Execute setCrossScalaVersions: 3.8.0
72OpenCB::Changing crossVersion 3.7.4 -> 3.8.0 in app/crossScalaVersions
73OpenCB::Changing crossVersion 3.7.4 -> 3.8.0 in root/crossScalaVersions
74[info] set current project to root (in build file:/build/repo/)
75[info] Setting Scala version to 3.8.0 on 2 projects.
76[info] Switching Scala version on:
77[info] * root (3.8.0)
78[info] app (3.8.0)
79[info] Excluding projects:
80[info] Reapplying settings...
81[info] set current project to root (in build file:/build/repo/)
82Execute mapScalacOptions: ,REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
83[info] Reapplying settings...
84[info] set current project to root (in build file:/build/repo/)
85[info] Defining Global / credentials, app / credentials, credentials
86[info] The new values will be used by Compile / scalafmtOnly, IntegrationTest / scalafmtOnly and 14 others.
87[info] Run `last` for details.
88[info] Reapplying settings...
89[info] set current project to root (in build file:/build/repo/)
90Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
91[info] Reapplying settings...
92OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
93
94 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
95 Did you mean app / allExcludeDependencies ?
96 , retry without global scopes
97[info] Reapplying settings...
98[info] set current project to root (in build file:/build/repo/)
99Execute removeScalacOptionsStartingWith: -P:wartremover
100[info] Reapplying settings...
101[info] set current project to root (in build file:/build/repo/)
102[success] Total time: 0 s, completed Jan 13, 2026, 5:25:50 PM
103Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"25"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[]}
104Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),Full,List()))
105Starting build...
106Projects: Set(root, app)
107Starting build for ProjectRef(file:/build/repo/,root) (root)... [0/2]
108OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.8` in Scala 2.12.20 module Global
109OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
110OpenCB::Filter out '-feature', matches setting pattern '^-?-feature'
111OpenCB::Filter out '-Xfatal-warnings', matches setting pattern '^-?-Xfatal-warnings'
112Compile scalacOptions: -encoding, utf8, -unchecked, -language:experimental.macros, -language:higherKinds, -language:implicitConversions, -Xkind-projector, -Wvalue-discard, -Wnonunit-statement, -Wunused:implicits, -Wunused:explicits, -Wunused:imports, -Wunused:locals, -Wunused:params, -Wunused:privates, -Xsemanticdb, -semanticdb-target, /build/repo/target/scala-3.8.0/meta, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
113Starting build for ProjectRef(file:/build/repo/,app) (lila-fishnet)... [1/2]
114Compile scalacOptions: -encoding, utf8, -unchecked, -language:experimental.macros, -language:higherKinds, -language:implicitConversions, -Xkind-projector, -Wvalue-discard, -Wnonunit-statement, -Wunused:implicits, -Wunused:explicits, -Wunused:imports, -Wunused:locals, -Wunused:params, -Wunused:privates, -release, 21, -indent, -rewrite, -explain, -Wall, -Xsemanticdb, -semanticdb-target, /build/repo/app/target/scala-3.8.0/meta, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
115[info] compiling 18 Scala sources to /build/repo/app/target/scala-3.8.0/classes ...
116[info] [patched file /build/repo/app/target/scala-3.8.0/src_managed/main/sbt-buildinfo/BuildInfo.scala]
117[info] done compiling
118[info] compiling 1 Scala source to /build/repo/app/target/scala-3.8.0/classes ...
119[info] done compiling
120[info] compiling 7 Scala sources to /build/repo/app/target/scala-3.8.0/test-classes ...
121[info] done compiling
122[info] lila.fishnet.CleaningJobTest
123[info] + cleaning run 19 times in 1 minute 50ms
1242026-01-13 17:26:19,706 [io-compute-1] INFO o.t.i.PullPolicy - Image pull policy will be performed by: DefaultPullPolicy()
1252026-01-13 17:26:19,716 [io-compute-1] INFO o.t.u.ImageNameSubstitutor - Image name substitution will be performed by: DefaultImageNameSubstitutor (composite of 'ConfigurationFileImageNameSubstitutor' and 'PrefixingImageNameSubstitutor')
1262026-01-13 17:26:19,759 [io-compute-1] INFO o.t.DockerClientFactory - Testcontainers version: 2.0.3
127[info] lila.fishnet.http.FishnetRoutesTest
128[info] + POST /fishnet/acquire should return work response 168ms
129[info] + POST /fishnet/move should return work response 20ms
130[info] + POST /fishnet/move with null move should also return work response 3ms
131[info] lila.fishnet.ExecutorTest
132[info] + acquire when there is no work should return none 30ms
133[info] + acquire when there is work should return some work 10ms
134[info] + acquire should return work in order 8ms
135[info] + after acquire the only work, acquire again should return none 1ms
136[info] + post move after acquire should send move 10ms
137[info] + post move after timeout should not send move 31ms
138[info] + after timeout move should be able to acquired again 5ms
139[info] + post null move should remove the task 9ms
140[info] + should not give up after 2 tries 3ms
141[info] + should give up after 3 tries 2ms
142[info] + give up due to cleaning should reduce task's size 11ms
143[info] + if moves reach max size it should clear all moves 2ms
144[info] lila.fishnet.AppStateTest
145[info] + tasks.fromTasks == identity 710ms
146[info] + tasks.fromTasks == tasks 1s
147[info] + isFull 1s
148[info] + add = remove.add 1s
149[info] + add.remove == remove 1s
150[info] + count(p) + count(!p) == size 1s
151[info] + count(true) == size 1s
152[info] + count(false) == 0 1s
153[info] + earliestNonAcquired is always non acquired 1s
154[info] + if earliestNonAcquired is defined then tryAcquire is defined 1s
155[info] + tryAcquire always acquires the earliest non acquired task 1s
156[info] + tryAcquire then apply = Found 1s
157[info] + acquiredBefore is acquiredBefore 1s
158[info] + updateOrGiveUp is a subset of given tasks 1s
159[info] + updateOrGiveUp preserves size 1s
160[info] + all given up tasks are outOfTries 994ms
161[info] + all candidates that are not given up are not outOfTries 935ms
162[info] + after cleanup, acquiredBefore is empty 886ms
1632026-01-13 17:26:21,056 [io-compute-1] INFO o.t.d.DockerClientProviderStrategy - Found Docker environment with local Unix socket (unix:///var/run/docker.sock)
1642026-01-13 17:26:21,072 [io-compute-1] INFO o.t.DockerClientFactory - Docker host IP address is 172.17.0.1
1652026-01-13 17:26:21,087 [io-compute-1] INFO o.t.DockerClientFactory - Connected to docker:
166 Server Version: 28.0.4
167 API Version: 1.48
168 Operating System: Ubuntu 22.04.5 LTS
169 Total Memory: 15995 MB
1702026-01-13 17:26:21,116 [io-compute-1] INFO t.t.13.0 - Pulling docker image: testcontainers/ryuk:0.13.0. Please be patient; this may take some time but only needs to be done once.
1712026-01-13 17:26:21,121 [io-compute-1] INFO o.t.u.RegistryAuthLocator - Failure when attempting to lookup auth config. Please ignore if you don't have images in an authenticated registry. Details: (dockerImageName: testcontainers/ryuk:latest, configFile: /root/.docker/config.json, configEnv: DOCKER_AUTH_CONFIG). Falling back to docker-java default behaviour. Exception message: Status 404: No config supplied. Checked in order: /root/.docker/config.json (file not found), DOCKER_AUTH_CONFIG (not set)
1722026-01-13 17:26:21,672 [docker-java-stream--792291873] INFO t.t.13.0 - Starting to pull image
1732026-01-13 17:26:21,690 [docker-java-stream--792291873] INFO t.t.13.0 - Pulling image layers: 0 pending, 0 downloaded, 0 extracted, (0 bytes/0 bytes)
1742026-01-13 17:26:21,926 [docker-java-stream--792291873] INFO t.t.13.0 - Pulling image layers: 1 pending, 1 downloaded, 0 extracted, (72 KB/? MB)
1752026-01-13 17:26:21,933 [docker-java-stream--792291873] INFO t.t.13.0 - Pulling image layers: 1 pending, 1 downloaded, 1 extracted, (281 KB/? MB)
1762026-01-13 17:26:21,998 [docker-java-stream--792291873] INFO t.t.13.0 - Pulling image layers: 0 pending, 2 downloaded, 1 extracted, (281 KB/6 MB)
1772026-01-13 17:26:22,075 [docker-java-stream--792291873] INFO t.t.13.0 - Pulling image layers: 0 pending, 2 downloaded, 2 extracted, (6 MB/6 MB)
1782026-01-13 17:26:22,081 [io-compute-1] INFO t.t.13.0 - Image testcontainers/ryuk:0.13.0 pull took PT0.964157503S
1792026-01-13 17:26:22,107 [io-compute-1] INFO t.t.13.0 - Creating container for image: testcontainers/ryuk:0.13.0
1802026-01-13 17:26:22,181 [io-compute-1] INFO t.t.13.0 - Container testcontainers/ryuk:0.13.0 is starting: 7fc753f9cc4528d4d7d6e68a415a0171115e069d65d36cfc0aaa582e17c5f9e6
1812026-01-13 17:26:22,489 [io-compute-1] INFO t.t.13.0 - Container testcontainers/ryuk:0.13.0 started in PT0.381507914S
1822026-01-13 17:26:22,492 [io-compute-1] INFO o.t.u.RyukResourceReaper - Ryuk started - will monitor and terminate Testcontainers containers on JVM exit
1832026-01-13 17:26:22,492 [io-compute-1] INFO o.t.DockerClientFactory - Checking the system...
1842026-01-13 17:26:22,493 [io-compute-1] INFO o.t.DockerClientFactory - ✔︎ Docker server version should be at least 1.6.0
1852026-01-13 17:26:22,496 [io-compute-1] INFO tc.redis:6-alpine - Pulling docker image: redis:6-alpine. Please be patient; this may take some time but only needs to be done once.
1862026-01-13 17:26:22,941 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Starting to pull image
1872026-01-13 17:26:22,942 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Pulling image layers: 0 pending, 0 downloaded, 0 extracted, (0 bytes/0 bytes)
1882026-01-13 17:26:23,224 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Pulling image layers: 7 pending, 1 downloaded, 0 extracted, (36 KB/? MB)
1892026-01-13 17:26:23,249 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Pulling image layers: 6 pending, 2 downloaded, 0 extracted, (38 KB/? MB)
1902026-01-13 17:26:23,272 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Pulling image layers: 5 pending, 3 downloaded, 0 extracted, (38 KB/? MB)
1912026-01-13 17:26:23,377 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Pulling image layers: 5 pending, 3 downloaded, 1 extracted, (3 MB/? MB)
1922026-01-13 17:26:23,397 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Pulling image layers: 4 pending, 4 downloaded, 1 extracted, (3 MB/? MB)
1932026-01-13 17:26:23,404 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Pulling image layers: 4 pending, 4 downloaded, 2 extracted, (3 MB/? MB)
1942026-01-13 17:26:23,455 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Pulling image layers: 3 pending, 5 downloaded, 2 extracted, (3 MB/? MB)
1952026-01-13 17:26:23,548 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Pulling image layers: 3 pending, 5 downloaded, 3 extracted, (6 MB/? MB)
1962026-01-13 17:26:23,549 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Pulling image layers: 2 pending, 6 downloaded, 3 extracted, (6 MB/? MB)
1972026-01-13 17:26:23,579 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Pulling image layers: 2 pending, 6 downloaded, 4 extracted, (7 MB/? MB)
1982026-01-13 17:26:23,633 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Pulling image layers: 1 pending, 7 downloaded, 4 extracted, (7 MB/? MB)
1992026-01-13 17:26:23,682 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Pulling image layers: 0 pending, 8 downloaded, 4 extracted, (11 MB/11 MB)
2002026-01-13 17:26:23,804 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Pulling image layers: 0 pending, 8 downloaded, 5 extracted, (11 MB/11 MB)
2012026-01-13 17:26:23,814 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Pulling image layers: 0 pending, 8 downloaded, 6 extracted, (11 MB/11 MB)
2022026-01-13 17:26:23,824 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Pulling image layers: 0 pending, 8 downloaded, 7 extracted, (11 MB/11 MB)
2032026-01-13 17:26:23,839 [docker-java-stream--217996698] INFO tc.redis:6-alpine - Pulling image layers: 0 pending, 8 downloaded, 8 extracted, (11 MB/11 MB)
2042026-01-13 17:26:23,845 [io-compute-1] INFO tc.redis:6-alpine - Image redis:6-alpine pull took PT1.348751283S
2052026-01-13 17:26:23,848 [io-compute-1] INFO tc.redis:6-alpine - Creating container for image: redis:6-alpine
2062026-01-13 17:26:23,865 [io-compute-1] INFO tc.redis:6-alpine - Container redis:6-alpine is starting: 6ba6177cdc1a8c7034dbdc8d010c1d860589758d7fca10ee2b75559640d94680
2072026-01-13 17:26:24,063 [io-compute-1] INFO tc.redis:6-alpine - Container redis:6-alpine started in PT0.2145522S
2082026-01-13 17:26:24,333 [io-compute-3] INFO o.h.e.s.EmberServerBuilderCompanionPlatform - Ember-Server service bound to address: [::]:9999
209[info] lila.fishnet.IntegrationTest
210[info] + health check should return healthy 193ms
211[info] - let's play a game 622ms
212[info] *************FAILURES**************
213[info] lila.fishnet.IntegrationTest
214[error] - let's play a game 622ms
215[error] Values not equal: (app/src/test/scala/IntegrationTest.scala:98)
216[error]
217[error] in expect.same(- expected, + found)
218[error] -List(CPzkP0tq d2d4 e7e6, CPzkP0tq d2d4e7e6h2h4 d7d5)
219[error] +List(CPzkP0tq d2d4 e7e6, CPzkP0tq d2d4e7e6h2h4 d7d5, CPzkP0tq e7e6h2h4d7d5e2e3 d8d6)
220[error]
221[error] app/src/test/scala/IntegrationTest.scala:98
222[error] x.use(x => IO.pure(expect.same(x, expectedMoves)))
223[error] ^
224[error]
225
226************************
227Build summary:
228[{
229 "module": "root",
230 "compile": {"status": "ok", "tookMs": 265, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
231 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
232 "test-compile": {"status": "ok", "tookMs": 120, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
233 "test": {"status": "ok", "tookMs": 98, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
234 "publish": {"status": "skipped", "tookMs": 0},
235 "metadata": {
236 "crossScalaVersions": ["3.7.4"]
237}
238},{
239 "module": "lila-fishnet",
240 "compile": {"status": "ok", "tookMs": 14148, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
241 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
242 "test-compile": {"status": "ok", "tookMs": 5439, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
243 "test": {"status": "failed", "tookMs": 6820, "passed": 35, "failed": 1, "ignored": 0, "skipped": 0, "total": 36, "byFramework": [{"framework": "unknown", "stats": {"passed": 35, "failed": 1, "ignored": 0, "skipped": 0, "total": 36}}]},
244 "publish": {"status": "skipped", "tookMs": 0},
245 "metadata": {
246 "crossScalaVersions": ["3.7.4"]
247}
248}]
249************************
250[error] Scala3CommunityBuild$ProjectBuildFailureException: 1 module(s) finished with failures: lila-fishnet
251[error] (Global / runBuild) Scala3CommunityBuild$ProjectBuildFailureException: 1 module(s) finished with failures: lila-fishnet
252[error] Total time: 35 s, completed Jan 13, 2026, 5:26:25 PM
253[0JBuild failed, not retrying.