Build Logs
gzoller/dynalens • 3.8.0-RC6:2026-01-08
Errors
0
Warnings
9
Total Lines
326
1##################################
2Clonning https://github.com/gzoller/dynalens.git into /build/repo using revision v1.1.0
3##################################
4Note: switching to 'c290942ebc4c5aa86f3b0347f1a1bd3a35bda49d'.
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
21Would override fixed Scala version: 3.7.1
22----
23Preparing build for 3.8.0-RC6
24Scala binary version found: 3.8
25Implicitly using source version 3.8
26Scala binary version found: 3.8
27Implicitly using source version 3.8
28Would try to apply common scalacOption (best-effort, sbt/mill only):
29Append: ,REQUIRE:-source:3.8
30Remove: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
31
32Try apply source patch:
33Path: build.sbt
34Pattern: val scala3Version = "3.7.1"
35Replacement: val scala3Version = "3.8.0-RC6"
36Starting compilation server
37Compiling project (Scala 3.7.3, JVM (21))
38Compiled project (Scala 3.7.3, JVM (21))
39Successfully applied pattern 'val scala3Version = "3.7.1"' in build.sbt
40----
41Starting build for 3.8.0-RC6
42Execute tests: true
43sbt project found:
44Sbt version 1.11.2 is not supported, minimal supported version is 1.11.5
45Enforcing usage of sbt in version 1.11.5
46No prepare script found for project gzoller/dynalens
47##################################
48Scala version: 3.8.0-RC6
49Targets: co.blocke%dynalens
50Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3Version = \"3.7.1\"","replaceWith":"val scala3Version = \"<SCALA_VERSION>\""}]}
51##################################
52Using extra scalacOptions: ,REQUIRE:-source:3.8
53Filtering out scalacOptions: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
54[sbt_options] declare -a sbt_options=()
55[process_args] java_version = '21'
56[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_21/rt.jar'
57# Executing command line:
58java
59-Dfile.encoding=UTF-8
60-Dcommunitybuild.scala=3.8.0-RC6
61-Dcommunitybuild.project.dependencies.add=
62-Xmx7G
63-Xms4G
64-Xss8M
65-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
66-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_21
67-jar
68/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
69"setCrossScalaVersions 3.8.0-RC6"
70"++3.8.0-RC6 -v"
71"mapScalacOptions ",REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s" ",-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
72"set every credentials := Nil"
73"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
74"removeScalacOptionsStartingWith -P:wartremover"
75
76moduleMappings
77"runBuild 3.8.0-RC6 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3Version = \"3.7.1\"","replaceWith":"val scala3Version = \"<SCALA_VERSION>\""}]}""" co.blocke%dynalens"
78
79[info] welcome to sbt 1.11.5 (Eclipse Adoptium Java 21)
80[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
81[info] loading project definition from /build/repo/project
82[info] compiling 2 Scala sources to /build/repo/project/target/scala-2.12/sbt-1.0/classes ...
83[info] Non-compiled module 'compiler-bridge_2.12' for Scala 2.12.20. Compiling...
84[info] Compilation completed in 8.009s.
85[info] done compiling
86[info] loading settings for project root from build.sbt...
87[info] set current project to dynalens (in build file:/build/repo/)
88[warn] there are 2 keys that are not used by any other settings/tasks:
89[warn]
90[warn] * ThisBuild / moduleName
91[warn] +- /build/repo/build.sbt:35
92[warn] * ThisBuild / name
93[warn] +- /build/repo/build.sbt:34
94[warn]
95[warn] note: a setting might still be used by a command; to exclude a key from this `lintUnused` check
96[warn] either append it to `Global / excludeLintKeys` or call .withRank(KeyRanks.Invisible) on the key
97Execute setCrossScalaVersions: 3.8.0-RC6
98OpenCB::Changing crossVersion 3.8.0-RC6 -> 3.8.0-RC6 in root/crossScalaVersions
99[info] set current project to dynalens (in build file:/build/repo/)
100[info] Setting Scala version to 3.8.0-RC6 on 1 projects.
101[info] Switching Scala version on:
102[info] * root (3.8.0-RC6)
103[info] Excluding projects:
104[info] Reapplying settings...
105[info] set current project to dynalens (in build file:/build/repo/)
106Execute mapScalacOptions: ,REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
107[info] Reapplying settings...
108[info] set current project to dynalens (in build file:/build/repo/)
109[info] Defining Global / credentials, credentials
110[info] The new values will be used by Compile / scalafmtOnly, IntegrationTest / scalafmtOnly and 6 others.
111[info] Run `last` for details.
112[info] Reapplying settings...
113[info] set current project to dynalens (in build file:/build/repo/)
114Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
115[info] Reapplying settings...
116OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
117
118 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
119 Did you mean allExcludeDependencies ?
120 , retry without global scopes
121[info] Reapplying settings...
122[info] set current project to dynalens (in build file:/build/repo/)
123Execute removeScalacOptionsStartingWith: -P:wartremover
124[info] Reapplying settings...
125[info] set current project to dynalens (in build file:/build/repo/)
126[success] Total time: 0 s, completed Jan 8, 2026, 1:38:40 AM
127Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3Version = \"3.7.1\"","replaceWith":"val scala3Version = \"<SCALA_VERSION>\""}]}
128Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),Full,List()))
129Starting build...
130Projects: Set(root)
131Starting build for ProjectRef(file:/build/repo/,root) (dynalens)... [0/1]
132OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.8` in Scala 2.12.20 module Global
133OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
134OpenCB::Filter out '-feature', matches setting pattern '^-?-feature'
135Compile scalacOptions: -encoding, UTF-8, -unchecked, -Wunused:implicits, -Wunused:explicits, -Wunused:imports, -Wunused:locals, -Wunused:params, -Wunused:privates, -Wvalue-discard, -Xkind-projector:underscores, --java-output-version:17, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
136[info] compiling 18 Scala sources to /build/repo/target/scala-3.8.0-RC6/classes ...
137[info] done compiling
138[info] compiling 10 Scala sources to /build/repo/target/scala-3.8.0-RC6/test-classes ...
139[info] done compiling
140+ SimpleFnsSpec
141 + SubFn should subtract two numbers
142 + ConstantFn should return constant value
143 + GetFn should return context value
144 + AddFn should sum two numbers
145 + ToUpperFn should convert string to upper case
146 + SubstringFn should extract substring
147 + ConcatFn should concatenate strings
148 + Bad cast in Fn should fail
149+ SimpleStatementsSpec
150 + ValStmt should add a symbol to context
151 + IfStmt true branch executes
152 + IfStmt false branch executes
153 + MapStmt should update object field
154+ Collections Parsing Tests
155 + filter (map--class)
156 + filter (chain--class)
157 + filter (chain--simple)
158 + filter (map--simple)
159 + distinct (chain--simple)
160 + distinct (chain--class)
161 + distinct (map--simple)
162 + distinct (map--class)
163 + clean (chain--simple)
164 + clean (chain--class)
165 + clean (map--simple)
166 + reverse (chain--simple)
167 + clean (map--class)
168 + reverse (map--simple)
169 + reverse (map--class)
170 + reverse (chain--class)
171 + limit (chain--simple)
172 + limit (map--simple)
173 + limit (map--class)
174 + limit (chain--class)
175 + sortAsc (chain--simple)
176 + sortAsc (map--simple)
177 + sortAsc (map--class by field)
178 + sortAsc (chain--class by field)
179 + sortDesc (chain--simple)
180 + sortDesc (map--simple)
181 + map get (simple) succeeds on m
182 + map get (optional map) succeeds on om
183 + sortDesc (map--class by field)
184 + sortDesc (chain--class by field)
185 + map get (complex value) + chain len() on cplx
186 + map map (value transform inline)
187 + map map (block body with val)
188 + map map (identity)
189+ Basic Functional Tests
190 + Nested get access should work
191 + Simple assignment and retrieval must work
192 + Nested update should work
193 + Nested get access to individual indexed field works
194 + Nested update to individual indexed field works
195 + Map must work
196 + Map of nested with specific index must work
197 + Map with arithmetic function must work
198 + Map of nested must work
199 + Basic option field get/set
200 + Map with Get function must work
201 + Basic option field get/set - Unwrapped set
202 + Map with Get function (2) must work
203 + Basic option field get/set - None
204+ ComplexSpec
205 + Failing GetFn should error
206 + BlockFn with val and map should propagate values
207 + Nested BlockFn with conditional logic
208+ Options Tests
209 + Simple option assignment
210 + Expression-based option assignment
211 + Get option value--List (with isDefined)
212 + Get option value (with isDefined)
213 + Update and Map with optional list
214 + Update optional list 1
215 + Update optional list 3
216 + Update optional list 2
217 + Indexed assignment with Some and None
218 + Map vs Update (update)
219 + Indexed assignment with List of Option
220 + Map vs Update (map) - 1
221 + Map vs Update (map) - 2
222 + Assignment top optional list (non-empty)
223 + Map against None
224+ Negative and Limits Tests
225 + mapTo with missing key should fail
226 + Minimal if-block as function result must work
227 + Type mismatch: comparing string to int should fail
228 + Accessing nonexistent field should fail
229 + filter on primitive list using 'this' must work
230 + clean must remove null and empty strings
231 + Unknown nested field should fail
232 + Assignment to optional list (empty)
233 + Indexing a non-list should fail
234 + Fixed index out of bounds should fail
235 + 'this' outside collection/map should fail
236 + Unknown collection method should fail
237 + Optional scalar LHS with non-inferable RHS should fail
238 + Non-boolean predicate in filter should fail
239 + Assigning None to non-optional field should fail
240 + sortAsc with unknown key should fail
241 + Use of undeclared val symbol should fail
242 + equalsIgnoreCase on non-strings should fail
243 + Method not allowed on map/object receiver should fail
244 + filter using unknown relative field should fail
245 + invalid list method chains should fail
246 + map get (simple) fails on bad key for m
247 + indexed list methods type mismatch must fail
248 + map get (optional map) fails on bad key for om
249 + No case match (strict)
250+ Parsing Tests
251 + Simple val assignment script test
252 + Path and operator precedence
253 + Update statement
254 + Map statement
255 + Non-empty statement BlockFn
256 + If statement-no else
257 + Empty statement BlockFn
258 + If statement-with else
259 + If fn
260 + If fn with blockFn
261 + More String functions work
262 + And, or, and Not
263 + String functions work
264 + Even more String functions work
265 + Length function work
266 + String literals work
267 + Path expressions in string interpolation works
268 + 'this' must work in map()
269 + distinct and limit must work
270 + BiMap conversion must work
271 + No-ZIO must work
272 + corner case 1 must work
273 + No-ZIO simple value filtering must work (simple type)
274 + BiMap on simple type (String) must work
275 + Date and UUID functions must work
276 + Map over list of primitives
277 + Deep nesting with individual element
278 + Contains (list complex)
279 + Contains (list simple)
280 + Deep nesting with mutliple elements
281 + Values (map)
282 + Contains (map)
283 + Keys (map)
284 + Select indexed value of list method
285 + Deep list method chains
286 + case: no default → runtime error when no match
287 + case: map entry value transform
288 + case: simple string match
289+ Math Functions Parsing Tests
290 + avg (val only, returns Double)
291 + max (chained with filter)
292 + min (val only)
293 + sum (assign to Int field)
294 + sum on optional list when None → 0
295 + abs on scalar (assign back)
296 + median (even length → average of two middles)
297 + median (odd length → Double of middle)
298 + sum on optional list when Some(...)
299 + chain: filter then sum
300 + chain: sort then median
301152 tests passed. 0 tests failed. 0 tests ignored.
302
303Executed in 2 s 270 ms
304
305
306************************
307Build summary:
308[{
309 "module": "dynalens",
310 "compile": {"status": "ok", "tookMs": 27809, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
311 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
312 "test-compile": {"status": "ok", "tookMs": 12318, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
313 "test": {"status": "ok", "tookMs": 3102, "passed": 152, "failed": 0, "ignored": 0, "skipped": 0, "total": 152, "byFramework": [{"framework": "unknown", "stats": {"passed": 152, "failed": 0, "ignored": 0, "skipped": 0, "total": 152}}]},
314 "publish": {"status": "skipped", "tookMs": 0},
315 "metadata": {
316 "crossScalaVersions": ["3.7.1"]
317}
318}]
319************************
320[success] Total time: 46 s, completed Jan 8, 2026, 1:39:26 AM
321[0JChecking patch project/plugins.sbt...
322Checking patch project/build.properties...
323Checking patch build.sbt...
324Applied patch project/plugins.sbt cleanly.
325Applied patch project/build.properties cleanly.
326Applied patch build.sbt cleanly.