Skip to content

Conversation

waghanza
Copy link
Collaborator

@waghanza waghanza commented Sep 29, 2025

Missing

  • yada
  • hunt
  • helidon-se
  • basolato
  • scorper
  • akkahttp
  • v

@waghanza waghanza added the release This PR contains results update label Sep 29, 2025
Copy link
Collaborator Author

@waghanza waghanza left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wrong image for scala

@waghanza
Copy link
Collaborator Author

@richhickey @puredanger @yogthos with luminus I have

1037  ERROR luminus.core - {:what :uncaught-exception, :exception #error {
 :cause a path to conf "" can't be found or have an invalid config (problem with the format?) java.io.FileNotFoundException:  (No such file or directory)
 :via
 [{:type java.lang.RuntimeException
   :message could not start [#'luminus.config/env] due to
   :at [mount.core$up$fn__416 invoke core.cljc 80]}
  {:type java.lang.IllegalArgumentException
   :message a path to conf "" can't be found or have an invalid config (problem with the format?) java.io.FileNotFoundException:  (No such file or directory)
   :at [cprop.source$from_file invokeStatic source.cljc 240]}]
 :trace
 [[cprop.source$from_file invokeStatic source.cljc 240]
  [cprop.source$from_file invoke source.cljc 228]
  [cprop.source$from_file invokeStatic source.cljc 231]
  [cprop.source$from_file invoke source.cljc 228]
  [cprop.source$ignore_missing_default invokeStatic source.cljc 286]
  [cprop.source$ignore_missing_default invoke source.cljc 281]
  [cprop.core$load_config invokeStatic core.cljc 19]
  [cprop.core$load_config doInvoke core.cljc 15]
  [clojure.lang.RestFn invoke RestFn.java 424]
  [luminus.config$fn__611 invokeStatic config.clj 9]
  [luminus.config$fn__611 invoke config.clj 7]
  [mount.core$record_BANG_ invokeStatic core.cljc 74]
  [mount.core$record_BANG_ invoke core.cljc 73]
  [mount.core$up$fn__416 invoke core.cljc 81]
  [mount.core$up invokeStatic core.cljc 80]
  [mount.core$up invoke core.cljc 78]
  [mount.core$bring invokeStatic core.cljc 247]
  [mount.core$bring invoke core.cljc 239]
  [mount.core$start invokeStatic core.cljc 289]
  [mount.core$start doInvoke core.cljc 281]
  [clojure.lang.RestFn invoke RestFn.java 400]
  [mount.core$start_with_args invokeStatic core.cljc 389]
  [mount.core$start_with_args doInvoke core.cljc 385]
  [clojure.lang.RestFn invoke RestFn.java 413]
  [luminus.core$start_app invokeStatic core.clj 49]
  [luminus.core$start_app invoke core.clj 48]
  [luminus.core$_main invokeStatic core.clj 57]
  [luminus.core$_main doInvoke core.clj 56]
  [clojure.lang.RestFn applyTo RestFn.java 140]
  [luminus.core main nil -1]]}, :where Uncaught exception onmain}

cna you take a look ?

@yogthos
Copy link

yogthos commented Sep 29, 2025

Looks like the error traces to the config library trying to check for a file here, and the exception that's thrown should be getting caught here, but for some reason with the new JRE it appears to propagate.

@puredanger
Copy link

puredanger commented Sep 29, 2025

I don't know if this relates, but there was a regression and bug fix specifically around new File("").exists().
See https://bugs.openjdk.org/browse/JDK-8024695 - from Java 25 release notes:

java.io.File Treats the Empty Pathname As the Current User Directory (JDK-8024695)

The java.io.File class is changed so that an instance of File created from the empty abstract pathname ("") now behaves consistently like a File created from the current user directory. Long standing behavior was for some methods to fail for the empty pathname. The change means that the canRead, exists, and isDirectory methods return true instead of failing with false, and the getFreeSpace, lastModified, and length methods return the expected values instead of zero. Methods such as setReadable and setLastModified will attempt to change the file's attributes instead of failing. WIth this change, java.io.File now matches the behavior of the java.nio.file API.

