Build Logs

xebia-functional/fetch • 3.8.0-RC5:2025-12-31

Errors

0

Warnings

66

Total Lines

332

1##################################
2Clonning https://github.com/xebia-functional/fetch.git into /build/repo using revision v3.2.0
3##################################
4Note: switching to '20a4b1d12cb65db7e7fd1c3ddc52296dbf9408df'.
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.0
22----
23Preparing build for 3.8.0-RC5
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.0"
35Replacement: val scala3Version = "3.8.0-RC5"
36Starting compilation server
37Compiling project (Scala 3.7.3, JVM (17))
38Compiled project (Scala 3.7.3, JVM (17))
39Successfully applied pattern 'val scala3Version = "3.7.0"' in build.sbt
40----
41Starting build for 3.8.0-RC5
42Execute tests: true
43sbt project found:
44Sbt version 1.10.11 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 xebia-functional/fetch
47##################################
48Scala version: 3.8.0-RC5
49Targets: com.47deg%fetch com.47deg%fetch-debug
50Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3Version = \"3.7.0\"","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 = '17'
56[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8/rt.jar'
57# Executing command line:
58java
59-Dfile.encoding=UTF-8
60-Dcommunitybuild.scala=3.8.0-RC5
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_17_0_8
67-jar
68/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
69"setCrossScalaVersions 3.8.0-RC5"
70"++3.8.0-RC5 -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-RC5 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3Version = \"3.7.0\"","replaceWith":"val scala3Version = \"<SCALA_VERSION>\""}]}""" com.47deg%fetch com.47deg%fetch-debug"
78
79[info] welcome to sbt 1.11.5 (Eclipse Adoptium Java 17.0.8)
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 3 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 9.011s.
85[info] done compiling
86[info] loading settings for project repo from build.sbt...
87[info] set current project to repo (in build file:/build/repo/)
88Execute setCrossScalaVersions: 3.8.0-RC5
89OpenCB::Changing crossVersion 3.8.0-RC5 -> 3.8.0-RC5 in fetch-debugJVM/crossScalaVersions
90OpenCB::Changing crossVersion 3.8.0-RC5 -> 3.8.0-RC5 in fetchJVM/crossScalaVersions
91[info] set current project to repo (in build file:/build/repo/)
92[info] Setting Scala version to 3.8.0-RC5 on 2 projects.
93[info] Switching Scala version on:
94[info] fetch-debugJVM (2.12.20, 2.13.16, 3.8.0-RC5)
95[info] fetchJVM (2.12.20, 2.13.16, 3.8.0-RC5)
96[info] Excluding projects:
97[info] fetchJS (2.12.20, 2.13.16)
98[info] documentation (2.12.20, 2.13.16)
99[info] microsite (2.12.20, 2.13.16)
100[info] fetch-examples (2.12.20, 2.13.16)
101[info] fetch-debugJS (2.12.20, 2.13.16)
102[info] * repo (2.13.16)
103[info] Reapplying settings...
104[info] set current project to repo (in build file:/build/repo/)
105Execute mapScalacOptions: ,REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
106[info] Reapplying settings...
107[info] set current project to repo (in build file:/build/repo/)
108[info] Defining Global / credentials, credentials and 6 others.
109[info] The new values will be used by Compile / scalafmtOnly, Global / pgpSelectPassphrase and 63 others.
110[info] Run `last` for details.
111[info] Reapplying settings...
112[info] set current project to repo (in build file:/build/repo/)
113Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
114[info] Reapplying settings...
115OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
116
117 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
118 Did you mean allExcludeDependencies ?
119 , retry without global scopes
120[info] Reapplying settings...
121[info] set current project to repo (in build file:/build/repo/)
122Execute removeScalacOptionsStartingWith: -P:wartremover
123[info] Reapplying settings...
124[info] set current project to repo (in build file:/build/repo/)
125[success] Total time: 0 s, completed Dec 31, 2025, 9:07:24 PM
126Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3Version = \"3.7.0\"","replaceWith":"val scala3Version = \"<SCALA_VERSION>\""}]}
127Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),Full,List()))
128Starting build...
129Projects: Set(fetchJVM, fetch-debugJVM)
130Starting build for ProjectRef(file:/build/repo/,fetchJVM) (fetch)... [0/2]
131OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
132OpenCB::Filter out '-feature', matches setting pattern '^-?-feature'
133OpenCB::Filter out '-source:3.0-migration', matches setting pattern '^-?-source(:.*)?'
134Compile scalacOptions: -unchecked, -Ywarn-dead-code, -language:higherKinds, -language:existentials, -language:postfixOps, -Ykind-projector, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
135[info] compiling 6 Scala sources to /build/repo/fetch/.jvm/target/scala-3.8.0-RC5/classes ...
136[warn] bad option '-Ywarn-dead-code' was ignored
137[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
138[warn] -- [E092] Pattern Match Unchecked Warning: /build/repo/fetch/src/main/scala/fetch.scala:164:12
139[warn] 164 | case (a: FetchOne[Any, Any], b: FetchOne[Any, Any]) =>
140[warn] | ^
141[warn] |the type test for fetch.FetchOne[Any, Any] cannot be checked at runtime because its type arguments can't be determined from fetch.FetchRequest
142[warn] |
143[warn] | longer explanation available when compiling with `-explain`
144[warn] -- [E092] Pattern Match Unchecked Warning: /build/repo/fetch/src/main/scala/fetch.scala:164:35
145[warn] 164 | case (a: FetchOne[Any, Any], b: FetchOne[Any, Any]) =>
146[warn] | ^
147[warn] |the type test for fetch.FetchOne[Any, Any] cannot be checked at runtime because its type arguments can't be determined from fetch.FetchRequest
148[warn] |
149[warn] | longer explanation available when compiling with `-explain`
150[warn] -- [E092] Pattern Match Unchecked Warning: /build/repo/fetch/src/main/scala/fetch.scala:191:35
151[warn] 191 | case (a: FetchOne[Any, Any], b: Batch[Any, Any]) =>
152[warn] | ^
153[warn] |the type test for fetch.Batch[Any, Any] cannot be checked at runtime because its type arguments can't be determined from fetch.FetchRequest
154[warn] |
155[warn] | longer explanation available when compiling with `-explain`
156[warn] -- [E092] Pattern Match Unchecked Warning: /build/repo/fetch/src/main/scala/fetch.scala:211:12
157[warn] 211 | case (a: Batch[Any, Any], b: FetchOne[Any, Any]) =>
158[warn] | ^
159[warn] |the type test for fetch.Batch[Any, Any] cannot be checked at runtime because its type arguments can't be determined from fetch.FetchRequest
160[warn] |
161[warn] | longer explanation available when compiling with `-explain`
162[warn] -- [E092] Pattern Match Unchecked Warning: /build/repo/fetch/src/main/scala/fetch.scala:211:32
163[warn] 211 | case (a: Batch[Any, Any], b: FetchOne[Any, Any]) =>
164[warn] | ^
165[warn] |the type test for fetch.FetchOne[Any, Any] cannot be checked at runtime because its type arguments can't be determined from fetch.FetchRequest
166[warn] |
167[warn] | longer explanation available when compiling with `-explain`
168[warn] -- [E092] Pattern Match Unchecked Warning: /build/repo/fetch/src/main/scala/fetch.scala:230:32
169[warn] 230 | case (a: Batch[Any, Any], b: Batch[Any, Any]) =>
170[warn] | ^
171[warn] |the type test for fetch.Batch[Any, Any] cannot be checked at runtime because its type arguments can't be determined from fetch.FetchRequest
172[warn] |
173[warn] | longer explanation available when compiling with `-explain`
174[warn] -- [E092] Pattern Match Unchecked Warning: /build/repo/fetch/src/main/scala/fetch.scala:652:13
175[warn] 652 | case q: FetchOne[Any, Any] => runFetchOne[F](q, ds, blocked.result, cache, log)
176[warn] | ^
177[warn] |the type test for fetch.FetchOne[Any, Any] cannot be checked at runtime because its type arguments can't be determined from fetch.FetchRequest
178[warn] |
179[warn] | longer explanation available when compiling with `-explain`
180[warn] -- [E092] Pattern Match Unchecked Warning: /build/repo/fetch/src/main/scala/fetch.scala:653:13
181[warn] 653 | case q: Batch[Any, Any] => runBatch[F](q, ds, blocked.result, cache, log)
182[warn] | ^
183[warn] |the type test for fetch.Batch[Any, Any] cannot be checked at runtime because its type arguments can't be determined from fetch.FetchRequest
184[warn] |
185[warn] | longer explanation available when compiling with `-explain`
186[warn] there was 1 deprecation warning; re-run with -deprecation for details
187[warn] 11 warnings found
188[info] done compiling
189[info] compiling 7 Scala sources to /build/repo/fetch/.jvm/target/scala-3.8.0-RC5/test-classes ...
190[warn] bad option '-Ywarn-dead-code' was ignored
191[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
192[warn] two warnings found
193[info] done compiling
194[info] FetchAsyncQueryTests:
195[info] - We can interpret an async fetch into an IO
196[info] - We can combine several async data sources and interpret a fetch into an IO
197[info] - We can use combinators in a for comprehension and interpret a fetch from async sources into an IO
198[info] - We can use combinators and multiple sources in a for comprehension and interpret a fetch from async sources into an IO
199[info] FetchSyntaxTests:
200[info] - `fetch` syntax allows lifting of any value to the context of a fetch
201[info] - `fetch` syntax allows lifting of any `Throwable` as a failure on a fetch
202[info] - `batchAll` syntax allows batching sequences of fetches and is equivalent to Fetch.batchAll
203[info] FetchReportingTests:
204[info] - Plain values have no rounds of execution
205[info] - Single fetches are executed in one round
206[info] - Single fetches are executed in one round per binding in a for comprehension
207[info] - Single fetches for different data sources are executed in multiple rounds if they are in a for comprehension
208[info] - Single fetches combined with cartesian are run in one round
209[info] - Single fetches combined with traverse are run in one round
210[info] - Single fetches combined with Fetch.batchAll are run in one round
211[info] - The product of two fetches from the same data source implies batching
212[info] - The product of concurrent fetches of the same type implies everything fetched in batches
213[info] FetchTests:
214[info] - We can lift plain values to Fetch
215[info] - We can lift values which have a Data Source to Fetch
216[info] - We can map over Fetch values
217[info] - We can use fetch inside a for comprehension
218[info] - We can mix data sources
219[info] - We can use Fetch as a cartesian
220[info] - We can use Fetch as an applicative
221[info] - We can traverse over a list with a Fetch for each element
222[info] - We can depend on previous computations of Fetch values
223[info] - We can collect a list of Fetch into one
224[info] - We can collect a list of Fetches with heterogeneous sources
225[info] - We can collect the results of a traversal
226[info] - Monadic bind implies sequential execution
227[info] - Traversals are implicitly batched
228[info] - Sequencing is implicitly batched
229[info] - Identities are deduped when batched
230[info] - The product of two fetches implies parallel fetching
231[info] - Concurrent fetching calls batches only when it can
232[info] - Concurrent fetching performs requests to multiple data sources in parallel
233[info] - The product of concurrent fetches implies everything fetched concurrently
234[info] - The product of concurrent fetches of the same type implies everything fetched in a single batch
235[info] - Every level of joined concurrent fetches is combined and batched
236[info] - Every level of batched, concurrent fetches is batched
237[info] - The product of two fetches from the same data source implies batching
238[info] - Sequenced fetches are run concurrently
239[info] - Manually batched fetches are run concurrently
240[info] - Sequenced fetches are deduped
241[info] - Manually batched fetches are deduped
242[info] - Traversals are batched
243[info] - Duplicated sources are only fetched once
244[info] - Sources that can be fetched concurrently inside a for comprehension will automatically be concurrent
245[info] - Sources that are manually batched will be fetched concurrently
246[info] - Pure Fetches allow to explore further in the Fetch
247[info] - Elements are cached and thus not fetched more than once
248[info] - Batched elements are cached and thus not fetched more than once
249[info] - Elements that are cached won't be fetched
250[info] - Fetch#run accepts a cache as the second (optional) parameter
251[info] - Fetch#runCache accepts a cache as the second (optional) parameter
252[info] - Fetch#runCache works without the optional cache parameter
253[info] - We can use a custom cache that discards elements
254[info] - We can use a custom cache that discards elements together with concurrent fetches
255[info] - Data sources with errors throw fetch failures
256[info] - Data sources with errors throw fetch failures that can be handled
257[info] - Data sources with errors won't fail if they're cached
258[info] - We can lift errors to Fetch
259[info] - We can lift handle and recover from errors in Fetch
260[info] - If a fetch fails in the left hand of a product the product will fail
261[info] - If a fetch fails in the right hand of a product the product will fail
262[info] - If there is a missing identity in the left hand of a product the product will fail
263[info] - If there is a missing identity in the right hand of a product the product will fail
264[info] - If there are multiple failing identities the fetch will fail
265[info] - We can run optional fetches
266[info] - We can run optional fetches with Fetch.batchAll
267[info] - We can run optional fetches with other data sources
268[info] - We can make fetches that depend on optional fetch results when they aren't defined
269[info] - We can make fetches that depend on optional fetch results when they are defined
270[info] - We can lift IO actions into Fetch
271[info] - A failed IO action lifted into Fetch will cause a Fetch to fail
272[info] - A IO action can be combined with data fetches
273[info] - We can lift Concurrent actions into Fetch
274[info] - A failed Concurrent action lifted into Fetch will cause a Fetch to fail
275[info] - A Concurrent action can be combined with data fetches
276[info] FetchBatchingTests:
277[info] - A large fetch to a datasource with a maximum batch size is split and executed in sequence
278[info] - A large fetch to a datasource with a maximum batch size is split and executed in parallel
279[info] - Fetches to datasources with a maximum batch size should be split and executed in parallel and sequentially when using productR
280[info] - Fetches to datasources with a maximum batch size should be split and executed in parallel and sequentially when using productL
281[info] - A large (many) fetch to a datasource with a maximum batch size is split and executed in sequence
282[info] - A large (many) fetch to a datasource with a maximum batch size is split and executed in parallel
283[info] - Very deep fetches don't overflow stack or heap
284[info] - Fetches produced across unrelated fetches to a DataSource that is NOT batched across fetch executions should NOT be bundled together
285[info] - Fetches produced across unrelated fetches to a DataSource that is batched across fetch executions should be bundled together
286Starting build for ProjectRef(file:/build/repo/,fetch-debugJVM) (fetch-debug)... [1/2]
287Compile scalacOptions: -unchecked, -Ywarn-dead-code, -language:higherKinds, -language:existentials, -language:postfixOps, -Ykind-projector, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
288[info] compiling 2 Scala sources to /build/repo/fetch-debug/.jvm/target/scala-3.8.0-RC5/classes ...
289[warn] bad option '-Ywarn-dead-code' was ignored
290[warn] Option -Ykind-projector is deprecated: Use -Xkind-projector instead.
291[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/fetch-debug/src/main/scala/document.scala:50:6
292[warn] 50 | state match {
293[warn] | ^^^^^
294[warn] | match may not be exhaustive.
295[warn] |
296[warn] | It would fail on pattern case: List((_, _, _), _*)
297[warn] |
298[warn] | longer explanation available when compiling with `-explain`
299[warn] three warnings found
300[info] done compiling
301
302************************
303Build summary:
304[{
305 "module": "fetch",
306 "compile": {"status": "ok", "tookMs": 11129, "warnings": 8, "errors": 0, "sourceVersion": "3.8"},
307 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
308 "test-compile": {"status": "ok", "tookMs": 9030, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
309 "test": {"status": "ok", "tookMs": 3477, "passed": 87, "failed": 0, "ignored": 0, "skipped": 0, "total": 87, "byFramework": [{"framework": "unknown", "stats": {"passed": 87, "failed": 0, "ignored": 0, "skipped": 0, "total": 87}}]},
310 "publish": {"status": "skipped", "tookMs": 0},
311 "metadata": {
312 "crossScalaVersions": ["2.12.20", "2.13.16", "3.7.0"]
313}
314},{
315 "module": "fetch-debug",
316 "compile": {"status": "ok", "tookMs": 1719, "warnings": 1, "errors": 0, "sourceVersion": "3.8"},
317 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
318 "test-compile": {"status": "ok", "tookMs": 174, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
319 "test": {"status": "ok", "tookMs": 180, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
320 "publish": {"status": "skipped", "tookMs": 0},
321 "metadata": {
322 "crossScalaVersions": ["2.12.20", "2.13.16", "3.7.0"]
323}
324}]
325************************
326[success] Total time: 28 s, completed Dec 31, 2025, 9:07:52 PM
327[0JChecking patch project/plugins.sbt...
328Checking patch project/build.properties...
329Checking patch build.sbt...
330Applied patch project/plugins.sbt cleanly.
331Applied patch project/build.properties cleanly.
332Applied patch build.sbt cleanly.