Build Logs

http4s/http4s-armeria • 3.8.0-RC2:2025-11-26

Errors

0

Warnings

0

Total Lines

334

1##################################
2Clonning https://github.com/http4s/http4s-armeria.git into /build/repo using revision v1.0.0-M8
3##################################
4Note: switching to '5288b95fa5d66abc412306811eb47705f26ec33d'.
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-RC2
22Migrating project for -source:3.4 using Scala 3.7.4-RC2
23----
24Preparing build for 3.7.4-RC2
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----
29Starting build for 3.7.4-RC2
30Execute tests: false
31sbt project found:
32No prepare script found for project http4s/http4s-armeria
33/opencb/project-builder/sbt/prepare-project.sh: line 107: /root/.ssh/config: No such file or directory
34##################################
35Scala version: 3.7.4-RC2
36Targets: org.http4s%http4s-armeria-client org.http4s%http4s-armeria-server
37Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[]}
38##################################
39Using extra scalacOptions: -rewrite,REQUIRE:-source:3.4-migration
40Filtering out scalacOptions: -indent,-no-indent,-new-syntax,,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
41[sbt_options] declare -a sbt_options=()
42[process_args] java_version = '17'
43[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8/rt.jar'
44# Executing command line:
45java
46-Dfile.encoding=UTF-8
47-Dcommunitybuild.scala=3.7.4-RC2
48-Dcommunitybuild.project.dependencies.add=
49-Xmx7G
50-Xms4G
51-Xss8M
52-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
53-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8
54-jar
55/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
56"setCrossScalaVersions 3.7.4-RC2"
57"++3.7.4-RC2 -v"
58"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""
59"set every credentials := Nil"
60"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
61"removeScalacOptionsStartingWith -P:wartremover"
62
63moduleMappings
64"runBuild 3.7.4-RC2 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[]}""" org.http4s%http4s-armeria-client org.http4s%http4s-armeria-server"
65
66[info] [launcher] getting org.scala-sbt sbt 1.11.6 (this may take some time)...
67[info] welcome to sbt 1.11.6 (Eclipse Adoptium Java 17.0.8)
68[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
69[info] loading project definition from /build/repo/project
70[info] compiling 2 Scala sources to /build/repo/project/target/scala-2.12/sbt-1.0/classes ...
71[info] Non-compiled module 'compiler-bridge_2.12' for Scala 2.12.20. Compiling...
72[info] Compilation completed in 8.086s.
73[info] done compiling
74[info] loading settings for project root from build.sbt...
75[info] set scmInfo to https://github.com/http4s/http4s-armeria
76[info] set current project to http4s-armeria (in build file:/build/repo/)
77Execute setCrossScalaVersions: 3.7.4-RC2
78OpenCB::Changing crossVersion 3.3.6 -> 3.7.4-RC2 in server/crossScalaVersions
79OpenCB::Changing crossVersion 3.3.6 -> 3.7.4-RC2 in sbt-http4s-org-scalafix-internal/crossScalaVersions
80OpenCB::Changing crossVersion 3.3.6 -> 3.7.4-RC2 in client/crossScalaVersions
81OpenCB::Changing crossVersion 3.3.6 -> 3.7.4-RC2 in root/crossScalaVersions
82[info] set scmInfo to https://github.com/http4s/http4s-armeria
83[info] set current project to http4s-armeria (in build file:/build/repo/)
84[info] Setting Scala version to 3.7.4-RC2 on 4 projects.
85[info] Switching Scala version on:
86[info] server (2.13.16, 3.7.4-RC2)
87[info] * root (2.13.16, 3.7.4-RC2)
88[info] client (2.13.16, 3.7.4-RC2)
89[info] sbt-http4s-org-scalafix-internal (2.13.16, 3.7.4-RC2)
90[info] Excluding projects:
91[info] exampleArmeriaFs2Grpc (2.13.16)
92[info] exampleArmeriaHttp4s (2.13.16)
93[info] exampleArmeriaScalaPB (2.13.16)
94[info] Reapplying settings...
95[info] set scmInfo to https://github.com/http4s/http4s-armeria
96[info] set current project to http4s-armeria (in build file:/build/repo/)
97Execute 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
98[info] Reapplying settings...
99[info] set scmInfo to https://github.com/http4s/http4s-armeria
100[info] set current project to http4s-armeria (in build file:/build/repo/)
101[info] Defining Global / credentials, client / credentials and 5 others.
102[info] The new values will be used by Compile / scalafmtOnly, IntegrationTest / scalafmtOnly and 61 others.
103[info] Run `last` for details.
104[info] Reapplying settings...
105[info] set scmInfo to https://github.com/http4s/http4s-armeria
106[info] set current project to http4s-armeria (in build file:/build/repo/)
107Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
108[info] Reapplying settings...
109OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
110
111 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:336)
112 Did you mean allExcludeDependencies ?
113 , retry without global scopes
114[info] Reapplying settings...
115[info] set scmInfo to https://github.com/http4s/http4s-armeria
116[info] set current project to http4s-armeria (in build file:/build/repo/)
117Execute removeScalacOptionsStartingWith: -P:wartremover
118[info] Reapplying settings...
119[info] set scmInfo to https://github.com/http4s/http4s-armeria
120[info] set current project to http4s-armeria (in build file:/build/repo/)
121[success] Total time: 0 s, completed Nov 26, 2025, 3:42:13 PM
122Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[]}
123Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),CompileOnly,List()))
124Starting build...
125Projects: Set(client, server)
126Starting build for ProjectRef(file:/build/repo/,client) (http4s-armeria-client)... [0/2]
127OpenCB::Exclude Scala3 specific scalacOption `-rewrite` in Scala 2.12.20 module Global
128OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.4-migration` in Scala 2.12.20 module Global
129OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
130OpenCB::Filter out '-feature', matches setting pattern '^-?-feature'
131Compile scalacOptions: -encoding, UTF-8, -unchecked, -Wunused:implicits, -Wunused:explicits, -Wunused:imports, -Wunused:locals, -Wunused:params, -Wunused:privates, -Wvalue-discard, -language:implicitConversions, -Xkind-projector, -java-output-version, 8, -Xsemanticdb, -semanticdb-target, /build/repo/client/target/scala-3.7.4-RC2/meta, -rewrite, -Wconf:msg=can be rewritten automatically under:s, -source:3.4-migration
132[info] compiling 2 Scala sources to /build/repo/client/target/scala-3.7.4-RC2/classes ...
133[info] [patched file /build/repo/client/src/main/scala/org/http4s/armeria/client/ArmeriaClient.scala]
134[info] [patched file /build/repo/client/src/main/scala/org/http4s/armeria/client/ArmeriaClientBuilder.scala]
135[info] done compiling
136[info] compiling 2 Scala sources to /build/repo/client/target/scala-3.7.4-RC2/classes ...
137[info] done compiling
138[info] compiling 1 Scala source to /build/repo/client/target/scala-3.7.4-RC2/test-classes ...
139[info] done compiling
140Starting build for ProjectRef(file:/build/repo/,server) (http4s-armeria-server)... [1/2]
141Compile scalacOptions: -encoding, UTF-8, -unchecked, -Wunused:implicits, -Wunused:explicits, -Wunused:imports, -Wunused:locals, -Wunused:params, -Wunused:privates, -Wvalue-discard, -language:implicitConversions, -Xkind-projector, -java-output-version, 8, -Xsemanticdb, -semanticdb-target, /build/repo/server/target/scala-3.7.4-RC2/meta, -rewrite, -Wconf:msg=can be rewritten automatically under:s, -source:3.4-migration
142[info] compiling 3 Scala sources to /build/repo/server/target/scala-3.7.4-RC2/classes ...
143[info] [patched file /build/repo/server/src/main/scala/org/http4s/armeria/server/ArmeriaServerBuilder.scala]
144[info] done compiling
145[info] compiling 1 Scala source to /build/repo/server/target/scala-3.7.4-RC2/classes ...
146[info] done compiling
147[info] compiling 2 Scala sources to /build/repo/server/target/scala-3.7.4-RC2/test-classes ...
148[info] [patched file /build/repo/server/src/test/scala/org/http4s/armeria/server/ServerFixture.scala]
149[info] done compiling
150[info] compiling 1 Scala source to /build/repo/server/target/scala-3.7.4-RC2/test-classes ...
151[info] done compiling
152[info] compiling 1 Scala source to /build/repo/server/target/scala-3.7.4-RC2/test-classes ...
153[info] done compiling
154
155************************
156Build summary:
157[{
158 "module": "http4s-armeria-client",
159 "compile": {"status": "ok", "tookMs": 9094, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
160 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
161 "test-compile": {"status": "ok", "tookMs": 6152, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
162 "test": {"status": "skipped", "tookMs": 0, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
163 "publish": {"status": "skipped", "tookMs": 0},
164 "metadata": {
165 "crossScalaVersions": ["2.13.16", "3.3.6"]
166}
167},{
168 "module": "http4s-armeria-server",
169 "compile": {"status": "ok", "tookMs": 2422, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
170 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
171 "test-compile": {"status": "ok", "tookMs": 3932, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
172 "test": {"status": "skipped", "tookMs": 0, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
173 "publish": {"status": "skipped", "tookMs": 0},
174 "metadata": {
175 "crossScalaVersions": ["2.13.16", "3.3.6"]
176}
177}]
178************************
179[success] Total time: 63 s (0:01:03.0), completed Nov 26, 2025, 3:43:15 PM
180[0JChecking patch project/plugins.sbt...
181Checking patch build.sbt...
182Applied patch project/plugins.sbt cleanly.
183Applied patch build.sbt cleanly.
184Commit migration rewrites
185Switched to a new branch 'opencb/migrate-source-3.4'
186[opencb/migrate-source-3.4 2dd4a71] Apply Scala compiler rewrites using -source:3.4-migration using Scala 3.7.4-RC2
187 4 files changed, 11 insertions(+), 11 deletions(-)
188----
189Preparing build for 3.8.0-RC2
190Scala binary version found: 3.8
191Implicitly using source version 3.8
192Scala binary version found: 3.8
193Implicitly using source version 3.8
194Would try to apply common scalacOption (best-effort, sbt/mill only):
195Append: ,REQUIRE:-source:3.8
196Remove: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
197----
198Starting build for 3.8.0-RC2
199Execute tests: false
200sbt project found:
201No prepare script found for project http4s/http4s-armeria
202/opencb/project-builder/sbt/prepare-project.sh: line 107: /root/.ssh/config: No such file or directory
203##################################
204Scala version: 3.8.0-RC2
205Targets: org.http4s%http4s-armeria-client org.http4s%http4s-armeria-server
206Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[]}
207##################################
208Using extra scalacOptions: ,REQUIRE:-source:3.8
209Filtering out scalacOptions: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
210[sbt_options] declare -a sbt_options=()
211[process_args] java_version = '17'
212[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8/rt.jar'
213# Executing command line:
214java
215-Dfile.encoding=UTF-8
216-Dcommunitybuild.scala=3.8.0-RC2
217-Dcommunitybuild.project.dependencies.add=
218-Xmx7G
219-Xms4G
220-Xss8M
221-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
222-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8
223-jar
224/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
225"setCrossScalaVersions 3.8.0-RC2"
226"++3.8.0-RC2 -v"
227"mapScalacOptions ",REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s" ",-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
228"set every credentials := Nil"
229"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
230"removeScalacOptionsStartingWith -P:wartremover"
231
232moduleMappings
233"runBuild 3.8.0-RC2 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[]}""" org.http4s%http4s-armeria-client org.http4s%http4s-armeria-server"
234
235[info] welcome to sbt 1.11.6 (Eclipse Adoptium Java 17.0.8)
236[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
237[info] loading project definition from /build/repo/project
238[info] loading settings for project root from build.sbt...
239[info] set scmInfo to https://github.com/http4s/http4s-armeria
240[info] set current project to http4s-armeria (in build file:/build/repo/)
241Execute setCrossScalaVersions: 3.8.0-RC2
242OpenCB::Changing crossVersion 3.3.6 -> 3.8.0-RC2 in server/crossScalaVersions
243OpenCB::Changing crossVersion 3.3.6 -> 3.8.0-RC2 in sbt-http4s-org-scalafix-internal/crossScalaVersions
244[info] set scmInfo to https://github.com/http4s/http4s-armeria
245OpenCB::Changing crossVersion 3.3.6 -> 3.8.0-RC2 in client/crossScalaVersions
246OpenCB::Changing crossVersion 3.3.6 -> 3.8.0-RC2 in root/crossScalaVersions
247[info] set current project to http4s-armeria (in build file:/build/repo/)
248[info] Setting Scala version to 3.8.0-RC2 on 4 projects.
249[info] Switching Scala version on:
250[info] server (2.13.16, 3.8.0-RC2)
251[info] * root (2.13.16, 3.8.0-RC2)
252[info] client (2.13.16, 3.8.0-RC2)
253[info] sbt-http4s-org-scalafix-internal (2.13.16, 3.8.0-RC2)
254[info] Excluding projects:
255[info] exampleArmeriaFs2Grpc (2.13.16)
256[info] exampleArmeriaHttp4s (2.13.16)
257[info] exampleArmeriaScalaPB (2.13.16)
258[info] Reapplying settings...
259[info] set scmInfo to https://github.com/http4s/http4s-armeria
260[info] set current project to http4s-armeria (in build file:/build/repo/)
261Execute mapScalacOptions: ,REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
262[info] Reapplying settings...
263[info] set scmInfo to https://github.com/http4s/http4s-armeria
264[info] set current project to http4s-armeria (in build file:/build/repo/)
265[info] Defining Global / credentials, client / credentials and 5 others.
266[info] The new values will be used by Compile / scalafmtOnly, IntegrationTest / scalafmtOnly and 61 others.
267[info] Run `last` for details.
268[info] Reapplying settings...
269[info] set scmInfo to https://github.com/http4s/http4s-armeria
270[info] set current project to http4s-armeria (in build file:/build/repo/)
271Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
272[info] Reapplying settings...
273OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
274
275 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:336)
276 Did you mean allExcludeDependencies ?
277 , retry without global scopes
278[info] Reapplying settings...
279[info] set scmInfo to https://github.com/http4s/http4s-armeria
280[info] set current project to http4s-armeria (in build file:/build/repo/)
281Execute removeScalacOptionsStartingWith: -P:wartremover
282[info] Reapplying settings...
283[info] set scmInfo to https://github.com/http4s/http4s-armeria
284[info] set current project to http4s-armeria (in build file:/build/repo/)
285[success] Total time: 0 s, completed Nov 26, 2025, 3:43:28 PM
286Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[]}
287Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),CompileOnly,List()))
288Starting build...
289Projects: Set(client, server)
290Starting build for ProjectRef(file:/build/repo/,client) (http4s-armeria-client)... [0/2]
291OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.8` in Scala 2.12.20 module Global
292OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
293OpenCB::Filter out '-feature', matches setting pattern '^-?-feature'
294Compile scalacOptions: -encoding, UTF-8, -unchecked, -Wunused:implicits, -Wunused:explicits, -Wunused:imports, -Wunused:locals, -Wunused:params, -Wunused:privates, -Wvalue-discard, -language:implicitConversions, -Xkind-projector, --java-output-version:17, -Xsemanticdb, -semanticdb-target, /build/repo/client/target/scala-3.8.0-RC2/meta, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
295[info] compiling 2 Scala sources to /build/repo/client/target/scala-3.8.0-RC2/classes ...
296[info] done compiling
297[info] compiling 1 Scala source to /build/repo/client/target/scala-3.8.0-RC2/test-classes ...
298[info] done compiling
299Starting build for ProjectRef(file:/build/repo/,server) (http4s-armeria-server)... [1/2]
300Compile scalacOptions: -encoding, UTF-8, -unchecked, -Wunused:implicits, -Wunused:explicits, -Wunused:imports, -Wunused:locals, -Wunused:params, -Wunused:privates, -Wvalue-discard, -language:implicitConversions, -Xkind-projector, --java-output-version:17, -Xsemanticdb, -semanticdb-target, /build/repo/server/target/scala-3.8.0-RC2/meta, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
301[info] compiling 3 Scala sources to /build/repo/server/target/scala-3.8.0-RC2/classes ...
302[info] done compiling
303[info] compiling 2 Scala sources to /build/repo/server/target/scala-3.8.0-RC2/test-classes ...
304[info] done compiling
305
306************************
307Build summary:
308[{
309 "module": "http4s-armeria-client",
310 "compile": {"status": "ok", "tookMs": 11979, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
311 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
312 "test-compile": {"status": "ok", "tookMs": 3373, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
313 "test": {"status": "skipped", "tookMs": 0, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
314 "publish": {"status": "skipped", "tookMs": 0},
315 "metadata": {
316 "crossScalaVersions": ["2.13.16", "3.3.6"]
317}
318},{
319 "module": "http4s-armeria-server",
320 "compile": {"status": "ok", "tookMs": 3075, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
321 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
322 "test-compile": {"status": "ok", "tookMs": 2897, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
323 "test": {"status": "skipped", "tookMs": 0, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
324 "publish": {"status": "skipped", "tookMs": 0},
325 "metadata": {
326 "crossScalaVersions": ["2.13.16", "3.3.6"]
327}
328}]
329************************
330[success] Total time: 35 s, completed Nov 26, 2025, 3:44:03 PM
331[0JChecking patch project/plugins.sbt...
332Checking patch build.sbt...
333Applied patch project/plugins.sbt cleanly.
334Applied patch build.sbt cleanly.