<< 14-01-2025 >>

00:27:17*tiorock joined #nim
00:27:17*rockcavera quit (Killed (tantalum.libera.chat (Nickname regained by services)))
00:27:17*tiorock is now known as rockcavera
00:29:24*tiorock joined #nim
00:29:24*tiorock quit (Changing host)
00:29:24*tiorock joined #nim
00:29:24*rockcavera is now known as Guest1492
00:29:24*tiorock is now known as rockcavera
00:32:18*Guest1492 quit (Ping timeout: 252 seconds)
01:44:11FromDiscord<Robyn [She/Her]> In reply to @rainote "I assume the lsp": Moreso Nim tooling just doesn't get as much TLC as other languages
01:44:35FromDiscord<Robyn [She/Her]> It's still usable, just expect a few quirks and try and look past them :P
01:55:32FromDiscord<rainote> Well it's not necessarily quirks but the ability to crash it fairly easily <:Kelly_think_FB:802706466292367370>
02:08:01*thunder quit (Remote host closed the connection)
02:08:27*thunder joined #nim
02:14:34*thunder quit (Remote host closed the connection)
02:14:59*thunder joined #nim
02:24:48FromDiscord<bostonboston> The lsp is being actively developed, be sure to make issues for things you encounter and everyone can profit
03:10:04*cnx quit (*.net *.split)
03:10:05*mal`` quit (*.net *.split)
03:10:05*Ekho quit (*.net *.split)
03:10:05*xutaxkamay quit (*.net *.split)
03:10:05*Goodbye_Vincent1 quit (*.net *.split)
03:15:04*cnx joined #nim
03:15:04*mal`` joined #nim
03:15:04*Ekho joined #nim
03:15:04*xutaxkamay joined #nim
03:15:04*Goodbye_Vincent1 joined #nim
03:22:16FromDiscord<janakali> I find lsp (nimlangserver) harder to crash in `checkOnSave` mode
03:24:25FromDiscord<janakali> but I have a problem recently that lsp in Neovim refuses to show diagnostics inside projects in this mode. It only works with single files without .nimble .
03:25:19FromDiscord<janakali> I know it's not langserver bug, because it's same for nimls
03:31:51*rockcavera quit (Remote host closed the connection)
03:32:30FromDiscord<janakali> it's really annoying and I've been trying to find what's the problem for a couple weeks already
04:01:16FromDiscord<saemideluxe> sent a code paste, see https://play.nim-lang.org/#pasty=waGziwzz
04:03:07FromDiscord<saemideluxe> For now I installed futhark system-wide, which works fine. But I still wonder what I am missing here.
04:06:05FromDiscord<Elegantbeef> I imagine it's just a case the nimble never checks for bins in local deps, but idk
04:07:36FromDiscord<saemideluxe> But in any `gorgeEx` should be using the current env, right? Which in turn would use the current `$PATH`.
04:11:17FromDiscord<saemideluxe> sent a code paste, see https://play.nim-lang.org/#pasty=sbSZbHbU
04:11:40FromDiscord<saemideluxe> (edit) "https://play.nim-lang.org/#pasty=AfbksuQE" => "https://play.nim-lang.org/#pasty=eGiEbYDE"
05:58:57FromDiscord<lainlaylie> try recompiling with `-f`?
06:01:53FromDiscord<saemideluxe> Same result.
06:25:26FromDiscord<lainlaylie> ok, reproduced it. it works if you use the full path to nimbledeps/bin, e.g. (excuse my fish syntax) `PATH="$PATH:$(pwd)/nimbledeps/bin"`
06:37:04FromDiscord<lainlaylie> alternatively, `../../bin`. gorgeEx uses the directory containing the module that calls it as pwd
06:49:03FromDiscord<saemideluxe> Oh I see. Yeah, it makes total sense, the path is relative to the module, not to `$PWD`. I remember that I actually rely on this behavior of `gorgeEx` in another project.. Thank you very much for your help!
06:49:27FromDiscord<saemideluxe> I thought I actually tried using $PWD, but must have forgotten a `/` or something.
06:55:10FromDiscord<lainlaylie> as an aside, there's `nimble shell` which "Creates a new shell with PATH modified to contain the bin folders of the dependencies", which might be a little more elegant than doing it manually
07:01:18FromDiscord<threefour> On the now passed topic of nimlangserver, is it just my setup, or is it really slow? Sometimes I have to wait upwards of 6-7 seconds for completions to pop up. My setup has fairly instant completions for Go, Rust, Python, JS, TS, pretty much everything but Nim.
07:04:26FromDiscord<lainlaylie> I get similar wait times on my ~1500 LOC project
07:06:27FromDiscord<Elegantbeef> With nimlsp on my project it's pretty much instant
07:06:30FromDiscord<Elegantbeef> But nimlangserver seems to crash so....
07:06:35FromDiscord<Elegantbeef> Cannot say much there 😄
07:07:00FromDiscord<saemideluxe> I had performance issues as well, when using nim lsp with "larger" projects (a few 1000 LOC).
07:07:01FromDiscord<lainlaylie> wait time = startup time; once it's started up completions are pretty quick
07:07:57FromDiscord<Elegantbeef> Well it does have to compile the project first, so a small period to do that is expected on startup
07:09:45FromDiscord<Elegantbeef> Ah it wasn't crashy, just with nimlangserver it does not work with Kate and it opens up a nimsuggest per file
08:09:10*ntat joined #nim
08:32:55FromDiscord<saemideluxe> In reply to @Elegantbeef "Ah it wasn't crashy,": My memory came to it's limit because of all those nimsuggests. I am not sure if that is a nimlangserver issue or if it is in general with langservers. Or maybe a bad configuration of neovim?↵So, for now, I have stopped using lsps for, as I felt that it had produces unnecessary friction too many times (e.g. with Python I also had issues with version issues and the langserver not find
08:40:55FromDiscord<lainlaylie> In reply to @saemideluxe "My memory came to": could that be the classic https://github.com/nim-lang/choosenim/issues/13?
08:41:02FromDiscord<lainlaylie> (edit) "https://github.com/nim-lang/choosenim/issues/13?" => "https://github.com/nim-lang/choosenim/issues/13 ?"
08:42:48*thunder quit (Ping timeout: 264 seconds)
08:46:46FromDiscord<saemideluxe> In reply to @lainlaylie "could that be the": Yep, sounds pretty much like it. If I remember correctly, the nimsuggest processes were around even after closing all editor instances.
08:53:44*SchweinDeBurg quit (Quit: WeeChat 4.6.0-dev)
08:54:10*SchweinDeBurg joined #nim
09:00:39FromDiscord<michael.lenz.> In reply to @saemideluxe "Yep, sounds pretty much": I have zombie processes too. This is probably due to restart of nimlangserver by vscode.
09:04:00FromDiscord<michael.lenz.> I have not tried it yet , https://discord.com/channels/371759389889003530/371759389889003532/1324712756368379934
09:09:48FromDiscord<saemideluxe> Yay! Only just now noticed that Nim manual now shows search results at fixed position instead of top-of-page. Great, that has annoyed me more than one time in the past 😄
09:28:36*m5zs7k quit (Ping timeout: 246 seconds)
09:30:00*beholders_eye joined #nim
09:42:27*beholders_eye quit (Read error: Connection reset by peer)
09:44:08FromDiscord<odexine> I got used to it so I still scroll up when I search
09:44:43*ntat quit (Quit: Leaving)
09:47:01*m5zs7k joined #nim
09:48:19*beholders_eye joined #nim
09:58:49FromDiscord<Robyn [She/Her]> In reply to @rainote "Well it's not necessarily": Are you using nim-lang.org's lsp?
09:58:58FromDiscord<jmgomez> In reply to @janakali "it's really annoying and": fwiw we integrated `nim check` into the lsp so `nimsuggest chk` shouldnt causes more crashes. Also `nimble` and `nims` files are fully supported. A new version will be released soon
09:59:10FromDiscord<Robyn [She/Her]> it's gotten better with not constantly crashing from my experience
09:59:36FromDiscord<jmgomez> (edit) "causes" => "cause"
10:00:08FromDiscord<rainote> In reply to @battery.acid.bubblegum "Are you using nim-lang.org's": yes
10:00:48FromDiscord<Robyn [She/Her]> hm, wonder why you're crashing a lot then...
10:00:53FromDiscord<rainote> had one segfault and multiple ``failed with <empty>`` and some other interesting messages :catderp:
10:01:24FromDiscord<Robyn [She/Her]> ...huh
10:01:41FromDiscord<Robyn [She/Her]> i haven't experienced the latter, and the former hasn't happened in a while, for me
10:02:14FromDiscord<jmgomez> In reply to @rainote "had one segfault and": likely a `nimsuggest` crash, report the issue in the `nim` repo with a small repro if possible
12:19:44FromDiscord<myxi> sent a code paste, see https://play.nim-lang.org/#pasty=ElIoDZBu
12:20:12FromDiscord<myxi> i want --version cli flag of my app and the the version in the .nimble file to be sync
12:21:05FromDiscord<myxi> (edit) "https://play.nim-lang.org/#pasty=jYCcNaMA" => "https://play.nim-lang.org/#pasty=xNkUYPXr"
12:37:03FromDiscord<lainlaylie> Some prefer to keep `version` in your nimble file as a string literal and then parse it out statically, e.g. https://github.com/nim-lang/langserver/blob/5adc15be0f785f0caa3b7fc444e54eeb5596602a/ls.nim#L26
12:37:38FromDiscord<lainlaylie> (edit) "your" => "the"
12:39:53FromDiscord<lainlaylie> An alternative is to use the `-d:NimblePkgVersion` that gets set when building via nimble, but naturally that won't work when building directly via `nim c`
13:43:54*ntat joined #nim
14:41:10FromDiscord<threefour> In reply to @saemideluxe "I had performance issues": Yeah see this is even with brand new, literally >100 LoC projetcs. It could be my setup. Does anyone else use Emacs?
14:42:38FromDiscord<threefour> (edit) ">100" => "<100"
15:09:25*cnx quit (Ping timeout: 265 seconds)
15:11:29*cnx joined #nim
15:13:55*PMunch quit (Quit: Leaving)
17:32:48*xet7 joined #nim
17:37:23*xet7_ joined #nim
17:37:44*xet7_ quit (Remote host closed the connection)
17:41:11*xet7 quit (Ping timeout: 265 seconds)
18:32:31FromDiscord<ruehc> sent a long message, see https://pasty.ee/kAZMuYNX
19:13:59FromDiscord<nnsee> In reply to @ruehc "if i use ": yes, it compiles to c and then uses gcc to compile that c
19:25:29*beholders_eye quit (Ping timeout: 244 seconds)
19:32:03*fallback quit (Ping timeout: 245 seconds)
19:39:39FromDiscord<ruehc> In reply to @nnsee "yes, it compiles to": what if i want to compile directly to llvm ?
19:43:05FromDiscord<fabric.input_output> In reply to @ruehc "what if i want": there's nlvm, a fork that does that
19:43:25FromDiscord<fabric.input_output> or you could compile the generated C into llvm
19:43:35FromDiscord<fabric.input_output> but that's not really directly
19:43:43FromDiscord<ruehc> i don't want to use any c
19:44:26FromDiscord<nervecenter> In reply to @ruehc "i don't want to": In what way do you mean this? Not have to write C? Not have to use any C compilation?
19:44:27Amun-Raswitch to C++ backend
19:45:53FromDiscord<ruehc> In reply to @nervecenter "In what way do": yes
19:46:03FromDiscord<ruehc> i want llvm or assembly
19:46:36Amun-Rayou don't have to touch neither C nor C++ code when using given backend
19:46:54Amun-Raif you're still allergic to C and C++, nim probably isn't for you
19:47:42FromDiscord<ruehc> i see
19:53:21FromDiscord<nervecenter> In reply to @ruehc "i want llvm or": What Anum-Ra said, you do not need to write an C. But Nim compiles to it, and does not, by default, have any other intermediate layer. You must always have a C, C++, or Objective-C compiler handy if you are compiling a native Nim executable. Even when interfacing to C libraries, you should not need to write C, as writing FFI code and linking to C libraries is fairly painless.
19:53:56FromDiscord<nervecenter> Also the C that the Nim compiler produces is not at all meant to be human readable.
19:54:30FromDiscord<nervecenter> (edit) "an" => "any"
19:54:42Amun-Ratreat it just like llvm's IR code
20:03:25*tokyovigilante quit (Ping timeout: 252 seconds)
20:07:05*ntat quit (Quit: Leaving)
20:07:11FromDiscord<demotomohiro> Nim 3 might be able to compile to x86_64 assembly without generating C as Nifc can do so.
20:25:49FromDiscord<Robyn [She/Her]> I don't think that's gonna happen tbh↵(@demotomohiro)
20:26:12FromDiscord<Robyn [She/Her]> It'll be possible but I don't think Araq plans on making an amd64 backend
20:26:14FromDiscord<Robyn [She/Her]> Ig it is a possibility tho
20:27:50FromDiscord<pmunch> Does anyone know of a way to figure out which module would be imported by a `import x` if you where only given `x` in a macro`
20:27:54FromDiscord<pmunch> (edit) "macro`" => "macro?"
20:28:52FromDiscord<pmunch> Like I have a macro `findModule` and somehow `findModule(strutils)` would give me either the path to the module or something like that?
20:40:27FromDiscord<pmunch> One option would of course be to use `std/compilesettings` to get the search and Nimble paths and then go looking myself..
20:40:36FromDiscord<pmunch> But that's a bit.. manual
20:59:30FromDiscord<mjsdev> Hi everyone. Can a Nimble package have a `.` in its name? If not, what is the recommended separator? `-` seems to be bleh
21:06:20FromDiscord<mjsdev> Guessing `_`
21:06:48FromDiscord<nervecenter> yeah `_` is pretty common, `snake_case` is an alternative style for Nim code
21:06:59FromDiscord<nervecenter> `-` is the domain of Lisp
21:07:26FromDiscord<nervecenter> thought for packages...
21:07:29FromDiscord<nervecenter> (edit) "thought" => "though"
21:07:56FromDiscord<nervecenter> https://github.com/ringabout/awesome-nim
21:08:12FromDiscord<nervecenter> some have hyphens but not all, most jam the words together with no punctuation
21:08:38FromDiscord<mjsdev> nimble seems to complain about hyphen
21:08:49FromDiscord<mjsdev> the git repo name is different from what the `.nimble` file can be called
21:35:32FromDiscord<SmaamX> Any person who worked with naylib/raylib and knows it? ↵I'm a beginner and I dont know and dont have any idea how to draw a wall and repeat it (for example, the texture can be repeated for a specific size and be in a specific location)
21:36:59FromDiscord<mjsdev> Hrm... that Nim forum seems to be broken ("Couldn't send to e-mail" for account creation)
21:36:59FromDiscord<SmaamX> Any person who worked with naylib/raylib and knows it? ↵I'm a beginner and I dont know and dont have any idea how to draw a wall and repeat it (for example, the texture can be repeated for a specific size and be in a specific location) plus Idk anything about game save on raylib
21:52:31*rockcavera joined #nim
23:57:29*xaltsc quit (Ping timeout: 245 seconds)