<< 27-04-2026 >>

00:05:50*przmk_ joined #nim
00:08:55*Mister_Magister quit (Quit: bye)
00:11:09*Mister_Magister joined #nim
00:25:36*adigitoleo quit (Ping timeout: 255 seconds)
00:26:57*adigitoleo joined #nim
00:34:22*robertmeta quit (Ping timeout: 244 seconds)
00:38:40*robertmeta joined #nim
00:41:25*noeontheend quit (Ping timeout: 245 seconds)
00:43:43*noeontheend joined #nim
00:44:20*johuck quit (Ping timeout: 245 seconds)
00:44:48*whereiseveryone quit (Ping timeout: 256 seconds)
00:46:46*ursa-major quit (Ping timeout: 244 seconds)
00:47:25*ursa-major joined #nim
00:48:49*johuck joined #nim
00:49:00*whereiseveryone joined #nim
01:19:24*rockcavera quit (Remote host closed the connection)
02:12:29FromDiscord<bung8954> does guzba still maintain his packages?
02:12:56FromDiscord<mr_rowboto> sent a code paste, see https://play.nim-lang.org/#pasty=HznDUSDn
02:22:04FromDiscord<ringabout> In reply to @mr_rowboto "Has anything changed in": Probably a regression of `nimble`(). I got the same problem when trying to use treeform's package
02:22:14FromDiscord<ringabout> https://github.com/nim-lang/Nim/commit/3298863c2fe434110c0ee8687d2f7f639d3549bd
02:22:38FromDiscord<ringabout> (edit) "In reply to @mr_rowboto "Has anything changed in": Probably a regression of `nimble`(). I got the same problem when trying to use treeform's package ... " added "with the devel branch"
02:22:52FromDiscord<mr_rowboto> you mean `vmath`?
02:23:35FromDiscord<ringabout> I was using `silky` and I ran into similar issues
02:23:47FromDiscord<mr_rowboto> hmm
02:24:00FromDiscord<mr_rowboto> In reply to @ringabout "I was using `silky`": (hope that wasn't me btw lol)
02:24:49FromDiscord<bung8954> I saw that too, same package
02:24:59FromDiscord<mr_rowboto> something's fisshy u_u
02:25:02FromDiscord<mr_rowboto> (edit) "fisshy" => "fishy"
02:25:47FromDiscord<bung8954> I was solving more bigger problem so I just switched nim version
02:25:59FromDiscord<mr_rowboto> back to 2.2.8?
02:26:04FromDiscord<mr_rowboto> it seems to work there
02:26:58strogon14_Didn' nimble change its default dependency resolver? Is there an option to change it back?
02:27:50FromDiscord<bung8954> it has 2, parsers and resolvers you can check the help
02:28:56strogon14_Or try downgrading nimble or upgrading to latest git.
02:30:36strogon14_I use grabnim, which has its own PATH entry, somthat changing nim versions doesn't always overwrite the nimble executable in ~/.nimble/bin (as choosenim does).
02:31:05FromDiscord<mr_rowboto> In reply to @strogon14_ "I use grabnim, which": using grabnim too... might that be the issue? don't think so...
02:33:13strogon14_No, if you haven't installed nimble separately, you're still using the version that comes with nim.
02:39:39FromDiscord<bung8954> intresting, I have another package manager written in typescript
03:28:51strogon14_mr_rowboto: where does the stb_nim dep come from, though? The package is not listed in the nimble packages.json.
03:30:39FromDiscord<mr_rowboto> In reply to @strogon14_ "<@176460389662457856>: where does the": _I think_ it comes from nimpng, but let me check
03:30:47FromDiscord<mr_rowboto> (edit) "nimpng," => "nimpng and it's a git repo dep.,"
03:31:19strogon14_How does the require line go exactly?
03:31:33FromDiscord<janakali> sent a long message, see https://pasty.ee/PUIBDmXe
03:32:50strogon14_janakali: I'm doing all that already and it works great.
03:32:53FromDiscord<janakali> (edit) "https://pasty.ee/PHwVxlBe" => "https://pasty.ee/eeyZsXOa"
03:34:40strogon14_Btw, just for giggles, i just installed grabnim on my android tablet in termmux. The aarch64 binary downloaded by the installer didn't work because wrong libc :-)
03:35:37strogon14_But i compiled it from source and then used it to compile and install nim 2.2.10. Took a long while but it worked.
03:39:33FromDiscord<mr_rowboto> In reply to @strogon14_ "<@176460389662457856>: where does the": _Neither does it show on my `nimble deps --tree`_↵What the hell...↵I am so confused.
03:39:36FromDiscord<janakali> I use Termux on my phone all the time. I think it should be possible to make an android build of grabnim, just need to figure out the way without bootstrapping full Termux environment.
03:40:17strogon14_https://github.com/jangko/nimPNG/blob/master/nimPNG.nimble no stb,_nim dep here.
03:40:29FromDiscord<mr_rowboto> In reply to @strogon14_ "https://github.com/jangko/nimPNG/blob/master/nimPNG": yeah nothing to do with nimPNG
03:40:37FromDiscord<mr_rowboto> I pointed at the wrong lib.
03:45:25FromDiscord<mr_rowboto> sent a code paste, see https://play.nim-lang.org/#pasty=MaifFUGP
03:45:29FromDiscord<mr_rowboto> hmmmm
03:46:32FromDiscord<mr_rowboto> I wonder why is it pulling `1.90.9.3`, that looks like an old version
03:47:18FromDiscord<mr_rowboto> of course `requires "https://github.com/dinau/imguin.git"`
03:47:26FromDiscord<mr_rowboto> because I fucked up `#head`
03:48:46FromDiscord<mr_rowboto> ohhh.. but it works now `--` I just had to delete `~/.cache/nim`
03:49:01FromDiscord<mr_rowboto> :Confused:
04:09:25strogon14_Hmm, what does the nim cache have to do with it? Anyway, glad you solved it. These git dep URLs are always tricky and could be documented better in the nimble docs, imho.
04:12:26FromDiscord<mr_rowboto> In reply to @strogon14_ "Hmm, what does the": I don't have the slightest idea
04:13:03FromDiscord<mr_rowboto> I tried nuking `.nimble`, switched from 8 to 10 and back to 8 several times, and the result was always the same
04:13:18FromDiscord<mr_rowboto> only after nuking `.cache/nim` it went different
04:14:35strogon14_I only recently learned about nim c -f
04:14:53FromDiscord<mr_rowboto> forces recompilation?
04:15:03strogon14_Yep
04:15:30FromDiscord<mr_rowboto> thanks for the help btw
04:54:01FromDiscord<bung8954> I just collected 2537 packages and striped in 1.8 GB size
05:56:56*xet7 quit (Remote host closed the connection)
05:58:55*xet7 joined #nim
06:01:47Amun-RaI set up my cache directory to /tmp/.nim-cache not do kill my flash disk too quickly
06:01:56Amun-Rado→to
06:03:37Amun-Rahttps://dpaste.com/GV8HH7B2S
06:31:32*PMunch_ quit (Quit: Leaving)
07:12:01*beholders_eye joined #nim
08:08:06*BuckLie joined #nim
08:13:22*BuckLie quit (Quit: Client closed)
08:22:10*def- quit (Quit: -)
08:22:23*def- joined #nim
08:24:54*marcus quit (Ping timeout: 255 seconds)
08:58:36FromDiscord<narimiran> @capocasa Your bot is pinging me for every issue I was ever mentioned.... Can the message bodies be modified so `@foo` doesn't ping `foo`?
08:58:52FromDiscord<narimiran> (edit) "message" => "issue"
09:15:15FromDiscord<mratsim> @capocasa this is annoying https://media.discordapp.net/attachments/371759389889003532/1498251168399360011/Screenshot_20260427_111441_Software_update.jpg?ex=69f07aa2&is=69ef2922&hm=1f4df03b2b4d1648a04f2f9ecf6cd62b8ba1318bd1d00b90c96b1fd36fcc8d7d&
09:15:56FromDiscord<mratsim> I can scroll 3 screens of that
09:25:08FromDiscord<planetis_m> What kind of feedback are you looking for anyway? That the classification is correct? What;s the point?
09:27:08FromDiscord<planetis_m> a better approach would be if the LLM just tried to reproduce and post a comment that the issue still applies or it's fixed or inconclusive in the original issue, not duplicating it.
09:56:46FromDiscord<asviest> In reply to @planetis_m "a better approach would": it would be nice if it found already resolved issues including features like inferGenericTypes
10:01:58FromDiscord<asviest> For example https://github.com/nim-lang/Nim/issues/11370 can be already resolved
10:17:12FromDiscord<ieltan> In reply to @mratsim "<@378612300426248212> this is annoying": bruh 💀
11:15:59FromDiscord<narimiran> In reply to @narimiran "<@378612300426248212> Your bot is": Two hours later, no response.... Maybe we also need to ping @capocasa 2349289 times?
11:16:42FromDiscord<krisp0> In reply to @mratsim "<@378612300426248212> this is annoying": that is one way to wake someone up 💀
14:00:11FromDiscord<grotesquemalfeasance> In reply to @mratsim "<@378612300426248212> this is annoying": Charles mansons evil schemes getting more and more creative
14:14:33*beholders_eye quit (Ping timeout: 255 seconds)
14:37:44FromDiscord<crochubourbier> sent a long message, see https://pasty.ee/FQnbNgCi
14:39:13FromDiscord<crochubourbier> (edit) "https://pasty.ee/LmDCCFXi" => "https://pasty.ee/qvMVBbSq"
14:41:09*nisstyre joined #nim
14:42:53*beholders_eye joined #nim
15:30:59*_th3r00t joined #nim
15:32:43*th3r00t quit (Ping timeout: 264 seconds)
16:45:14FromDiscord<84mu3lc3p4c7> Even though Nim is ~20 years old, to me it feels ahead of it's time to this date. I think in the future its elegant syntax (which I belive is it's greatest strength) will get more appreciated.
17:40:52FromDiscord<nervecenter> In reply to @84mu3lc3p4c7 "Even though Nim is": It gets that from its total value semantics. Keep a look out because I might get to talk about it for NimConf. 😉
17:45:29FromDiscord<crochubourbier> In reply to @nervecenter "It gets that from": total value semantics ? you mean functions being evaluated at compile time whenever it can be evaluated at compile time (aka. automatic inferring of constexpr on functions and expressions) ?
17:45:45FromDiscord<crochubourbier> (edit) "constexpr on functions and expressions)" => "constexpr)"
17:46:08FromDiscord<crochubourbier> (edit) "you" => "what does that" | "what does thatmean ... functions" added "?"
17:46:23FromDiscord<crochubourbier> (edit) "it" => "the compiler" | removed "be evaluated at compile time"
17:47:56FromDiscord<crochubourbier> or the fact that it automatically passes by reference whenever it can and it also have move semantics with sink ?
18:10:11FromDiscord<nervecenter> sent a long message, see https://pasty.ee/LdnrolLX
18:10:27FromDiscord<nervecenter> (edit) "https://pasty.ee/niGOwgJu" => "https://pasty.ee/lnHcxeGH"
18:10:40FromDiscord<nervecenter> (edit) "https://pasty.ee/HMputnPd" => "https://pasty.ee/LoJLcWFV"
18:11:11FromDiscord<nervecenter> (edit) "https://paste.rs/Mtj3N" => "https://pasty.ee/EBrKqcTS"
18:12:11FromDiscord<nervecenter> Thus leading to a beautifull terse syntax without need for memory-semantic noise by default, and which enforces a very clean program structure of explicitly passing values in an expression-oriented, referentially transparent manner.
18:12:17FromDiscord<nervecenter> (edit) "beautifull" => "beautiful"
18:14:26FromDiscord<nervecenter> Which is a great boon for making higher-level programs focused more on product logic.
18:22:40FromDiscord<mr_rowboto> In reply to @nervecenter "Which is a great": Top tier explanation.
19:29:08*hygo joined #nim
19:55:24FromDiscord<crochubourbier> yeah, my impression is that it has the same base spirit than C of letting you do whatever the hell you want, while giving modern, clean and non verbose syntax and features while still cleverly designing those abstractions to be zero-cost, or as close as possible to zero-cost, and also giving you control of the functional behavior of your program with its side effects system
19:56:07FromDiscord<crochubourbier> (edit) "while giving" => "but gives you" | "clean" => "clean, safe"
20:21:39FromDiscord<ryano3797> Is there a description somewhere of how to use nim packages without using nimble? ie where does nim look for packages, what needs to be true for a package to be found/loaded correctly, etc? ↵↵(Package managers that do too much seem like a bad idea to me: downloading unvalidated code off the internet and running it is crazy, and supply chain attacks have _definitely_ proven to be a thing.)
20:28:34FromDiscord<planetis_m> In reply to @ryano3797 "Is there a description": You only need a nim.cfg file with --noNimblePath and --path:mypackage/src/ for every dependency
20:30:30FromDiscord<planetis_m> Dont ask me are the paths relative to what, or in which order are the nim.cfg files applied, I havent looked at it in more detail.
20:32:11FromDiscord<ryano3797> In reply to @planetis_m "You only need a": Awesome, sounds nice and simple, thanks!
20:38:54FromDiscord<planetis_m> In reply to @ryano3797 "Awesome, sounds nice and": Also, AFAICT, a nim.cfg in a dependency directory is not picked up (so it has no effect outside the current working directory hierarchy); only nim.cfg files found by recursively walking upward from the current working directory are considered.
20:46:00FromDiscord<ryano3797> Do you know if `nim.cfg` is documented anywhere? There's this: https://nim-lang.org/docs/nimc.html#compiler-usage-configuration-files, but it just describes when a nim.cfg file will be picked up, not what goes in the file itself. And this: https://deepwiki.com/nim-lang/atlas/7.1-nim.cfg-management, but that talks about using a specific tool (atlas) within nim.cfg, not the broader file format and options.
20:49:49*rockcavera joined #nim
20:58:21*beholders_eye quit (Ping timeout: 244 seconds)
21:05:25FromDiscord<nasuray> You can also just use a config.nims which is better documented. But nim.cfg is usually just a list of flags that will be passed to the compiler.
21:06:44*amadaluzia quit (Read error: Connection reset by peer)
21:06:56FromDiscord<nasuray> The compiler nim.cfg uses most of its features I think https://github.com/nim-lang/Nim/blob/devel/config/nim.cfg but you don't need any of that to add packages to the module search path
21:17:33*ttkap quit (Ping timeout: 272 seconds)
21:22:55FromDiscord<ryano3797> In reply to @nasuray "You can also just": Ah, okay. Yes, at least I think I can see what the syntax of that file would be better (essentially, Nim syntax). Thanks!↵↵But now I've got a new question. 🙂 When should I be using `config.nims` over `nim.cfg`? Is there documentation for that?
21:25:51FromDiscord<nasuray> Both are valid formats. There are some things that would be much easier to express in nimscript since it's the same syntax and alot of the modules are importable
21:26:26FromDiscord<nasuray> I tend to use config.nims over writing tasks and flags in a .nimble file
21:27:43FromDiscord<nasuray> You can also use the user config file at for example`~/.config/nim/config.nims` to write user-wide configuration (I use it for various helper tasks that can be called as `nim mytask`
21:28:42FromDiscord<ryano3797> Yeah, I just converted my new `nim.cfg` file to a `config.nims` file. The conversion was straightforward, and the result seems easier to understand.
21:29:28FromDiscord<ryano3797> It still just feels like I'm kind of poking around with vibes, rather than understanding how this works though. It's too bad it's not described anywhere.
21:30:00FromDiscord<nasuray> In reply to @ryano3797 "It still just feels": https://nim-lang.org/docs/nims.html
21:30:25*_________ quit (Ping timeout: 265 seconds)
21:31:44FromDiscord<ryano3797> In reply to @nasuray "https://nim-lang.org/docs/nims.html": Yes, and that was very valuable. I mean more the larger scope: why are there two project config standards, when should you use one over the other, is one deprecated, one seems undocumented, etc.
21:35:14FromDiscord<nasuray> config.nims is newer than nim.cfg at least once on the forum I've seen Araq express wanting to shift folks to config.nims over nim.cfg but I don't know if that's still how he feels since I think the VM used for nimscript is annoying from a compiler development perspective and he previously expressed a different config system for nimony... So id say the situation is fluid and don't worry too much about it (config.nims and nim.cfg are both
21:36:28*_________ joined #nim
21:37:03*_________ quit (Client Quit)
21:37:06FromDiscord<nasuray> I also think a lot of folks use both! Personally I then to keep project tasks in a config.nims and module specific compile flags (like `-d:ssl`) in nim.cfg (or the module specific one `name.nim.cfg`
21:37:26FromDiscord<nasuray> (edit) "then" => "tend" | "`name.nim.cfg`" => "`name.nim.cfg`)"
21:38:25*_________ joined #nim
21:40:22FromDiscord<ryano3797> Okay. I'll go with that, thanks!