Build Logs
shuwariafrica/world • 3.8.0-RC2:2025-11-28
Errors
60
Warnings
0
Total Lines
331
1##################################
2Clonning https://github.com/shuwariafrica/world.git into /build/repo using revision v0.0.1
3##################################
4Note: switching to '568ce7fa7698a19542ae314e56e76a9e1d74cf78'.
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-RC2
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-RC2
32Execute tests: true
33sbt project found:
34No prepare script found for project shuwariafrica/world
35##################################
36Scala version: 3.8.0-RC2
37Targets: africa.shuwari%world-common africa.shuwari%world-locale africa.shuwari%world-money
38Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[]}
39##################################
40Using extra scalacOptions: ,REQUIRE:-source:3.8
41Filtering out scalacOptions: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
42[sbt_options] declare -a sbt_options=()
43[process_args] java_version = '21'
44[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_21/rt.jar'
45# Executing command line:
46java
47-Dfile.encoding=UTF-8
48-Xmx10G
49-Xms6G
50-Xss8M
51-XX:ReservedCodeCacheSize=384M
52-Dcommunitybuild.scala=3.8.0-RC2
53-Dcommunitybuild.project.dependencies.add=
54-Xmx7G
55-Xms4G
56-Xss8M
57-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
58-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_21
59-jar
60/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
61"setCrossScalaVersions 3.8.0-RC2"
62"++3.8.0-RC2 -v"
63"mapScalacOptions ",REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s" ",-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
64"set every credentials := Nil"
65"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
66"removeScalacOptionsStartingWith -P:wartremover"
67
68moduleMappings
69"runBuild 3.8.0-RC2 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[]}""" africa.shuwari%world-common africa.shuwari%world-locale africa.shuwari%world-money"
70
71[info] [launcher] getting org.scala-sbt sbt 1.11.7 (this may take some time)...
72[info] welcome to sbt 1.11.7 (Eclipse Adoptium Java 21)
73[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
74[info] loading project definition from /build/repo/project
75[info] compiling 6 Scala sources to /build/repo/project/target/scala-2.12/sbt-1.0/classes ...
76[info] Non-compiled module 'compiler-bridge_2.12' for Scala 2.12.20. Compiling...
77[info] Compilation completed in 8.229s.
78[info] done compiling
79[info] loading settings for project world-root from build.sbt...
80[info] resolving key references (16194 settings) ...
81[info] set current project to world-root (in build file:/build/repo/)
82Execute setCrossScalaVersions: 3.8.0-RC2
83OpenCB::Changing crossVersion 3.7.3 -> 3.8.0-RC2 in world-localeNative/crossScalaVersions
84OpenCB::Changing crossVersion 3.7.3 -> 3.8.0-RC2 in world-moneyNative/crossScalaVersions
85OpenCB::Changing crossVersion 3.7.3 -> 3.8.0-RC2 in world-native/crossScalaVersions
86OpenCB::Changing crossVersion 3.7.3 -> 3.8.0-RC2 in world-money/crossScalaVersions
87OpenCB::Changing crossVersion 3.7.3 -> 3.8.0-RC2 in world-js/crossScalaVersions
88OpenCB::Changing crossVersion 3.7.3 -> 3.8.0-RC2 in world-moneyJS/crossScalaVersions
89OpenCB::Changing crossVersion 3.7.3 -> 3.8.0-RC2 in world-root/crossScalaVersions
90OpenCB::Changing crossVersion 3.7.3 -> 3.8.0-RC2 in world-commonJS/crossScalaVersions
91OpenCB::Changing crossVersion 3.7.3 -> 3.8.0-RC2 in world-jvm/crossScalaVersions
92OpenCB::Changing crossVersion 3.7.3 -> 3.8.0-RC2 in world-locale/crossScalaVersions
93OpenCB::Changing crossVersion 3.7.3 -> 3.8.0-RC2 in world-localeJS/crossScalaVersions
94OpenCB::Changing crossVersion 3.7.3 -> 3.8.0-RC2 in world-commonNative/crossScalaVersions
95OpenCB::Changing crossVersion 3.7.3 -> 3.8.0-RC2 in world-common/crossScalaVersions
96[info] set current project to world-root (in build file:/build/repo/)
97[info] Setting Scala version to 3.8.0-RC2 on 13 projects.
98[info] Switching Scala version on:
99[info] world-common (3.8.0-RC2)
100[info] world-moneyJS (3.8.0-RC2)
101[info] world-native (3.8.0-RC2)
102[info] world-moneyNative (3.8.0-RC2)
103[info] world-commonJS (3.8.0-RC2)
104[info] world-localeJS (3.8.0-RC2)
105[info] world-commonNative (3.8.0-RC2)
106[info] world-money (3.8.0-RC2)
107[info] world-locale (3.8.0-RC2)
108[info] * world-root (3.8.0-RC2)
109[info] world-localeNative (3.8.0-RC2)
110[info] world-js (3.8.0-RC2)
111[info] world-jvm (3.8.0-RC2)
112[info] Excluding projects:
113[info] Reapplying settings...
114[info] set current project to world-root (in build file:/build/repo/)
115Execute mapScalacOptions: ,REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
116[info] Reapplying settings...
117[info] set current project to world-root (in build file:/build/repo/)
118[info] Defining Global / credentials, ThisBuild / credentials and 12 others.
119[info] The new values will be used by Compile / scalafmtOnly, Global / pgpSelectPassphrase and 94 others.
120[info] Run `last` for details.
121[info] Reapplying settings...
122[info] set current project to world-root (in build file:/build/repo/)
123Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
124[info] Reapplying settings...
125OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
126
127 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
128 Did you mean world-commonJS / allExcludeDependencies ?
129 , retry without global scopes
130[info] Reapplying settings...
131[info] set current project to world-root (in build file:/build/repo/)
132Execute removeScalacOptionsStartingWith: -P:wartremover
133[info] Reapplying settings...
134[info] set current project to world-root (in build file:/build/repo/)
135[success] Total time: 0 s, completed Nov 28, 2025, 4:08:21 PM
136Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[]}
137Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),Full,List()))
138Starting build...
139Projects: Set(world-common, world-locale, world-money)
140Starting build for ProjectRef(file:/build/repo/,world-common) (world-common)... [0/3]
141OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.8` in Scala 2.12.20 module Global
142Compile scalacOptions: -Xsemanticdb, -semanticdb-target, /build/repo/modules/common/.jvm/target/scala-3.8.0-RC2/meta, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
143OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
144OpenCB::Filter out '-feature', matches setting pattern '^-?-feature'
145OpenCB::Filter out '-Xfatal-warnings', matches setting pattern '^-?-Xfatal-warnings'
146[info] compiling 2 Scala sources to /build/repo/modules/common/.jvm/target/scala-3.8.0-RC2/classes ...
147[info] done compiling
148[info] compiling 2 Scala sources to /build/repo/modules/common/.jvm/target/scala-3.8.0-RC2/test-classes ...
149[info] done compiling
150world.format.FormatterSuite:
151 + Formatter.apply should summon given instances 0.009s
152 + Formatter.apply should create instances from functions 0.001s
153 + Built-in String formatter should return identity 0.001s
154 + Built-in Int formatter should convert to string 0.001s
155 + Built-in Long formatter should convert to string 0.0s
156 + Built-in Double formatter should convert to string 0.0s
157 + Built-in BigDecimal formatter should convert to string 0.003s
158 + Built-in BigInt formatter should convert to string 0.001s
159 + Built-in Boolean formatter should convert to string 0.001s
160 + Custom formatter should be usable via extension method 0.004s
161 + Formatter instances should be comparable via CanEqual 0.0s
162 + Functional formatter should handle edge cases 0.001s
163world.common.NullableUtilitiesSuite:
164 + toOption should convert non-null value to Some 0.009s
165 + toOption should convert null to None 0.001s
166 + toEither should convert non-null value to Right 0.001s
167 + toEither should convert null to Left with custom error 0.002s
168 + mapOption should apply function to non-null value 0.001s
169 + mapOption should return None for null value 0.001s
170 + flatMapOption should apply function and flatten for non-null value 0.002s
171 + flatMapOption should return None for null value 0.0s
172 + flatMapOption should propagate None from function 0.0s
173 + flattenNull should convert Some(non-null) to Some 0.001s
174 + flattenNull should convert Some(null) to None 0.0s
175 + flattenNull should convert None to None 0.001s
176 + mapFlattenNull should apply function to non-null value 0.001s
177 + mapFlattenNull should return None for Some(null) 0.001s
178 + mapFlattenNull should return None for None 0.0s
179 + flatMapFlattenNull should apply function and flatten for non-null value 0.001s
180 + flatMapFlattenNull should return None for Some(null) 0.001s
181 + flatMapFlattenNull should return None for None 0.001s
182 + flatMapFlattenNull should propagate None from function 0.001s
183 + chaining nullable operations should work correctly 0.001s
184 + null in chain should short-circuit 0.001s
185 + Java interop scenario - System property handling 0.002s
186 + Option[A | Null] from map operation should flatten correctly 0.001s
187Starting build for ProjectRef(file:/build/repo/,world-locale) (world-locale)... [1/3]
188Compile scalacOptions: -Xsemanticdb, -semanticdb-target, /build/repo/modules/locale/.jvm/target/scala-3.8.0-RC2/meta, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
189[info] SourceGenerators: 2 country data file(s) changed. Regenerating Countries.scala...
190[info] Loaded 250 total unique country records.
191[info] SourceGenerators: Finished generating Countries.scala.
192[info] compiling 4 Scala sources to /build/repo/modules/locale/.jvm/target/scala-3.8.0-RC2/classes ...
193[info] done compiling
194[info] compiling 2 Scala sources to /build/repo/modules/locale/.jvm/target/scala-3.8.0-RC2/test-classes ...
195[info] done compiling
196world.locale.format.LocaleFormatterSuite:
197 + Country formatter should display full name 0.018s
198 + Alpha2Code formatter should display uppercase code 0.004s
199 + Alpha2Code formatter should work after normalisation 0.001s
200 + Alpha3Code formatter should display uppercase code 0.002s
201 + Alpha3Code formatter should work with different cases 0.003s
202 + M49Code formatter should display numeric string 0.001s
203 + M49Code formatter should handle leading zeros correctly 0.001s
204 + M49Code formatter should handle large numbers 0.0s
205 + Formatters should be available via import 0.003s
206 + All Country singletons should format correctly 0.002s
207world.locale.country.CountryCodeSuite:
208 + Alpha2Code.from should succeed for valid 2-letter uppercase strings 0.131s
209 + Alpha2Code.from should fail for invalid strings 0.011s
210 + Alpha2Code.from should normalise input before validation 0.002s
211 + Alpha3Code.from should succeed for valid 3-letter uppercase strings 0.004s
212 + Alpha3Code.from should fail for invalid strings 0.009s
213 + Alpha3Code.from should normalise input before validation 0.002s
214 + M49Code.from should succeed for integers between 1 and 999 0.004s
215 + M49Code.from should fail for integers outside the 1-999 range 0.008s
216 + Alpha2Code.value should expose the underlying string 0.001s
217 + Alpha3Code.value should expose the underlying string 0.0s
218 + M49Code.value should expose the underlying int 0.001s
219 + Alpha2Code should maintain equality semantics 0.001s
220 + Alpha3Code should maintain equality semantics 0.001s
221 + M49Code should maintain value equality 0.0s
222world.locale.country.CountriesSuite:
223 + Generated Countries object should contain correct data for known countries 0.115s
224 + Countries 'all' set should contain known countries 0.139s
225 + Lookup methods should find countries by different codes 0.099s
226 + Lookup fromName should find a country by its common name (case-insensitive) 0.002s
227 + Generic apply method should correctly delegate to other lookup methods 0.002s
228 + Lookup methods should return None for unknown identifiers 0.0s
229Starting build for ProjectRef(file:/build/repo/,world-money) (world-money)... [2/3]
230Compile scalacOptions: -Xsemanticdb, -semanticdb-target, /build/repo/modules/money/.jvm/target/scala-3.8.0-RC2/meta, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
231[info] SourceGenerators: 4 currency data file(s) changed. Regenerating currency sources...
232[info] SourceGenerators: Finished generating 3 currency source file(s).
233[info] compiling 13 Scala sources to /build/repo/modules/money/.jvm/target/scala-3.8.0-RC2/classes ...
234[error] -- [E008] Not Found Error: /build/repo/modules/money/src/main/scala/world/money/currency/number.scala:281:119
235[error] 281 | inline def negate(using CurrencyMathContext): CurrencyValue = value.bigDecimal.negate(summon[CurrencyMathContext]).nn
236[error] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
237[error] |value nn is not a member of (java.math.BigDecimal)?.
238[error] |An extension method was tried, but could not be fully constructed:
239[error] |
240[error] | nn[(java.math.BigDecimal)?](
241[error] | value.bigDecimal.negate(summon[world.money.currency.CurrencyMathContext](x$2))
242[error] | )
243[error] |
244[error] | failed with:
245[error] |
246[error] | Found: (?1 : (java.math.BigDecimal)?)
247[error] | Required: world.money.currency.CurrencyValue
248[error] |
249[error] | where: ?1 is an unknown value of type (java.math.BigDecimal)?
250[error] |
251[error] one error found
252[error] (world-money / Compile / compileIncremental) Compilation failed
253[info] compiling 13 Scala sources to /build/repo/modules/money/.jvm/target/scala-3.8.0-RC2/classes ...
254[error] -- [E008] Not Found Error: /build/repo/modules/money/src/main/scala/world/money/currency/number.scala:281:119
255[error] 281 | inline def negate(using CurrencyMathContext): CurrencyValue = value.bigDecimal.negate(summon[CurrencyMathContext]).nn
256[error] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
257[error] |value nn is not a member of (java.math.BigDecimal)?.
258[error] |An extension method was tried, but could not be fully constructed:
259[error] |
260[error] | nn[(java.math.BigDecimal)?](
261[error] | value.bigDecimal.negate(summon[world.money.currency.CurrencyMathContext](x$2))
262[error] | )
263[error] |
264[error] | failed with:
265[error] |
266[error] | Found: (?1 : (java.math.BigDecimal)?)
267[error] | Required: world.money.currency.CurrencyValue
268[error] |
269[error] | where: ?1 is an unknown value of type (java.math.BigDecimal)?
270[error] |
271[error] one error found
272[error] (world-money / Compile / compileIncremental) Compilation failed
273[info] compiling 13 Scala sources to /build/repo/modules/money/.jvm/target/scala-3.8.0-RC2/classes ...
274[error] -- [E008] Not Found Error: /build/repo/modules/money/src/main/scala/world/money/currency/number.scala:281:119
275[error] 281 | inline def negate(using CurrencyMathContext): CurrencyValue = value.bigDecimal.negate(summon[CurrencyMathContext]).nn
276[error] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
277[error] |value nn is not a member of (java.math.BigDecimal)?.
278[error] |An extension method was tried, but could not be fully constructed:
279[error] |
280[error] | nn[(java.math.BigDecimal)?](
281[error] | value.bigDecimal.negate(summon[world.money.currency.CurrencyMathContext](x$2))
282[error] | )
283[error] |
284[error] | failed with:
285[error] |
286[error] | Found: (?1 : (java.math.BigDecimal)?)
287[error] | Required: world.money.currency.CurrencyValue
288[error] |
289[error] | where: ?1 is an unknown value of type (java.math.BigDecimal)?
290[error] |
291[error] one error found
292[error] (world-money / Compile / compileIncremental) Compilation failed
293
294************************
295Build summary:
296[{
297 "module": "world-common",
298 "compile": {"status": "ok", "tookMs": 7426, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
299 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
300 "test-compile": {"status": "ok", "tookMs": 3221, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
301 "test": {"status": "ok", "tookMs": 395, "passed": 35, "failed": 0, "ignored": 0, "skipped": 0, "total": 35, "byFramework": [{"framework": "munit", "stats": {"passed": 35, "failed": 0, "ignored": 0, "skipped": 0, "total": 35}}]},
302 "publish": {"status": "skipped", "tookMs": 0},
303 "metadata": {
304 "crossScalaVersions": ["3.7.3"]
305}
306},{
307 "module": "world-locale",
308 "compile": {"status": "ok", "tookMs": 11326, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
309 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
310 "test-compile": {"status": "ok", "tookMs": 1785, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
311 "test": {"status": "ok", "tookMs": 538, "passed": 30, "failed": 0, "ignored": 0, "skipped": 0, "total": 30, "byFramework": [{"framework": "munit", "stats": {"passed": 30, "failed": 0, "ignored": 0, "skipped": 0, "total": 30}}]},
312 "publish": {"status": "skipped", "tookMs": 0},
313 "metadata": {
314 "crossScalaVersions": ["3.7.3"]
315}
316},{
317 "module": "world-money",
318 "compile": {"status": "failed", "failureContext": {"type": "buildError", "reasons": ["Compilation failed"]}, "tookMs": 2639, "warnings": 0, "errors": 1, "sourceVersion": "3.8"},
319 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
320 "test-compile": {"status": "skipped", "tookMs": 0, "warnings": 0, "errors": 0},
321 "test": {"status": "skipped", "tookMs": 0, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
322 "publish": {"status": "skipped", "tookMs": 0},
323 "metadata": {
324 "crossScalaVersions": ["3.7.3"]
325}
326}]
327************************
328[error] Scala3CommunityBuild$ProjectBuildFailureException: 1 module(s) finished with failures: world-money
329[error] (Global / runBuild) Scala3CommunityBuild$ProjectBuildFailureException: 1 module(s) finished with failures: world-money
330[error] Total time: 44 s, completed Nov 28, 2025, 4:09:05 PM
331[0JBuild failed, not retrying.