@waghanza
Copy link
Collaborator Author

We are using JDK 25 (temurin), so might be related @puredanger

@waghanza
Copy link
Collaborator Author

and might be treated in https://github.com/tolitius/cprop/pull/61/files @yogthos

@yogthos
Copy link

yogthos commented Sep 30, 2025

yup that looks like the fix

@waghanza
Copy link
Collaborator Author

waghanza commented Oct 2, 2025

@enghitalo for pure v implementation I have

 > [build 11/11] RUN v .  -prod -cc gcc  -o server:
0.337 src/controllers.v:4:1: builder error: cannot import module "enghitalo.vanilla.http_server" (not found)
0.337     2 |
0.337     3 | import strings
0.337     4 | import enghitalo.vanilla.http_server
0.337       | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0.337     5 |
0.337     6 | const http_ok_response = 'HTTP/1.1 200 OK\r\nContent-Type: application/json\r\nContent-Length: 0\r\nConnection: keep-alive\r\n\r\n'.bytes()
------

@enghitalo
Copy link
Contributor

@enghitalo for pure v implementation I have

 > [build 11/11] RUN v .  -prod -cc gcc  -o server:
0.337 src/controllers.v:4:1: builder error: cannot import module "enghitalo.vanilla.http_server" (not found)
0.337     2 |
0.337     3 | import strings
0.337     4 | import enghitalo.vanilla.http_server
0.337       | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0.337     5 |
0.337     6 | const http_ok_response = 'HTTP/1.1 200 OK\r\nContent-Type: application/json\r\nContent-Length: 0\r\nConnection: keep-alive\r\n\r\n'.bytes()
------

This library was implemented in the official V library under a different name. I'll try to fix that tomorrow.

@waghanza
Copy link
Collaborator Author

waghanza commented Oct 2, 2025

@whiplash for akkahttp I have

[1/2] STEP 8/8: RUN sbt universal:packageZipTarball
WARNING: A terminally deprecated method in sun.misc.Unsafe has been called
WARNING: sun.misc.Unsafe::objectFieldOffset has been called by scala.runtime.LazyVals$ (file:/usr/share/sbt/bin/sbt-launch.jar)
WARNING: Please consider reporting this to the maintainers of class scala.runtime.LazyVals$
WARNING: sun.misc.Unsafe::objectFieldOffset will be removed in a future release
WARNING: A terminally deprecated method in sun.misc.Unsafe has been called
WARNING: sun.misc.Unsafe::objectFieldOffset has been called by scala.runtime.LazyVals$ (file:/usr/share/sbt/bin/sbt-launch.jar)
WARNING: Please consider reporting this to the maintainers of class scala.runtime.LazyVals$
WARNING: sun.misc.Unsafe::objectFieldOffset will be removed in a future release
WARNING: A restricted method in java.lang.System has been called
WARNING: java.lang.System::load has been called by com.sun.jna.Native in an unnamed module (file:/root/.sbt/boot/scala-2.12.20/org.scala-sbt/sbt/1.11.6/jna-5.12.0.jar)
WARNING: Use --enable-native-access=ALL-UNNAMED to avoid a warning for callers in this module
WARNING: Restricted methods will be blocked in a future release unless native access is enabled

