<< 09-09-2024 >>

00:14:03*lucasta quit (Quit: Leaving)
00:35:54*xutaxkamay joined #nim
00:41:33*xutaxkamay quit (Ping timeout: 272 seconds)
00:45:21*xutaxkamay joined #nim
00:47:56*xutaxkamay quit (Client Quit)
00:52:50*lucasta joined #nim
01:26:33*xutaxkamay joined #nim
01:27:56*xutaxkamay quit (Read error: Connection reset by peer)
01:28:16*xutaxkamay joined #nim
01:29:41FromDiscord<Langosta> Good evening yall, I'm setting up vim in a new vm and the typical curl/wget installation script does not seem to be working
01:30:54FromDiscord<Langosta> is this the channel where I could get help troubleshooting?
01:33:50*xutaxkamay quit (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in)
01:34:45*xutaxkamay joined #nim
01:37:05*xutaxkamay quit (Client Quit)
01:37:15*SchweinDeBurg quit (Quit: WeeChat 4.5.0-dev)
01:37:54*xutaxkamay joined #nim
02:50:27FromDiscord<haruki_777> Hello everyone.
03:10:30*albe quit (Quit: The Lounge - https://thelounge.chat)
03:16:15*nmz left #nim (Ploop)
03:39:25*albe joined #nim
03:51:21*lucasta quit (Quit: Leaving)
04:20:11*SchweinDeBurg joined #nim
04:25:15*SchweinDeBurg quit (Ping timeout: 246 seconds)
04:26:44FromDiscord<floppy._disk> In reply to @aintea "Sometimes it works great,": Could you please lemme know how you've got it setup? I simply can't get it to work properly even once
04:27:25*SchweinDeBurg joined #nim
06:37:38termerdon't use Nim stdlib HTTP client
06:37:52termerit buffers the body and there's nothing you can do about it
07:18:30*SchweinDeBurg quit (Ping timeout: 246 seconds)
07:20:40*SchweinDeBurg joined #nim
07:32:16*xet7 joined #nim
07:39:07FromDiscord<Robyn [She/Her]> In reply to @termer "it buffers the body": huh? it has a way to stream responses though
08:34:06*SchweinDeBurg quit (Ping timeout: 246 seconds)
08:36:00*SchweinDeBurg joined #nim
08:54:59*mfg joined #nim
09:03:57*bcksl quit (Quit: \)
09:03:57*end quit (Quit: end)
09:05:08*alexdaguy joined #nim
09:22:33*bcksl joined #nim
09:31:59*end joined #nim
10:13:24*beholders_eye joined #nim
11:12:14*ryuukk quit (Remote host closed the connection)
11:22:56*ryuukk joined #nim
11:28:11*GoldLeader87 joined #nim
11:57:47*GoldLeader87 quit (Quit: GoldLeader87)
11:58:33*Jhonny2x4 quit (Quit: Jhonny2x4)
11:58:42*Jhonny2x4 joined #nim
12:36:19*SchweinDeBurg quit (Ping timeout: 252 seconds)
12:38:20*SchweinDeBurg joined #nim
12:44:34*ryuukk quit (Ping timeout: 265 seconds)
12:44:44*ryuukk_ joined #nim
12:53:05*ryuukk_ quit (Ping timeout: 248 seconds)
12:53:26*ryuukk joined #nim
12:55:50*SchweinDeBurg quit (Ping timeout: 260 seconds)
13:22:25*alexdaguy quit (Quit: w)
13:28:00*SchweinDeBurg joined #nim
13:34:21FromDiscord<zumi.dxy> I am currently trying to use guildenstern but I do not like how it forces a separation between regular HTTP requests and multipart requests
13:35:03FromDiscord<zumi.dxy> I'm ending up literally copy and pasting the multipart code just so I can use it alongside regular requests in a single port
13:35:21FromDiscord<zumi.dxy> where it's just an `isMultipartRequest` away
13:37:20FromDiscord<zumi.dxy> (besides, the multipart stuff inherits the regular http stuff anyway…)
13:40:21*SchweinDeBurg quit (Ping timeout: 246 seconds)
13:42:17*SchweinDeBurg joined #nim
13:57:46*ntat joined #nim
14:06:25*lucasta joined #nim
14:09:24termerRobyn Sorry, I forgot it does have a stream interface
14:10:05termerbut in the case of FutureStream (maybe the sync version as well), it has no size limit, so if you're reading slower than it's being sent to you, it will continue to allocate more and more memory
14:10:24termerthat's how I remember it anyway
14:10:45termerit's been a while, but there was definitely some extremely bad problem that prevented me from using it, besides bad performance
14:27:10*ryuukk quit (Remote host closed the connection)
14:28:55*ryuukk joined #nim
14:30:27FromDiscord<Robyn [She/Her]> In reply to @termer "but in the case": makes sense
14:59:41*mfg quit (Ping timeout: 255 seconds)
15:02:13*disso-peach quit (Quit: Leaving)
15:03:14FromDiscord<nocturn9x> FYI, it seems Nim is not able to detect improper usage of `var` parameters passed to thread procs
15:03:26FromDiscord<nocturn9x> or if that use case is supposed to work, it generates invalid C code
15:38:21FromDiscord<enthus1ast.> @goerge_lsd when you want to do fancy stuff, you could have a look at the libcurl wrapper
15:39:02FromDiscord<michaelb.eth> In reply to @nocturn9x "FYI, it seems Nim": are you forcing it with gcsafe? I’m surprised it compiles
15:39:03FromDiscord<enthus1ast.> Libcurl is also used by puppy on unix
15:39:18FromDiscord<nocturn9x> In reply to @michaelb.eth "are you forcing it": ah yeah lmao
15:39:22FromDiscord<nocturn9x> that would do it
15:39:42FromDiscord<nocturn9x> nim complains about some things not being GC safe despite them being fine so I have to do that
15:40:44FromDiscord<michaelb.eth> most of the time, ime, if you force with gcsafe annotation you’re actually compiling code that is still actually unsafe and will sigsegv soon/later
15:41:10FromDiscord<nocturn9x> has played hundreds of thousands of games on a variety of environments with no crashes to speak of
15:41:18FromDiscord<nocturn9x> so I doubt it :)
15:41:27FromDiscord<nocturn9x> no memleaks either
15:41:31FromDiscord<michaelb.eth> are you using atomicarc?
15:41:39FromDiscord<nocturn9x> nope, actually
15:41:49FromDiscord<nocturn9x> used to use it but idk why I switched back to regular ARC?
15:42:16FromDiscord<nocturn9x> most shared stuff is `ptr`s anyway to avoid messing with nim's awful thread impl. anyway so it's a non-issue
15:42:27FromDiscord<nocturn9x> and also to control alignment more easily
15:42:43FromDiscord<michaelb.eth> sure, can be do-able with ptr
15:42:50FromDiscord<nocturn9x> threading in nim is like the most painful experience ever, I'd rather write COBOL than go through that pain again
15:43:04FromDiscord<nocturn9x> the docs are shit, the new libraries don't work and the old system is clunky and buggy
15:43:12FromDiscord<michaelb.eth> yep
15:43:29FromDiscord<nocturn9x> a shame really cuz when it works it's great™️
15:43:38FromDiscord<nocturn9x> but it was so bad that I considered a zig rewrite at one point
15:43:52FromDiscord<nocturn9x> translating roughly 5kLOC to Zig seemed easier than dealing with nim's threading issues
15:44:08FromDiscord<nocturn9x> fortunately I fixed all the issues eventually lol
16:00:27termeris that really so bad for people
16:00:32termerI never had a hard time with threading in Nim
16:13:45FromDiscord<exelotl> I found that getting the compiler to check my work with the guard and lock pragmas to be a kinda flawed experience, but better than nothing
16:16:27termeryeah, the effects aren't very foolproof
16:16:43termerthe main annoyance I and most others seem to have is the requirement to cast certain code as gcsafe
16:19:13*disso-peach joined #nim
16:22:02FromDiscord<exelotl> yeah... basically you can say: "don't let this field be accessed without the lock being acquired" or "please acquire this lock and then run this code" or "I promise that the lock has been acquired, now run this code"
16:22:16FromDiscord<exelotl> but you can't say "when this procedure runs, the lock must have been acquired, please check for me"
16:22:35FromDiscord<exelotl> so you have to resort to throwing pinkie promises everywhere and hoping you didn't make any mistakes
16:31:51*SchweinDeBurg quit (Quit: WeeChat 4.5.0-dev)
16:34:05*lucasta quit (Quit: Leaving)
16:49:06FromDiscord<goerge_lsd> In reply to @enthus1ast. "<@682074095168520244> when you": idk, retrieving first N bytes of a http response and not more doesn't sound that fancy to me. Somebody made a patch for httpclient few years ago that still works, but I'd have wanted something importable, so I don't have to ship custom code.
16:51:56FromDiscord<enthus1ast.> I'm just saying, it's actually not "that" common
16:52:12FromDiscord<enthus1ast.> Only with byte range maybe
16:53:32FromDiscord<enthus1ast.> https://developer.mozilla.org/en-US/docs/Web/HTTP/Range_requests
16:54:09FromDiscord<enthus1ast.> When the server supports it, you can specify the bytes you want in the request header
16:55:17FromDiscord<enthus1ast.> Usually if the Webserver serves files and is a somewhat known server (nginx, Apache) then it should be supported
16:56:19FromDiscord<enthus1ast.> It might not work when the Webserver just proxies to an application, then this application must support range request, which (I guess) is not that well supported
17:18:45FromDiscord<goerge_lsd> In this particular case it's supported, but I don't want to use it, I need the server to believe I request the whole file.
17:19:03FromDiscord<goerge_lsd> I wonder how hard would it be to port a state of the art http client from another lang, like reqwest from rust
17:19:50FromDiscord<goerge_lsd> I found at least 3 things I can't do with nim httpclient so far
17:26:34FromDiscord<michaelb.eth> In reply to @goerge_lsd "I found at least": did you try the chronos client?
17:29:04FromDiscord<goerge_lsd> no, i don't think there's much documentation for their stuff ,you have to read the code
17:32:29FromDiscord<enthus1ast.> I would use curl
18:29:54FromDiscord<BillBraskey> Only 3?↵(@goerge_lsd)
18:32:24FromDiscord<goerge_lsd> yep 😄 some case sensitive details in userAgent were lost, nim has its own case for that, so I can't "perfectly", emulate firefox let's say. this get first bytes thing.. and some more obscure http spec not implemented
18:43:32FromDiscord<nitely_> In reply to @goerge_lsd "idk, retrieving first N": my http lib can do that, but it's http/2 only
18:46:24*tc424 quit (Ping timeout: 252 seconds)
18:48:37*tc424 joined #nim
18:49:50FromDiscord<nnsee> In reply to @goerge_lsd "yep 😄 some case": that shouldn't happen
18:49:57FromDiscord<nnsee> how were you setting the header?
18:51:31FromDiscord<@@prestosilver> been really struggling with steams outdated glibc, is there a way to link against a seperate libc version (dont do stuff like this enough to even remotely know), or would it just be better to ship my own one using LD_LIBRARY_PATH, or am I just being stupid? Asking more in a general sense than nim, but a nim specific solution would be fine aswell ig.
18:52:15FromDiscord<@@prestosilver> O this is on steam deck for reference
18:52:29FromDiscord<@@prestosilver> i can just use the system glibc on other platforms
18:52:35FromDiscord<@@prestosilver> (edit) "glibc" => "libc"
18:52:40FromDiscord<@@prestosilver> (edit) "glibc," => "libc,"
19:08:47FromDiscord<goerge_lsd> In reply to @nnsee "that shouldn't happen": don't remember the exact details but I think I was using `userAgent`, something about the case sensitivity of the userAgent key couldn't be set as in firefox, nim had its own
19:08:59FromDiscord<goerge_lsd> (edit) "`userAgent`," => "`(userAgent =`,"
19:10:41FromDiscord<goerge_lsd> In reply to @voidwalker1983 "https://github.com/nim-lang/Nim/blob/d137a3b52af1a8": this
19:12:22*ntat quit (Quit: Leaving)
19:13:57FromDiscord<nnsee> In reply to @goerge_lsd "don't remember the exact": header keys are case insensitive
19:14:18FromDiscord<nnsee> in fact, http/2 supports ONLY lowercase header names
19:14:37FromDiscord<goerge_lsd> it was doing lowercase in the request for some reason, while firefox had uppercase. or curl or idk. so if you wanted to pretend you're that, it would fail on close inspection
19:15:39FromDiscord<goerge_lsd> yeah, i was doing a scraper in a place they really don't like to be scraped, so i had to be cautious
19:21:03FromDiscord<@@prestosilver> In reply to @prestosilver "i can just use": actually I got it, I just siwtched to <https://github.com/genotrance/nimgit2>, and then used static linking
19:21:16FromDiscord<@@prestosilver> problabuy didnt need to switch but eh
19:21:57FromDiscord<@@prestosilver> other wrapper didnt have a readme, so idk how maintained it is
19:22:14FromDiscord<@@prestosilver> (judging a book by its cover moment)
19:34:59FromDiscord<Robyn [She/Her]> oh? you have a http lib?↵(@nitely_)
19:37:58FromDiscord<nitely_> In reply to @Robyn "oh? you have a": it's https://github.com/nitely/nim-hyperx
19:40:14FromDiscord<Robyn [She/Her]> daaaamn nice!
19:40:32FromDiscord<Robyn [She/Her]> async tho, damn
19:43:41FromDiscord<nitely_> there are some http/2 threaded servers, but not sure how they can scale well↵ig they would start a thread per stream, but then a single connection can open 100 of them :/
20:14:40*Goodbye_Vincent1 quit (Remote host closed the connection)
20:15:25*Goodbye_Vincent1 joined #nim
20:15:58FromDiscord<goerge_lsd> strange, why am I getting an out of memory error when going > 128 MB or so
20:18:08*Goodbye_Vincent1 quit (Remote host closed the connection)
20:18:52*Goodbye_Vincent1 joined #nim
20:24:39FromDiscord<goerge_lsd> nvm, i was compiling with danger, and i had an index defect, somehow that was the end result
20:24:59*Goodbye_Vincent1 quit (Remote host closed the connection)
20:25:42*Goodbye_Vincent1 joined #nim
20:40:33*Goodbye_Vincent1 quit (Remote host closed the connection)
20:41:18*Goodbye_Vincent1 joined #nim
21:01:38*Goodbye_Vincent1 quit (Remote host closed the connection)
21:02:22*Goodbye_Vincent1 joined #nim
21:05:13*Goodbye_Vincent1 quit (Remote host closed the connection)
21:05:58*Goodbye_Vincent1 joined #nim
21:09:08*Goodbye_Vincent1 quit (Remote host closed the connection)
21:09:53*Goodbye_Vincent1 joined #nim
21:18:25*krux02 joined #nim
21:24:33*Goodbye_Vincent1 quit (Remote host closed the connection)
21:25:17*Goodbye_Vincent1 joined #nim
21:45:38*Goodbye_Vincent1 quit (Remote host closed the connection)
21:46:22*Goodbye_Vincent1 joined #nim
21:49:15*Goodbye_Vincent1 quit (Remote host closed the connection)
21:49:59*Goodbye_Vincent1 joined #nim
21:53:11*Goodbye_Vincent1 quit (Remote host closed the connection)
21:53:55*Goodbye_Vincent1 joined #nim
22:05:45*Lord_Nightmare quit (Quit: ZNC - http://znc.in)
22:08:33*Goodbye_Vincent1 quit (Remote host closed the connection)
22:09:17*Goodbye_Vincent1 joined #nim
22:09:22*Lord_Nightmare joined #nim
22:29:38*Goodbye_Vincent1 quit (Remote host closed the connection)
22:30:23*Goodbye_Vincent1 joined #nim
22:33:17*Goodbye_Vincent1 quit (Remote host closed the connection)
22:34:01*Goodbye_Vincent1 joined #nim
22:37:12*Goodbye_Vincent1 quit (Remote host closed the connection)
22:37:57*Goodbye_Vincent1 joined #nim
22:52:33*Goodbye_Vincent1 quit (Remote host closed the connection)
22:53:18*Goodbye_Vincent1 joined #nim
23:03:12*SchweinDeBurg joined #nim
23:13:38*Goodbye_Vincent1 quit (Remote host closed the connection)
23:14:23*Goodbye_Vincent1 joined #nim
23:17:16*Goodbye_Vincent1 quit (Remote host closed the connection)
23:18:02*Goodbye_Vincent1 joined #nim
23:21:14*Goodbye_Vincent1 quit (Remote host closed the connection)
23:21:58*Goodbye_Vincent1 joined #nim
23:23:04*krux02 quit (Remote host closed the connection)
23:36:28*Goodbye_Vincent1 quit (Remote host closed the connection)
23:37:13*Goodbye_Vincent1 joined #nim
23:57:33*Goodbye_Vincent1 quit (Remote host closed the connection)
23:58:18*Goodbye_Vincent1 joined #nim