Build Logs

softwaremill/sttp-model • 3.8.0-RC4:2025-12-22

Errors

23

Warnings

371

Total Lines

995

1##################################
2Clonning https://github.com/softwaremill/sttp-model.git into /build/repo using revision v1.7.17
3##################################
4Note: switching to '99b8b1eddbd17a877c50f10769bd62ee338f8ba7'.
5
6You are in 'detached HEAD' state. You can look around, make experimental
7changes and commit them, and you can discard any commits you make in this
8state without impacting any branches by switching back to a branch.
9
10If you want to create a new branch to retain commits you create, you may
11do so (now or later) by using -c with the switch command. Example:
12
13 git switch -c <new-branch-name>
14
15Or undo this operation with:
16
17 git switch -
18
19Turn off this advice by setting config variable advice.detachedHead to false
20
21----
22Preparing build for 3.8.0-RC4
23Scala binary version found: 3.8
24Implicitly using source version 3.8
25Scala binary version found: 3.8
26Implicitly using source version 3.8
27Would try to apply common scalacOption (best-effort, sbt/mill only):
28Append: ,REQUIRE:-source:3.8
29Remove: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
30
31Try apply source patch:
32Path: build.sbt
33Pattern: val scala3 = List("3.3.7")
34Replacement: val scala3 = List("3.8.0-RC4")
35Starting compilation server
36Compiling project (Scala 3.7.3, JVM (17))
37Compiled project (Scala 3.7.3, JVM (17))
38Successfully applied pattern 'val scala3 = List("3.3.7")' in build.sbt
39----
40Starting build for 3.8.0-RC4
41Execute tests: true
42sbt project found:
43No prepare script found for project softwaremill/sttp-model
44##################################
45Scala version: 3.8.0-RC4
46Targets: com.softwaremill.sttp.model%core
47Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3 = List(\"3.3.7\")","replaceWith":"val scala3 = List(\"<SCALA_VERSION>\")"}]}
48##################################
49Using extra scalacOptions: ,REQUIRE:-source:3.8
50Filtering out scalacOptions: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
51[sbt_options] declare -a sbt_options=()
52[process_args] java_version = '17'
53[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8/rt.jar'
54# Executing command line:
55java
56-Dfile.encoding=UTF-8
57-Dcommunitybuild.scala=3.8.0-RC4
58-Dcommunitybuild.project.dependencies.add=
59-Xmx7G
60-Xms4G
61-Xss8M
62-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
63-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8
64-jar
65/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
66"setCrossScalaVersions 3.8.0-RC4"
67"++3.8.0-RC4 -v"
68"mapScalacOptions ",REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s" ",-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
69"set every credentials := Nil"
70"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
71"removeScalacOptionsStartingWith -P:wartremover"
72
73moduleMappings
74"runBuild 3.8.0-RC4 """{"projects":{"exclude":[],"overrides":{}},"java":{},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3 = List(\"3.3.7\")","replaceWith":"val scala3 = List(\"<SCALA_VERSION>\")"}]}""" com.softwaremill.sttp.model%core"
75
76[info] [launcher] getting org.scala-sbt sbt 1.11.7 (this may take some time)...
77[info] welcome to sbt 1.11.7 (Eclipse Adoptium Java 17.0.8)
78[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
79[info] loading project definition from /build/repo/project
80[info] compiling 2 Scala sources to /build/repo/project/target/scala-2.12/sbt-1.0/classes ...
81[info] Non-compiled module 'compiler-bridge_2.12' for Scala 2.12.20. Compiling...
82[info] Compilation completed in 9.409s.
83[info] done compiling
84[info] STTP_NATIVE *not* defined, *not* including native in the aggregate projects
85[info] loading settings for project rootProject from build.sbt...
86[info] resolving key references (12042 settings) ...
87[info] set current project to sttp-model (in build file:/build/repo/)
88Execute setCrossScalaVersions: 3.8.0-RC4
89OpenCB::Changing crossVersion 3.8.0-RC4 -> 3.8.0-RC4 in coreJS3/crossScalaVersions
90OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.8.0-RC4) in coreJS3/crossScalaVersions
91OpenCB::Changing crossVersion 3.8.0-RC4 -> 3.8.0-RC4 in coreNative3/crossScalaVersions
92OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.8.0-RC4) in coreNative3/crossScalaVersions
93OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(2.13.16) in coreJS/crossScalaVersions
94OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(2.13.16) in coreNative/crossScalaVersions
95OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(2.13.16) in rootProject/crossScalaVersions
96OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(2.13.16) in core/crossScalaVersions
97OpenCB::Changing crossVersion 3.8.0-RC4 -> 3.8.0-RC4 in core3/crossScalaVersions
98OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.8.0-RC4) in core3/crossScalaVersions
99OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(2.13.16) in benchmark/crossScalaVersions
100[info] set current project to sttp-model (in build file:/build/repo/)
101[info] Setting Scala version to 3.8.0-RC4 on 3 projects.
102[info] Switching Scala version on:
103[info] coreNative3 (3.8.0-RC4)
104[info] core3 (3.8.0-RC4)
105[info] coreJS3 (3.8.0-RC4)
106[info] Excluding projects:
107[info] coreNative2_12 (2.12.20)
108[info] core2_12 (2.12.20)
109[info] benchmark2_12 (2.12.20)
110[info] coreNative (2.13.16)
111[info] coreJS (2.13.16)
112[info] * rootProject (2.13.16)
113[info] coreJS2_12 (2.12.20)
114[info] core (2.13.16)
115[info] benchmark (2.13.16)
116[info] Reapplying settings...
117[info] set current project to sttp-model (in build file:/build/repo/)
118Execute mapScalacOptions: ,REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
119[info] Reapplying settings...
120[info] set current project to sttp-model (in build file:/build/repo/)
121[info] Defining Global / credentials, benchmark / credentials and 10 others.
122[info] The new values will be used by Compile / scalafmtOnly, Global / pgpSelectPassphrase and 95 others.
123[info] Run `last` for details.
124[info] Reapplying settings...
125[info] set current project to sttp-model (in build file:/build/repo/)
126Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
127[info] Reapplying settings...
128OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
129
130 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
131 Did you mean benchmark2_12 / allExcludeDependencies ?
132 , retry without global scopes
133[info] Reapplying settings...
134[info] set current project to sttp-model (in build file:/build/repo/)
135Execute removeScalacOptionsStartingWith: -P:wartremover
136[info] Reapplying settings...
137[info] set current project to sttp-model (in build file:/build/repo/)
138[success] Total time: 0 s, completed Dec 22, 2025, 5:40:57 PM
139Build config: {"projects":{"exclude":[],"overrides":{}},"java":{},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[{"path":"build.sbt","pattern":"val scala3 = List(\"3.3.7\")","replaceWith":"val scala3 = List(\"<SCALA_VERSION>\")"}]}
140Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),Full,List()))
141Starting build...
142Projects: Set(core3)
143Starting build for ProjectRef(file:/build/repo/,core3) (core)... [0/1]
144OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.8` in Scala 2.12.20 module Global
145OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
146OpenCB::Filter out '-feature', matches setting pattern '^-?-feature'
147Compile scalacOptions: -encoding, utf8, -unchecked, -language:experimental.macros, -language:higherKinds, -language:implicitConversions, -Xkind-projector, -Wvalue-discard, -Wnonunit-statement, -Wunused:implicits, -Wunused:explicits, -Wunused:imports, -Wunused:locals, -Wunused:params, -Wunused:privates, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
148[info] compiling 41 Scala sources to /build/repo/core/target/jvm-3/classes ...
149[warn] -- [E175] Potential Issue Warning: /build/repo/core/src/main/scala/sttp/model/ContentTypeRange.scala:28:59
150[warn] 28 | if (charset != Wildcard) sb.append("; charset=").append(charset)
151[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
152[warn] |discarded non-Unit value of type StringBuilder. Add `: Unit` to discard silently.
153[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/main/scala/sttp/model/Uri.scala:322:47
154[warn] 322 | sb.append(kEnc(k)).append("=").append(if (sensitiveQueryParams(k)) "***" else vEnc(v))
155[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
156[warn] | unused value of type (sb : StringBuilder)
157[warn] -- [E175] Potential Issue Warning: /build/repo/core/src/main/scala/sttp/model/internal/ArrayView.scala:158:20
158[warn] 158 | foreach(list.add(_))
159[warn] | ^^^^^^^^^^^
160[warn] |discarded non-Unit value of type Boolean. Add `: Unit` to discard silently.
161[warn] there was 1 deprecation warning; re-run with -deprecation for details
162[warn] four warnings found
163[info] done compiling
164[info] compiling 23 Scala sources to /build/repo/core/target/jvm-3/test-classes ...
165[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/ContentTypeRangeTests.scala:8:4
166[warn] 8 | ContentTypeRange.AnyRange.toString shouldBe "*/*"
167[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
168[warn] | unused value of type org.scalatest.Assertion
169[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/ContentTypeRangeTests.scala:9:4
170[warn] 9 | ContentTypeRange.AnyText.toString shouldBe "text/*"
171[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
172[warn] | unused value of type org.scalatest.Assertion
173[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/ContentTypeRangeTests.scala:10:4
174[warn] 10 | ContentTypeRange.exact(MediaType.TextPlainUtf8).toString shouldBe "text/plain; charset=utf-8"
175[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
176[warn] | unused value of type org.scalatest.Assertion
177[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/ContentTypeRangeTests.scala:15:4
178[warn] 15 | ContentTypeRange.exact(MediaType.TextPlainUtf8).anySubType.toString shouldBe "text/*; charset=utf-8"
179[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
180[warn] | unused value of type org.scalatest.Assertion
181[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/ContentTypeRangeTests.scala:24:4
182[warn] 24 | ContentTypeRange.AnyRange.equals(ContentTypeRange.AnyRange) shouldBe true
183[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
184[warn] | unused value of type org.scalatest.Assertion
185[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/ContentTypeRangeTests.scala:26:4
186[warn] 26 | ContentTypeRange
187[warn] | ^
188[warn] | unused value of type org.scalatest.Assertion
189[warn] 27 | .exact(MediaType.TextPlainUtf8)
190[warn] 28 | .equals(ContentTypeRange.exact(MediaType.TextPlainUtf8).copy(mainType = "TEXT")) shouldBe true
191[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/ContentTypeRangeTests.scala:29:4
192[warn] 29 | ContentTypeRange
193[warn] | ^
194[warn] | unused value of type org.scalatest.Assertion
195[warn] 30 | .exact(MediaType.TextPlainUtf8)
196[warn] 31 | .equals(ContentTypeRange.exact(MediaType.TextPlainUtf8).copy(subType = "PLAIN")) shouldBe true
197[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/ContentTypeRangeTests.scala:33:4
198[warn] 33 | ContentTypeRange.exact(MediaType.TextPlain).equals(ContentTypeRange.exact(MediaType.TextHtml)) shouldBe false
199[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
200[warn] | unused value of type org.scalatest.Assertion
201[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:51:4
202[warn] 51 | MediaType.safeApply("text", "p=lain") should matchPattern { case Left(_) => }
203[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
204[warn] | unused value of type org.scalatest.Assertion
205[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:52:4
206[warn] 52 | MediaType.safeApply("text", "plain", Some("UTF=8")) should matchPattern { case Left(_) => }
207[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
208[warn] | unused value of type org.scalatest.Assertion
209[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:53:4
210[warn] 53 | MediaType.safeApply("text", "plain") shouldBe Right(MediaType.TextPlain)
211[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
212[warn] | unused value of type org.scalatest.Assertion
213[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:54:4
214[warn] 54 | MediaType.safeApply("text", "plain", None, Map("a" -> "{1}")) should matchPattern { case Left(_) => }
215[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
216[warn] | unused value of type org.scalatest.Assertion
217[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:64:4
218[warn] 64 | mt.toString shouldBe "application/gzip"
219[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
220[warn] | unused value of type org.scalatest.Assertion
221[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:227:4
222[warn] 227 | MediaType.TextPlain.equals(MediaType.TextPlain) shouldBe true
223[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
224[warn] | unused value of type org.scalatest.Assertion
225[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:228:4
226[warn] 228 | MediaType.TextPlain.equals(MediaType.TextPlain.copy(mainType = "TEXT")) shouldBe true
227[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
228[warn] | unused value of type org.scalatest.Assertion
229[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:229:4
230[warn] 229 | MediaType.TextPlain.equals(MediaType.TextPlain.copy(subType = "PLAIN")) shouldBe true
231[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
232[warn] | unused value of type org.scalatest.Assertion
233[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:231:4
234[warn] 231 | MediaType.TextPlain.equals(MediaType.TextPlainUtf8) shouldBe false
235[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
236[warn] | unused value of type org.scalatest.Assertion
237[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:236:4
238[warn] 236 | MediaType.TextPlain.equalsIgnoreParameters(MediaType.TextPlain) shouldBe true
239[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
240[warn] | unused value of type org.scalatest.Assertion
241[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:237:4
242[warn] 237 | MediaType.TextPlain.equalsIgnoreParameters(MediaType.TextPlainUtf8) shouldBe true
243[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
244[warn] | unused value of type org.scalatest.Assertion
245[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MediaTypeTests.scala:238:4
246[warn] 238 | MediaType.TextPlainUtf8.equalsIgnoreParameters(MediaType.TextPlain) shouldBe true
247[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
248[warn] | unused value of type org.scalatest.Assertion
249[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MethodTest.scala:8:4
250[warn] 8 | Method.unsafeApply("get") shouldBe Method.unsafeApply("GET")
251[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
252[warn] | unused value of type org.scalatest.Assertion
253[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MethodTest.scala:9:4
254[warn] 9 | Method.unsafeApply("head") shouldBe Method.unsafeApply("HEAD")
255[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
256[warn] | unused value of type org.scalatest.Assertion
257[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MethodTest.scala:10:4
258[warn] 10 | Method.unsafeApply("post") shouldBe Method.unsafeApply("POST")
259[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
260[warn] | unused value of type org.scalatest.Assertion
261[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MethodTest.scala:11:4
262[warn] 11 | Method.unsafeApply("put") shouldBe Method.unsafeApply("PUT")
263[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
264[warn] | unused value of type org.scalatest.Assertion
265[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MethodTest.scala:12:4
266[warn] 12 | Method.unsafeApply("delete") shouldBe Method.unsafeApply("DELETE")
267[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
268[warn] | unused value of type org.scalatest.Assertion
269[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MethodTest.scala:13:4
270[warn] 13 | Method.unsafeApply("options") shouldBe Method.unsafeApply("OPTIONS")
271[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
272[warn] | unused value of type org.scalatest.Assertion
273[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MethodTest.scala:14:4
274[warn] 14 | Method.unsafeApply("patch") shouldBe Method.unsafeApply("PATCH")
275[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
276[warn] | unused value of type org.scalatest.Assertion
277[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/MethodTest.scala:15:4
278[warn] 15 | Method.unsafeApply("connect") shouldBe Method.unsafeApply("CONNECT")
279[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
280[warn] | unused value of type org.scalatest.Assertion
281[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/PartTest.scala:20:4
282[warn] 20 | part.contentDispositionHeaderValue shouldBe s"""form-data; name="name"; filename*="$expectedFileName"; filename="f1.txt""""
283[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
284[warn] | unused value of type org.scalatest.Assertion
285[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/PartTest.scala:26:4
286[warn] 26 | part.contentDispositionHeaderValue shouldBe s"""form-data; name="name"; filename="f1.txt""""
287[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
288[warn] | unused value of type org.scalatest.Assertion
289[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/QueryParamsTests.scala:9:4
290[warn] 9 | qp.getMulti("p") shouldBe Some(Nil)
291[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
292[warn] | unused value of type org.scalatest.Assertion
293[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/QueryParamsTests.scala:10:4
294[warn] 10 | qp.getMulti("q") shouldBe Some(List("1"))
295[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
296[warn] | unused value of type org.scalatest.Assertion
297[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/QueryParamsTests.scala:11:4
298[warn] 11 | qp.getMulti("r") shouldBe Some(List("1", "2"))
299[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
300[warn] | unused value of type org.scalatest.Assertion
301[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/StatusCodeTests.scala:12:4
302[warn] 12 | StatusCode.safeApply(8) should matchPattern { case Left(_) => }
303[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
304[warn] | unused value of type org.scalatest.Assertion
305[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:176:4
306[warn] 176 | Uri.parse(uriAsString).right.map(_.toString) shouldBe Right(uriAsString)
307[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
308[warn] | unused value of type org.scalatest.Assertion
309[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:213:4
310[warn] 213 | uri"http://example.org/x/y".addPath("z").path shouldBe List("x", "y", "z")
311[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
312[warn] | unused value of type org.scalatest.Assertion
313[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:218:4
314[warn] 218 | uri"http://example.org?x=1".addParam("y", "2").paramsMap shouldBe Map("x" -> "1", "y" -> "2")
315[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
316[warn] | unused value of type org.scalatest.Assertion
317[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:224:4
318[warn] 224 | uri"$uriAsString".params.getMulti("p1") shouldBe Some(Nil)
319[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
320[warn] | unused value of type org.scalatest.Assertion
321[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:225:4
322[warn] 225 | uri"$uriAsString".params.getMulti("p2") shouldBe Some(List("v"))
323[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
324[warn] | unused value of type org.scalatest.Assertion
325[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:247:4
326[warn] 247 | uri"http://x.com".addPath("a").toString shouldBe "http://x.com/a"
327[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
328[warn] | unused value of type org.scalatest.Assertion
329[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:248:4
330[warn] 248 | uri"http://x.com/".addPath("a").toString shouldBe "http://x.com/a"
331[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
332[warn] | unused value of type org.scalatest.Assertion
333[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:249:4
334[warn] 249 | uri"http://x.com/a".addPath("b").toString shouldBe "http://x.com/a/b"
335[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
336[warn] | unused value of type org.scalatest.Assertion
337[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:250:4
338[warn] 250 | uri"http://x.com".addPath("a", "b").toString shouldBe "http://x.com/a/b"
339[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
340[warn] | unused value of type org.scalatest.Assertion
341[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:251:4
342[warn] 251 | uri"http://x.com/".addPath("a", "b").toString shouldBe "http://x.com/a/b"
343[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
344[warn] | unused value of type org.scalatest.Assertion
345[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:252:4
346[warn] 252 | uri"/".addPath("a").toString shouldBe "/a"
347[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
348[warn] | unused value of type org.scalatest.Assertion
349[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:253:4
350[warn] 253 | uri"/a".addPath("b").toString shouldBe "/a/b"
351[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
352[warn] | unused value of type org.scalatest.Assertion
353[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:254:4
354[warn] 254 | uri"a".addPath("b").toString shouldBe "a/b"
355[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
356[warn] | unused value of type org.scalatest.Assertion
357[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:260:4
358[warn] 260 | uri"/x/y".pathSegments shouldBe Uri.AbsolutePath(List(pathSegment("x"), pathSegment("y")))
359[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
360[warn] | unused value of type org.scalatest.Assertion
361[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:265:4
362[warn] 265 | uri"http://x.com/a/b/c".pathToString shouldBe "/a/b/c"
363[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
364[warn] | unused value of type org.scalatest.Assertion
365[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:266:4
366[warn] 266 | uri"http://x.com".pathToString shouldBe ""
367[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
368[warn] | unused value of type org.scalatest.Assertion
369[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:267:4
370[warn] 267 | uri"http://x.com/".pathToString shouldBe "/"
371[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
372[warn] | unused value of type org.scalatest.Assertion
373[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:272:4
374[warn] 272 | uri"http://x.com/a/b/c".queryToString shouldBe ""
375[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
376[warn] | unused value of type org.scalatest.Assertion
377[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:273:4
378[warn] 273 | uri"http://x.com?a=b&c=d".queryToString shouldBe "a=b&c=d"
379[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
380[warn] | unused value of type org.scalatest.Assertion
381[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:278:4
382[warn] 278 | uri"http://x.com/a/b/c".fragmentToString shouldBe ""
383[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
384[warn] | unused value of type org.scalatest.Assertion
385[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/UriTests.scala:287:4
386[warn] 287 | uri"http://x.com?a=b&c=d".toStringSafe(Set("c")) shouldBe "http://x.com?a=b&c=***"
387[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
388[warn] | unused value of type org.scalatest.Assertion
389[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/headers/CacheDirectiveTest.scala:10:4
390[warn] 10 | CacheDirective.parse("no-cache") shouldBe List(Right(CacheDirective.NoCache))
391[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
392[warn] | unused value of type org.scalatest.Assertion
393[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/headers/CacheDirectiveTest.scala:11:4
394[warn] 11 | CacheDirective.parse("max-age=10") shouldBe List(Right(CacheDirective.MaxAge(10.seconds)))
395[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
396[warn] | unused value of type org.scalatest.Assertion
397[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/headers/CacheDirectiveTest.scala:12:4
398[warn] 12 | CacheDirective.parse("public, NO-STORE, stale-while-revalidate=2") shouldBe List(
399[warn] | ^
400[warn] | unused value of type org.scalatest.Assertion
401[warn] 13 | Right(CacheDirective.Public),
402[warn] 14 | Right(CacheDirective.NoStore),
403[warn] 15 | Right(CacheDirective.StaleWhileRevalidate(2.seconds))
404[warn] 16 | )
405[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/headers/CacheDirectiveTest.scala:17:4
406[warn] 17 | CacheDirective.parse("max-stale, max-stale=10") shouldBe List(
407[warn] | ^
408[warn] | unused value of type org.scalatest.Assertion
409[warn] 18 | Right(CacheDirective.MaxStale(None)),
410[warn] 19 | Right(CacheDirective.MaxStale(Some(10.seconds)))
411[warn] 20 | )
412[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scala/sttp/model/headers/CacheDirectiveTest.scala:21:4
413[warn] 21 | CacheDirective.parse("x") should matchPattern { case List(Left(_)) => }
414[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
415[warn] | unused value of type org.scalatest.Assertion
416[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:22:4
417[warn] 22 | Header.safeApply("Aut ho", "a bc") should matchPattern { case Left(_) => }
418[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
419[warn] | unused value of type org.scalatest.Assertion
420[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:23:4
421[warn] 23 | Header.safeApply(HeaderNames.Authorization, "Я ЛЮБЛЮ БОРЩ") should matchPattern { case Left(_) => }
422[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
423[warn] | unused value of type org.scalatest.Assertion
424[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:24:4
425[warn] 24 | Header.safeApply(HeaderNames.Authorization, " Я ЛЮБЛЮ БОРЩ") should matchPattern { case Left(_) => }
426[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
427[warn] | unused value of type org.scalatest.Assertion
428[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:25:4
429[warn] 25 | Header.safeApply(HeaderNames.Authorization, " xy z") should matchPattern { case Left(_) => }
430[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
431[warn] | unused value of type org.scalatest.Assertion
432[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:26:4
433[warn] 26 | Header.safeApply(HeaderNames.Authorization, "xy z\t") should matchPattern { case Left(_) => }
434[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
435[warn] | unused value of type org.scalatest.Assertion
436[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:27:4
437[warn] 27 | Header.safeApply(HeaderNames.Authorization, "xy \n z") should matchPattern { case Left(_) => }
438[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
439[warn] | unused value of type org.scalatest.Assertion
440[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:28:4
441[warn] 28 | Header.safeApply(HeaderNames.Authorization, " ") should matchPattern { case Left(_) => }
442[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
443[warn] | unused value of type org.scalatest.Assertion
444[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:29:4
445[warn] 29 | Header.safeApply(HeaderNames.Authorization, "") should matchPattern { case Right(_) => }
446[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
447[warn] | unused value of type org.scalatest.Assertion
448[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:30:4
449[warn] 30 | Header.safeApply(HeaderNames.Authorization, "xy z") should matchPattern { case Right(_) => }
450[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
451[warn] | unused value of type org.scalatest.Assertion
452[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:35:4
453[warn] 35 | an[IllegalArgumentException] shouldBe thrownBy(Header.unsafeApply("Aut ho", "a bc"))
454[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
455[warn] | unused value of type org.scalatest.Assertion
456[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/HeaderTests.scala:45:4
457[warn] 45 | h.toString shouldBe "Authorization: bearer 123"
458[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
459[warn] | unused value of type org.scalatest.Assertion
460[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:107:6
461[warn] 107 | Accepts.unsafeParse(headers) shouldBe result
462[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
463[warn] | unused value of type org.scalatest.Assertion
464[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:132:4
465[warn] 132 | Accepts.parse(Seq(invalidAccept)) shouldBe Left(
466[warn] | ^
467[warn] | unused value of type org.scalatest.Assertion
468[warn] 133 | """Parameter is not formatted correctly: "=q=1" for: "text/html;=q=1""""
469[warn] 134 | )
470[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:137:4
471[warn] 137 | Accepts.parse(Seq(invalidAcceptCharset)) shouldBe Left(
472[warn] | ^
473[warn] | unused value of type org.scalatest.Assertion
474[warn] 138 | """Parameter is not formatted correctly: "=a=1" for: "utf-8;=a=1""""
475[warn] 139 | )
476[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:141:4
477[warn] 141 | Accepts.parse(Seq(invalidAccept, invalidAcceptCharset)) shouldBe Left(
478[warn] | ^
479[warn] | unused value of type org.scalatest.Assertion
480[warn] 142 | """Parameter is not formatted correctly: "=q=1" for: "text/html;=q=1"
481[warn] 143 | |Parameter is not formatted correctly: "=a=1" for: "utf-8;=a=1"""".stripMargin
482[warn] 144 | )
483[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:147:4
484[warn] 147 | Accepts.parse(Seq(invalidAcceptCharset2)) shouldBe Left(
485[warn] | ^
486[warn] | unused value of type org.scalatest.Assertion
487[warn] 148 | """No charset found for: "@@@""""
488[warn] 149 | )
489[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:161:4
490[warn] 161 | Accepts.parse(Seq(Header(HeaderNames.Accept, "text/html;q=xxx"))) shouldBe Left(errorMsg("xxx"))
491[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
492[warn] | unused value of type org.scalatest.Assertion
493[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:162:4
494[warn] 162 | Accepts.parse(Seq(Header(HeaderNames.Accept, "text/html;q=."))) shouldBe Left(errorMsg("."))
495[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
496[warn] | unused value of type org.scalatest.Assertion
497[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:163:4
498[warn] 163 | Accepts.parse(Seq(Header(HeaderNames.Accept, "text/html;q=.1234"))) shouldBe Left(errorMsg(".1234"))
499[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
500[warn] | unused value of type org.scalatest.Assertion
501[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:164:4
502[warn] 164 | Accepts.parse(Seq(Header(HeaderNames.Accept, "text/html;q=1.123"))) shouldBe Left(errorMsg("1.123"))
503[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
504[warn] | unused value of type org.scalatest.Assertion
505[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:165:4
506[warn] 165 | Accepts.parse(Seq(Header(HeaderNames.Accept, "text/html;q=1."))) shouldBe Left(errorMsg("1."))
507[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
508[warn] | unused value of type org.scalatest.Assertion
509[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:166:4
510[warn] 166 | Accepts.parse(Seq(Header(HeaderNames.Accept, "text/html;q=123"))) shouldBe Left(errorMsg("123"))
511[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
512[warn] | unused value of type org.scalatest.Assertion
513[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/AcceptsTest.scala:167:4
514[warn] 167 | Accepts.parse(Seq(Header(HeaderNames.Accept, "text/html;q=0.1234"))) shouldBe Left(errorMsg("0.1234"))
515[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
516[warn] | unused value of type org.scalatest.Assertion
517[warn] -- [E176] Potential Issue Warning: /build/repo/core/src/test/scalajvm/sttp/model/headers/CookieTest.scala:121:4
518[warn] 121 | CookieWithMeta("a", "b").value shouldBe "b"
519[warn] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
520[warn] | unused value of type org.scalatest.Assertion
521[warn] there was 1 deprecation warning; re-run with -deprecation for details
522[warn] 85 warnings found
523[info] done compiling
524[info] ContentTypeRangeTests:
525[info] - should serialize using toString
526[info] - should modify the range to any sub type
527[info] - should modify the range to any charset
528[info] - should be case-insensitive when comparing instances
529[info] HostTest:
530[info] - should parse host and port
531[info] - should parse host without port
532[info] - should parse IPv4 address with port
533[info] - should parse IPv4 address without port
534[info] - should parse IPv6 address with port
535[info] - should parse IPv6 address without port
536[info] RangeTest:
537[info] - should properly parse the Range header of length one
538[info] - should properly parse simplest Range header
539[info] - should properly parse Range without start
540[info] - should properly parse Range without end
541[info] - should properly parse Range simple multirange
542[info] - should properly parse Range mutltirange without end
543[info] - should properly parse Range mutltirange without start
544[info] - should properly parse Range mutltirange(3) without end
545[info] - should properly parse Range mutltirange(3) without start
546[info] - should fail parsing random string
547[info] - should fail parsing header with incorrect range
548[info] - should fail parsing header when the range start is not a number
549[info] - should fail parsing header when the range end is not a number
550[info] - should fail parsing header without correct range
551[info] - should fail for partially correct multiheader
552[info] - should return true for valid range
553[info] - should return false for invalid range
554[info] - should return true for range with only start
555[info] - should return false for incorrect range with only start
556[info] - should return true for range with only end
557[info] - should return false for incorrect range with only end
558[info] - should return false for range without start and end
559[info] - should calculate content length
560[info] - should map RangeValue to content type
561[info] AcceptsTest:
562[info] - should parse Accept: application/json Accept-Charset: *
563[info] - should parse Accept: application/json;q=.8 Accept-Charset: *
564[info] - should parse Accept: application/json;q=.88 Accept-Charset: *
565[info] - should parse Accept: application/json;q=.888 Accept-Charset: *
566[info] - should parse Accept: application/json Accept-Charset: utf-8
567[info] - should parse Accept: application/json Accept-Charset: utf-8;a=1;b=2;c=3
568[info] - should parse Accept: text/plain Accept-Charset: utf-8, iso-8559-1
569[info] - should parse Accept: text/plain Accept-Charset: utf-8;q=0.99, iso-8559-1
570[info] - should parse Accept: text/plain Accept-Charset: utf-8;q=0.55, iso-8559-1;q=0.66, utf-16;q=0.77
571[info] - should parse Accept: text/csv, text/plain Accept-Charset: utf-8, utf-16;q=0.5
572[info] - should parse Accept: text/csv, text/plain;q=0.1 Accept-Charset: utf-8, utf-16;q=0.5
573[info] - should parse Accept: text/*, application/json;q=0.9 Accept-Charset: utf-8
574[info] - should parse Accept: */* Accept-Charset: *
575[info] - should parse Accept: text/plain;q=1.000 Accept-Charset: *
576[info] - should parse Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 Accept-Charset: *
577[info] - should parse to any when no accept headers
578[info] - should parse when only Accept-Charset specified
579[info] - should parse when only Accept specified
580[info] - should return errors when invalid accept headers
581[info] - should return error for invalid q
582[info] ServerSentEventTest:
583[info] - should parse 1 lines starting with : this is a test stream
584[info] - should parse 1 lines starting with data: some text
585[info] - should parse 1 lines starting with data: some text
586[info] - should parse 2 lines starting with data: another message
587[info] - should parse 2 lines starting with event: userconnect
588[info] - should parse 2 lines starting with data:second event
589[info] - should parse 2 lines starting with data:x
590[info] - should parse 4 lines starting with data: event1 data
591[info] composeSSE
592[info] - should successfully serialise Server Sent Event with all fields set
593[info] composeSSE
594[info] - should omit fields that are not set
595[info] composeSSE
596[info] - should successfully serialise multiline data event
597[info] QueryParamsTests:
598[info] - should support no-value parameters
599[info] - should serialize to string
600[info] - should serialize to string, encoding special character
601[info] - should serialize to string with a boundary if there are query params
602[info] - should serialize to string without boundary if there are no query params
603[info] WWWAuthenticateChallengeTest:
604[info] - should properly serialise a basic header value
605[info] - should properly serialise a basic header value with realm
606[info] - should properly serialise a bearer header value with realm
607[info] - should properly serialise a header value with params
608[info] - should properly parse a basic header value
609[info] - should properly parse a basic header value with realm
610[info] - should properly parse a basic header value with realm and charset
611[info] - should properly parse a basic header value with charset
612[info] - should fail to parse string with multiple challenges
613[info] - should properly parse a bearer header value with realm
614[info] - should properly parse a header value with params
615[info] - should properly parse a Digest challenge
616[info] - should fail while parsing a Digest challenge without nonce
617[info] - should fail while parsing a Digest with incorrect qop
618[info] PartTest:
619[info] - should encode content-disposition header correctly
620[info] - should retain non-ascii characters in filename
621[info] - should retain non-ascii characters in filename*
622[info] - should fallback to basic filename if filename* is not present
623[info] - should escape double quote and backslash in filename
624[info] StatusCodeTests:
625[info] - should return a string description of the status code
626[info] - should validate status codes
627[info] - should throw exceptions on invalid status codes
628[info] HeaderTests:
629[info] - should return a string description of the header
630[info] - should validate status codes
631[info] - should throw exceptions on invalid headers
632[info] - should create unvalidated instances
633[info] - should return a safe string description of a sensitive header
634[info] - should properly create a cache-control header
635[info] Instant
636[info] - should be formatted according to rfc1123-date1 with a leading zero for single-digit dates
637[info] rfc1123-date1
638[info] - should be parsed correctly
639[info] rfc850-2-digit-year-after-70
640[info] - should be parsed as 19xx
641[info] rfc850-2-digit-year-before-69
642[info] - should be parsed as 20xx
643[info] rfc850-4-digit-year
644[info] - should be parsed correctly
645[info] UriResolveTests:
646[info] - should resolve relative uris
647[info] ETagTest:
648[info] - should properly quote an etag
649[info] - should properly quote a list of etags
650[info] - should properly quote a weak etag
651[info] - should parse an etag
652[info] - should parse a list of etags
653[info] - should parse a list of etags with weak etags
654[info] - should parse a weak etag
655[info] - should not parse an invalid etag
656[info] AcceptEncodingTest:
657[info] - should properly parse simplest Accept-Encoding header
658[info] - should properly parse Accept-Encoding with wildcard
659[info] - should properly parse Accept-Encoding header with multiple encodings
660[info] - should properly parse Accept-Encoding header with multiple encodings and wildcard
661[info] - should properly parse Accept-Encoding header with weight
662[info] - should properly parse complex Accept-Encoding header
663[info] - should properly parse complex Accept-Encoding header with spaces
664[info] - should properly parse strange header
665[info] - should properly parse custom encoding
666[info] - should properly parse custom encoding with weight
667[info] - should fail while validating header with q more then 1
668[info] - should fail while validating empty header
669[info] - should fail while parsing header with incorrect q
670[info] - should fail while parsing incorrect header
671[info] - should fail while validating header without algorithm
672[info] - should display correct header string
673[info] MethodTest:
674[info] unsafeApply
675[info] - should not be case sensitive
676[info] ForwardedTest:
677[info] - should parse a single header correctly
678[info] - should parse a single header correctly, regardless of case of the directives
679[info] - should parse multiple headers correctly, when given as separate headers
680[info] - should parse multiple headers correctly, when given as a single header
681[info] - should handle missing fields
682[info] - should return an error for invalid headers
683[info] - should return an error for invalid key-value pairs
684[info] - should serialize the header to a string
685[info] - should serialize multiple headers to a string
686[info] - should serialize IPv6 addresses to a string
687[info] - should parse ipv6 addresses in 'for', removing the apostrophes
688[info] - should parse multiple ipv4 addresses
689[info] HeaderJvmTests:
690[info] - should properly format expires date
691[info] CacheDirectiveTest:
692[info] - should parse cache directives
693[info] ContentRangeTest:
694[info] - should properly parse simplest ContentRange header
695[info] - should properly parse ContentRange without size
696[info] - should properly parse ContentRange without range
697[info] - should fail parsing random string
698[info] - should fail parsing ContentRange without range and size
699[info] - should fail parsing ContentRange with invalid range end
700[info] - should fail parsing ContentRange with invalid range start
701[info] - should fail parsing ContentRange with missing range start
702[info] - should fail parsing ContentRange with missing range end
703[info] - should fail parsing ContentRange with incorrect range
704[info] - should fail parsing ContentRange with incorrect range end
705[info] - should fail parsing ContentRange with incorrect range start
706[info] UriTests:
707[info] - List(KeyValue(k,v1~v2,[keyEncoding],[valueEncoding])) should serialize tok=v1%7Ev2
708[info] - http://example.com should serialize to http://example.com
709[info] - http://example.com/ should serialize to http://example.com/
710[info] - https://sub.example.com:8080/a/b/xyz?p1=v1&p2=v2#f should serialize to https://sub.example.com:8080/a/b/xyz?p1=v1&p2=v2#f
711[info] - http://example.com/?p=v&p=v should serialize to http://example.com/?p=v&p=v
712[info] - http://exa%20mple.com/a%20b/z/%C4%85:%C4%99?p:1=v%26v&p2=v+v should serialize to http://exa%20mple.com/a%20b/z/%C4%85:%C4%99?p:1=v%26v&p2=v+v
713[info] - http://us&e%2Fr:pa%20ss@example.com should serialize to http://us&e%2Fr:pa%20ss@example.com
714[info] - http://example.com#f:g/h%20i should serialize to http://example.com#f:g/h%20i
715[info] - http://example.com/key=value should serialize to http://example.com/key=value
716[info] - http://[2001:db8::ff00:42:8329]:8080 should serialize to http://[2001:db8::ff00:42:8329]:8080
717[info] - http://example.com/a b should serialize to http://example.com/a b
718[info] - http: should serialize to http:
719[info] - mailto:user@example.com should serialize to mailto:user@example.com
720[info] - http://sub..domain should serialize to http://sub..domain
721[info] - /x/y should serialize to /x/y
722[info] - /x/y/ should serialize to /x/y/
723[info] - / should serialize to /
724[info] - /x#a should serialize to /x#a
725[info] - /x?p1=v1#a should serialize to /x?p1=v1#a
726[info] - x/y should serialize to x/y
727[info] - ../x/y should serialize to ../x/y
728[info] - whole path: a/b/c, should parse as: List(a, b, c)
729[info] - whole path: /a/b/c, should parse as: List(a, b, c)
730[info] - whole path: /, should parse as: List()
731[info] - whole path: , should parse as: List()
732[info] - List(KeyValue(k1,v1,[keyEncoding],[valueEncoding]), KeyValue(k2,v2,[keyEncoding],[valueEncoding]), KeyValue(k3,v3,[keyEncoding],[valueEncoding]), KeyValue(k4,v4,[keyEncoding],[valueEncoding])) should serialize to k1=v1&k2=v2&k3=v3&k4=v4
733[info] - List(KeyValue(k1,v1,[keyEncoding],[valueEncoding]), KeyValue(k2,v2,[keyEncoding],[valueEncoding]), Plain(-abc-,[encoding]), KeyValue(k3,v3,[keyEncoding],[valueEncoding]), KeyValue(k4,v4,[keyEncoding],[valueEncoding])) should serialize to k1=v1&k2=v2-abc-k3=v3&k4=v4
734[info] - List(KeyValue(k1,v1,[keyEncoding],[valueEncoding]), Plain(&abc&,[encoding]), KeyValue(k2,v2,[keyEncoding],[valueEncoding])) should serialize to k1=v1%26abc%26k2=v2
735[info] - List(KeyValue(k1,v1,[keyEncoding],[valueEncoding]), Plain(&abc&,[encoding])) should serialize to k1=v1&abc&
736[info] - List(KeyValue(k1&,v1&,[keyEncoding],[valueEncoding])) should serialize to k1&=v1%26
737[info] - List(KeyValue(k1&,v1&,[keyEncoding],[valueEncoding])) should serialize to k1%26=v1&
738[info] - List(Plain(Ä…/Ä™&+;?,[encoding])) should serialize to %C4%85/%C4%99&+;?
739[info] - List(KeyValue(k,v1,v2,[keyEncoding],[valueEncoding])) should serialize to k=v1%2Cv2
740[info] - List(KeyValue(k,v1-v2,[keyEncoding],[valueEncoding])) should serialize to k=v1-v2
741[info] - List(KeyValue(k,v1_v2,[keyEncoding],[valueEncoding])) should serialize to k=v1_v2
742[info] - List(KeyValue(k,v1.v2,[keyEncoding],[valueEncoding])) should serialize to k=v1.v2
743[info] - List(KeyValue(k,v1,v2,[keyEncoding],[valueEncoding])) should serialize to k=v1,v2
744[info] - List(KeyValue(k,+1234,[keyEncoding],[valueEncoding])) should serialize to k=%2B1234
745[info] - List(KeyValue(k,[],[keyEncoding],[valueEncoding])) should serialize to k=%5B%5D
746[info] - List(KeyValue(k,[],[keyEncoding],[valueEncoding])) should serialize to k=[]
747[info] - v1,v2 should serialize to v1%2Cv2
748[info] - v1-v2 should serialize to v1-v2
749[info] - v1~v2 should serialize to v1~v2
750[info] - v1_v2 should serialize to v1_v2
751[info] - v1.v2 should serialize to v1.v2
752[info] - host www.mikołak.net should serialize to http://www.xn--mikoak-6db.net
753[info] - host 192.168.1.0 should serialize to http://192.168.1.0
754[info] - host ::1 should serialize to http://[::1]
755[info] - host 2001:db8::ff00:42:8329 should serialize to http://[2001:db8::ff00:42:8329]
756[info] - host 2001:0db8:0000:0000:0000:ff00:0042:8329 should serialize to http://[2001:0db8:0000:0000:0000:ff00:0042:8329]
757[info] - should convert from java URI
758[info] - should parse raw string
759[info] - should convert to java URI
760[info] - should have multi params
761[info] - should have no multi params
762[info] - should have non-empty multi params
763[info] - should have multi params with empty string values
764[info] - should have multi params with only values
765[info] - should replace or append path
766[info] - should replace or append query parameter
767[info] - should parse no-value parameters
768[info] - should validate and throw "host cannot be empty" if not valid
769[info] - should validate and throw "scheme" if not valid
770[info] - should add path ignoring the trailing empty segment if necessary
771[info] - should parse a relative uri with an absolute path
772[info] - should serialize path
773[info] - should serialize query
774[info] - should serialize fragment
775[info] - should serialize scheme
776[info] - should serialize query safe
777[info] MediaTypeTests:
778[info] - should parse or error: text/html
779[info] - should parse or error: text/html; charset=UTF-8
780[info] - should parse or error: text/plain;a=1;b=2;charset=utf-8;c=3
781[info] - should parse or error: text/html;
782[info] - should parse or error: multipart/form-data
783[info] - should parse or error: application/atom+xml
784[info] - should parse or error: te<t/plain
785[info] - should parse or error: text/plain; a=1; b=
786[info] - should parse or error: text/plain;a=1;b=2;charset=utf-8;b=5
787[info] - should parse or error: text/plain;a=1;b=2;charset=utf-8;charset=iso-8859-1
788[info] - should serialize text/html to text/html
789[info] - should serialize text/html; charset=utf-8 to text/html; charset=utf-8
790[info] - should serialize multipart/form-data to multipart/form-data
791[info] - should serialize application/atom+xml to application/atom+xml
792[info] - should serialize text/html; charset=utf-8; a=1 to text/html; charset=utf-8; a=1
793[info] - should validate media types
794[info] - should throw exceptions on invalid media types
795[info] - should have a regular toString
796[info] - should check match of application/json to */*
797[info] - should check match of */html to */json
798[info] - should check match of text/* to text/*
799[info] - should check match of application/json to application/*
800[info] - should check match of application/json to application/json
801[info] - should check match of application/json to application/json; q=0.5
802[info] - should check match of application/json; a=1 to application/json; q=0.5
803[info] - should check match of application/json to application/json; a=1
804[info] - should check match of application/json; a=1 to application/json; A=1; b=2
805[info] - should check match of application/json; a=1; b=2 to application/json; A=1
806[info] - should check match of application/json; a=truE to application/json; A=TrUe
807[info] - should check match of application/json; a=1; b=2 to application/json; B=2; A=1
808[info] - should check match of application/json; a=1 to application/json; A=1; q=0.5
809[info] - should check match of application/json; a=1 to application/json; b=2
810[info] - should check match of application/json; a=1 to */*
811[info] - should check match of application/json; a=1 to application/*
812[info] - should check match of application/json; charset=utf-8 to */*; charset=utf-16
813[info] - should check match of */html; charset=utf-8 to */json; charset=utf-16
814[info] - should check match of text/*; charset=utf-8 to text/*; charset=utf-16
815[info] - should check match of application/json; charset=utf-8 to application/*; charset=utf-16
816[info] - should check match of application/json; charset=utf-8 to application/json; charset=utf-16
817[info] - should check match of application/json; charset=utf-8 to application/json
818[info] - should check match of application/octet-stream to */*; charset=utf-8
819[info] - should select Some(application/json; charset=utf-8) for ranges List(*/*)
820[info] - should select Some(application/json; charset=utf-8) for ranges List(application/json)
821[info] - should select Some(application/xml; charset=utf-8) for ranges List(application/xml)
822[info] - should select Some(application/xml; charset=utf-8) for ranges List(application/xml, application/json)
823[info] - should select Some(application/json; charset=utf-8) for ranges List(application/json, application/xml)
824[info] - should select Some(application/xml; charset=utf-8) for ranges List(application/xml, application/json, text/html)
825[info] - should select Some(text/html; charset=utf-8) for ranges List(text/*, application/*)
826[info] - should select Some(text/html; charset=iso-8859-1) for ranges List(*/*; charset=iso-8859-1)
827[info] - should select Some(text/html; charset=iso-8859-1) for ranges List(text/html; charset=iso-8859-1, text/html; charset=utf-8)
828[info] - should select None for ranges List(text/csv)
829[info] - should select None for ranges List(text/html; charset=utf-16)
830[info] - should be case-insensitive when comparing instances
831[info] - should compare if media types are equal ignoring parameters
832[info] CookieTest:
833[info] - should parse or error: user_id=5; Expires=Fri, 05 Oct 2018 14:28:00 GMT; Secure; HttpOnly
834[info] - should parse or error: _myapp_session={"user_id": "5"}
835[info] - should parse or error: x=y; Max-Age=123; Domain=example.com; Path=/x/z/y
836[info] - should parse or error:
837[info] - should parse or error: x=y; Max-Age=z
838[info] - should parse or error: x=y; Expires=Thu, 01-Jan-2114 00:00:10 GMT
839[info] - should parse or error: x=y; Expires=Mon, 27-Jan-2020 16:10:25 GMT
840[info] - should parse or error: x=y; Version=1; Something-Else
841[info] - should parse or error: x=y; SameSite= Strict
842[info] - should serialize: x=y; Max-Age=123; Domain=example.com; Path=/x/z/y
843[info] - should serialize: x="a"
844[info] - should serialize: user_id=5; Expires=Fri, 05 Oct 2018 14:28:00 GMT; Secure; HttpOnly; SameSite=Strict
845[info] - should serialize: x=y; Version=1; Something-Else
846[info] - should parse single cookie pair
847[info] - should parse multiple cookie pairs
848[info] - should serialize cookie pair
849[info] - should create a cookie with meta
850[info] - should not create a cookie containing control characters
851[info] UriInterpolatorTests:
852[info] - [basic] should interpolate to http://example.com (1)
853[info] - [basic] should interpolate to http://example.com/ (2)
854[info] - [basic] should interpolate to http://example.com?x=y (3)
855[info] - [basic] should interpolate to http://example.com/a/b/c (4)
856[info] - [basic] should interpolate to http://example.com/a/b/c/ (5)
857[info] - [basic] should interpolate to http://example.com/a/b/c?x=y&h=j (6)
858[info] - [scheme] should interpolate to https://example.com (1)
859[info] - [scheme] should interpolate to http://example.com (2)
860[info] - [user info] should interpolate to http://user:pass@example.com (1)
861[info] - [user info] should interpolate to http://a%20c@example.com (2)
862[info] - [user info] should interpolate to http://a%3Ab@example.com (3)
863[info] - [user info] should interpolate to http://y:a%20c@example.com (4)
864[info] - [authority] should interpolate to http://y.com (1)
865[info] - [authority] should interpolate to http://a%20c.com (2)
866[info] - [authority] should interpolate to http://y.a%20c.com (3)
867[info] - [authority] should interpolate to http://ya%20c.com (4)
868[info] - [authority] should interpolate to http://zy.com (5)
869[info] - [authority] should interpolate to http://example.com (6)
870[info] - [authority] should interpolate to http://example.com (7)
871[info] - [authority] should interpolate to http://sub.example.com (8)
872[info] - [authority] should interpolate to http://sub1.sub2.example.com (9)
873[info] - [authority] should interpolate to http://sub1.sub2.example.com (10)
874[info] - [authority] should interpolate to http://sub.example.com (11)
875[info] - [authority with parameters] should interpolate to http://y.com?x=a+c (1)
876[info] - [ipv4] should interpolate to http://192.168.1.2/x (1)
877[info] - [ipv4] should interpolate to http://192.168.1.2/x (2)
878[info] - [ipv4] should interpolate to http://abc/x (3)
879[info] - [ipv4] should interpolate to http://abc/x (4)
880[info] - [ipv6] should interpolate to http://[::1]/x (1)
881[info] - [ipv6] should interpolate to http://[1::3:4:5:6:7:8]/x (2)
882[info] - [ipv6] should interpolate to http://[2001:0abcd:1bcde:2cdef::9f2e:0690:6969]/x (3)
883[info] - [ipv6] should interpolate to http://[::1]/x (4)
884[info] - [ipv6] should interpolate to http://[::1]:8080/x (5)
885[info] - [ipv6] should interpolate to http://[2001:0abcd:1bcde:2cdef::9f2e:0690:6969]/x (6)
886[info] - [ipv6] should interpolate to http://[2001:0db8:85a3:0000:0000:8a2e:0370:7334]:8080 (7)
887[info] - [ipv6] should interpolate to http://[2001:0db8:85a3:0000:0000:8a2e:0370:7334]:8080 (8)
888[info] - [ports] should interpolate to http://example.com:8080 (1)
889[info] - [ports] should interpolate to http://example.com:8080 (2)
890[info] - [ports] should interpolate to http://example.com:8080/x (3)
891[info] - [ports] should interpolate to http://example.com:8080/x (4)
892[info] - [ports] should interpolate to http://example.com/x (5)
893[info] - [ports] should interpolate to http://example.com:8080 (6)
894[info] - [path] should interpolate to http://example.com/y (1)
895[info] - [path] should interpolate to http://example.com/y/ (2)
896[info] - [path] should interpolate to http://example.com/a%20c (3)
897[info] - [path] should interpolate to http://example.com/a%20c/y (4)
898[info] - [path] should interpolate to http://example.com/y/p/f%2Fg (5)
899[info] - [path] should interpolate to http://example.com/a/a%20c/c/f%2Fg/b (6)
900[info] - [path] should interpolate to http://example.com/a/b/c (7)
901[info] - [path] should interpolate to http://example.com/a+b (8)
902[info] - [path] should interpolate to http://example.com/a%20b (9)
903[info] - [path with parameters] should interpolate to http://example.com/y?x=a+c (1)
904[info] - [path with parameters] should interpolate to http://example.com/y/a%20c?x=a+c (2)
905[info] - [query parameter values] should interpolate to http://example.com?x=y (1)
906[info] - [query parameter values] should interpolate to http://example.com/?x=y (2)
907[info] - [query parameter values] should interpolate to http://example.com?x=a+c (3)
908[info] - [query parameter values] should interpolate to http://example.com?x=a?%3D%26c (4)
909[info] - [query parameter values] should interpolate to http://example.com?x=yy (5)
910[info] - [query parameter values] should interpolate to http://example.com?x=zy (6)
911[info] - [query parameter values] should interpolate to http://example.com?x=a+b (7)
912[info] - [query parameter values] should interpolate to http://example.com?x=a%3Db (8)
913[info] - [query parameter values] should interpolate to http://example.com?x=a=b (9)
914[info] - [query parameter values] should interpolate to http://example.com?x=a%3Db (10)
915[info] - [query parameter values] should interpolate to http://example.com?x=a%3Db&y=c%3Dd (11)
916[info] - [query parameter without value] should interpolate to http://example.com?y (1)
917[info] - [query parameter without value] should interpolate to http://example.com?y&a+c (2)
918[info] - [optional query parameters] should interpolate to http://example.com (1)
919[info] - [optional query parameters] should interpolate to http://example.com?a=b (2)
920[info] - [optional query parameters] should interpolate to http://example.com?a=b&e=f (3)
921[info] - [optional query parameters] should interpolate to http://example.com?a=y (4)
922[info] - [optional query parameters] should interpolate to http://example.com?a=y&c=d (5)
923[info] - [parameter collections] should interpolate to http://example.com?a=b&a+c=y&y=a+c (1)
924[info] - [parameter collections] should interpolate to http://example.com?a=b&a=c (2)
925[info] - [parameter collections] should interpolate to http://example.com?a=b (3)
926[info] - [parameter collections] should interpolate to http://example.com?x=y&a=b (4)
927[info] - [parameter collections] should interpolate to http://example.com?x=y (5)
928[info] - [parameter collections] should interpolate to http://example.com?x=y&a=b (6)
929[info] - [parameter collections] should interpolate to http://example.com?x=y (7)
930[info] - [parameter collections] should interpolate to http://example.com?x=1&x=2&y (8)
931[info] - [fragments] should interpolate to http://example.com#y (1)
932[info] - [fragments] should interpolate to http://example.com (2)
933[info] - [everything] should interpolate to http://y.a%20c.com/y/a%20c?y=a+c&a?%3D%26c=f/g#y (1)
934[info] - [embed whole url] should interpolate to http://example.com:123/a/b/c (1)
935[info] - [embed whole url] should interpolate to http://example.com/y?p=a+c (2)
936[info] - [embed whole url with trailing slash + path] should interpolate to http://example.com/y (1)
937[info] - [embed whole url with trailing slash + path] should interpolate to http://example.com/y/ (2)
938[info] - [embed whole url with trailing slash + path] should interpolate to http://example.com/y/y (3)
939[info] - [embed whole url with trailing slash + path] should interpolate to http://example.com/y/y/ (4)
940[info] - [embed whole url with trailing slash + path] should interpolate to http://example.com:123/a/b/c (5)
941[info] - [encode unicode characters that are encoded as 3+ UTF-8 bytes] should interpolate to http://example.com/we/have/%F0%9F%8D%AA (1)
942[info] - [encode unicode characters that are encoded as 3+ UTF-8 bytes] should interpolate to http://example.com/dont/run/with/%E2%9C%82 (2)
943[info] - [encode unicode characters that are encoded as 3+ UTF-8 bytes] should interpolate to http://example.com/in/query?key=%F0%9F%8D%AA (3)
944[info] - [encode unicode characters that are encoded as 3+ UTF-8 bytes] should interpolate to http://example.com/in/query?%F0%9F%8D%AA=value (4)
945[info] - [no authority] should interpolate to mailto:user@example.com (1)
946[info] - [no authority] should interpolate to mailto:user@example.com?x=y (2)
947[info] - [no authority] should interpolate to mailto:user@example.com (3)
948[info] - [no authority] should interpolate to mailto:y@example.com (4)
949[info] - [no authority] should interpolate to mailto:y@example.com?x=y (5)
950[info] - [no authority] should interpolate to mailto:user@example.com (6)
951[info] - [relative urls - paths] should interpolate to /a/b/c (1)
952[info] - [relative urls - paths] should interpolate to /a/b/c?x=y (2)
953[info] - [relative urls - paths] should interpolate to /a/b/c (3)
954[info] - [relative urls - paths] should interpolate to /y/b/c (4)
955[info] - [relative urls - paths] should interpolate to /y/a%20c/c (5)
956[info] - [relative urls - paths] should interpolate to a (6)
957[info] - [relative urls - paths] should interpolate to y (7)
958[info] - [relative urls - paths] should interpolate to a/b/c (8)
959[info] - [relative urls - paths] should interpolate to y/b/c (9)
960[info] - [relative urls - paths] should interpolate to y/a%20c/c (10)
961[info] - [relative urls - paths] should interpolate to ../a (11)
962[info] - [scheme relative] should interpolate to //example.com (1)
963[info] - [scheme relative] should interpolate to //y.com (2)
964[info] - [scheme relative] should interpolate to //example.com/a/b/c (3)
965[info] - [scheme relative] should interpolate to //example.com/y/b/c (4)
966[info] - [relative - embedded] should interpolate to a/b/c (1)
967[info] - [relative - embedded] should interpolate to a/b/c/d (2)
968[info] - [relative - embedded] should interpolate to a/b%2Fc (3)
969[info] - uri with two ports should validate and throw "port specified multiple times" if not valid
970[info] - uri with a non-numerical port should validate and throw "invalid port" if not valid
971[info] - uri with embedded host+port and port should validate and throw "port specified multiple times" if not valid
972[info] - uri with missing subdomain in hostname should validate and throw "incorrect hostname" if not valid
973[info] - uri with incorrect hostname should validate and throw "incorrect hostname" if not valid
974[info] - empty string as uri should validate and throw "empty string is not valid uri" if not valid
975[info] - empty uri should validate and throw "empty string is not valid uri" if not valid
976
977************************
978Build summary:
979[{
980 "module": "core",
981 "compile": {"status": "ok", "tookMs": 17548, "warnings": 3, "errors": 0, "sourceVersion": "3.8"},
982 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
983 "test-compile": {"status": "ok", "tookMs": 10894, "warnings": 84, "errors": 0, "sourceVersion": "3.8"},
984 "test": {"status": "ok", "tookMs": 1200, "passed": 421, "failed": 0, "ignored": 0, "skipped": 0, "total": 421, "byFramework": [{"framework": "unknown", "stats": {"passed": 421, "failed": 0, "ignored": 0, "skipped": 0, "total": 421}}]},
985 "publish": {"status": "skipped", "tookMs": 0},
986 "metadata": {
987 "crossScalaVersions": ["2.12.20"]
988}
989}]
990************************
991[success] Total time: 42 s, completed Dec 22, 2025, 5:41:38 PM
992[0JChecking patch project/plugins.sbt...
993Checking patch build.sbt...
994Applied patch project/plugins.sbt cleanly.
995Applied patch build.sbt cleanly.