[info] Updated file /usr/src/app/project/build.properties: set sbt.version to 1.11.6
[info] welcome to sbt 1.11.6 (Eclipse Adoptium Java 25)
[info] loading settings for project app-build from assembly.sbt, plugins.sbt...
[info] loading project definition from /usr/src/app/project
[info] loading settings for project app from build.sbt...
[info] set current project to server (in build file:/usr/src/app/)
[warn] sbt 0.13 shell syntax is deprecated; use slash syntax instead: Universal / packageZipTarball
[info] Wrote /usr/src/app/target/scala-3.7.3/server_3-0.1.0-SNAPSHOT.pom
[warn]
[warn]  Note: Unresolved dependencies path:
[error] sbt.librarymanagement.ResolveException: Error downloading com.typesafe.akka:akka-actor-typed_3:2.10.5
[error]   Not found
[error]   Not found
[error]   not found: /root/.ivy2/localcom.typesafe.akka/akka-actor-typed_3/2.10.5/ivys/ivy.xml
[error]   not found: https://repo1.maven.org/maven2/com/typesafe/akka/akka-actor-typed_3/2.10.5/akka-actor-typed_3-2.10.5.pom
[error]   forbidden: https://repo.akka.io/maven/com/typesafe/akka/akka-actor-typed_3/2.10.5/akka-actor-typed_3-2.10.5.pom
[error] Error downloading com.typesafe.akka:akka-stream_3:2.10.5
[error]   Not found
[error]   Not found
[error]   not found: /root/.ivy2/localcom.typesafe.akka/akka-stream_3/2.10.5/ivys/ivy.xml
[error]   not found: https://repo1.maven.org/maven2/com/typesafe/akka/akka-stream_3/2.10.5/akka-stream_3-2.10.5.pom
[error]   forbidden: https://repo.akka.io/maven/com/typesafe/akka/akka-stream_3/2.10.5/akka-stream_3-2.10.5.pom
[error] Error downloading com.typesafe.akka:akka-http_3:10.7.2
[error]   Not found
[error]   Not found
[error]   not found: /root/.ivy2/localcom.typesafe.akka/akka-http_3/10.7.2/ivys/ivy.xml
[error]   not found: https://repo1.maven.org/maven2/com/typesafe/akka/akka-http_3/10.7.2/akka-http_3-10.7.2.pom
[error]   forbidden: https://repo.akka.io/maven/com/typesafe/akka/akka-http_3/10.7.2/akka-http_3-10.7.2.pom
[error]         at lmcoursier.CoursierDependencyResolution.unresolvedWarningOrThrow(CoursierDependencyResolution.scala:347)
[error]         at lmcoursier.CoursierDependencyResolution.$anonfun$update$39(CoursierDependencyResolution.scala:316)
[error]         at scala.util.Either$LeftProjection.map(Either.scala:573)
[error]         at lmcoursier.CoursierDependencyResolution.update(CoursierDependencyResolution.scala:316)
[error]         at sbt.librarymanagement.DependencyResolution.update(DependencyResolution.scala:60)
[error]         at sbt.internal.LibraryManagement$.resolve$1(LibraryManagement.scala:60)
[error]         at sbt.internal.LibraryManagement$.$anonfun$cachedUpdate$12(LibraryManagement.scala:142)
[error]         at sbt.util.Tracked$.$anonfun$lastOutput$1(Tracked.scala:74)
[error]         at sbt.internal.LibraryManagement$.$anonfun$cachedUpdate$11(LibraryManagement.scala:144)
[error]         at sbt.internal.LibraryManagement$.$anonfun$cachedUpdate$11$adapted(LibraryManagement.scala:131)
[error]         at sbt.util.Tracked$.$anonfun$inputChangedW$1(Tracked.scala:220)
[error]         at sbt.internal.LibraryManagement$.cachedUpdate(LibraryManagement.scala:169)
[error]         at sbt.Classpaths$.$anonfun$updateTask0$1(Defaults.scala:3993)
[error]         at scala.Function1.$anonfun$compose$1(Function1.scala:49)
[error]         at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:63)
[error]         at sbt.std.Transform$$anon$4.work(Transform.scala:69)
[error]         at sbt.Execute.$anonfun$submit$2(Execute.scala:283)
[error]         at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:24)
[error]         at sbt.Execute.work(Execute.scala:292)
[error]         at sbt.Execute.$anonfun$submit$1(Execute.scala:283)
[error]         at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:265)
[error]         at sbt.CompletionService$$anon$2.call(CompletionService.scala:65)
[error]         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:328)
[error]         at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:545)
[error]         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:328)
[error]         at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1090)
[error]         at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:614)
[error]         at java.base/java.lang.Thread.run(Thread.java:1474)
[error] (update) sbt.librarymanagement.ResolveException: Error downloading com.typesafe.akka:akka-actor-typed_3:2.10.5
[error]   Not found
[error]   Not found
[error]   not found: /root/.ivy2/localcom.typesafe.akka/akka-actor-typed_3/2.10.5/ivys/ivy.xml
[error]   not found: https://repo1.maven.org/maven2/com/typesafe/akka/akka-actor-typed_3/2.10.5/akka-actor-typed_3-2.10.5.pom
[error]   forbidden: https://repo.akka.io/maven/com/typesafe/akka/akka-actor-typed_3/2.10.5/akka-actor-typed_3-2.10.5.pom
[error] Error downloading com.typesafe.akka:akka-stream_3:2.10.5
[error]   Not found
[error]   Not found
[error]   not found: /root/.ivy2/localcom.typesafe.akka/akka-stream_3/2.10.5/ivys/ivy.xml
[error]   not found: https://repo1.maven.org/maven2/com/typesafe/akka/akka-stream_3/2.10.5/akka-stream_3-2.10.5.pom
[error]   forbidden: https://repo.akka.io/maven/com/typesafe/akka/akka-stream_3/2.10.5/akka-stream_3-2.10.5.pom
[error] Error downloading com.typesafe.akka:akka-http_3:10.7.2
[error]   Not found
[error]   Not found
[error]   not found: /root/.ivy2/localcom.typesafe.akka/akka-http_3/10.7.2/ivys/ivy.xml
[error]   not found: https://repo1.maven.org/maven2/com/typesafe/akka/akka-http_3/10.7.2/akka-http_3-10.7.2.pom
[error]   forbidden: https://repo.akka.io/maven/com/typesafe/akka/akka-http_3/10.7.2/akka-http_3-10.7.2.pom
[error] Total time: 2 s, completed Oct 2, 2025, 8:01:53 PM
Error: building at STEP "RUN sbt universal:packageZipTarball": while running runtime: exit status 1

