Sender | Message | Time |
---|---|---|
28 Feb 2024 | ||
VMetals changed their display name from kurro#9452 to kurro9452. | 08:47:23 | |
uff0 joined the room. | 12:50:39 | |
uff0 changed their profile picture. | 12:50:40 | |
uff0 | Hello everyone! I'm look for recommendations of a library/tool/project which could produce a call graph from scala source code. Does anyone have any suggestions? | 12:50:41 |
Tomasz Godzik | There is a functionality in LSP that you should be able to use. Call hierarchy I think it's called | 12:52:13 |
Tomasz Godzik | Probably needs some love, since I don't think a lot of users know about it | 12:52:39 |
sethtisue | this might interest you: https://github.com/lightbend-labs/scala-sculpt | 14:16:31 |
sethtisue | (for Scala 2 only, though) | 14:16:54 |
mpilquist changed their profile picture. | 16:35:20 | |
ekrich changed their profile picture. | 18:03:04 | |
29 Feb 2024 | ||
jimka2001 joined the room. | 10:40:45 | |
fel_her | Hey all. Sorry for posting here, I have a more involved question, somewhere at the intersection of metals, sbt as a build server, and scalajs. Feel free to redirect me where ever you see fit. In a lot of projects that have both a web-interface as well as a backend, I use scalajs and laminar for the frontend and normal scala/jvm for the backend. I often start 2 sbts in parallel. In the first, I'm doing:
using sbt revolver to restart my process when a file used by the JVM project changes In the second I'm doing
regenerating my website when the UI files change. I don't want to do something like ~fastLinkJS;reStart in the root project because that would restart my server even though only JS files changed.Now when switching from bloop to sbt as the buildserver for metals, things seem to go awry. Sometimes one or both of the sbts stop compiling. Sometimes spurious errors pop up. Sometimes I get errors like this:
Is it just a bad idea to use sbt as a build server when you have started two sbt in parallel? Should I change the way I do it because there is a better way to only restart the server on JVM changes? | 11:10:38 |
fel_her | (sorry for the novel) | 11:10:46 |
Tomasz Godzik | In reality there is only one SBT server running and it seems that it's not copying well with having metals connect to it and also SBT revolver running | 11:43:30 |
Tomasz Godzik | We actually almost have hot code reload ready via both bloop and SBT, which might work better. Not 100% sure but that's just a guess | 11:44:44 |
Tomasz Godzik | For bloop we need to release it, but SBT should actually work when running via metals | 11:45:14 |
Tomasz Godzik | It's all new and untested so keep on mind it might not solve your problems | 11:45:41 |
Tomasz Godzik | And it's not released so you would need to switch to Prerelease etc. | 11:46:06 |
fel_her | Tomasz Godzik Oh, wow! Hot code reload is really exiting. Anywhere I can read up on it? I don't mind switching to prerelease 🙂 | 11:56:07 |
quafadas | fel_her As a quick check, I've recently been burned on similar with mill. Is there any chance, that bloop / sbt / metals are using different JVMs? In my case metals / mill targeted different JVMs and continuously invalidated caching / compilation. If you know they are all targeting the same, it's one potential source of confusion down. | 12:23:14 |
Tomasz Godzik | The way it's compiled it should always use the same JVM | 12:32:09 |
Tomasz Godzik | Metals itself doesn't compile anything | 12:32:25 |
Tomasz Godzik | We don't have any article yet about hot code reload, but it's basically a new button in the debug console | 12:32:53 |
fel_her | 🙏 👍 | 12:50:23 |
fel_her | That's interesting. I only have one JVM installed and not done any special configuration, so I assume everything should use/target the same one 🙂 | 12:54:19 |
kris_17822 joined the room. | 13:47:15 | |
uff0 | Thank you! Looks useful. But I had some trouble with it due to the Scala signature package having the wrong version | 16:10:00 |
uff0 | * Thank you! Looks useful. But I'm having some trouble with it due to the Scala signature package having a wrong version | 16:17:19 |
uff0 | * Thank you! Looks useful. But I'm having some trouble with it due to the Scala signature package having the wrong version (in com/lightbend/tools/sculpt/cmd/package.class) | 16:18:28 |
beem812 joined the room. | 18:57:07 |