Build Logs
mrumkovskis/tresql • scheduled_3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY
Errors
3
Warnings
1876
Total Lines
2258
1##################################
2Clonning https://github.com/mrumkovskis/tresql.git into /build/repo using revision v13.1.0
3##################################
4Note: switching to 'be77b0157e73b88daffdc9e90c6b29541f0fb3db'.
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
21Using target Scala version for migration: 3.7.4
22Migrating project for -source:3.4 using Scala 3.7.4
23----
24Preparing build for 3.7.4
25Would try to apply common scalacOption (best-effort, sbt/mill only):
26Append: -rewrite,REQUIRE:-source:3.4-migration
27Remove: -indent,-no-indent,-new-syntax,,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
28
29Try apply source patch:
30Path: build.sbt
31Pattern: sys.error("Java 11 is required for this project
32Replacement: println("Java 11 is required for this project
33Starting compilation server
34Compiling project (Scala 3.7.3, JVM (21))
35Compiled project (Scala 3.7.3, JVM (21))
36Successfully applied pattern 'sys.error("Java 11 is required for this project' in build.sbt
37----
38Starting build for 3.7.4
39Execute tests: false
40sbt project found:
41No prepare script found for project mrumkovskis/tresql
42##################################
43Scala version: 3.7.4
44Targets: org.tresql%tresql
45Project projectConfig: {"projects":{"exclude":[],"overrides":{"tresql":{"tests":"disabled"}}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[{"path":"build.sbt","pattern":"sys.error(\"Java 11 is required for this project","replaceWith":"println(\"Java 11 is required for this project"}]}
46##################################
47Using extra scalacOptions: -rewrite,REQUIRE:-source:3.4-migration
48Filtering out scalacOptions: -indent,-no-indent,-new-syntax,,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
49[sbt_options] declare -a sbt_options=()
50[process_args] java_version = '21'
51[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_21/rt.jar'
52# Executing command line:
53java
54-Dfile.encoding=UTF-8
55-Dcommunitybuild.scala=3.7.4
56-Dcommunitybuild.project.dependencies.add=
57-Xmx7G
58-Xms4G
59-Xss8M
60-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
61-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_21
62-jar
63/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
64"setCrossScalaVersions 3.7.4"
65"++3.7.4 -v"
66"mapScalacOptions "-rewrite,REQUIRE:-source:3.4-migration,-Wconf:msg=can be rewritten automatically under:s" "-indent,-no-indent,-new-syntax,,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
67"set every credentials := Nil"
68"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
69"removeScalacOptionsStartingWith -P:wartremover"
70
71moduleMappings
72"runBuild 3.7.4 """{"projects":{"exclude":[],"overrides":{"tresql":{"tests":"disabled"}}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[{"path":"build.sbt","pattern":"sys.error(\"Java 11 is required for this project","replaceWith":"println(\"Java 11 is required for this project"}]}""" org.tresql%tresql"
73
74[info] [launcher] getting org.scala-sbt sbt 1.11.7 (this may take some time)...
75[info] welcome to sbt 1.11.7 (Eclipse Adoptium Java 21)
76[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
77[info] loading project definition from /build/repo/project
78[info] compiling 2 Scala sources to /build/repo/project/target/scala-2.12/sbt-1.0/classes ...
79[info] Non-compiled module 'compiler-bridge_2.12' for Scala 2.12.20. Compiling...
80[info] Compilation completed in 8.362s.
81[info] done compiling
82[info] loading settings for project tresql from build.sbt, version.sbt...
83Java 11 is required for this project. Found 21 instead
84[info] set current project to tresql (in build file:/build/repo/)
85Execute setCrossScalaVersions: 3.7.4
86OpenCB::Changing crossVersion 3.3.7 -> 3.7.4 in tresql/crossScalaVersions
87OpenCB::Changing crossVersion 3.3.7 -> 3.7.4 in it/crossScalaVersions
88OpenCB::Changing crossVersion 3.3.7 -> 3.7.4 in macros/crossScalaVersions
89Java 11 is required for this project. Found 21 instead
90OpenCB::Changing crossVersion 3.3.7 -> 3.7.4 in core/crossScalaVersions
91[info] set current project to tresql (in build file:/build/repo/)
92[info] Setting Scala version to 3.7.4 on 4 projects.
93[info] Switching Scala version on:
94[info] * tresql (3.7.4, 2.13.17, 2.12.20)
95[info] core (3.7.4, 2.13.17, 2.12.20)
96[info] macros (3.7.4, 2.13.17, 2.12.20)
97[info] it (3.7.4, 2.13.17, 2.12.20)
98[info] Excluding projects:
99[info] Reapplying settings...
100Java 11 is required for this project. Found 21 instead
101[info] set current project to tresql (in build file:/build/repo/)
102Execute mapScalacOptions: -rewrite,REQUIRE:-source:3.4-migration,-Wconf:msg=can be rewritten automatically under:s -indent,-no-indent,-new-syntax,,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
103[info] Reapplying settings...
104Java 11 is required for this project. Found 21 instead
105[info] set current project to tresql (in build file:/build/repo/)
106[info] Defining Global / credentials, core / credentials and 2 others.
107[info] The new values will be used by allCredentials, core / allCredentials and 17 others.
108[info] Run `last` for details.
109[info] Reapplying settings...
110Java 11 is required for this project. Found 21 instead
111[info] set current project to tresql (in build file:/build/repo/)
112Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
113[info] Reapplying settings...
114OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
115
116 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
117 Did you mean allExcludeDependencies ?
118 , retry without global scopes
119[info] Reapplying settings...
120Java 11 is required for this project. Found 21 instead
121[info] set current project to tresql (in build file:/build/repo/)
122Execute removeScalacOptionsStartingWith: -P:wartremover
123[info] Reapplying settings...
124Java 11 is required for this project. Found 21 instead
125[info] set current project to tresql (in build file:/build/repo/)
126[success] Total time: 0 s, completed Dec 28, 2025, 4:59:04 PM
127Build config: {"projects":{"exclude":[],"overrides":{"tresql":{"tests":"disabled"}}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[{"path":"build.sbt","pattern":"sys.error(\"Java 11 is required for this project","replaceWith":"println(\"Java 11 is required for this project"}]}
128Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map(tresql -> ProjectOverrides(Some(Disabled)))),CompileOnly,List()))
129Starting build...
130Projects: Set(tresql, core, macros)
131Starting build for ProjectRef(file:/build/repo/,tresql) (tresql)... [0/3]
132OpenCB::Exclude Scala3 specific scalacOption `-rewrite` in Scala 2.12.20 module Global
133OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.4-migration` in Scala 2.12.20 module Global
134OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
135OpenCB::Filter out '-feature', matches setting pattern '^-?-feature'
136Compile scalacOptions: -unchecked, -language:dynamics, -language:postfixOps, -language:implicitConversions, -language:reflectiveCalls, -language:existentials, -explain, -rewrite, -Wconf:msg=can be rewritten automatically under:s, -source:3.4-migration
137[info] compiling 28 Scala sources and 1 Java source to /build/repo/core/target/scala-3.7.4/classes ...
138[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:68:64
139[warn] 68 | def qualifiedIdent: MemParser[Ident] = rep1sep(ident, ".") ^^ Ident named "qualified-ident"
140[warn] | ^^^^^
141[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Ident.apply` explicitly.
142[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:69:73
143[warn] 69 | def qualifiedIdentAll: MemParser[IdentAll] = qualifiedIdent <~ ".*" ^^ IdentAll named "ident-all"
144[warn] | ^^^^^^^^
145[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.IdentAll.apply` explicitly.
146[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:94:56
147[warn] 94 | def braces: MemParser[Braces] = "(" ~> expr <~ ")" ^^ Braces named "braces"
148[warn] | ^^^^^^
149[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Braces.apply` explicitly.
150[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:135:65
151[warn] 135 | def array: MemParser[Arr] = "[" ~> repsep(expr, ",") <~ "]" ^^ Arr named "array"
152[warn] | ^^^
153[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Arr.apply` explicitly.
154[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:148:51
155[warn] 148 | def filters: MemParser[Filters] = rep(filter) ^^ Filters named "filters"
156[warn] | ^^^^^^^
157[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Filters.apply` explicitly.
158[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:270:81
159[warn] 270 | def order: MemParser[Ord] = ("#" ~ "(") ~> rep1sep(orderMember, ",") <~ ")" ^^ Ord named "order"
160[warn] | ^^^
161[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Ord.apply` explicitly.
162[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:343:57
163[warn] 343 | def values: MemParser[Values] = rep1sep(array, ",") ^^ Values named "values"
164[warn] | ^^^^^^
165[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Values.apply` explicitly.
166[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:357:94
167[warn] 357 | opt(opt(ident|NULL) <~ ":") ^^ (_.map(_.map { case Null => null case s: String => s }.map(Db).getOrElse(Db("")))) named "opt-db"
168[warn] | ^^
169[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Db.apply` explicitly.
170[warn] -- [E121] Pattern Match Warning: /build/repo/core/src/main/scala/org/tresql/Env.scala:427:59
171[warn] 427 | protected def defaultDialect: CoreTypes.Dialect = { case e => e.defaultSQL }
172[warn] | ^
173[warn] |Unreachable case except for null (if this is intentional, consider writing case null => instead).
174[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/ORT.scala:146:19
175[warn] 146 | case VarExpr(n, Nil, opt, allowArrBind) => VarExpr("keys", List(i.toString, n), opt, allowArrBind)
176[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
177[warn] | Unreachable case
178[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/ORT.scala:458:49
179[warn] 458 | if (keyVals.nonEmpty) keyVals.partition(_._1.isInstanceOf[RefKeyCol]) match {
180[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
181[warn] | match may not be exhaustive.
182[warn] |
183[warn] | It would fail on pattern case: (_, _)
184[warn] |---------------------------------------------------------------------------
185[warn] | Explanation (enabled by `-explain`)
186[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
187[warn] | There are several ways to make the match exhaustive:
188[warn] | - Add missing cases as shown in the warning
189[warn] | - If an extractor always return Some(...), write Some[X] for its return type
190[warn] | - Add a case _ => ... at the end to match all remaining cases
191[warn] ---------------------------------------------------------------------------
192[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/ORT.scala:600:6
193[warn] 600 | ctx.view.properties.flatMap {
194[warn] | ^
195[warn] | match may not be exhaustive.
196[warn] |
197[warn] | It would fail on pattern case: (_, _)
198[warn] 601 | case OrtMetadata.Property(col, _, _, _, _) if refsAndPk.exists(_.name == col) => Nil
199[warn] 602 | case OrtMetadata.Property(col, KeyValue(_, TresqlValue(valueTresql), updValOpt), _, forInsert, forUpdate) =>
200[warn] 603 | List(ColVal(table.colOption(col).map(_.name).orNull,
201[warn] 604 | valueTresql, forInsert, forUpdate, updValOpt.map(_.tresql)))
202[warn] 605 | case OrtMetadata.Property(col, KeyValue(_, AutoValue(valueTresql), updValOpt), _, forInsert, forUpdate) =>
203[warn] 606 | List(ColVal(table.colOption(col).map(_.name).orNull,
204[warn] 607 | autoValue(table, col, valueTresql, false), forInsert, forUpdate,
205[warn] 608 | updValOpt.map {
206[warn] 609 | case AutoValue(v) => autoValue(table, col, v, true)
207[warn] 610 | case v => v.tresql
208[warn] 611 | }))
209[warn] 612 | case OrtMetadata.Property(col, TresqlValue(tresql), _, forInsert, forUpdate) =>
210[warn] 613 | val (t, c) = col.split("\\.") match {
211[warn] 614 | case Array(a, b) => (a, b)
212[warn] 615 | case Array(a) => (table.name, a)
213[warn] 616 | case a => (a.dropRight(1).mkString("."), a.last)
214[warn] 617 | }
215[warn] 618 | if (t == table.name)
216[warn] 619 | List(ColVal(table.colOption(c).map(_.name).orNull, tresql, forInsert, forUpdate))
217[warn] 620 | else Nil
218[warn] 621 | case OrtMetadata.Property(prop, ViewValue(v, so), optional, forInsert, forUpdate) =>
219[warn] 622 | if (children_save_tresql != null) {
220[warn] 623 | val isOptional = optional || hasOptionalFields(v)
221[warn] 624 | val chtresql = children_save_tresql(prop, v,
222[warn] 625 | ParentRef(table.name, ctx.refToParent) :: ctx.parents, so, isOptional, forInsert, forUpdate)
223[warn] 626 | val chtresql_alias = Option(prop).map(p => s" '$p'").mkString
224[warn] 627 | List(ColVal(Option(chtresql).map(_ + chtresql_alias).orNull, null, forInsert, forUpdate))
225[warn] 628 | } else Nil
226[warn] 629 | case OrtMetadata.Property(refColName, LookupViewValue(propName, lookupView), optional, forInsert, forUpdate) =>
227[warn] 630 | (for {
228[warn] 631 | // check whether refColName exists in table, only then generate lookup tresql
229[warn] 632 | _ <- table.colOption(refColName)
230[warn] 633 | lookupTableName <- lookupView.saveTo.headOption.map(_.table)
231[warn] 634 | lookupTable <- tresqlMetadata(lookupView.db).tableOption(lookupTableName)
232[warn] 635 | } yield {
233[warn] 636 | def pkCol(t: metadata.Table) = t.key.cols match { case List(c) => c case _ => null }
234[warn] 637 | def saveTo(v: View, tn: String) = v.saveTo.find(_.table == tn)
235[warn] 638 | def idSelExpr(v: View, t: metadata.Table) = {
236[warn] 639 | def key_val(v: View, tn: String) = {
237[warn] 640 | val key = saveTo(v, tn).map(_.key.toSet).getOrElse(Set())
238[warn] 641 | v.properties.flatMap {
239[warn] 642 | case OrtMetadata.Property(col, TresqlValue(v), _, _, _) if key.contains(col) =>
240[warn] 643 | List((col, v))
241[warn] 644 | case OrtMetadata.Property(col, KeyValue(where, _, _), _, _, _) if key.contains(col) =>
242[warn] 645 | List((col, where))
243[warn] 646 | case _ => Nil
244[warn] 647 | }
245[warn] 648 | }
246[warn] 649 | val pk_col = pkCol(t)
247[warn] 650 | if (pk_col != null) {
248[warn] 651 | val where = s"${key_val(v, t.name).map { case (k, v) => s"$k = $v"}.mkString(" & ") }"
249[warn] 652 | if (where.nonEmpty) s"(${t.name}[$where]{$pk_col})"
250[warn] 653 | else "null"
251[warn] 654 | } else "null"
252[warn] 655 | }
253[warn] 656 | def idProp(v: View, t: metadata.Table) = {
254[warn] 657 | Option(pkCol(t)).flatMap { pk =>
255[warn] 658 | v.properties.collectFirst {
256[warn] 659 | case OrtMetadata.Property(`pk`, TresqlValue(v), _, _, _) =>
257[warn] 660 | if (v.startsWith(":")) v.substring(1) else pk
258[warn] 661 | case OrtMetadata.Property(`pk`, KeyValue(_, ov, _), _, _, _) =>
259[warn] 662 | val v = ov.tresql
260[warn] 663 | if (v.startsWith(":")) v.substring(1) else pk
261[warn] 664 | }
262[warn] 665 | }.orNull
263[warn] 666 | }
264[warn] 667 | val idPropName = idProp(lookupView, lookupTable)
265[warn] 668 | val update = save_tresql(null, lookupView, Nil,
266[warn] 669 | SaveOptions(true, false, true), false, true, true, update_tresql)
267[warn] 670 | val insert = save_tresql(null, lookupView, Nil,
268[warn] 671 | SaveOptions(true, false, true), false ,true, true, insert_tresql)
269[warn] 672 | val lookupUpsert = {
270[warn] 673 | val tr = s"|_upsert($update, $insert)"
271[warn] 674 | if (hasOptionalFields(lookupView)) s"_deferred_build($tr)"
272[warn] 675 | else tr
273[warn] 676 | }
274[warn] 677 | val lookupIdSel = idSelExpr(lookupView, lookupTable)
275[warn] 678 | val (lookupTresql, refColTresql) = {
276[warn] 679 | val tr = s":$refColName = |_lookup_upsert('$propName', ${
277[warn] 680 | if (idPropName == null) "null" else s"'$idPropName'"}, $lookupUpsert, $lookupIdSel)"
278[warn] 681 | if (optional)
279[warn] 682 | (s"_deferred_build(if_defined(:$propName?, $tr))", s"if_defined(:$propName?, :$refColName)")
280[warn] 683 | else
281[warn] 684 | (tr, s":$refColName")
282[warn] 685 | }
283[warn] 686 | // TODO lookupTresql will be executed always regardless of forInsert, forUpdate settings
284[warn] 687 | List(lookupTresql, ColVal(refColName, refColTresql, forInsert, forUpdate))
285[warn] 688 | }).getOrElse(Nil)
286[warn] 689 | case OrtMetadata.Property(col, AutoValue(tresql), _, forInsert, forUpdate) =>
287[warn] 690 | List(ColVal(table.colOption(col).map(_.name).orNull,
288[warn] 691 | autoValue(table, col, tresql, false), forInsert, forUpdate))
289[warn] 692 | }.partition(_.isInstanceOf[String]) match {
290[warn] |---------------------------------------------------------------------------
291[warn] | Explanation (enabled by `-explain`)
292[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
293[warn] | There are several ways to make the match exhaustive:
294[warn] | - Add missing cases as shown in the warning
295[warn] | - If an extractor always return Some(...), write Some[X] for its return type
296[warn] | - Add a case _ => ... at the end to match all remaining cases
297[warn] ---------------------------------------------------------------------------
298[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:679:66
299[warn] 679 | if (filter != null) filter foreach (transform (_, {case id: BaseVarExpr => id(); id}))
300[warn] | ^^^^^^^^^^^^^^^
301[warn] | Unreachable case
302[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1156:21
303[warn] 1156 | case ie @ IdentExpr(id1 :: id2 :: rest) =>
304[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
305[warn] | Unreachable case
306[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1237:13
307[warn] 1237 | case ArrExpr(List(b @ ConstExpr(true | false))) => b
308[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
309[warn] | Unreachable case
310[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1238:13
311[warn] 1238 | case a @ ArrExpr(List(_: ConstExpr | _: VarExpr | _: ResExpr)) => BinExpr("=",
312[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
313[warn] | Unreachable case
314[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1242:13
315[warn] 1242 | case a: ArrExpr if a.elements.size > 1 => InExpr(IdentExpr(List(pkTable.aliasOrName,
316[warn] | ^^^^^^^^^^
317[warn] | Unreachable case
318[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1244:13
319[warn] 1244 | case ArrExpr(List(f)) => f
320[warn] | ^^^^^^^^^^^^^^^^
321[warn] | Unreachable case
322[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1271:15
323[warn] 1271 | case v: QueryBuilder#BaseVarExpr =>
324[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
325[warn] | Unreachable case
326[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:9:11
327[warn] 9 | case e if e.builder != this => e.builder.transform(e, f)
328[warn] | ^
329[warn] | Unreachable case
330[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:11:11
331[warn] 11 | case ArrExpr(e) => ArrExpr(e map cf)
332[warn] | ^^^^^^^^^^
333[warn] | Unreachable case
334[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:12:11
335[warn] 12 | case BinExpr(o, lop, rop) => BinExpr(o, cf(lop), cf(rop))
336[warn] | ^^^^^^^^^^^^^^^^^^^^
337[warn] | Unreachable case
338[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:13:11
339[warn] 13 | case BracesExpr(b) => BracesExpr(cf(b))
340[warn] | ^^^^^^^^^^^^^
341[warn] | Unreachable case
342[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:14:11
343[warn] 14 | case ColExpr(col, alias, sepQuery, hidden) => ColExpr(cf(col), alias, sepQuery, hidden)
344[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
345[warn] | Unreachable case
346[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:15:11
347[warn] 15 | case cols: ColsExpr => cols.copy(cols = (cols.cols map cf).asInstanceOf[List[ColExpr]])
348[warn] | ^^^^^^^^^^^^^^
349[warn] | Unreachable case
350[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:16:11
351[warn] 16 | case FunExpr(n, p, d, o, f) => FunExpr(n, p map cf, d, o map cf, f map cf)
352[warn] | ^^^^^^^^^^^^^^^^^^^^^^
353[warn] | Unreachable case
354[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:17:11
355[warn] 17 | case FunAsTableExpr(e, cd, ord) => FunAsTableExpr(cf(e), cd.map(cf(_).asInstanceOf[TableColDefsExpr]), ord)
356[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^
357[warn] | Unreachable case
358[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:18:11
359[warn] 18 | case TableColDefsExpr(tcd) => TableColDefsExpr(tcd.map(cf(_).asInstanceOf[TableColDefExpr]))
360[warn] | ^^^^^^^^^^^^^^^^^^^^^
361[warn] | Unreachable case
362[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:19:11
363[warn] 19 | case Group(e, h) => Group(e map cf, cf(h))
364[warn] | ^^^^^^^^^^^
365[warn] | Unreachable case
366[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:20:11
367[warn] 20 | case HiddenColRefExpr(e, typ) => HiddenColRefExpr(cf(e), typ)
368[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^
369[warn] | Unreachable case
370[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:21:11
371[warn] 21 | case InExpr(lop, rop, not) => InExpr(cf(lop), rop map cf, not)
372[warn] | ^^^^^^^^^^^^^^^^^^^^^
373[warn] | Unreachable case
374[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:22:11
375[warn] 22 | case wi: WithInsertExpr => new WithInsertExpr(
376[warn] | ^^^^^^^^^^^^^^^^^^
377[warn] | Unreachable case
378[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:24:11
379[warn] 24 | case i: InsertExpr => new InsertExpr(cf(i.table).asInstanceOf[IdentExpr], i.alias,
380[warn] | ^^^^^^^^^^^^^
381[warn] | Unreachable case
382[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:27:11
383[warn] 27 | case Order(exprs) => Order(exprs map (e => (cf(e._1), cf(e._2), cf(e._3))))
384[warn] | ^^^^^^^^^^^^
385[warn] | Unreachable case
386[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:28:11
387[warn] 28 | case SelectExpr(tables, filter, cols, distinct, group, order,
388[warn] | ^
389[warn] | Unreachable case
390[warn] 29 | offset, limit, aliases, parentJoin) =>
391[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:33:11
392[warn] 33 | case Table(texpr, alias, join, outerJoin, nullable, schema) =>
393[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
394[warn] | Unreachable case
395[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:35:11
396[warn] 35 | case TableJoin(default, expr, noJoin, defaultJoinCols) =>
397[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
398[warn] | Unreachable case
399[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:37:11
400[warn] 37 | case WithTableExpr(n, c, r, q) => WithTableExpr(n, c, r, cf(q))
401[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^
402[warn] | Unreachable case
403[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:38:11
404[warn] 38 | case WithSelectExpr(tables, query) =>
405[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
406[warn] | Unreachable case
407[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:40:11
408[warn] 40 | case WithBinExpr(tables, query) =>
409[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^
410[warn] | Unreachable case
411[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:42:11
412[warn] 42 | case UnExpr(o, op) => UnExpr(o, cf(op))
413[warn] | ^^^^^^^^^^^^^
414[warn] | Unreachable case
415[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:43:11
416[warn] 43 | case CastExpr(e, t) => CastExpr(cf(e), t)
417[warn] | ^^^^^^^^^^^^^^
418[warn] | Unreachable case
419[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:44:11
420[warn] 44 | case u: UpdateExpr => new UpdateExpr(cf(u.table).asInstanceOf[IdentExpr], u.alias,
421[warn] | ^^^^^^^^^^^^^
422[warn] | Unreachable case
423[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:46:11
424[warn] 46 | case d: DeleteExpr => //put delete at the end since it is superclass of insert and update
425[warn] | ^^^^^^^^^^^^^
426[warn] | Unreachable case
427[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:49:11
428[warn] 49 | case ValuesExpr(vals) => ValuesExpr(vals map cf)
429[warn] | ^^^^^^^^^^^^^^^^
430[warn] | Unreachable case
431[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:50:11
432[warn] 50 | case vfs: ValuesFromSelectExpr => vfs.copy(select = cf(vfs.select).asInstanceOf[SelectExpr])
433[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^
434[warn] | Unreachable case
435[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:51:11
436[warn] 51 | case InsertConflictExpr(ct, cfl, c, v, f, a, cd) =>
437[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
438[warn] | Unreachable case
439[warn] -- [E121] Pattern Match Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:53:11
440[warn] 53 | case e => e
441[warn] | ^
442[warn] |Unreachable case except for null (if this is intentional, consider writing case null => instead).
443[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/compiling/Compiler.scala:584:8
444[warn] 584 | dml match {
445[warn] | ^^^
446[warn] |match may not be exhaustive.
447[warn] |
448[warn] |It would fail on pattern case: org.tresql.ast.CompilerAst.WithDMLDef(_, _)
449[warn] |---------------------------------------------------------------------------
450[warn] | Explanation (enabled by `-explain`)
451[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
452[warn] | There are several ways to make the match exhaustive:
453[warn] | - Add missing cases as shown in the warning
454[warn] | - If an extractor always return Some(...), write Some[X] for its return type
455[warn] | - Add a case _ => ... at the end to match all remaining cases
456[warn] ---------------------------------------------------------------------------
457[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:22:9
458[warn] 22 | case v: QueryBuilder#VarExpr => v.defaultSQL match {
459[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
460[warn] | Unreachable case
461[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:31:9
462[warn] 31 | case r: QueryBuilder#ResExpr => r.defaultSQL + s"/*${r.name}*/"
463[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
464[warn] | Unreachable case
465[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:32:9
466[warn] 32 | case id: QueryBuilder#IdExpr => id.defaultSQL + s"/*#${id.seqName}*/"
467[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
468[warn] | Unreachable case
469[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:33:9
470[warn] 33 | case idref: QueryBuilder#IdRefExpr => idref.defaultSQL + s"/*:#${idref.seqName}*/"
471[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
472[warn] | Unreachable case
473[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:34:9
474[warn] 34 | case idrefid: ORT#IdRefIdExpr => idrefid.defaultSQL + s"/*:#${idrefid.idRefSeq}#${idrefid.idSeq}*/"
475[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^
476[warn] | Unreachable case
477[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:38:9
478[warn] 38 | case _: QueryBuilder#SQLVendorExpr => vendor
479[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
480[warn] | Unreachable case
481[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:39:9
482[warn] 39 | case f: QueryBuilder#FunExpr
483[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
484[warn] | Unreachable case
485[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:46:9
486[warn] 46 | case f: QueryBuilder#FunExpr if f.name == "lower" && f.params.size == 1 => "lcase(" + f.params.head.sql + ")"
487[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
488[warn] | Unreachable case
489[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:47:9
490[warn] 47 | case f: QueryBuilder#FunExpr if f.name == "translate" && f.params.size == 3 =>
491[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
492[warn] | Unreachable case
493[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:51:9
494[warn] 51 | case f: QueryBuilder#FunExpr if f.name == "nextval" && f.params.size == 1 =>
495[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
496[warn] | Unreachable case
497[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:55:9
498[warn] 55 | case c: QueryBuilder#CastExpr => s"cast(${c.exp.sql} as ${c.builder.env.metadata.to_sql_type("hsqldb", c.typ) match {
499[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^
500[warn] | Unreachable case
501[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:60:9
502[warn] 60 | case c: QueryBuilder#TableColDefExpr => c.name
503[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
504[warn] | Unreachable case
505[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:61:9
506[warn] 61 | case b: QueryBuilder#BinExpr if b.op == "`~`" => s"regexp_matches(${b.lop.sql}, ${b.rop.sql})"
507[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
508[warn] | Unreachable case
509[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:62:9
510[warn] 62 | case s: QueryBuilder#SelectExpr if s.tables.size == 1 &&
511[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^
512[warn] | Unreachable case
513[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:69:9
514[warn] 69 | case i: QueryBuilder#InsertExpr if i.insertConflict != null =>
515[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^
516[warn] | Unreachable case
517[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:130:10
518[warn] 130 | e match {
519[warn] | ^
520[warn] |match may not be exhaustive.
521[warn] |
522[warn] |It would fail on pattern case: org.tresql.QueryBuilder#SelectExpr(_, _, _, _, _, _, _, _, _, _)
523[warn] |---------------------------------------------------------------------------
524[warn] | Explanation (enabled by `-explain`)
525[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
526[warn] | There are several ways to make the match exhaustive:
527[warn] | - Add missing cases as shown in the warning
528[warn] | - If an extractor always return Some(...), write Some[X] for its return type
529[warn] | - Add a case _ => ... at the end to match all remaining cases
530[warn] ---------------------------------------------------------------------------
531[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:100:6
532[warn] 100 | e match {
533[warn] | ^
534[warn] |match may not be exhaustive.
535[warn] |
536[warn] |It would fail on pattern case: _: org.tresql.QueryBuilder#PrimitiveExpr
537[warn] |---------------------------------------------------------------------------
538[warn] | Explanation (enabled by `-explain`)
539[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
540[warn] | There are several ways to make the match exhaustive:
541[warn] | - Add missing cases as shown in the warning
542[warn] | - If an extractor always return Some(...), write Some[X] for its return type
543[warn] | - Add a case _ => ... at the end to match all remaining cases
544[warn] ---------------------------------------------------------------------------
545[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:159:47
546[warn] 159 | val colNames = i.cols.collect { case b.ColExpr(b.IdentExpr(name), _, _, _) => name.last } toSet
547[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
548[warn] | Unreachable case
549[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:141:9
550[warn] 141 | case c: QueryBuilder#ColExpr if c.alias != null => Option(c.col).map(_.sql).getOrElse("null") + " as " + c.alias
551[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
552[warn] | Unreachable case
553[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:142:9
554[warn] 142 | case c: QueryBuilder#CastExpr => c.exp.sql + "::" + c.builder.env.metadata.to_sql_type("postgresql", c.typ)
555[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^
556[warn] | Unreachable case
557[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:143:9
558[warn] 143 | case c: QueryBuilder#TableColDefExpr => c.name +
559[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
560[warn] | Unreachable case
561[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:145:9
562[warn] 145 | case f: QueryBuilder#FunExpr if f.name == "decode" && f.params.size > 2 =>
563[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
564[warn] | Unreachable case
565[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:150:9
566[warn] 150 | case i: QueryBuilder#InsertExpr =>
567[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^
568[warn] | Unreachable case
569[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/macro.scala:191:13
570[warn] 191 | case b.IdentExpr(n) => n.mkString(".")
571[warn] | ^^^^^^^^^^^^^^
572[warn] | Unreachable case
573[warn] -- [E121] Pattern Match Warning: /build/repo/core/src/main/scala/org/tresql/macro.scala:192:13
574[warn] 192 | case x => sys.error(s"Unrecognized key type - $x")
575[warn] | ^
576[warn] |Unreachable case except for null (if this is intentional, consider writing case null => instead).
577[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:62:9
578[warn] 62 | case i: Int => IntConst(i)
579[warn] | ^^^^^^
580[warn] | Unreachable case
581[warn] -- [E121] Pattern Match Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:63:9
582[warn] 63 | case x => sys.error(s"Unexpected const value: '$x'. Expected `String` or `Boolean` or `BigDecimal` or `Int`")
583[warn] | ^
584[warn] |Unreachable case except for null (if this is intentional, consider writing case null => instead).
585[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:73:4
586[warn] 73 | case "?" => Variable("?", Nil, opt = false)
587[warn] | ^
588[warn] | match may not be exhaustive.
589[warn] |
590[warn] | It would fail on pattern case: Parsers.this.~(Nil, _), _: String
591[warn] |----------------------------------------------------------------------------
592[warn] | Explanation (enabled by `-explain`)
593[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
594[warn] | There are several ways to make the match exhaustive:
595[warn] | - Add missing cases as shown in the warning
596[warn] | - If an extractor always return Some(...), write Some[X] for its return type
597[warn] | - Add a case _ => ... at the end to match all remaining cases
598[warn] ----------------------------------------------------------------------------
599[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:140:6
600[warn] 140 | case ";" => NoJoin
601[warn] | ^
602[warn] | match may not be exhaustive.
603[warn] |
604[warn] | It would fail on pattern case: Parsers.this.~(_, _), _: String
605[warn] |---------------------------------------------------------------------------
606[warn] | Explanation (enabled by `-explain`)
607[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
608[warn] | There are several ways to make the match exhaustive:
609[warn] | - Add missing cases as shown in the warning
610[warn] | - If an extractor always return Some(...), write Some[X] for its return type
611[warn] | - Add a case _ => ... at the end to match all remaining cases
612[warn] ---------------------------------------------------------------------------
613[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:285:6
614[warn] 285 | case Null ~ Filters(Nil) ~ None ~ None ~ None => Null //null literal
615[warn] | ^
616[warn] |match may not be exhaustive.
617[warn] |
618[warn] |It would fail on pattern case: Parsers.this.~(~(_, _), org.tresql.ast.Filters(_)), Parsers.this.~(org.tresql.ast.Cols(_, _), None), Parsers.this.~(org.tresql.ast.Cols(_, _), Some(_))
619[warn] |---------------------------------------------------------------------------
620[warn] | Explanation (enabled by `-explain`)
621[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
622[warn] | There are several ways to make the match exhaustive:
623[warn] | - Add missing cases as shown in the warning
624[warn] | - If an extractor always return Some(...), write Some[X] for its return type
625[warn] | - Add a case _ => ... at the end to match all remaining cases
626[warn] ---------------------------------------------------------------------------
627[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:333:6
628[warn] 333 | case name ~ distinct ~ (cols: List[String@unchecked]) ~ exp => WithTable(name, cols, distinct.isEmpty, exp)
629[warn] | ^
630[warn] | match may not be exhaustive.
631[warn] |
632[warn] | It would fail on pattern case: Parsers.this.~(~(_, _), _)
633[warn] |---------------------------------------------------------------------------
634[warn] | Explanation (enabled by `-explain`)
635[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
636[warn] | There are several ways to make the match exhaustive:
637[warn] | - Add missing cases as shown in the warning
638[warn] | - If an extractor always return Some(...), write Some[X] for its return type
639[warn] | - Add a case _ => ... at the end to match all remaining cases
640[warn] ---------------------------------------------------------------------------
641[warn] -- [E121] Pattern Match Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:376:11
642[warn] 376 | case x => sys.error(s"Unexpected insert parse result: $x")
643[warn] | ^
644[warn] |Unreachable case except for null (if this is intentional, consider writing case null => instead).
645[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:413:8
646[warn] 413 | case (db: Option[Db@unchecked]) ~ (t: Ident) ~ (a: Option[String@unchecked] ) ~ f ~ c ~ v ~ maybeCols =>
647[warn] | ^
648[warn] | match may not be exhaustive.
649[warn] |
650[warn] | It would fail on pattern case: Parsers.this.~(~(_, _), _)
651[warn] |---------------------------------------------------------------------------
652[warn] | Explanation (enabled by `-explain`)
653[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
654[warn] | There are several ways to make the match exhaustive:
655[warn] | - Add missing cases as shown in the warning
656[warn] | - If an extractor always return Some(...), write Some[X] for its return type
657[warn] | - Add a case _ => ... at the end to match all remaining cases
658[warn] ---------------------------------------------------------------------------
659[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:500:6
660[warn] 500 | case (objs: List[Obj@unchecked]) ~ _ ~ _ => "Delete tables clause must as the first element have " +
661[warn] | ^
662[warn] |match may not be exhaustive.
663[warn] |
664[warn] |It would fail on pattern case: Parsers.this.~(Parsers.this.~(~(_, _), org.tresql.ast.Arr(_)), _)
665[warn] |---------------------------------------------------------------------------
666[warn] | Explanation (enabled by `-explain`)
667[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
668[warn] | There are several ways to make the match exhaustive:
669[warn] | - Add missing cases as shown in the warning
670[warn] | - If an extractor always return Some(...), write Some[X] for its return type
671[warn] | - Add a case _ => ... at the end to match all remaining cases
672[warn] ---------------------------------------------------------------------------
673[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:534:4
674[warn] 534 | case lop ~ "in" ~ "(" ~ rop => In(lop, rop, not = false)
675[warn] | ^
676[warn] | match may not be exhaustive.
677[warn] |
678[warn] | It would fail on pattern case: Parsers.this.~(~(_, _), _: List)
679[warn] |---------------------------------------------------------------------------
680[warn] | Explanation (enabled by `-explain`)
681[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
682[warn] | There are several ways to make the match exhaustive:
683[warn] | - Add missing cases as shown in the warning
684[warn] | - If an extractor always return Some(...), write Some[X] for its return type
685[warn] | - Add a case _ => ... at the end to match all remaining cases
686[warn] ---------------------------------------------------------------------------
687[info] [patched file /build/repo/core/src/main/scala/org/tresql/typed.scala]
688[info] [patched file /build/repo/core/src/main/scala/org/tresql/compiling/Compiler.scala]
689[info] [patched file /build/repo/core/src/main/scala/org/tresql/parsing/ExpTransformer.scala]
690[info] [patched file /build/repo/core/src/main/scala/org/tresql/Result.scala]
691[info] [patched file /build/repo/core/src/main/scala/org/tresql/Env.scala]
692[info] [patched file /build/repo/core/src/main/scala/org/tresql/resources/ResourceLoader.scala]
693[info] [patched file /build/repo/core/src/main/scala/org/tresql/TypeMapper.scala]
694[info] [patched file /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala]
695[info] [patched file /build/repo/core/src/main/scala/org/tresql/compiling/CompilerMetadata.scala]
696[info] [patched file /build/repo/core/src/main/scala/org/tresql/CoreTypes.scala]
697[info] [patched file /build/repo/core/src/main/scala/org/tresql/macro.scala]
698[info] [patched file /build/repo/core/src/main/scala/org/tresql/ORT.scala]
699[info] [patched file /build/repo/core/src/main/scala/org/tresql/ast/Ast.scala]
700[info] [patched file /build/repo/core/src/main/scala/org/tresql/dialects.scala]
701[info] [patched file /build/repo/core/src/main/scala/org/tresql/Query.scala]
702[info] [patched file /build/repo/core/src/main/scala/org/tresql/metadata/JDBCMetadata.scala]
703[info] [patched file /build/repo/core/src/main/scala/org/tresql/parsing/MemParsers.scala]
704[info] [patched file /build/repo/core/src/main/scala/org/tresql/Scala3Macro.scala]
705[info] [patched file /build/repo/core/src/main/scala/org/tresql/Metadata.scala]
706[info] [patched file /build/repo/core/src/main/scala/org/tresql/java_api/Query.scala]
707[info] [patched file /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala]
708[warn] there were 55 deprecation warnings; re-run with -deprecation for details
709[warn] 85 warnings found
710[info] done compiling
711[info] compiling 28 Scala sources and 1 Java source to /build/repo/core/target/scala-3.7.4/classes ...
712[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:68:64
713[warn] 68 | def qualifiedIdent: MemParser[Ident] = rep1sep(ident, ".") ^^ Ident named "qualified-ident"
714[warn] | ^^^^^
715[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Ident.apply` explicitly.
716[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:69:73
717[warn] 69 | def qualifiedIdentAll: MemParser[IdentAll] = qualifiedIdent <~ ".*" ^^ IdentAll named "ident-all"
718[warn] | ^^^^^^^^
719[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.IdentAll.apply` explicitly.
720[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:94:56
721[warn] 94 | def braces: MemParser[Braces] = "(" ~> expr <~ ")" ^^ Braces named "braces"
722[warn] | ^^^^^^
723[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Braces.apply` explicitly.
724[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:135:65
725[warn] 135 | def array: MemParser[Arr] = "[" ~> repsep(expr, ",") <~ "]" ^^ Arr named "array"
726[warn] | ^^^
727[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Arr.apply` explicitly.
728[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:148:51
729[warn] 148 | def filters: MemParser[Filters] = rep(filter) ^^ Filters named "filters"
730[warn] | ^^^^^^^
731[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Filters.apply` explicitly.
732[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:270:81
733[warn] 270 | def order: MemParser[Ord] = ("#" ~ "(") ~> rep1sep(orderMember, ",") <~ ")" ^^ Ord named "order"
734[warn] | ^^^
735[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Ord.apply` explicitly.
736[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:343:57
737[warn] 343 | def values: MemParser[Values] = rep1sep(array, ",") ^^ Values named "values"
738[warn] | ^^^^^^
739[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Values.apply` explicitly.
740[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:357:94
741[warn] 357 | opt(opt(ident|NULL) <~ ":") ^^ (_.map(_.map { case Null => null case s: String => s }.map(Db).getOrElse(Db("")))) named "opt-db"
742[warn] | ^^
743[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Db.apply` explicitly.
744[warn] -- [E121] Pattern Match Warning: /build/repo/core/src/main/scala/org/tresql/Env.scala:427:59
745[warn] 427 | protected def defaultDialect: CoreTypes.Dialect = { case e => e.defaultSQL }
746[warn] | ^
747[warn] |Unreachable case except for null (if this is intentional, consider writing case null => instead).
748[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/ORT.scala:146:19
749[warn] 146 | case VarExpr(n, Nil, opt, allowArrBind) => VarExpr("keys", List(i.toString, n), opt, allowArrBind)
750[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
751[warn] | Unreachable case
752[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/ORT.scala:458:49
753[warn] 458 | if (keyVals.nonEmpty) keyVals.partition(_._1.isInstanceOf[RefKeyCol]) match {
754[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
755[warn] | match may not be exhaustive.
756[warn] |
757[warn] | It would fail on pattern case: (_, _)
758[warn] |---------------------------------------------------------------------------
759[warn] | Explanation (enabled by `-explain`)
760[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
761[warn] | There are several ways to make the match exhaustive:
762[warn] | - Add missing cases as shown in the warning
763[warn] | - If an extractor always return Some(...), write Some[X] for its return type
764[warn] | - Add a case _ => ... at the end to match all remaining cases
765[warn] ---------------------------------------------------------------------------
766[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/ORT.scala:600:6
767[warn] 600 | ctx.view.properties.flatMap {
768[warn] | ^
769[warn] | match may not be exhaustive.
770[warn] |
771[warn] | It would fail on pattern case: (_, _)
772[warn] 601 | case OrtMetadata.Property(col, _, _, _, _) if refsAndPk.exists(_.name == col) => Nil
773[warn] 602 | case OrtMetadata.Property(col, KeyValue(_, TresqlValue(valueTresql), updValOpt), _, forInsert, forUpdate) =>
774[warn] 603 | List(ColVal(table.colOption(col).map(_.name).orNull,
775[warn] 604 | valueTresql, forInsert, forUpdate, updValOpt.map(_.tresql)))
776[warn] 605 | case OrtMetadata.Property(col, KeyValue(_, AutoValue(valueTresql), updValOpt), _, forInsert, forUpdate) =>
777[warn] 606 | List(ColVal(table.colOption(col).map(_.name).orNull,
778[warn] 607 | autoValue(table, col, valueTresql, false), forInsert, forUpdate,
779[warn] 608 | updValOpt.map {
780[warn] 609 | case AutoValue(v) => autoValue(table, col, v, true)
781[warn] 610 | case v => v.tresql
782[warn] 611 | }))
783[warn] 612 | case OrtMetadata.Property(col, TresqlValue(tresql), _, forInsert, forUpdate) =>
784[warn] 613 | val (t, c) = col.split("\\.") match {
785[warn] 614 | case Array(a, b) => (a, b)
786[warn] 615 | case Array(a) => (table.name, a)
787[warn] 616 | case a => (a.dropRight(1).mkString("."), a.last)
788[warn] 617 | }
789[warn] 618 | if (t == table.name)
790[warn] 619 | List(ColVal(table.colOption(c).map(_.name).orNull, tresql, forInsert, forUpdate))
791[warn] 620 | else Nil
792[warn] 621 | case OrtMetadata.Property(prop, ViewValue(v, so), optional, forInsert, forUpdate) =>
793[warn] 622 | if (children_save_tresql != null) {
794[warn] 623 | val isOptional = optional || hasOptionalFields(v)
795[warn] 624 | val chtresql = children_save_tresql(prop, v,
796[warn] 625 | ParentRef(table.name, ctx.refToParent) :: ctx.parents, so, isOptional, forInsert, forUpdate)
797[warn] 626 | val chtresql_alias = Option(prop).map(p => s" '$p'").mkString
798[warn] 627 | List(ColVal(Option(chtresql).map(_ + chtresql_alias).orNull, null, forInsert, forUpdate))
799[warn] 628 | } else Nil
800[warn] 629 | case OrtMetadata.Property(refColName, LookupViewValue(propName, lookupView), optional, forInsert, forUpdate) =>
801[warn] 630 | (for {
802[warn] 631 | // check whether refColName exists in table, only then generate lookup tresql
803[warn] 632 | _ <- table.colOption(refColName)
804[warn] 633 | lookupTableName <- lookupView.saveTo.headOption.map(_.table)
805[warn] 634 | lookupTable <- tresqlMetadata(lookupView.db).tableOption(lookupTableName)
806[warn] 635 | } yield {
807[warn] 636 | def pkCol(t: metadata.Table) = t.key.cols match { case List(c) => c case _ => null }
808[warn] 637 | def saveTo(v: View, tn: String) = v.saveTo.find(_.table == tn)
809[warn] 638 | def idSelExpr(v: View, t: metadata.Table) = {
810[warn] 639 | def key_val(v: View, tn: String) = {
811[warn] 640 | val key = saveTo(v, tn).map(_.key.toSet).getOrElse(Set())
812[warn] 641 | v.properties.flatMap {
813[warn] 642 | case OrtMetadata.Property(col, TresqlValue(v), _, _, _) if key.contains(col) =>
814[warn] 643 | List((col, v))
815[warn] 644 | case OrtMetadata.Property(col, KeyValue(where, _, _), _, _, _) if key.contains(col) =>
816[warn] 645 | List((col, where))
817[warn] 646 | case _ => Nil
818[warn] 647 | }
819[warn] 648 | }
820[warn] 649 | val pk_col = pkCol(t)
821[warn] 650 | if (pk_col != null) {
822[warn] 651 | val where = s"${key_val(v, t.name).map { case (k, v) => s"$k = $v"}.mkString(" & ") }"
823[warn] 652 | if (where.nonEmpty) s"(${t.name}[$where]{$pk_col})"
824[warn] 653 | else "null"
825[warn] 654 | } else "null"
826[warn] 655 | }
827[warn] 656 | def idProp(v: View, t: metadata.Table) = {
828[warn] 657 | Option(pkCol(t)).flatMap { pk =>
829[warn] 658 | v.properties.collectFirst {
830[warn] 659 | case OrtMetadata.Property(`pk`, TresqlValue(v), _, _, _) =>
831[warn] 660 | if (v.startsWith(":")) v.substring(1) else pk
832[warn] 661 | case OrtMetadata.Property(`pk`, KeyValue(_, ov, _), _, _, _) =>
833[warn] 662 | val v = ov.tresql
834[warn] 663 | if (v.startsWith(":")) v.substring(1) else pk
835[warn] 664 | }
836[warn] 665 | }.orNull
837[warn] 666 | }
838[warn] 667 | val idPropName = idProp(lookupView, lookupTable)
839[warn] 668 | val update = save_tresql(null, lookupView, Nil,
840[warn] 669 | SaveOptions(true, false, true), false, true, true, update_tresql)
841[warn] 670 | val insert = save_tresql(null, lookupView, Nil,
842[warn] 671 | SaveOptions(true, false, true), false ,true, true, insert_tresql)
843[warn] 672 | val lookupUpsert = {
844[warn] 673 | val tr = s"|_upsert($update, $insert)"
845[warn] 674 | if (hasOptionalFields(lookupView)) s"_deferred_build($tr)"
846[warn] 675 | else tr
847[warn] 676 | }
848[warn] 677 | val lookupIdSel = idSelExpr(lookupView, lookupTable)
849[warn] 678 | val (lookupTresql, refColTresql) = {
850[warn] 679 | val tr = s":$refColName = |_lookup_upsert('$propName', ${
851[warn] 680 | if (idPropName == null) "null" else s"'$idPropName'"}, $lookupUpsert, $lookupIdSel)"
852[warn] 681 | if (optional)
853[warn] 682 | (s"_deferred_build(if_defined(:$propName?, $tr))", s"if_defined(:$propName?, :$refColName)")
854[warn] 683 | else
855[warn] 684 | (tr, s":$refColName")
856[warn] 685 | }
857[warn] 686 | // TODO lookupTresql will be executed always regardless of forInsert, forUpdate settings
858[warn] 687 | List(lookupTresql, ColVal(refColName, refColTresql, forInsert, forUpdate))
859[warn] 688 | }).getOrElse(Nil)
860[warn] 689 | case OrtMetadata.Property(col, AutoValue(tresql), _, forInsert, forUpdate) =>
861[warn] 690 | List(ColVal(table.colOption(col).map(_.name).orNull,
862[warn] 691 | autoValue(table, col, tresql, false), forInsert, forUpdate))
863[warn] 692 | }.partition(_.isInstanceOf[String]) match {
864[warn] |---------------------------------------------------------------------------
865[warn] | Explanation (enabled by `-explain`)
866[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
867[warn] | There are several ways to make the match exhaustive:
868[warn] | - Add missing cases as shown in the warning
869[warn] | - If an extractor always return Some(...), write Some[X] for its return type
870[warn] | - Add a case _ => ... at the end to match all remaining cases
871[warn] ---------------------------------------------------------------------------
872[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:679:66
873[warn] 679 | if (filter != null) filter foreach (transform (_, {case id: BaseVarExpr => id(); id}))
874[warn] | ^^^^^^^^^^^^^^^
875[warn] | Unreachable case
876[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1156:21
877[warn] 1156 | case ie @ IdentExpr(id1 :: id2 :: rest) =>
878[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
879[warn] | Unreachable case
880[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1237:13
881[warn] 1237 | case ArrExpr(List(b @ ConstExpr(true | false))) => b
882[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
883[warn] | Unreachable case
884[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1238:13
885[warn] 1238 | case a @ ArrExpr(List(_: ConstExpr | _: VarExpr | _: ResExpr)) => BinExpr("=",
886[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
887[warn] | Unreachable case
888[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1242:13
889[warn] 1242 | case a: ArrExpr if a.elements.size > 1 => InExpr(IdentExpr(List(pkTable.aliasOrName,
890[warn] | ^^^^^^^^^^
891[warn] | Unreachable case
892[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1244:13
893[warn] 1244 | case ArrExpr(List(f)) => f
894[warn] | ^^^^^^^^^^^^^^^^
895[warn] | Unreachable case
896[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1271:15
897[warn] 1271 | case v: QueryBuilder#BaseVarExpr =>
898[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
899[warn] | Unreachable case
900[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:9:11
901[warn] 9 | case e if e.builder != this => e.builder.transform(e, f)
902[warn] | ^
903[warn] | Unreachable case
904[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:11:11
905[warn] 11 | case ArrExpr(e) => ArrExpr(e map cf)
906[warn] | ^^^^^^^^^^
907[warn] | Unreachable case
908[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:12:11
909[warn] 12 | case BinExpr(o, lop, rop) => BinExpr(o, cf(lop), cf(rop))
910[warn] | ^^^^^^^^^^^^^^^^^^^^
911[warn] | Unreachable case
912[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:13:11
913[warn] 13 | case BracesExpr(b) => BracesExpr(cf(b))
914[warn] | ^^^^^^^^^^^^^
915[warn] | Unreachable case
916[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:14:11
917[warn] 14 | case ColExpr(col, alias, sepQuery, hidden) => ColExpr(cf(col), alias, sepQuery, hidden)
918[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
919[warn] | Unreachable case
920[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:15:11
921[warn] 15 | case cols: ColsExpr => cols.copy(cols = (cols.cols map cf).asInstanceOf[List[ColExpr]])
922[warn] | ^^^^^^^^^^^^^^
923[warn] | Unreachable case
924[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:16:11
925[warn] 16 | case FunExpr(n, p, d, o, f) => FunExpr(n, p map cf, d, o map cf, f map cf)
926[warn] | ^^^^^^^^^^^^^^^^^^^^^^
927[warn] | Unreachable case
928[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:17:11
929[warn] 17 | case FunAsTableExpr(e, cd, ord) => FunAsTableExpr(cf(e), cd.map(cf(_).asInstanceOf[TableColDefsExpr]), ord)
930[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^
931[warn] | Unreachable case
932[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:18:11
933[warn] 18 | case TableColDefsExpr(tcd) => TableColDefsExpr(tcd.map(cf(_).asInstanceOf[TableColDefExpr]))
934[warn] | ^^^^^^^^^^^^^^^^^^^^^
935[warn] | Unreachable case
936[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:19:11
937[warn] 19 | case Group(e, h) => Group(e map cf, cf(h))
938[warn] | ^^^^^^^^^^^
939[warn] | Unreachable case
940[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:20:11
941[warn] 20 | case HiddenColRefExpr(e, typ) => HiddenColRefExpr(cf(e), typ)
942[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^
943[warn] | Unreachable case
944[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:21:11
945[warn] 21 | case InExpr(lop, rop, not) => InExpr(cf(lop), rop map cf, not)
946[warn] | ^^^^^^^^^^^^^^^^^^^^^
947[warn] | Unreachable case
948[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:22:11
949[warn] 22 | case wi: WithInsertExpr => new WithInsertExpr(
950[warn] | ^^^^^^^^^^^^^^^^^^
951[warn] | Unreachable case
952[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:24:11
953[warn] 24 | case i: InsertExpr => new InsertExpr(cf(i.table).asInstanceOf[IdentExpr], i.alias,
954[warn] | ^^^^^^^^^^^^^
955[warn] | Unreachable case
956[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:27:11
957[warn] 27 | case Order(exprs) => Order(exprs map (e => (cf(e._1), cf(e._2), cf(e._3))))
958[warn] | ^^^^^^^^^^^^
959[warn] | Unreachable case
960[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:28:11
961[warn] 28 | case SelectExpr(tables, filter, cols, distinct, group, order,
962[warn] | ^
963[warn] | Unreachable case
964[warn] 29 | offset, limit, aliases, parentJoin) =>
965[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:33:11
966[warn] 33 | case Table(texpr, alias, join, outerJoin, nullable, schema) =>
967[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
968[warn] | Unreachable case
969[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:35:11
970[warn] 35 | case TableJoin(default, expr, noJoin, defaultJoinCols) =>
971[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
972[warn] | Unreachable case
973[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:37:11
974[warn] 37 | case WithTableExpr(n, c, r, q) => WithTableExpr(n, c, r, cf(q))
975[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^
976[warn] | Unreachable case
977[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:38:11
978[warn] 38 | case WithSelectExpr(tables, query) =>
979[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
980[warn] | Unreachable case
981[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:40:11
982[warn] 40 | case WithBinExpr(tables, query) =>
983[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^
984[warn] | Unreachable case
985[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:42:11
986[warn] 42 | case UnExpr(o, op) => UnExpr(o, cf(op))
987[warn] | ^^^^^^^^^^^^^
988[warn] | Unreachable case
989[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:43:11
990[warn] 43 | case CastExpr(e, t) => CastExpr(cf(e), t)
991[warn] | ^^^^^^^^^^^^^^
992[warn] | Unreachable case
993[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:44:11
994[warn] 44 | case u: UpdateExpr => new UpdateExpr(cf(u.table).asInstanceOf[IdentExpr], u.alias,
995[warn] | ^^^^^^^^^^^^^
996[warn] | Unreachable case
997[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:46:11
998[warn] 46 | case d: DeleteExpr => //put delete at the end since it is superclass of insert and update
999[warn] | ^^^^^^^^^^^^^
1000[warn] | Unreachable case
1001[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:49:11
1002[warn] 49 | case ValuesExpr(vals) => ValuesExpr(vals map cf)
1003[warn] | ^^^^^^^^^^^^^^^^
1004[warn] | Unreachable case
1005[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:50:11
1006[warn] 50 | case vfs: ValuesFromSelectExpr => vfs.copy(select = cf(vfs.select).asInstanceOf[SelectExpr])
1007[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^
1008[warn] | Unreachable case
1009[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:51:11
1010[warn] 51 | case InsertConflictExpr(ct, cfl, c, v, f, a, cd) =>
1011[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1012[warn] | Unreachable case
1013[warn] -- [E121] Pattern Match Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:53:11
1014[warn] 53 | case e => e
1015[warn] | ^
1016[warn] |Unreachable case except for null (if this is intentional, consider writing case null => instead).
1017[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/compiling/Compiler.scala:584:8
1018[warn] 584 | dml match {
1019[warn] | ^^^
1020[warn] |match may not be exhaustive.
1021[warn] |
1022[warn] |It would fail on pattern case: org.tresql.ast.CompilerAst.WithDMLDef(_, _)
1023[warn] |---------------------------------------------------------------------------
1024[warn] | Explanation (enabled by `-explain`)
1025[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1026[warn] | There are several ways to make the match exhaustive:
1027[warn] | - Add missing cases as shown in the warning
1028[warn] | - If an extractor always return Some(...), write Some[X] for its return type
1029[warn] | - Add a case _ => ... at the end to match all remaining cases
1030[warn] ---------------------------------------------------------------------------
1031[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:22:9
1032[warn] 22 | case v: QueryBuilder#VarExpr => v.defaultSQL match {
1033[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1034[warn] | Unreachable case
1035[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:31:9
1036[warn] 31 | case r: QueryBuilder#ResExpr => r.defaultSQL + s"/*${r.name}*/"
1037[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1038[warn] | Unreachable case
1039[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:32:9
1040[warn] 32 | case id: QueryBuilder#IdExpr => id.defaultSQL + s"/*#${id.seqName}*/"
1041[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1042[warn] | Unreachable case
1043[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:33:9
1044[warn] 33 | case idref: QueryBuilder#IdRefExpr => idref.defaultSQL + s"/*:#${idref.seqName}*/"
1045[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1046[warn] | Unreachable case
1047[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:34:9
1048[warn] 34 | case idrefid: ORT#IdRefIdExpr => idrefid.defaultSQL + s"/*:#${idrefid.idRefSeq}#${idrefid.idSeq}*/"
1049[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^
1050[warn] | Unreachable case
1051[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:38:9
1052[warn] 38 | case _: QueryBuilder#SQLVendorExpr => vendor
1053[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1054[warn] | Unreachable case
1055[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:39:9
1056[warn] 39 | case f: QueryBuilder#FunExpr
1057[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1058[warn] | Unreachable case
1059[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:46:9
1060[warn] 46 | case f: QueryBuilder#FunExpr if f.name == "lower" && f.params.size == 1 => "lcase(" + f.params.head.sql + ")"
1061[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1062[warn] | Unreachable case
1063[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:47:9
1064[warn] 47 | case f: QueryBuilder#FunExpr if f.name == "translate" && f.params.size == 3 =>
1065[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1066[warn] | Unreachable case
1067[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:51:9
1068[warn] 51 | case f: QueryBuilder#FunExpr if f.name == "nextval" && f.params.size == 1 =>
1069[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1070[warn] | Unreachable case
1071[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:55:9
1072[warn] 55 | case c: QueryBuilder#CastExpr => s"cast(${c.exp.sql} as ${c.builder.env.metadata.to_sql_type("hsqldb", c.typ) match {
1073[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^
1074[warn] | Unreachable case
1075[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:60:9
1076[warn] 60 | case c: QueryBuilder#TableColDefExpr => c.name
1077[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1078[warn] | Unreachable case
1079[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:61:9
1080[warn] 61 | case b: QueryBuilder#BinExpr if b.op == "`~`" => s"regexp_matches(${b.lop.sql}, ${b.rop.sql})"
1081[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1082[warn] | Unreachable case
1083[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:62:9
1084[warn] 62 | case s: QueryBuilder#SelectExpr if s.tables.size == 1 &&
1085[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^
1086[warn] | Unreachable case
1087[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:69:9
1088[warn] 69 | case i: QueryBuilder#InsertExpr if i.insertConflict != null =>
1089[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^
1090[warn] | Unreachable case
1091[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:130:10
1092[warn] 130 | e match {
1093[warn] | ^
1094[warn] |match may not be exhaustive.
1095[warn] |
1096[warn] |It would fail on pattern case: org.tresql.QueryBuilder#SelectExpr(_, _, _, _, _, _, _, _, _, _)
1097[warn] |---------------------------------------------------------------------------
1098[warn] | Explanation (enabled by `-explain`)
1099[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1100[warn] | There are several ways to make the match exhaustive:
1101[warn] | - Add missing cases as shown in the warning
1102[warn] | - If an extractor always return Some(...), write Some[X] for its return type
1103[warn] | - Add a case _ => ... at the end to match all remaining cases
1104[warn] ---------------------------------------------------------------------------
1105[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:100:6
1106[warn] 100 | e match {
1107[warn] | ^
1108[warn] |match may not be exhaustive.
1109[warn] |
1110[warn] |It would fail on pattern case: _: org.tresql.QueryBuilder#PrimitiveExpr
1111[warn] |---------------------------------------------------------------------------
1112[warn] | Explanation (enabled by `-explain`)
1113[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1114[warn] | There are several ways to make the match exhaustive:
1115[warn] | - Add missing cases as shown in the warning
1116[warn] | - If an extractor always return Some(...), write Some[X] for its return type
1117[warn] | - Add a case _ => ... at the end to match all remaining cases
1118[warn] ---------------------------------------------------------------------------
1119[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:159:47
1120[warn] 159 | val colNames = i.cols.collect { case b.ColExpr(b.IdentExpr(name), _, _, _) => name.last } toSet
1121[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1122[warn] | Unreachable case
1123[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:141:9
1124[warn] 141 | case c: QueryBuilder#ColExpr if c.alias != null => Option(c.col).map(_.sql).getOrElse("null") + " as " + c.alias
1125[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1126[warn] | Unreachable case
1127[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:142:9
1128[warn] 142 | case c: QueryBuilder#CastExpr => c.exp.sql + "::" + c.builder.env.metadata.to_sql_type("postgresql", c.typ)
1129[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^
1130[warn] | Unreachable case
1131[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:143:9
1132[warn] 143 | case c: QueryBuilder#TableColDefExpr => c.name +
1133[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1134[warn] | Unreachable case
1135[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:145:9
1136[warn] 145 | case f: QueryBuilder#FunExpr if f.name == "decode" && f.params.size > 2 =>
1137[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1138[warn] | Unreachable case
1139[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:150:9
1140[warn] 150 | case i: QueryBuilder#InsertExpr =>
1141[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^
1142[warn] | Unreachable case
1143[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/macro.scala:191:13
1144[warn] 191 | case b.IdentExpr(n) => n.mkString(".")
1145[warn] | ^^^^^^^^^^^^^^
1146[warn] | Unreachable case
1147[warn] -- [E121] Pattern Match Warning: /build/repo/core/src/main/scala/org/tresql/macro.scala:192:13
1148[warn] 192 | case x => sys.error(s"Unrecognized key type - $x")
1149[warn] | ^
1150[warn] |Unreachable case except for null (if this is intentional, consider writing case null => instead).
1151[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:62:9
1152[warn] 62 | case i: Int => IntConst(i)
1153[warn] | ^^^^^^
1154[warn] | Unreachable case
1155[warn] -- [E121] Pattern Match Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:63:9
1156[warn] 63 | case x => sys.error(s"Unexpected const value: '$x'. Expected `String` or `Boolean` or `BigDecimal` or `Int`")
1157[warn] | ^
1158[warn] |Unreachable case except for null (if this is intentional, consider writing case null => instead).
1159[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:73:4
1160[warn] 73 | case "?" => Variable("?", Nil, opt = false)
1161[warn] | ^
1162[warn] | match may not be exhaustive.
1163[warn] |
1164[warn] | It would fail on pattern case: Parsers.this.~(Nil, _), _: String
1165[warn] |----------------------------------------------------------------------------
1166[warn] | Explanation (enabled by `-explain`)
1167[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1168[warn] | There are several ways to make the match exhaustive:
1169[warn] | - Add missing cases as shown in the warning
1170[warn] | - If an extractor always return Some(...), write Some[X] for its return type
1171[warn] | - Add a case _ => ... at the end to match all remaining cases
1172[warn] ----------------------------------------------------------------------------
1173[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:140:6
1174[warn] 140 | case ";" => NoJoin
1175[warn] | ^
1176[warn] | match may not be exhaustive.
1177[warn] |
1178[warn] | It would fail on pattern case: Parsers.this.~(_, _), _: String
1179[warn] |---------------------------------------------------------------------------
1180[warn] | Explanation (enabled by `-explain`)
1181[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1182[warn] | There are several ways to make the match exhaustive:
1183[warn] | - Add missing cases as shown in the warning
1184[warn] | - If an extractor always return Some(...), write Some[X] for its return type
1185[warn] | - Add a case _ => ... at the end to match all remaining cases
1186[warn] ---------------------------------------------------------------------------
1187[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:285:6
1188[warn] 285 | case Null ~ Filters(Nil) ~ None ~ None ~ None => Null //null literal
1189[warn] | ^
1190[warn] |match may not be exhaustive.
1191[warn] |
1192[warn] |It would fail on pattern case: Parsers.this.~(~(_, _), org.tresql.ast.Filters(_)), Parsers.this.~(org.tresql.ast.Cols(_, _), None), Parsers.this.~(org.tresql.ast.Cols(_, _), Some(_))
1193[warn] |---------------------------------------------------------------------------
1194[warn] | Explanation (enabled by `-explain`)
1195[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1196[warn] | There are several ways to make the match exhaustive:
1197[warn] | - Add missing cases as shown in the warning
1198[warn] | - If an extractor always return Some(...), write Some[X] for its return type
1199[warn] | - Add a case _ => ... at the end to match all remaining cases
1200[warn] ---------------------------------------------------------------------------
1201[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:333:6
1202[warn] 333 | case name ~ distinct ~ (cols: List[String@unchecked]) ~ exp => WithTable(name, cols, distinct.isEmpty, exp)
1203[warn] | ^
1204[warn] | match may not be exhaustive.
1205[warn] |
1206[warn] | It would fail on pattern case: Parsers.this.~(~(_, _), _)
1207[warn] |---------------------------------------------------------------------------
1208[warn] | Explanation (enabled by `-explain`)
1209[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1210[warn] | There are several ways to make the match exhaustive:
1211[warn] | - Add missing cases as shown in the warning
1212[warn] | - If an extractor always return Some(...), write Some[X] for its return type
1213[warn] | - Add a case _ => ... at the end to match all remaining cases
1214[warn] ---------------------------------------------------------------------------
1215[warn] -- [E121] Pattern Match Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:376:11
1216[warn] 376 | case x => sys.error(s"Unexpected insert parse result: $x")
1217[warn] | ^
1218[warn] |Unreachable case except for null (if this is intentional, consider writing case null => instead).
1219[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:413:8
1220[warn] 413 | case (db: Option[Db@unchecked]) ~ (t: Ident) ~ (a: Option[String@unchecked] ) ~ f ~ c ~ v ~ maybeCols =>
1221[warn] | ^
1222[warn] | match may not be exhaustive.
1223[warn] |
1224[warn] | It would fail on pattern case: Parsers.this.~(~(_, _), _)
1225[warn] |---------------------------------------------------------------------------
1226[warn] | Explanation (enabled by `-explain`)
1227[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1228[warn] | There are several ways to make the match exhaustive:
1229[warn] | - Add missing cases as shown in the warning
1230[warn] | - If an extractor always return Some(...), write Some[X] for its return type
1231[warn] | - Add a case _ => ... at the end to match all remaining cases
1232[warn] ---------------------------------------------------------------------------
1233[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:500:6
1234[warn] 500 | case (objs: List[Obj@unchecked]) ~ _ ~ _ => "Delete tables clause must as the first element have " +
1235[warn] | ^
1236[warn] |match may not be exhaustive.
1237[warn] |
1238[warn] |It would fail on pattern case: Parsers.this.~(Parsers.this.~(~(_, _), org.tresql.ast.Arr(_)), _)
1239[warn] |---------------------------------------------------------------------------
1240[warn] | Explanation (enabled by `-explain`)
1241[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1242[warn] | There are several ways to make the match exhaustive:
1243[warn] | - Add missing cases as shown in the warning
1244[warn] | - If an extractor always return Some(...), write Some[X] for its return type
1245[warn] | - Add a case _ => ... at the end to match all remaining cases
1246[warn] ---------------------------------------------------------------------------
1247[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:534:4
1248[warn] 534 | case lop ~ "in" ~ "(" ~ rop => In(lop, rop, not = false)
1249[warn] | ^
1250[warn] | match may not be exhaustive.
1251[warn] |
1252[warn] | It would fail on pattern case: Parsers.this.~(~(_, _), _: List)
1253[warn] |---------------------------------------------------------------------------
1254[warn] | Explanation (enabled by `-explain`)
1255[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1256[warn] | There are several ways to make the match exhaustive:
1257[warn] | - Add missing cases as shown in the warning
1258[warn] | - If an extractor always return Some(...), write Some[X] for its return type
1259[warn] | - Add a case _ => ... at the end to match all remaining cases
1260[warn] ---------------------------------------------------------------------------
1261[warn] there were 55 deprecation warnings; re-run with -deprecation for details
1262[warn] 85 warnings found
1263[info] done compiling
1264[info] compiling 1 Scala source to /build/repo/core/target/scala-3.7.4/test-classes ...
1265[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/test/scala/Macros.scala:67:11
1266[warn] 67 | case s@b.SelectExpr(
1267[warn] | ^
1268[warn] | Unreachable case
1269[warn] 68 | b.Table(_, _,
1270[warn] 69 | b.TableJoin(_, b.ArrExpr(List(b.FunExpr("build_values_cursor", _, _, _, _))), _, _)
1271[warn] 70 | , _, _, _
1272[warn] 71 | ) :: _,
1273[warn] 72 | _, _, _, _, _, _, _, _, _
1274[warn] 73 | ) =>
1275[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/test/scala/Macros.scala:93:11
1276[warn] 93 | case b.WithSelectExpr(tables, q) =>
1277[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
1278[warn] | Unreachable case
1279[info] [patched file /build/repo/core/src/test/scala/Macros.scala]
1280[warn] two warnings found
1281[info] done compiling
1282[info] compiling 3 Scala sources and 1 Java source to /build/repo/target/scala-3.7.4/test-classes ...
1283[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2720:4
1284[warn] 2720 | assertResult(2.34)(tresql"round(2.33555, 2)")
1285[warn] | ^
1286[warn] | Line is indented too far to the left, or a `}` is missing
1287[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2721:4
1288[warn] 2721 | assertResult((2.34, 3, 14))(tresql"round(2.33555, 2), round(3.1,0), 5 + 9")
1289[warn] | ^
1290[warn] | Line is indented too far to the left, or a `}` is missing
1291[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2722:4
1292[warn] 2722 | assertResult(7.3)(tresql"1 + 4 - 0 + round(2.3, 5)")
1293[warn] | ^
1294[warn] | Line is indented too far to the left, or a `}` is missing
1295[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2723:4
1296[warn] 2723 | assertResult((3,3,2,(2,2))) {
1297[warn] | ^
1298[warn] | Line is indented too far to the left, or a `}` is missing
1299[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2730:4
1300[warn] 2730 | assertResult((true,false)) {
1301[warn] | ^
1302[warn] | Line is indented too far to the left, or a `}` is missing
1303[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2734:4
1304[warn] 2734 | assertResult((0,"null",'x',4,false,true)){
1305[warn] | ^
1306[warn] | Line is indented too far to the left, or a `}` is missing
1307[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2741:4
1308[warn] 2741 | assertResult(true)(tresql"1" + tresql"2 + 3" == tresql"6")
1309[warn] | ^
1310[warn] | Line is indented too far to the left, or a `}` is missing
1311[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2742:4
1312[warn] 2742 | assertResult(true) {
1313[warn] | ^
1314[warn] | Line is indented too far to the left, or a `}` is missing
1315[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2746:4
1316[warn] 2746 | assertResult(java.sql.Timestamp.valueOf("2009-02-22 00:00:00.0"))(
1317[warn] | ^
1318[warn] | Line is indented too far to the left, or a `}` is missing
1319[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2749:4
1320[warn] 2749 | assertResult(6000)(tresql"1000 + (emp[ename = 'KING']{sal})")
1321[warn] | ^
1322[warn] | Line is indented too far to the left, or a `}` is missing
1323[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2751:4
1324[warn] 2751 | assertResult("ACCOUNTING")(tresql"macro_interpolator_test4(dept, dname)".map(_.dname).toList.head)
1325[warn] | ^
1326[warn] | Line is indented too far to the left, or a `}` is missing
1327[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2753:4
1328[warn] 2753 | assertResult(List(("RESEARCH(8)",
1329[warn] | ^
1330[warn] | Line is indented too far to the left, or a `}` is missing
1331[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2765:4
1332[warn] 2765 | assertResult(List("ACCOUNTING")) {
1333[warn] | ^
1334[warn] | Line is indented too far to the left, or a `}` is missing
1335[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2771:4
1336[warn] 2771 | assertResult(List(3)) {
1337[warn] | ^
1338[warn] | Line is indented too far to the left, or a `}` is missing
1339[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2776:4
1340[warn] 2776 | assertResult(List("yes")) {
1341[warn] | ^
1342[warn] | Line is indented too far to the left, or a `}` is missing
1343[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2781:4
1344[warn] 2781 | assertResult((1, 2, 3)) {
1345[warn] | ^
1346[warn] | Line is indented too far to the left, or a `}` is missing
1347[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2784:4
1348[warn] 2784 | assertResult("abc") {
1349[warn] | ^
1350[warn] | Line is indented too far to the left, or a `}` is missing
1351[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2787:4
1352[warn] 2787 | assertResult((List(1, 2), List(3))) {
1353[warn] | ^
1354[warn] | Line is indented too far to the left, or a `}` is missing
1355[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2794:4
1356[warn] 2794 | val isScala3 = try { Class.forName("scala.Selectable"); true } catch { case ex: ClassNotFoundException => false }
1357[warn] | ^
1358[warn] | Line is indented too far to the left, or a `}` is missing
1359[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2795:4
1360[warn] 2795 | if (isScala3) {
1361[warn] | ^
1362[warn] | Line is indented too far to the left, or a `}` is missing
1363[warn] -- [E030] Match case Unreachable Warning: /build/repo/src/test/scala/org/tresql/test/QueryTest.scala:68:13
1364[warn] 68 | case f: QueryBuilder#FunExpr if f.name == "current_time" && f.params.isEmpty => "current_time"
1365[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1366[warn] | Unreachable case
1367[info] [patched file /build/repo/src/test/scala/org/tresql/test/QueryTest.scala]
1368[info] [patched file /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala]
1369[warn] there were 125 deprecation warnings; re-run with -deprecation for details
1370[warn] 22 warnings found
1371[warn] /build/repo/src/test/java/org/tresql/test/TresqlJavaApiTest.java:62:25: unchecked cast
1372[warn] required: java.util.List<java.util.Map<java.lang.String,java.lang.Object>>
1373[warn] found: java.lang.Object
1374[warn] r
1375[warn] .get("emps")
1376[warn] ^
1377[info] done compiling
1378[info] compiling 1 Scala source to /build/repo/core/target/scala-3.7.4/test-classes ...
1379[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/test/scala/Macros.scala:67:11
1380[warn] 67 | case s@b.SelectExpr(
1381[warn] | ^
1382[warn] | Unreachable case
1383[warn] 68 | b.Table(_, _,
1384[warn] 69 | b.TableJoin(_, b.ArrExpr(List(b.FunExpr("build_values_cursor", _, _, _, _))), _, _)
1385[warn] 70 | , _, _, _
1386[warn] 71 | ) :: _,
1387[warn] 72 | _, _, _, _, _, _, _, _, _
1388[warn] 73 | ) =>
1389[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/test/scala/Macros.scala:93:11
1390[warn] 93 | case b.WithSelectExpr(tables, q) =>
1391[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
1392[warn] | Unreachable case
1393[warn] two warnings found
1394[info] done compiling
1395[info] compiling 2 Scala sources to /build/repo/target/scala-3.7.4/test-classes ...
1396[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2720:4
1397[warn] 2720 | assertResult(2.34)(tresql"round(2.33555, 2)")
1398[warn] | ^
1399[warn] | Line is indented too far to the left, or a `}` is missing
1400[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2721:4
1401[warn] 2721 | assertResult((2.34, 3, 14))(tresql"round(2.33555, 2), round(3.1,0), 5 + 9")
1402[warn] | ^
1403[warn] | Line is indented too far to the left, or a `}` is missing
1404[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2722:4
1405[warn] 2722 | assertResult(7.3)(tresql"1 + 4 - 0 + round(2.3, 5)")
1406[warn] | ^
1407[warn] | Line is indented too far to the left, or a `}` is missing
1408[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2723:4
1409[warn] 2723 | assertResult((3,3,2,(2,2))) {
1410[warn] | ^
1411[warn] | Line is indented too far to the left, or a `}` is missing
1412[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2730:4
1413[warn] 2730 | assertResult((true,false)) {
1414[warn] | ^
1415[warn] | Line is indented too far to the left, or a `}` is missing
1416[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2734:4
1417[warn] 2734 | assertResult((0,"null",'x',4,false,true)){
1418[warn] | ^
1419[warn] | Line is indented too far to the left, or a `}` is missing
1420[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2741:4
1421[warn] 2741 | assertResult(true)(tresql"1" + tresql"2 + 3" == tresql"6")
1422[warn] | ^
1423[warn] | Line is indented too far to the left, or a `}` is missing
1424[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2742:4
1425[warn] 2742 | assertResult(true) {
1426[warn] | ^
1427[warn] | Line is indented too far to the left, or a `}` is missing
1428[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2746:4
1429[warn] 2746 | assertResult(java.sql.Timestamp.valueOf("2009-02-22 00:00:00.0"))(
1430[warn] | ^
1431[warn] | Line is indented too far to the left, or a `}` is missing
1432[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2749:4
1433[warn] 2749 | assertResult(6000)(tresql"1000 + (emp[ename = 'KING']{sal})")
1434[warn] | ^
1435[warn] | Line is indented too far to the left, or a `}` is missing
1436[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2751:4
1437[warn] 2751 | assertResult("ACCOUNTING")(tresql"macro_interpolator_test4(dept, dname)".map(_.dname).toList.head)
1438[warn] | ^
1439[warn] | Line is indented too far to the left, or a `}` is missing
1440[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2753:4
1441[warn] 2753 | assertResult(List(("RESEARCH(8)",
1442[warn] | ^
1443[warn] | Line is indented too far to the left, or a `}` is missing
1444[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2765:4
1445[warn] 2765 | assertResult(List("ACCOUNTING")) {
1446[warn] | ^
1447[warn] | Line is indented too far to the left, or a `}` is missing
1448[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2771:4
1449[warn] 2771 | assertResult(List(3)) {
1450[warn] | ^
1451[warn] | Line is indented too far to the left, or a `}` is missing
1452[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2776:4
1453[warn] 2776 | assertResult(List("yes")) {
1454[warn] | ^
1455[warn] | Line is indented too far to the left, or a `}` is missing
1456[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2781:4
1457[warn] 2781 | assertResult((1, 2, 3)) {
1458[warn] | ^
1459[warn] | Line is indented too far to the left, or a `}` is missing
1460[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2784:4
1461[warn] 2784 | assertResult("abc") {
1462[warn] | ^
1463[warn] | Line is indented too far to the left, or a `}` is missing
1464[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2787:4
1465[warn] 2787 | assertResult((List(1, 2), List(3))) {
1466[warn] | ^
1467[warn] | Line is indented too far to the left, or a `}` is missing
1468[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2794:4
1469[warn] 2794 | val isScala3 = try { Class.forName("scala.Selectable"); true } catch { case ex: ClassNotFoundException => false }
1470[warn] | ^
1471[warn] | Line is indented too far to the left, or a `}` is missing
1472[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2795:4
1473[warn] 2795 | if (isScala3) {
1474[warn] | ^
1475[warn] | Line is indented too far to the left, or a `}` is missing
1476[warn] -- [E030] Match case Unreachable Warning: /build/repo/src/test/scala/org/tresql/test/QueryTest.scala:68:13
1477[warn] 68 | case f: QueryBuilder#FunExpr if f.name == "current_time" && f.params.isEmpty => "current_time"
1478[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1479[warn] | Unreachable case
1480[warn] there were 125 deprecation warnings; re-run with -deprecation for details
1481[warn] 22 warnings found
1482[info] done compiling
1483Starting build for ProjectRef(file:/build/repo/,core) (tresql-core)... [1/3]
1484Compile scalacOptions: -unchecked, -language:dynamics, -language:postfixOps, -language:implicitConversions, -language:reflectiveCalls, -language:existentials, -explain, -rewrite, -Wconf:msg=can be rewritten automatically under:s, -source:3.4-migration
1485Starting build for ProjectRef(file:/build/repo/,macros) (tresql-interpolator-macro)... [2/3]
1486Compile scalacOptions: -unchecked, -language:dynamics, -language:postfixOps, -language:implicitConversions, -language:reflectiveCalls, -language:existentials, -explain, -rewrite, -Wconf:msg=can be rewritten automatically under:s, -source:3.4-migration
1487
1488************************
1489Build summary:
1490[{
1491 "module": "tresql",
1492 "compile": {"status": "ok", "tookMs": 30939, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
1493 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
1494 "test-compile": {"status": "skipped", "tookMs": 0, "warnings": 0, "errors": 0},
1495 "test": {"status": "skipped", "tookMs": 0, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
1496 "publish": {"status": "skipped", "tookMs": 0},
1497 "metadata": {
1498 "crossScalaVersions": ["3.3.7", "2.13.17", "2.12.20"]
1499}
1500},{
1501 "module": "tresql-core",
1502 "compile": {"status": "ok", "tookMs": 77, "warnings": 84, "errors": 0, "sourceVersion": "3.4-migration"},
1503 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
1504 "test-compile": {"status": "ok", "tookMs": 95, "warnings": 2, "errors": 0, "sourceVersion": "3.4-migration"},
1505 "test": {"status": "skipped", "tookMs": 0, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
1506 "publish": {"status": "ok", "tookMs": 5},
1507 "metadata": {
1508 "crossScalaVersions": ["3.3.7", "2.13.17", "2.12.20"]
1509}
1510},{
1511 "module": "tresql-interpolator-macro",
1512 "compile": {"status": "ok", "tookMs": 128, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
1513 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
1514 "test-compile": {"status": "ok", "tookMs": 192, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
1515 "test": {"status": "skipped", "tookMs": 0, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
1516 "publish": {"status": "ok", "tookMs": 5},
1517 "metadata": {
1518 "crossScalaVersions": ["3.3.7", "2.13.17", "2.12.20"]
1519}
1520}]
1521************************
1522[success] Total time: 102 s (0:01:42.0), completed Dec 28, 2025, 5:00:46 PM
1523[0JChecking patch project/plugins.sbt...
1524Checking patch build.sbt...
1525Applied patch project/plugins.sbt cleanly.
1526Applied patch build.sbt cleanly.
1527Commit migration rewrites
1528Switched to a new branch 'opencb/migrate-source-3.4'
1529[opencb/migrate-source-3.4 39cfe653] Apply Scala compiler rewrites using -source:3.4-migration using Scala 3.7.4
1530 24 files changed, 248 insertions(+), 248 deletions(-)
1531----
1532Preparing build for 3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY
1533Scala binary version found: 3.8
1534Implicitly using source version 3.8
1535Scala binary version found: 3.8
1536Implicitly using source version 3.8
1537Would try to apply common scalacOption (best-effort, sbt/mill only):
1538Append: ,REQUIRE:-source:3.8
1539Remove: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
1540
1541Try apply source patch:
1542Path: build.sbt
1543Pattern: sys.error("Java 11 is required for this project
1544Replacement: println("Java 11 is required for this project
1545Successfully applied pattern 'sys.error("Java 11 is required for this project' in build.sbt
1546----
1547Starting build for 3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY
1548Execute tests: false
1549sbt project found:
1550No prepare script found for project mrumkovskis/tresql
1551##################################
1552Scala version: 3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY
1553Targets: org.tresql%tresql
1554Project projectConfig: {"projects":{"exclude":[],"overrides":{"tresql":{"tests":"disabled"}}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[{"path":"build.sbt","pattern":"sys.error(\"Java 11 is required for this project","replaceWith":"println(\"Java 11 is required for this project"}]}
1555##################################
1556Using extra scalacOptions: ,REQUIRE:-source:3.8
1557Filtering out scalacOptions: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
1558[sbt_options] declare -a sbt_options=()
1559[process_args] java_version = '21'
1560[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_21/rt.jar'
1561# Executing command line:
1562java
1563-Dfile.encoding=UTF-8
1564-Dcommunitybuild.scala=3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY
1565-Dcommunitybuild.project.dependencies.add=
1566-Xmx7G
1567-Xms4G
1568-Xss8M
1569-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
1570-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_21
1571-jar
1572/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
1573"setCrossScalaVersions 3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY"
1574"++3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY -v"
1575"mapScalacOptions ",REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s" ",-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
1576"set every credentials := Nil"
1577"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
1578"removeScalacOptionsStartingWith -P:wartremover"
1579
1580moduleMappings
1581"runBuild 3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY """{"projects":{"exclude":[],"overrides":{"tresql":{"tests":"disabled"}}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[{"path":"build.sbt","pattern":"sys.error(\"Java 11 is required for this project","replaceWith":"println(\"Java 11 is required for this project"}]}""" org.tresql%tresql"
1582
1583[info] welcome to sbt 1.11.7 (Eclipse Adoptium Java 21)
1584[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
1585[info] loading project definition from /build/repo/project
1586[info] loading settings for project tresql from build.sbt, version.sbt...
1587Java 11 is required for this project. Found 21 instead
1588[info] set current project to tresql (in build file:/build/repo/)
1589Execute setCrossScalaVersions: 3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY
1590OpenCB::Changing crossVersion 3.3.7 -> 3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY in it/crossScalaVersions
1591Java 11 is required for this project. Found 21 instead
1592OpenCB::Changing crossVersion 3.3.7 -> 3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY in core/crossScalaVersions
1593OpenCB::Changing crossVersion 3.3.7 -> 3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY in tresql/crossScalaVersions
1594OpenCB::Changing crossVersion 3.3.7 -> 3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY in macros/crossScalaVersions
1595[info] set current project to tresql (in build file:/build/repo/)
1596[info] Setting Scala version to 3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY on 4 projects.
1597[info] Switching Scala version on:
1598[info] * tresql (3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY, 2.13.17, 2.12.20)
1599[info] core (3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY, 2.13.17, 2.12.20)
1600[info] macros (3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY, 2.13.17, 2.12.20)
1601[info] it (3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY, 2.13.17, 2.12.20)
1602[info] Excluding projects:
1603[info] Reapplying settings...
1604Java 11 is required for this project. Found 21 instead
1605[info] set current project to tresql (in build file:/build/repo/)
1606Execute mapScalacOptions: ,REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
1607[info] Reapplying settings...
1608Java 11 is required for this project. Found 21 instead
1609[info] set current project to tresql (in build file:/build/repo/)
1610[info] Defining Global / credentials, core / credentials and 2 others.
1611[info] The new values will be used by allCredentials, core / allCredentials and 17 others.
1612[info] Run `last` for details.
1613[info] Reapplying settings...
1614Java 11 is required for this project. Found 21 instead
1615[info] set current project to tresql (in build file:/build/repo/)
1616Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
1617[info] Reapplying settings...
1618OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
1619
1620 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
1621 Did you mean allExcludeDependencies ?
1622 , retry without global scopes
1623[info] Reapplying settings...
1624Java 11 is required for this project. Found 21 instead
1625[info] set current project to tresql (in build file:/build/repo/)
1626Execute removeScalacOptionsStartingWith: -P:wartremover
1627[info] Reapplying settings...
1628Java 11 is required for this project. Found 21 instead
1629[info] set current project to tresql (in build file:/build/repo/)
1630[success] Total time: 0 s, completed Dec 28, 2025, 5:00:59 PM
1631Build config: {"projects":{"exclude":[],"overrides":{"tresql":{"tests":"disabled"}}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[{"path":"build.sbt","pattern":"sys.error(\"Java 11 is required for this project","replaceWith":"println(\"Java 11 is required for this project"}]}
1632Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map(tresql -> ProjectOverrides(Some(Disabled)))),CompileOnly,List()))
1633Starting build...
1634Projects: Set(tresql, core, macros)
1635Starting build for ProjectRef(file:/build/repo/,tresql) (tresql)... [0/3]
1636OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.8` in Scala 2.12.20 module Global
1637OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
1638OpenCB::Filter out '-feature', matches setting pattern '^-?-feature'
1639Compile scalacOptions: -unchecked, -language:dynamics, -language:postfixOps, -language:implicitConversions, -language:reflectiveCalls, -language:existentials, -explain, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
1640[info] compiling 28 Scala sources and 1 Java source to /build/repo/core/target/scala-3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY/classes ...
1641[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:68:64
1642[warn] 68 | def qualifiedIdent: MemParser[Ident] = rep1sep(ident, ".") ^^ Ident named "qualified-ident"
1643[warn] | ^^^^^
1644[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Ident.apply` explicitly.
1645[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:69:73
1646[warn] 69 | def qualifiedIdentAll: MemParser[IdentAll] = qualifiedIdent <~ ".*" ^^ IdentAll named "ident-all"
1647[warn] | ^^^^^^^^
1648[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.IdentAll.apply` explicitly.
1649[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:94:56
1650[warn] 94 | def braces: MemParser[Braces] = "(" ~> expr <~ ")" ^^ Braces named "braces"
1651[warn] | ^^^^^^
1652[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Braces.apply` explicitly.
1653[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:135:65
1654[warn] 135 | def array: MemParser[Arr] = "[" ~> repsep(expr, ",") <~ "]" ^^ Arr named "array"
1655[warn] | ^^^
1656[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Arr.apply` explicitly.
1657[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:148:51
1658[warn] 148 | def filters: MemParser[Filters] = rep(filter) ^^ Filters named "filters"
1659[warn] | ^^^^^^^
1660[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Filters.apply` explicitly.
1661[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:270:81
1662[warn] 270 | def order: MemParser[Ord] = ("#" ~ "(") ~> rep1sep(orderMember, ",") <~ ")" ^^ Ord named "order"
1663[warn] | ^^^
1664[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Ord.apply` explicitly.
1665[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:343:57
1666[warn] 343 | def values: MemParser[Values] = rep1sep(array, ",") ^^ Values named "values"
1667[warn] | ^^^^^^
1668[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Values.apply` explicitly.
1669[warn] -- Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:357:94
1670[warn] 357 | opt(opt(ident|NULL) <~ ":") ^^ (_.map(_.map { case Null => null case s: String => s }.map(Db).getOrElse(Db("")))) named "opt-db"
1671[warn] | ^^
1672[warn] |The method `apply` is inserted. The auto insertion will be deprecated, please write `org.tresql.ast.Db.apply` explicitly.
1673[warn] -- [E121] Pattern Match Warning: /build/repo/core/src/main/scala/org/tresql/Env.scala:427:59
1674[warn] 427 | protected def defaultDialect: CoreTypes.Dialect = { case e => e.defaultSQL }
1675[warn] | ^
1676[warn] |Unreachable case except for null (if this is intentional, consider writing case null => instead).
1677[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/ORT.scala:146:19
1678[warn] 146 | case VarExpr(n, Nil, opt, allowArrBind) => VarExpr("keys", List(i.toString, n), opt, allowArrBind)
1679[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1680[warn] | Unreachable case
1681[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/ORT.scala:458:49
1682[warn] 458 | if (keyVals.nonEmpty) keyVals.partition(_._1.isInstanceOf[RefKeyCol]) match {
1683[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1684[warn] | match may not be exhaustive.
1685[warn] |
1686[warn] | It would fail on pattern case: (_, _)
1687[warn] |---------------------------------------------------------------------------
1688[warn] | Explanation (enabled by `-explain`)
1689[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1690[warn] | There are several ways to make the match exhaustive:
1691[warn] | - Add missing cases as shown in the warning
1692[warn] | - If an extractor always return Some(...), write Some[X] for its return type
1693[warn] | - Add a case _ => ... at the end to match all remaining cases
1694[warn] ---------------------------------------------------------------------------
1695[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/ORT.scala:600:6
1696[warn] 600 | ctx.view.properties.flatMap {
1697[warn] | ^
1698[warn] | match may not be exhaustive.
1699[warn] |
1700[warn] | It would fail on pattern case: (_, _)
1701[warn] |
1702[warn] 601 | case OrtMetadata.Property(col, _, _, _, _) if refsAndPk.exists(_.name == col) => Nil
1703[warn] 602 |...
1704[warn] 692 | }.partition(_.isInstanceOf[String]) match {
1705[warn] |---------------------------------------------------------------------------
1706[warn] | Explanation (enabled by `-explain`)
1707[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1708[warn] | There are several ways to make the match exhaustive:
1709[warn] | - Add missing cases as shown in the warning
1710[warn] | - If an extractor always return Some(...), write Some[X] for its return type
1711[warn] | - Add a case _ => ... at the end to match all remaining cases
1712[warn] ---------------------------------------------------------------------------
1713[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:679:66
1714[warn] 679 | if (filter != null) filter foreach (transform (_, {case id: BaseVarExpr => id(); id}))
1715[warn] | ^^^^^^^^^^^^^^^
1716[warn] | Unreachable case
1717[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1156:21
1718[warn] 1156 | case ie @ IdentExpr(id1 :: id2 :: rest) =>
1719[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1720[warn] | Unreachable case
1721[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1237:13
1722[warn] 1237 | case ArrExpr(List(b @ ConstExpr(true | false))) => b
1723[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1724[warn] | Unreachable case
1725[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1238:13
1726[warn] 1238 | case a @ ArrExpr(List(_: ConstExpr | _: VarExpr | _: ResExpr)) => BinExpr("=",
1727[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1728[warn] | Unreachable case
1729[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1242:13
1730[warn] 1242 | case a: ArrExpr if a.elements.size > 1 => InExpr(IdentExpr(List(pkTable.aliasOrName,
1731[warn] | ^^^^^^^^^^
1732[warn] | Unreachable case
1733[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1244:13
1734[warn] 1244 | case ArrExpr(List(f)) => f
1735[warn] | ^^^^^^^^^^^^^^^^
1736[warn] | Unreachable case
1737[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/QueryBuilder.scala:1271:15
1738[warn] 1271 | case v: QueryBuilder#BaseVarExpr =>
1739[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
1740[warn] | Unreachable case
1741[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:9:11
1742[warn] 9 | case e if e.builder != this => e.builder.transform(e, f)
1743[warn] | ^
1744[warn] | Unreachable case
1745[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:11:11
1746[warn] 11 | case ArrExpr(e) => ArrExpr(e map cf)
1747[warn] | ^^^^^^^^^^
1748[warn] | Unreachable case
1749[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:12:11
1750[warn] 12 | case BinExpr(o, lop, rop) => BinExpr(o, cf(lop), cf(rop))
1751[warn] | ^^^^^^^^^^^^^^^^^^^^
1752[warn] | Unreachable case
1753[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:13:11
1754[warn] 13 | case BracesExpr(b) => BracesExpr(cf(b))
1755[warn] | ^^^^^^^^^^^^^
1756[warn] | Unreachable case
1757[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:14:11
1758[warn] 14 | case ColExpr(col, alias, sepQuery, hidden) => ColExpr(cf(col), alias, sepQuery, hidden)
1759[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1760[warn] | Unreachable case
1761[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:15:11
1762[warn] 15 | case cols: ColsExpr => cols.copy(cols = (cols.cols map cf).asInstanceOf[List[ColExpr]])
1763[warn] | ^^^^^^^^^^^^^^
1764[warn] | Unreachable case
1765[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:16:11
1766[warn] 16 | case FunExpr(n, p, d, o, f) => FunExpr(n, p map cf, d, o map cf, f map cf)
1767[warn] | ^^^^^^^^^^^^^^^^^^^^^^
1768[warn] | Unreachable case
1769[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:17:11
1770[warn] 17 | case FunAsTableExpr(e, cd, ord) => FunAsTableExpr(cf(e), cd.map(cf(_).asInstanceOf[TableColDefsExpr]), ord)
1771[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^
1772[warn] | Unreachable case
1773[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:18:11
1774[warn] 18 | case TableColDefsExpr(tcd) => TableColDefsExpr(tcd.map(cf(_).asInstanceOf[TableColDefExpr]))
1775[warn] | ^^^^^^^^^^^^^^^^^^^^^
1776[warn] | Unreachable case
1777[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:19:11
1778[warn] 19 | case Group(e, h) => Group(e map cf, cf(h))
1779[warn] | ^^^^^^^^^^^
1780[warn] | Unreachable case
1781[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:20:11
1782[warn] 20 | case HiddenColRefExpr(e, typ) => HiddenColRefExpr(cf(e), typ)
1783[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^
1784[warn] | Unreachable case
1785[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:21:11
1786[warn] 21 | case InExpr(lop, rop, not) => InExpr(cf(lop), rop map cf, not)
1787[warn] | ^^^^^^^^^^^^^^^^^^^^^
1788[warn] | Unreachable case
1789[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:22:11
1790[warn] 22 | case wi: WithInsertExpr => new WithInsertExpr(
1791[warn] | ^^^^^^^^^^^^^^^^^^
1792[warn] | Unreachable case
1793[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:24:11
1794[warn] 24 | case i: InsertExpr => new InsertExpr(cf(i.table).asInstanceOf[IdentExpr], i.alias,
1795[warn] | ^^^^^^^^^^^^^
1796[warn] | Unreachable case
1797[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:27:11
1798[warn] 27 | case Order(exprs) => Order(exprs map (e => (cf(e._1), cf(e._2), cf(e._3))))
1799[warn] | ^^^^^^^^^^^^
1800[warn] | Unreachable case
1801[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:28:11
1802[warn] 28 | case SelectExpr(tables, filter, cols, distinct, group, order,
1803[warn] | ^
1804[warn] | Unreachable case
1805[warn] |
1806[warn] 29 | offset, limit, aliases, parentJoin) =>
1807[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:33:11
1808[warn] 33 | case Table(texpr, alias, join, outerJoin, nullable, schema) =>
1809[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1810[warn] | Unreachable case
1811[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:35:11
1812[warn] 35 | case TableJoin(default, expr, noJoin, defaultJoinCols) =>
1813[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1814[warn] | Unreachable case
1815[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:37:11
1816[warn] 37 | case WithTableExpr(n, c, r, q) => WithTableExpr(n, c, r, cf(q))
1817[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^
1818[warn] | Unreachable case
1819[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:38:11
1820[warn] 38 | case WithSelectExpr(tables, query) =>
1821[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1822[warn] | Unreachable case
1823[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:40:11
1824[warn] 40 | case WithBinExpr(tables, query) =>
1825[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^
1826[warn] | Unreachable case
1827[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:42:11
1828[warn] 42 | case UnExpr(o, op) => UnExpr(o, cf(op))
1829[warn] | ^^^^^^^^^^^^^
1830[warn] | Unreachable case
1831[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:43:11
1832[warn] 43 | case CastExpr(e, t) => CastExpr(cf(e), t)
1833[warn] | ^^^^^^^^^^^^^^
1834[warn] | Unreachable case
1835[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:44:11
1836[warn] 44 | case u: UpdateExpr => new UpdateExpr(cf(u.table).asInstanceOf[IdentExpr], u.alias,
1837[warn] | ^^^^^^^^^^^^^
1838[warn] | Unreachable case
1839[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:46:11
1840[warn] 46 | case d: DeleteExpr => //put delete at the end since it is superclass of insert and update
1841[warn] | ^^^^^^^^^^^^^
1842[warn] | Unreachable case
1843[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:49:11
1844[warn] 49 | case ValuesExpr(vals) => ValuesExpr(vals map cf)
1845[warn] | ^^^^^^^^^^^^^^^^
1846[warn] | Unreachable case
1847[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:50:11
1848[warn] 50 | case vfs: ValuesFromSelectExpr => vfs.copy(select = cf(vfs.select).asInstanceOf[SelectExpr])
1849[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^
1850[warn] | Unreachable case
1851[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:51:11
1852[warn] 51 | case InsertConflictExpr(ct, cfl, c, v, f, a, cd) =>
1853[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1854[warn] | Unreachable case
1855[warn] -- [E121] Pattern Match Warning: /build/repo/core/src/main/scala/org/tresql/Transformer.scala:53:11
1856[warn] 53 | case e => e
1857[warn] | ^
1858[warn] |Unreachable case except for null (if this is intentional, consider writing case null => instead).
1859[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/compiling/Compiler.scala:584:8
1860[warn] 584 | dml match {
1861[warn] | ^^^
1862[warn] |match may not be exhaustive.
1863[warn] |
1864[warn] |It would fail on pattern case: org.tresql.ast.CompilerAst.WithDMLDef(_, _)
1865[warn] |---------------------------------------------------------------------------
1866[warn] | Explanation (enabled by `-explain`)
1867[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1868[warn] | There are several ways to make the match exhaustive:
1869[warn] | - Add missing cases as shown in the warning
1870[warn] | - If an extractor always return Some(...), write Some[X] for its return type
1871[warn] | - Add a case _ => ... at the end to match all remaining cases
1872[warn] ---------------------------------------------------------------------------
1873[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:22:9
1874[warn] 22 | case v: QueryBuilder#VarExpr => v.defaultSQL match {
1875[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1876[warn] | Unreachable case
1877[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:31:9
1878[warn] 31 | case r: QueryBuilder#ResExpr => r.defaultSQL + s"/*${r.name}*/"
1879[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1880[warn] | Unreachable case
1881[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:32:9
1882[warn] 32 | case id: QueryBuilder#IdExpr => id.defaultSQL + s"/*#${id.seqName}*/"
1883[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1884[warn] | Unreachable case
1885[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:33:9
1886[warn] 33 | case idref: QueryBuilder#IdRefExpr => idref.defaultSQL + s"/*:#${idref.seqName}*/"
1887[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1888[warn] | Unreachable case
1889[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:34:9
1890[warn] 34 | case idrefid: ORT#IdRefIdExpr => idrefid.defaultSQL + s"/*:#${idrefid.idRefSeq}#${idrefid.idSeq}*/"
1891[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^
1892[warn] | Unreachable case
1893[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:38:9
1894[warn] 38 | case _: QueryBuilder#SQLVendorExpr => vendor
1895[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1896[warn] | Unreachable case
1897[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:39:9
1898[warn] 39 | case f: QueryBuilder#FunExpr
1899[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1900[warn] | Unreachable case
1901[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:46:9
1902[warn] 46 | case f: QueryBuilder#FunExpr if f.name == "lower" && f.params.size == 1 => "lcase(" + f.params.head.sql + ")"
1903[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1904[warn] | Unreachable case
1905[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:47:9
1906[warn] 47 | case f: QueryBuilder#FunExpr if f.name == "translate" && f.params.size == 3 =>
1907[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1908[warn] | Unreachable case
1909[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:51:9
1910[warn] 51 | case f: QueryBuilder#FunExpr if f.name == "nextval" && f.params.size == 1 =>
1911[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1912[warn] | Unreachable case
1913[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:55:9
1914[warn] 55 | case c: QueryBuilder#CastExpr => s"cast(${c.exp.sql} as ${c.builder.env.metadata.to_sql_type("hsqldb", c.typ) match {
1915[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^
1916[warn] | Unreachable case
1917[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:60:9
1918[warn] 60 | case c: QueryBuilder#TableColDefExpr => c.name
1919[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1920[warn] | Unreachable case
1921[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:61:9
1922[warn] 61 | case b: QueryBuilder#BinExpr if b.op == "`~`" => s"regexp_matches(${b.lop.sql}, ${b.rop.sql})"
1923[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1924[warn] | Unreachable case
1925[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:62:9
1926[warn] 62 | case s: QueryBuilder#SelectExpr if s.tables.size == 1 &&
1927[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^
1928[warn] | Unreachable case
1929[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:69:9
1930[warn] 69 | case i: QueryBuilder#InsertExpr if i.insertConflict != null =>
1931[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^
1932[warn] | Unreachable case
1933[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:130:10
1934[warn] 130 | e match {
1935[warn] | ^
1936[warn] |match may not be exhaustive.
1937[warn] |
1938[warn] |It would fail on pattern case: org.tresql.QueryBuilder#SelectExpr(_, _, _, _, _, _, _, _, _, _)
1939[warn] |---------------------------------------------------------------------------
1940[warn] | Explanation (enabled by `-explain`)
1941[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1942[warn] | There are several ways to make the match exhaustive:
1943[warn] | - Add missing cases as shown in the warning
1944[warn] | - If an extractor always return Some(...), write Some[X] for its return type
1945[warn] | - Add a case _ => ... at the end to match all remaining cases
1946[warn] ---------------------------------------------------------------------------
1947[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:100:6
1948[warn] 100 | e match {
1949[warn] | ^
1950[warn] |match may not be exhaustive.
1951[warn] |
1952[warn] |It would fail on pattern case: _: org.tresql.QueryBuilder#PrimitiveExpr
1953[warn] |---------------------------------------------------------------------------
1954[warn] | Explanation (enabled by `-explain`)
1955[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1956[warn] | There are several ways to make the match exhaustive:
1957[warn] | - Add missing cases as shown in the warning
1958[warn] | - If an extractor always return Some(...), write Some[X] for its return type
1959[warn] | - Add a case _ => ... at the end to match all remaining cases
1960[warn] ---------------------------------------------------------------------------
1961[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:159:47
1962[warn] 159 | val colNames = i.cols.collect { case b.ColExpr(b.IdentExpr(name), _, _, _) => name.last } toSet
1963[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1964[warn] | Unreachable case
1965[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:141:9
1966[warn] 141 | case c: QueryBuilder#ColExpr if c.alias != null => Option(c.col).map(_.sql).getOrElse("null") + " as " + c.alias
1967[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1968[warn] | Unreachable case
1969[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:142:9
1970[warn] 142 | case c: QueryBuilder#CastExpr => c.exp.sql + "::" + c.builder.env.metadata.to_sql_type("postgresql", c.typ)
1971[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^
1972[warn] | Unreachable case
1973[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:143:9
1974[warn] 143 | case c: QueryBuilder#TableColDefExpr => c.name +
1975[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1976[warn] | Unreachable case
1977[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:145:9
1978[warn] 145 | case f: QueryBuilder#FunExpr if f.name == "decode" && f.params.size > 2 =>
1979[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
1980[warn] | Unreachable case
1981[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/dialects.scala:150:9
1982[warn] 150 | case i: QueryBuilder#InsertExpr =>
1983[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^
1984[warn] | Unreachable case
1985[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/macro.scala:191:13
1986[warn] 191 | case b.IdentExpr(n) => n.mkString(".")
1987[warn] | ^^^^^^^^^^^^^^
1988[warn] | Unreachable case
1989[warn] -- [E121] Pattern Match Warning: /build/repo/core/src/main/scala/org/tresql/macro.scala:192:13
1990[warn] 192 | case x => sys.error(s"Unrecognized key type - $x")
1991[warn] | ^
1992[warn] |Unreachable case except for null (if this is intentional, consider writing case null => instead).
1993[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:62:9
1994[warn] 62 | case i: Int => IntConst(i)
1995[warn] | ^^^^^^
1996[warn] | Unreachable case
1997[warn] -- [E121] Pattern Match Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:63:9
1998[warn] 63 | case x => sys.error(s"Unexpected const value: '$x'. Expected `String` or `Boolean` or `BigDecimal` or `Int`")
1999[warn] | ^
2000[warn] |Unreachable case except for null (if this is intentional, consider writing case null => instead).
2001[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:73:4
2002[warn] 73 | case "?" => Variable("?", Nil, opt = false)
2003[warn] | ^
2004[warn] | match may not be exhaustive.
2005[warn] |
2006[warn] | It would fail on pattern case: Parsers.this.~(Nil, _), _: String
2007[warn] |----------------------------------------------------------------------------
2008[warn] | Explanation (enabled by `-explain`)
2009[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2010[warn] | There are several ways to make the match exhaustive:
2011[warn] | - Add missing cases as shown in the warning
2012[warn] | - If an extractor always return Some(...), write Some[X] for its return type
2013[warn] | - Add a case _ => ... at the end to match all remaining cases
2014[warn] ----------------------------------------------------------------------------
2015[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:140:6
2016[warn] 140 | case ";" => NoJoin
2017[warn] | ^
2018[warn] | match may not be exhaustive.
2019[warn] |
2020[warn] | It would fail on pattern case: Parsers.this.~(_, _), _: String
2021[warn] |---------------------------------------------------------------------------
2022[warn] | Explanation (enabled by `-explain`)
2023[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2024[warn] | There are several ways to make the match exhaustive:
2025[warn] | - Add missing cases as shown in the warning
2026[warn] | - If an extractor always return Some(...), write Some[X] for its return type
2027[warn] | - Add a case _ => ... at the end to match all remaining cases
2028[warn] ---------------------------------------------------------------------------
2029[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:285:6
2030[warn] 285 | case Null ~ Filters(Nil) ~ None ~ None ~ None => Null //null literal
2031[warn] | ^
2032[warn] |match may not be exhaustive.
2033[warn] |
2034[warn] |It would fail on pattern case: Parsers.this.~(~(_, _), org.tresql.ast.Filters(_)), Parsers.this.~(org.tresql.ast.Cols(_, _), Some(_)), Parsers.this.~(org.tresql.ast.Cols(_, _), None)
2035[warn] |---------------------------------------------------------------------------
2036[warn] | Explanation (enabled by `-explain`)
2037[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2038[warn] | There are several ways to make the match exhaustive:
2039[warn] | - Add missing cases as shown in the warning
2040[warn] | - If an extractor always return Some(...), write Some[X] for its return type
2041[warn] | - Add a case _ => ... at the end to match all remaining cases
2042[warn] ---------------------------------------------------------------------------
2043[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:333:6
2044[warn] 333 | case name ~ distinct ~ (cols: List[String@unchecked]) ~ exp => WithTable(name, cols, distinct.isEmpty, exp)
2045[warn] | ^
2046[warn] | match may not be exhaustive.
2047[warn] |
2048[warn] | It would fail on pattern case: Parsers.this.~(~(_, _), _)
2049[warn] |---------------------------------------------------------------------------
2050[warn] | Explanation (enabled by `-explain`)
2051[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2052[warn] | There are several ways to make the match exhaustive:
2053[warn] | - Add missing cases as shown in the warning
2054[warn] | - If an extractor always return Some(...), write Some[X] for its return type
2055[warn] | - Add a case _ => ... at the end to match all remaining cases
2056[warn] ---------------------------------------------------------------------------
2057[warn] -- [E121] Pattern Match Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:376:11
2058[warn] 376 | case x => sys.error(s"Unexpected insert parse result: $x")
2059[warn] | ^
2060[warn] |Unreachable case except for null (if this is intentional, consider writing case null => instead).
2061[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:413:8
2062[warn] 413 | case (db: Option[Db@unchecked]) ~ (t: Ident) ~ (a: Option[String@unchecked] ) ~ f ~ c ~ v ~ maybeCols =>
2063[warn] | ^
2064[warn] | match may not be exhaustive.
2065[warn] |
2066[warn] | It would fail on pattern case: Parsers.this.~(~(_, _), _)
2067[warn] |---------------------------------------------------------------------------
2068[warn] | Explanation (enabled by `-explain`)
2069[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2070[warn] | There are several ways to make the match exhaustive:
2071[warn] | - Add missing cases as shown in the warning
2072[warn] | - If an extractor always return Some(...), write Some[X] for its return type
2073[warn] | - Add a case _ => ... at the end to match all remaining cases
2074[warn] ---------------------------------------------------------------------------
2075[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:500:6
2076[warn] 500 | case (objs: List[Obj@unchecked]) ~ _ ~ _ => "Delete tables clause must as the first element have " +
2077[warn] | ^
2078[warn] |match may not be exhaustive.
2079[warn] |
2080[warn] |It would fail on pattern case: Parsers.this.~(Parsers.this.~(~(_, _), org.tresql.ast.Arr(_)), _)
2081[warn] |---------------------------------------------------------------------------
2082[warn] | Explanation (enabled by `-explain`)
2083[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2084[warn] | There are several ways to make the match exhaustive:
2085[warn] | - Add missing cases as shown in the warning
2086[warn] | - If an extractor always return Some(...), write Some[X] for its return type
2087[warn] | - Add a case _ => ... at the end to match all remaining cases
2088[warn] ---------------------------------------------------------------------------
2089[warn] -- [E029] Pattern Match Exhaustivity Warning: /build/repo/core/src/main/scala/org/tresql/parsing/QueryParsers.scala:534:4
2090[warn] 534 | case lop ~ "in" ~ "(" ~ rop => In(lop, rop, not = false)
2091[warn] | ^
2092[warn] | match may not be exhaustive.
2093[warn] |
2094[warn] | It would fail on pattern case: Parsers.this.~(~(_, _), _: List)
2095[warn] |---------------------------------------------------------------------------
2096[warn] | Explanation (enabled by `-explain`)
2097[warn] |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2098[warn] | There are several ways to make the match exhaustive:
2099[warn] | - Add missing cases as shown in the warning
2100[warn] | - If an extractor always return Some(...), write Some[X] for its return type
2101[warn] | - Add a case _ => ... at the end to match all remaining cases
2102[warn] ---------------------------------------------------------------------------
2103[warn] there were 55 deprecation warnings; re-run with -deprecation for details
2104[warn] 85 warnings found
2105[info] done compiling
2106[info] compiling 1 Scala source to /build/repo/core/target/scala-3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY/test-classes ...
2107[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/test/scala/Macros.scala:67:11
2108[warn] 67 | case s@b.SelectExpr(
2109[warn] | ^
2110[warn] | Unreachable case
2111[warn] |
2112[warn] 68 | b.Table(_, _,
2113[warn] 69 |...
2114[warn] 73 | ) =>
2115[warn] -- [E030] Match case Unreachable Warning: /build/repo/core/src/test/scala/Macros.scala:93:11
2116[warn] 93 | case b.WithSelectExpr(tables, q) =>
2117[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
2118[warn] | Unreachable case
2119[warn] two warnings found
2120[info] done compiling
2121[info] compiling 3 Scala sources and 1 Java source to /build/repo/target/scala-3.8.1-RC1-bin-20251228-e73ff2c-NIGHTLY/test-classes ...
2122[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2720:4
2123[warn] 2720 | assertResult(2.34)(tresql"round(2.33555, 2)")
2124[warn] | ^
2125[warn] | Line is indented too far to the left, or a `}` is missing
2126[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2721:4
2127[warn] 2721 | assertResult((2.34, 3, 14))(tresql"round(2.33555, 2), round(3.1,0), 5 + 9")
2128[warn] | ^
2129[warn] | Line is indented too far to the left, or a `}` is missing
2130[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2722:4
2131[warn] 2722 | assertResult(7.3)(tresql"1 + 4 - 0 + round(2.3, 5)")
2132[warn] | ^
2133[warn] | Line is indented too far to the left, or a `}` is missing
2134[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2723:4
2135[warn] 2723 | assertResult((3,3,2,(2,2))) {
2136[warn] | ^
2137[warn] | Line is indented too far to the left, or a `}` is missing
2138[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2730:4
2139[warn] 2730 | assertResult((true,false)) {
2140[warn] | ^
2141[warn] | Line is indented too far to the left, or a `}` is missing
2142[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2734:4
2143[warn] 2734 | assertResult((0,"null",'x',4,false,true)){
2144[warn] | ^
2145[warn] | Line is indented too far to the left, or a `}` is missing
2146[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2741:4
2147[warn] 2741 | assertResult(true)(tresql"1" + tresql"2 + 3" == tresql"6")
2148[warn] | ^
2149[warn] | Line is indented too far to the left, or a `}` is missing
2150[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2742:4
2151[warn] 2742 | assertResult(true) {
2152[warn] | ^
2153[warn] | Line is indented too far to the left, or a `}` is missing
2154[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2746:4
2155[warn] 2746 | assertResult(java.sql.Timestamp.valueOf("2009-02-22 00:00:00.0"))(
2156[warn] | ^
2157[warn] | Line is indented too far to the left, or a `}` is missing
2158[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2749:4
2159[warn] 2749 | assertResult(6000)(tresql"1000 + (emp[ename = 'KING']{sal})")
2160[warn] | ^
2161[warn] | Line is indented too far to the left, or a `}` is missing
2162[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2751:4
2163[warn] 2751 | assertResult("ACCOUNTING")(tresql"macro_interpolator_test4(dept, dname)".map(_.dname).toList.head)
2164[warn] | ^
2165[warn] | Line is indented too far to the left, or a `}` is missing
2166[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2753:4
2167[warn] 2753 | assertResult(List(("RESEARCH(8)",
2168[warn] | ^
2169[warn] | Line is indented too far to the left, or a `}` is missing
2170[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2765:4
2171[warn] 2765 | assertResult(List("ACCOUNTING")) {
2172[warn] | ^
2173[warn] | Line is indented too far to the left, or a `}` is missing
2174[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2771:4
2175[warn] 2771 | assertResult(List(3)) {
2176[warn] | ^
2177[warn] | Line is indented too far to the left, or a `}` is missing
2178[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2776:4
2179[warn] 2776 | assertResult(List("yes")) {
2180[warn] | ^
2181[warn] | Line is indented too far to the left, or a `}` is missing
2182[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2781:4
2183[warn] 2781 | assertResult((1, 2, 3)) {
2184[warn] | ^
2185[warn] | Line is indented too far to the left, or a `}` is missing
2186[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2784:4
2187[warn] 2784 | assertResult("abc") {
2188[warn] | ^
2189[warn] | Line is indented too far to the left, or a `}` is missing
2190[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2787:4
2191[warn] 2787 | assertResult((List(1, 2), List(3))) {
2192[warn] | ^
2193[warn] | Line is indented too far to the left, or a `}` is missing
2194[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2794:4
2195[warn] 2794 | val isScala3 = try { Class.forName("scala.Selectable"); true } catch { case ex: ClassNotFoundException => false }
2196[warn] | ^
2197[warn] | Line is indented too far to the left, or a `}` is missing
2198[warn] -- Warning: /build/repo/src/test/scala/org/tresql/test/CompilerMacroDependantTests.scala:2795:4
2199[warn] 2795 | if (isScala3) {
2200[warn] | ^
2201[warn] | Line is indented too far to the left, or a `}` is missing
2202[warn] -- [E030] Match case Unreachable Warning: /build/repo/src/test/scala/org/tresql/test/QueryTest.scala:68:13
2203[warn] 68 | case f: QueryBuilder#FunExpr if f.name == "current_time" && f.params.isEmpty => "current_time"
2204[warn] | ^^^^^^^^^^^^^^^^^^^^^^^
2205[warn] | Unreachable case
2206[warn] there were 125 deprecation warnings; re-run with -deprecation for details
2207[warn] 22 warnings found
2208[warn] /build/repo/src/test/java/org/tresql/test/TresqlJavaApiTest.java:62:25: unchecked cast
2209[warn] required: java.util.List<java.util.Map<java.lang.String,java.lang.Object>>
2210[warn] found: java.lang.Object
2211[warn] r
2212[warn] .get("emps")
2213[warn] ^
2214[info] done compiling
2215Starting build for ProjectRef(file:/build/repo/,core) (tresql-core)... [1/3]
2216Compile scalacOptions: -unchecked, -language:dynamics, -language:postfixOps, -language:implicitConversions, -language:reflectiveCalls, -language:existentials, -explain, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
2217Starting build for ProjectRef(file:/build/repo/,macros) (tresql-interpolator-macro)... [2/3]
2218Compile scalacOptions: -unchecked, -language:dynamics, -language:postfixOps, -language:implicitConversions, -language:reflectiveCalls, -language:existentials, -explain, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
2219
2220************************
2221Build summary:
2222[{
2223 "module": "tresql",
2224 "compile": {"status": "ok", "tookMs": 33922, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
2225 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
2226 "test-compile": {"status": "skipped", "tookMs": 0, "warnings": 0, "errors": 0},
2227 "test": {"status": "skipped", "tookMs": 0, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
2228 "publish": {"status": "skipped", "tookMs": 0},
2229 "metadata": {
2230 "crossScalaVersions": ["3.3.7", "2.13.17", "2.12.20"]
2231}
2232},{
2233 "module": "tresql-core",
2234 "compile": {"status": "ok", "tookMs": 109, "warnings": 84, "errors": 0, "sourceVersion": "3.8"},
2235 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
2236 "test-compile": {"status": "ok", "tookMs": 116, "warnings": 2, "errors": 0, "sourceVersion": "3.8"},
2237 "test": {"status": "skipped", "tookMs": 0, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
2238 "publish": {"status": "ok", "tookMs": 4},
2239 "metadata": {
2240 "crossScalaVersions": ["3.3.7", "2.13.17", "2.12.20"]
2241}
2242},{
2243 "module": "tresql-interpolator-macro",
2244 "compile": {"status": "ok", "tookMs": 144, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
2245 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
2246 "test-compile": {"status": "ok", "tookMs": 163, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
2247 "test": {"status": "skipped", "tookMs": 0, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
2248 "publish": {"status": "ok", "tookMs": 5},
2249 "metadata": {
2250 "crossScalaVersions": ["3.3.7", "2.13.17", "2.12.20"]
2251}
2252}]
2253************************
2254[success] Total time: 72 s (0:01:12.0), completed Dec 28, 2025, 5:02:12 PM
2255[0JChecking patch project/plugins.sbt...
2256Checking patch build.sbt...
2257Applied patch project/plugins.sbt cleanly.
2258Applied patch build.sbt cleanly.