could you take a look ?

I have made some updates to use java 25

@waghanza
Copy link
Collaborator Author

waghanza commented Oct 2, 2025

@itsumura-h for basolato, I have

[1/2] STEP 21/21: RUN ducere build -p 3000
fatal.nim(53)            sysFatal
Error: unhandled exception: index out of bounds, the container is empty [IndexDefect]
Error: building at STEP "RUN ducere build -p 3000": while running runtime: exit status 1

could you take a look ?

@waghanza
Copy link
Collaborator Author

waghanza commented Oct 2, 2025

@juxt @malcolmsparks @SevereOverfl0w Is yada still maintained ?

@whiplash
Copy link
Contributor

whiplash commented Oct 4, 2025

for akka problem might be that it's not open source now (read the note here).

the open source version is pekko.

@whiplash
Copy link
Contributor

whiplash commented Oct 4, 2025

the good news is if you create a pekko folder and put the same files you basically just need to change

  • build.sbt
  • src/main/scala/Main.scala

build.sbt will become something like

name := "server"
scalaVersion := "3.7.1"

val PekkoVersion = "1.1.5"
val PekkoHttpVersion = "1.2.0"
libraryDependencies ++= Seq(
  "org.apache.pekko" %% "pekko-actor-typed" % PekkoVersion,
  "org.apache.pekko" %% "pekko-stream" % PekkoVersion,
  "org.apache.pekko" %% "pekko-http" % PekkoHttpVersion
)
enablePlugins(JavaAppPackaging)

and the scala file will just change the imports and start like this

import org.apache.pekko
import pekko.actor.ActorSystem
import pekko.http.scaladsl.Http
import pekko.http.scaladsl.server.Directives._

and obviously the config.yaml should have website: pekko.apache.org

@whiplash
Copy link
Contributor

whiplash commented Oct 4, 2025

Silly me. You already have Pekko. That's it. I would scrap Akka from now on. But it's totally your call.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release This PR contains results update
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants