Build Logs
pjfanning/pekko-mock-scheduler • 3.8.0:2026-01-13
Errors
1
Warnings
11
Total Lines
266
1##################################
2Clonning https://github.com/pjfanning/pekko-mock-scheduler.git into /build/repo using revision v0.6.0
3##################################
4Note: switching to '295b048bb012ec9f625e912369b9d6fc10fb89bf'.
5
6You are in 'detached HEAD' state. You can look around, make experimental
7changes and commit them, and you can discard any commits you make in this
8state without impacting any branches by switching back to a branch.
9
10If you want to create a new branch to retain commits you create, you may
11do so (now or later) by using -c with the switch command. Example:
12
13 git switch -c <new-branch-name>
14
15Or undo this operation with:
16
17 git switch -
18
19Turn off this advice by setting config variable advice.detachedHead to false
20
21----
22Preparing build for 3.8.0
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.0
32Execute tests: true
33sbt project found:
34Sbt version 1.9.3 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 pjfanning/pekko-mock-scheduler
37##################################
38Scala version: 3.8.0
39Targets: com.github.pjfanning%pekko-mock-scheduler
40Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"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 = '17'
46[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8/rt.jar'
47# Executing command line:
48java
49-Dfile.encoding=UTF-8
50-Dcommunitybuild.scala=3.8.0
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_17_0_8
57-jar
58/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
59"setCrossScalaVersions 3.8.0"
60"++3.8.0 -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.0 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[]}""" com.github.pjfanning%pekko-mock-scheduler"
68
69[info] welcome to sbt 1.11.5 (Eclipse Adoptium Java 17.0.8)
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 9.032s.
75[info] done compiling
76[info] loading settings for project repo from build.sbt, version.sbt...
77[info] set current project to pekko-mock-scheduler (in build file:/build/repo/)
78Execute setCrossScalaVersions: 3.8.0
79OpenCB::Changing crossVersion 3.3.0 -> 3.8.0 in repo/crossScalaVersions
80[info] set current project to pekko-mock-scheduler (in build file:/build/repo/)
81[info] Setting Scala version to 3.8.0 on 1 projects.
82[info] Switching Scala version on:
83[info] * repo (2.13.11, 2.12.18, 3.8.0)
84[info] Excluding projects:
85[info] Reapplying settings...
86[info] set current project to pekko-mock-scheduler (in build file:/build/repo/)
87Execute mapScalacOptions: ,REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
88[info] Reapplying settings...
89[info] set current project to pekko-mock-scheduler (in build file:/build/repo/)
90[info] Defining Global / credentials, credentials
91[info] The new values will be used by Global / pgpSelectPassphrase, Global / pgpSigningKey and 4 others.
92[info] Run `last` for details.
93[info] Reapplying settings...
94[info] set current project to pekko-mock-scheduler (in build file:/build/repo/)
95Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
96[info] Reapplying settings...
97OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
98
99 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
100 Did you mean allExcludeDependencies ?
101 , retry without global scopes
102[info] Reapplying settings...
103[info] set current project to pekko-mock-scheduler (in build file:/build/repo/)
104Execute removeScalacOptionsStartingWith: -P:wartremover
105[info] Reapplying settings...
106[info] set current project to pekko-mock-scheduler (in build file:/build/repo/)
107[success] Total time: 0 s, completed Jan 13, 2026, 5:02:21 PM
108Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[]}
109Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),Full,List()))
110Starting build...
111Projects: Set(repo)
112Starting build for ProjectRef(file:/build/repo/,repo) (pekko-mock-scheduler)... [0/1]
113OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.8` in Scala 2.12.20 module Global
114OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
115OpenCB::Filter out '-feature', matches setting pattern '^-?-feature'
116Compile scalacOptions: -target:jvm-1.8, -encoding, UTF-8, -unchecked, -Xlint, -Ywarn-dead-code, -Ywarn-value-discard, -Ywarn-adapted-args, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
117[info] compiling 4 Scala sources to /build/repo/target/scala-3.8.0/classes ...
118[warn] bad option '-target:jvm-1.8' was ignored
119[warn] Option -Xlint is deprecated: Use -Wshadow to enable shadowing lints. Scheduled for removal.
120[warn] bad option '-Ywarn-dead-code' was ignored
121[warn] bad option '-Ywarn-value-discard' was ignored
122[warn] bad option '-Ywarn-adapted-args' was ignored
123[warn] 5 warnings found
124[info] done compiling
125[info] compiling 4 Scala sources to /build/repo/target/scala-3.8.0/test-classes ...
126[warn] bad option '-target:jvm-1.8' was ignored
127[warn] Option -Xlint is deprecated: Use -Wshadow to enable shadowing lints. Scheduled for removal.
128[warn] bad option '-Ywarn-adapted-args' was ignored
129[warn] there were 4 deprecation warnings; re-run with -deprecation for details
130[warn] four warnings found
131[info] done compiling
132[info] TaskSpec:
133[info] Task
134[info] - a task is smaller than another task with a larger delay
135[info] + Given an instance
136[info] + When compared to a second instance that runs later
137[info] + Then the first instance is greater than the second
138[info] + And the second instance is smaller than the first
139[info] - for two tasks with equal delays, the one with the smaller id is less than the other
140[info] + Given an instance
141[info] + When compared to second instance with a larger id
142[info] + Then the first instance is greater than the second
143[info] + And the second instance is smaller than the first
144[info] - tasks with equal delays and equal ids are equal
145[info] + Given an instance
146[info] + When compared to another with the same delay and id
147[info] + Then it returns true
148[info] VirtualTimeSpec:
149[info] VirtualTime
150[info] - should start at time zero
151[info] + Given no time
152[info] + When I create a time
153[info] + Then its elapsed time should be zero
154[info] - should track elapsed time
155[info] + Given a time
156[info] + When I advance the time
157[info] + Then the elapsed time should be correct
158[info] - should accept a step defined as a Long that represents the number of milliseconds
159[info] + Given a time
160[info] + When I advance the time by a Long value of 1234
161[info] + Then the elapsed time should be 1234 milliseconds
162[info] - should have a meaningful string representation
163[info] + Given a time
164[info] + When I request its string representation
165[info] + Then the representation should include the elapsed time in milliseconds
166[info] - should enforce a minimum advancement of 1 milliseconds
167[info] + Given a time
168[info] + Then it will throw an exception if time is advanced by less than 1 millisecond
169[info] MockSchedulerSpec:
170[info] MockScheduler
171[info] - should have a maximum frequency of 1000 Hz
172[info] + Given a scheduler
173[info] + When I ask for the maximum frequency
174[info] + Then the frequency is 1000 Hz
175[info] - should run a one-time task once
176[info] + Given a time with a scheduler
177[info] + And an execution context
178[info] + When I schedule a one-time task
179[info] + Then the task should not run before its delay
180[info] + And the task should run at the time of its delay
181[info] + And the task should not run again
182[info] - should run a recurring task multiple times
183[info] + Given a time with a scheduler
184[info] + And an execution context
185[info] + When I schedule a recurring task
186[info] + Then the task should not run before its initial delay
187[info] + And it should run at the time of its initial delay (run #1)
188[info] + And it should not run again before its next interval
189[info] + And it should run again at its next interval (run #2)
190[info] + And it should not run again before its next interval
191[info] + And it should run again at its next interval (run #3)
192[info] + And it should have run 103 times after the initial delay and 102 intervals
193[info] - should run tasks with different delays in order
194[info] + Given a time with a scheduler
195[info] + And an execution context
196[info] + When I schedule a recurring task A
197[info] + And I schedule a one-time task B to run when A has already been run a couple of times
198[info] + Then A should run before B
199[info] + And A should continue to run after B finished
200[info] - should run tasks that are scheduled for the same time in order of their registration with the scheduler
201[info] + Given a time with a scheduler
202[info] + And an execution context
203[info] + When I schedule a one-time task A
204[info] + And I then schedule a recurring task B whose initial run is scheduled at the same time as A
205[info] + And I then schedule a one-time task C to run at the same time as A
206[info] + Then A should run before B, and B should run before C
207[info] - should support recursive scheduling
208[info] + Given a time with a scheduler
209[info] + And an execution context
210[info] + When I schedule a task A that schedules another task B
211[info] + And I advance the time so that A was already run (and thus B is now registered with the scheduler)
212[info] + Then B should be run with the configured delay (which will happen in one of the next ticks of the scheduler)
213[info] - should not run a cancelled task
214[info] + Given a time with a scheduler
215[info] + And an execution context
216[info] + When I schedule a one-time task
217[info] + And I cancel the task before its execution time
218[info] + Then the task should not run
219[info] - should not run a recurring task after it was cancelled
220[info] + Given a time with a scheduler
221[info] + And an execution context
222[info] + When I schedule a recurring task
223[info] + And I advance the time so that task is executed once
224[info] + And I cancel the task and advance the time further
225[info] + Then the task should not run any more
226[info] MockCancellableSpec:
227[info] MockCancellable
228[info] - should return true when cancelled the first time
229[info] + Given an instance
230[info] + When I cancel it the first time
231[info] + Then it returns true
232[info] - should return false when cancelled the second time
233[info] + Given an instance
234[info] + When I cancel it the second time
235[info] + Then it returns false
236[info] - isCancelled should return false when cancel was not called yet
237[info] + Given an instance
238[info] + When I ask whether it has been cancelled
239[info] + Then it returns false
240[info] - isCancelled should return true when cancel was called already
241[info] + Given an instance
242[info] + And the instance was cancelled
243[info] + When I ask whether it has been cancelled
244[info] + Then it returns true
245
246************************
247Build summary:
248[{
249 "module": "pekko-mock-scheduler",
250 "compile": {"status": "ok", "tookMs": 4383, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
251 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
252 "test-compile": {"status": "ok", "tookMs": 3836, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
253 "test": {"status": "ok", "tookMs": 1209, "passed": 20, "failed": 0, "ignored": 0, "skipped": 0, "total": 20, "byFramework": [{"framework": "unknown", "stats": {"passed": 20, "failed": 0, "ignored": 0, "skipped": 0, "total": 20}}]},
254 "publish": {"status": "skipped", "tookMs": 0},
255 "metadata": {
256 "crossScalaVersions": ["2.13.11", "2.12.18", "3.3.0"]
257}
258}]
259************************
260[success] Total time: 11 s, completed Jan 13, 2026, 5:02:33 PM
261[0JChecking patch project/plugins.sbt...
262Checking patch project/build.properties...
263Checking patch build.sbt...
264Applied patch project/plugins.sbt cleanly.
265Applied patch project/build.properties cleanly.
266Applied patch build.sbt cleanly.