<< 28-02-2020 >>

00:00:49*luis__ quit (Ping timeout: 258 seconds)
00:02:41krux02disruptek, I worked a lot on the `to` macro in json
00:03:07krux02I can watch it I can't comment
00:03:17*setenforce quit (Ping timeout: 265 seconds)
00:04:45krux02well it is the middle of the night here, we can chat here, everybody is asleep here I guess
00:05:18*sealmove joined #nim
00:05:32krux02I think it does date, but dates are not specified in json
00:07:04krux02the to macros does have date as far as I know
00:07:20krux02but I don't know if it is compatible
00:08:27krux02sorry I looked it up, no date support
00:08:36krux02I think I will add that to my todo list
00:09:08krux02I plan to support json variant options anyway
00:09:25krux02nan inf handling is also very different depending on who serializes the data.
00:09:49krux02what I mean is that different implementations do certain unspecifiend things differently.
00:10:02krux02For example some json libraries serialize enums as integers
00:10:11krux02that is fine. json doesn't disallow it.
00:10:26krux02but if you have to read such data you have to tell it somehow that enums are numbers.
00:14:22*sealmove quit (Quit: WeeChat 2.7.1)
00:17:13krux02OK, then I will take a look into it. Shouldn't be too hard.
00:25:06krux02is nimph a substitute for nimble?
00:25:20*setenforce joined #nim
00:31:16krux02well, you are using an error prone pattern
00:31:44krux02well, json isn't designed well
00:32:01krux02yes there is,
00:32:08krux02but you shouldn't used the [] operator
00:32:35krux02yes
00:33:41krux02If I had designed the library, [] would behave like `getOrDefault`
00:33:56krux02because that is how js works as well
00:36:03krux02I once suggesting an `or` opartor, but it was rejected I think
00:36:10krux02you would use it like this:
00:36:52krux02js.getOrDefault("member") or "defaultValue"
00:37:18krux02maybe something like `getStrOr("fallback")` would work better
00:38:05*dwdv quit (Ping timeout: 265 seconds)
00:38:16krux02honestly I think it is cool
00:38:26krux02but I don't see the problems yet
00:38:41krux02I wouldn't use the `cast` operator though
00:39:15krux02sure
00:39:24krux02I really like the `get` operator
00:39:45krux02but I wouldn't do a `toAnything` proc, just the `get` operator
00:41:42krux02there are horrible things in json where your implementation might break
00:42:26krux02for example json doesn't allow NaN and Inf, this means they have to be encoded differently. Some encode them as nil, some encode them as strings. Some break the spec.
00:42:38krux02for sure you get the wrong kind
00:42:45krux02just an example
00:48:35krux02parsing json is so exciting to watch
00:50:09krux02well I hoped that my rewrite of the `to` marco would make this type of work irelevant
00:50:40*a_b_m quit (Read error: Connection reset by peer)
00:50:59krux02maybe I should make `initFromJson` public
00:51:19krux02it is in the `json` library and it is what the `to` proc relies on.
00:51:32krux02it is not even a macro anymore.
00:51:51krux02`initFromJson` is overloaded for all types that the `to` proc supports
00:52:04krux02so if I export it, you can extend it for your custom types.
00:52:11krux02and magically everything works
00:52:53krux02the only reason I did not export it initially was, my rewrite was a dropin replacement for the old `to` macro.
00:53:18*Hideki_ joined #nim
00:53:22krux02ok, I will make a PR that does it.
00:53:51krux02export `initFromJson` and make an override for `Date`
00:54:23krux02I am just not sure how to specify the date format.
00:54:35disruptekiso8601
00:54:49krux02some json serializers do an actual json node with children "month", "day", "year"
00:55:09krux02I don't see the stream anymore, just some fractals
00:55:48*Hideki_ quit (Remote host closed the connection)
00:58:21krux02it is fine, played a bit doctor marco
00:58:24krux02mario
01:00:56FromDiscord<exelotl> https://gist.github.com/exelotl/2d41ba497a50c29ac54e9c4756be0944
01:01:55FromDiscord<exelotl> Made a solution for quickly developing a small JS based Nim application
01:03:51FromDiscord<exelotl> kind of annoying that nimscript doesn't have `sleep`, `times`, `copyFile` and stuff... They seem pretty essential, else I'm forced to write a script that only runs in unix like environments.
01:04:42krux02well it's late and I have to sleep now
01:04:44krux02good night
01:05:00FromDiscord<exelotl> cya o/
01:18:49*krux02 quit (Remote host closed the connection)
01:34:43*kitech1 quit (Max SendQ exceeded)
01:35:14*kitech1 joined #nim
01:55:22*endragor joined #nim
02:03:01*endragor quit (Remote host closed the connection)
02:06:47*chemist69 quit (Ping timeout: 272 seconds)
02:08:41*chemist69 joined #nim
02:31:24*endragor joined #nim
02:32:50*rockcavera quit (Remote host closed the connection)
02:33:07*setenforce quit (Ping timeout: 265 seconds)
02:40:18*literal quit (Ping timeout: 245 seconds)
02:55:42disruptekexelotl: i agree.
03:15:39disbothttps://github.com/nim-lang/Nim/issues/2521 -- 3Allow defining an executable extension in nim.cfg 7(updated)
03:18:26*muffindrake quit (Ping timeout: 240 seconds)
03:20:54*muffindrake joined #nim
03:31:55*dadada_ quit (Ping timeout: 260 seconds)
03:33:29*dadada joined #nim
03:33:52*dadada is now known as Guest3539
03:45:43disbothttps://github.com/nim-lang/Nim/pull/13525 -- 3fix #13524: magics with untyped params (eg astToStr) now work inside generics 7(updated)
03:50:42disbothttps://github.com/nim-lang/Nim/pull/13525 -- 3fix #13524: magics with untyped params (eg astToStr) now work inside generics 7(updated)
03:53:07leorizedisruptek: is this your new disbot feature?
03:53:14zedeusI have a feeling this might be too spammy
03:55:42disbothttps://github.com/nim-lang/Nim/pull/13525 -- 3fix #13524: magics with untyped params (eg astToStr) now work inside generics 7(updated)
03:56:33leorizeyea, this is gonna be too spammy
03:56:54leorizeI think it should only track commits to devel
03:57:30disruptekhmm.
03:59:04*endragor quit (Remote host closed the connection)
03:59:11disruptekwell, i'll mess with it tomorrow. 🙁
03:59:57leorizedisruptek: I'm still waiting for your bug report :)
04:00:51*ptdel quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
04:37:50*nsf joined #nim
04:37:55*marmotini_ quit (Remote host closed the connection)
04:38:11*marmotini_ joined #nim
05:00:32*Guest3539 quit (Ping timeout: 265 seconds)
05:01:12*Jesin quit (Quit: Leaving)
05:10:47*uvegbot quit (Ping timeout: 240 seconds)
05:11:40*dadada joined #nim
05:11:41*uvegbot joined #nim
05:12:05*dadada is now known as Guest82433
05:15:59*Jesin joined #nim
05:25:07*Guest82433 quit (Ping timeout: 258 seconds)
05:26:39*dadada joined #nim
05:27:03*dadada is now known as Guest45484
05:38:11*ptdel joined #nim
05:40:49*ptdel quit (Client Quit)
05:40:51*Guest45484 quit (Ping timeout: 272 seconds)
05:41:32*dadada_ joined #nim
05:55:28*dadada_ quit (Ping timeout: 255 seconds)
05:56:37*dadada_ joined #nim
06:10:37*dadada_ quit (Ping timeout: 265 seconds)
06:11:38*dadada_ joined #nim
06:16:11*kitech1 quit (Max SendQ exceeded)
06:16:40*kitech1 joined #nim
06:21:34*marmotini_ quit (Remote host closed the connection)
06:22:10*marmotini_ joined #nim
06:27:05*marmotini_ quit (Ping timeout: 272 seconds)
06:29:08*narimiran joined #nim
06:47:45*nullwarp quit (Read error: Connection reset by peer)
06:50:01*nullwarp joined #nim
07:05:37*marmotini_ joined #nim
07:10:47*marmotini_ quit (Ping timeout: 272 seconds)
07:11:55*kitech1 quit (Max SendQ exceeded)
07:12:31*kitech1 joined #nim
07:13:41*kitech1 quit (Max SendQ exceeded)
07:14:06*kitech1 joined #nim
07:14:42*kitech1 quit (Max SendQ exceeded)
07:15:04*kitech1 joined #nim
07:15:29*kitech1 quit (Max SendQ exceeded)
07:15:55*kitech1 joined #nim
07:16:38*kitech1 quit (Max SendQ exceeded)
07:17:00*kitech1 joined #nim
07:17:18*solitudesf joined #nim
07:17:33*kitech1 quit (Max SendQ exceeded)
07:17:55*kitech1 joined #nim
07:18:23*kitech1 quit (Max SendQ exceeded)
07:19:10*dddddd quit (Ping timeout: 255 seconds)
07:27:54*marmotini_ joined #nim
07:34:46*chemist69 quit (Remote host closed the connection)
07:35:15*chemist69 joined #nim
07:35:31*dadada_ quit (Ping timeout: 260 seconds)
07:39:38*marmotini_ quit (Remote host closed the connection)
07:39:50*marmotini_ joined #nim
07:40:09*marmotini_ quit (Remote host closed the connection)
07:40:36*marmotini_ joined #nim
07:44:11*PMunch joined #nim
07:44:13*nc-x28 joined #nim
07:44:50*nc-x28 quit (Remote host closed the connection)
07:45:19*marmotini_ quit (Ping timeout: 260 seconds)
07:57:33*CcxWrk_ joined #nim
07:57:33*CcxWrk quit (Killed (leguin.freenode.net (Nickname regained by services)))
07:57:34*CcxWrk_ is now known as CcxWrk
08:00:00*gmpreussner quit (Quit: kthxbye)
08:01:17*marmotini_ joined #nim
08:01:34*clemens3 quit (Quit: WeeChat 2.7)
08:05:16*gmpreussner joined #nim
08:05:39*marmotini_ quit (Ping timeout: 240 seconds)
08:08:32*sealmove joined #nim
08:08:40sealmovehi
08:11:29FromDiscord<Elegant Beef> Hello
08:13:02PMunchHi
08:13:16PMunchHmm, it's a shame that jsondoc doesn't split the signatures up into more parts..
08:15:00PMunchie. "signature": {"kind": "proc", "name": "$", "arguments": [{"name": "s", "kind": "Slice"}], "returns": "string", "raises": [], "tags": [], "pragmas": [], "generics:" []}
08:15:20PMunchInstead of how it is now: "code": "proc `$`(s: Slice): string {.raises: [], tags: [].}"
08:15:28PMunchI mean, it could have both, which would be neat
08:16:19PMunch(it also has name and type as fields, not only the text representation)
08:18:40PMunchWhat I wanted to use this for was to automatically create some tests based on the signatures of various procs in my module
08:25:50*my_dude joined #nim
08:31:31*solitudesf quit (Ping timeout: 260 seconds)
08:42:04*sealmove quit (Quit: WeeChat 2.7.1)
08:44:48*dadada joined #nim
08:45:11*dadada is now known as Guest80173
08:48:23*dwdv joined #nim
08:51:09ZevvI throw this in yesterday but it got lost in the noise: Has it been considered to simply do push stacktrace:off
08:51:31Zevvin the various async* lib files to make async-related stack traces more readable?
08:51:47Zevv90% of what comes out is usually not relevant for the user in these cases
08:53:11*krux02 joined #nim
08:53:43PMunchThat could be neat
08:54:38AraqZevv, we tried to improve async stack traces 3 times
08:54:53Araqand every time they got better. why are they **STILL** crap?
08:57:16Zevvwell, http://ix.io/2cSJ
08:58:24Zevvhow much of that is relevant for the user that wants to find out what went wrong
08:58:40Zevvso much duplication and irrelevant frames from the async implementation
09:00:31*floppydh joined #nim
09:01:24ZevvIf I only push stacktrace off in asyncdispatch it reduces to this:
09:01:45Zevvhttp://ix.io/2cSL
09:02:16Zevvyou can't argue that is worse
09:11:15*luis__ joined #nim
09:13:44*hax-scramper quit (Read error: Connection reset by peer)
09:14:00Araqhmm
09:14:14*hax-scramper joined #nim
09:14:36*hax-scramper quit (Read error: Connection reset by peer)
09:14:54*hax-scramper joined #nim
09:15:02Araqneither mentions line 6
09:15:24Araqwhich is where the wrong indexing is done
09:19:04Zevvfair enough
09:19:35*hax-scramper quit (Ping timeout: 260 seconds)
09:20:19*hax-scramper joined #nim
09:20:37*neceve joined #nim
09:21:21*neceve quit (Client Quit)
09:21:40*neceve joined #nim
09:23:34*luis__ quit (Ping timeout: 246 seconds)
09:31:12PMunchHmm, is there any code out that that converts NimNodes into Json?
09:31:34PMunchOr better yet, one that converts the Nim compiler internal node representation into JSON
09:33:55*sealmove joined #nim
09:33:58PMunchIs there a faster way to build the compiler than ./koch boot when working on it?
09:34:02krux02PMunch: there is `debug` but it is a compiler internal thing
09:34:15krux02koch temp
09:34:19PMunchApart from -d:leanCompiler or whatever since I'm actually working on the documentation generation :P
09:34:37PMunchWhat does koch temp do?
09:34:43*marmotini_ joined #nim
09:34:46PMunchAnd where can I find this `debug`?
09:34:49sealmoveit builds a compiler just to run the program
09:35:53sealmove(so that your compiler built is not affected)
09:36:08krux02in astalgo.nim
09:36:40krux02you can use "koch temp" like if you are running "nim" directly
09:36:53krux02"koch temp c debugprogram.nim"
09:41:28PMunchBut is it actually faster?
09:41:43narimiranfaster than `koch boot`? yep.
09:42:58AraqMUCH faster
09:45:14*clemens3 joined #nim
09:45:15*clemens3 quit (Client Quit)
09:45:46PMunch./koch boot 71.79s user 0.52s system 99% cpu 1:12.43 total
09:45:50PMunch./koch temp jsondoc ~/Projects/nimmacros/macroutils.nim 41.56s user 0.33s system 99% cpu 41.920 total
09:45:57PMunchYeah okay, it's quite a bit faster
09:46:19*clemens3 joined #nim
09:47:36*marmotini_ quit (Remote host closed the connection)
09:47:51*marmotini_ joined #nim
09:48:13*marmotini_ quit (Remote host closed the connection)
09:48:39*marmotini_ joined #nim
09:53:33*marmotini_ quit (Ping timeout: 272 seconds)
09:54:19krux02PMunch, koch boot does bootstrapping. Meaning the compiler compiles itself multiple times and ensures that the result is OK. koch temp compiles the compiler just once
09:55:46PMunchAaah, that makes sense
09:56:13PMunchThat explains the "executables are the same" message
09:56:18PMunchI've always wondered about that
09:57:30PMunchOh, debug creates it's own JSON output..
09:57:35*marmotini_ joined #nim
09:57:41PMunchI wanted to get an actual JSON node
09:59:44*marmotini_ quit (Remote host closed the connection)
09:59:51ZevvAraq: no, it does mention the line. It's line 7
10:00:01ZevvIt still mentions it *twice* tho
10:00:16PMunchBasically I want to convert something like "openarray[string] | int" to something like "option": [{"container": "openarray", "kind": "string"}, "int"]
10:01:48*marmotin_ joined #nim
10:03:57*marmoti__ joined #nim
10:04:23*hax-scramper quit (Ping timeout: 260 seconds)
10:04:52*marmotin_ quit (Read error: Connection reset by peer)
10:10:25*marmoti__ quit (Remote host closed the connection)
10:10:27*abm joined #nim
10:10:51*marmotini_ joined #nim
10:13:46*sealmove quit (Ping timeout: 255 seconds)
10:15:36*marmotini_ quit (Ping timeout: 260 seconds)
10:29:54*marmotini_ joined #nim
10:32:09dwdvIs this expected and valid behaviour? `type foo = range[5..10]; var x, y: foo; x = y` Both are zero-initialized and outside the specified range. Shouldn't the assignment fail?
10:32:36FromDiscord<Rika> Ranges don't enforce I don't think
10:32:42FromDiscord<Rika> No clue why
10:32:56PMunchYeah.. That's a known bug..
10:33:09Araqactually it's documented behaviour.
10:33:13PMunchOr rather, known and documented strange behaviour
10:33:27Araq*shrug* not convinced the alternatives are better
10:33:40Araqthe compiler does warn about it not being intialized properly though
10:33:42*marmotini_ quit (Remote host closed the connection)
10:33:53PMunchEsentially everything in Nim is set to binary 0 when initialised. This happens to be 0 for ranges (as they are really just integers).
10:34:04PMunchOh it does?
10:34:04AraqClyybber was working on a PR to change that
10:34:09*marmotini_ joined #nim
10:34:17AraqPMunch, afaik, yes it does
10:34:28PMunchCould it check if a range has 0 in it and if not disallow this improper initialisation?
10:35:20*marmotini_ quit (Read error: Connection reset by peer)
10:35:36Araqit's harder than it looks, consider Table[key, MyRangeLacking0]
10:35:50dwdvNot seeing a warning, at least on 1.0.6.
10:37:03Araqproc main =
10:37:04Araq var x, y: foo; x = y
10:37:04Araqmain()
10:37:19Araqdoes produce the warning, a bit strange but globals are hard
10:37:47dwdvI see. Thanks, everyone!
10:39:41PMunchAh, true.. That would be hard to fix
10:40:18PMunchI mean the dumb way to fix this would be to offset every range so that binary 0 meant 5 in his example. But that would just produce a lot of overhead for very little benefit
10:41:29PMunchIs the internal Nim node representation documented anywhere? Currently I'm just looking at the macros module documentation which matches up most of the time..
10:43:06Araqast.nim
10:44:11*Guest80173 quit (Ping timeout: 265 seconds)
10:44:48PMunchYeah, but that doesn't really explain what children eg. a nkPragma node has
10:57:00*alexander92 joined #nim
10:58:46*uvegbot quit (Ping timeout: 240 seconds)
10:58:54*adalricus joined #nim
10:59:31Araqtrue
10:59:52*my_dude quit (Quit: my_dude)
11:01:00*nsf quit (Quit: WeeChat 2.7)
11:04:17*pigmej quit (Quit: Idle for 30+ days)
11:07:22*uvegbot joined #nim
11:07:27*adalricus quit (Remote host closed the connection)
11:08:45*adalricus joined #nim
11:16:47*marmotini_ joined #nim
11:17:31*Yardanico[m] left #nim ("Kicked by @appservice-irc:matrix.org : Idle for 30+ days")
11:18:34*kitech1 joined #nim
11:18:44*silvernode[m] left #nim ("Kicked by @appservice-irc:matrix.org : Idle for 30+ days")
11:18:44*watzon[m] quit (Quit: Idle for 30+ days)
11:18:45*hohlerde quit (Quit: Idle for 30+ days)
11:23:37*lritter joined #nim
11:25:42*adalricus quit (Remote host closed the connection)
11:28:59*adalricus joined #nim
11:32:49PMunchIs there a treeRepr for internal nodes?
11:33:14Araqthere is $ from renderer.nim
11:33:33Araqin practice use echo n, " ", n.kind
11:34:02Araqdo not ask for the "Full" AST, it's futile, you easily get lost in irrelevant details
11:35:40PMunchNah I was just looking for what a nkGenericParams look like when it generates "test4:type" through $
11:36:12PMunchThe signature for that proc has "test: int | string" which I guess is turned into a generic version of the procedure
11:40:21FromDiscord<Rika> how would i go debugging a program which causes appeaseSsl to SIGSEGV
11:40:31FromDiscord<Rika> (async of course)
11:42:53lqdev[m]gdb? valgrind?
11:42:57lqdev[m]gdb? valgrind?
11:43:11Araqjust ... don't use SSL :P
11:45:30PMunchHmm, what is the noReturn used for?
11:46:44FromDiscord<Rika> ;; i wanted serious answers ;;
11:46:52FromDiscord<Rika> that's fine, i just dont know where to start
11:51:09*luis__ joined #nim
11:56:13*luis__ quit (Quit: luis__)
12:00:15AraqappeaseSsl is probably specific to the lib*.so you ended up using
12:00:38Araqtry different SSL versions, there is one version for every day of the month and they are all incompatible, it's great
12:04:11FromDiscord<Rika> that sounds terrifying honestly
12:10:06alexander92hm
12:10:12alexander92gitter is not connected today again
12:10:56alexander92rika why is gdb not serious?
12:11:51FromDiscord<Rika> it is, but i have no idea how to use it 😄
12:15:48alexander92it's nice imo
12:16:26alexander92its useful to use it sometimes
12:17:06alexander92and you can start with 9-10 most important simple steps(but you can go far and script it with python etc, its useful)
12:34:33lqdev[m]open your program for debugging using `gdb ./my_exec`
12:34:37PMunchHmm, when have a proc with [T: SomeInteger] the node[genericParamsPos] is a nkGenericParams with a single nkSym child with the value T. Where does the "SomeInteger" part go?
12:34:38lqdev[m]run it using `r`
12:34:54lqdev[m]when it segvs, use `bt` to show a backtrace
12:35:10lqdev[m]remember to compile with `--debugger:gdb` to include debug symbols
12:35:16FromDiscord<Rika> okay thats all? thanks
12:35:23FromDiscord<Rika> i was using debugger native
12:35:27lqdev[m]yeah that's the basics
12:35:32lqdev[m]debugger native works the same
12:35:42PMunchOh, TSym has that..
12:35:42lqdev[m]so it doesn't matter
12:35:56lqdev[m]I use `--debugger:gdb` because it's a bit shorter
12:38:43FromDiscord<Rika> gave me "corrupt stack?"
12:38:57FromDiscord<Rika> and still `??` as symbols
12:39:00FromDiscord<Rika> yes im on windows
12:46:05lqdev[m]uh oh, that's bad
12:46:34lqdev[m]I suppose you get no stack traceback from Nim itself too, right?
12:51:14*sealmove joined #nim
12:51:48FromDiscord<Rika> i dont get an async traceback if thats what youre asking about
12:51:53FromDiscord<Rika> im trying wsl now
12:52:04FromDiscord<Rika> no guarantees it also sigsegvs there too tho
12:54:08FromDiscord<Rika> ah now the wsl version is complaining about zlib being the wrong version, which is the expected version?
12:55:37*krux02 quit (Remote host closed the connection)
12:59:16*alexander92 quit (Ping timeout: 248 seconds)
13:02:34*Romanson joined #nim
13:12:52*NimBot joined #nim
13:14:48FromDiscord<Lantos> hey guys
13:15:02FromDiscord<Lantos> I am having an issue with a dev at work
13:15:51Araqyou came to the right place
13:15:56FromDiscord<Lantos> ahaha
13:16:13FromDiscord<Lantos> He is saying he can not attach csv file to an email with this specific system. I want to send him an email from this system with a csv file attatched
13:16:39FromDiscord<Lantos> I can compile a nim script an call it as an exec
13:16:51FromDiscord<Lantos> Looking at the smtp.nim
13:17:22FromDiscord<Lantos> Is there a way to attach files to this?
13:17:50Araqyeah but just upload it to somewhere and send him a link instead
13:18:03Araqno need to write a program for that
13:18:33FromDiscord<Lantos> I can't it is sensitive data
13:18:44FromDiscord<Lantos> It is all local intranet
13:21:14FromDiscord<Lantos> Content-Type Content type
13:21:14FromDiscord<Lantos> Content-Transfer-Encoding Content transfer encoding
13:22:44*krux02 joined #nim
13:24:44FromDiscord<Lantos> ahh smtp requires a email server >.<
13:25:56*dddddd joined #nim
13:28:37*dadada joined #nim
13:29:02*dadada is now known as Guest12395
13:31:53*Vladar joined #nim
13:35:56*solitudesf joined #nim
13:47:53*alexander92 joined #nim
13:48:06PMunchOf course, how else would it send e-mail?
13:51:15FromDiscord<mratsim> why don't you just zip it or 7z it?
13:52:25*sealmove quit (Quit: WeeChat 2.7.1)
13:57:23FromDiscord<kodkuce> is that ARC now stable?
13:59:02PMunchAargh, what is up with GitHub lately?
13:59:55krux02PMunch, what github problem do you have?
14:00:07PMunchI can't submit PRs or issues from Vivaldi
14:00:29PMunchhttps://github.com/nim-lang/Nim/pull/13530 <- Imroved jsondocs a bit
14:00:30disbotAdd signatures object to jsondoc for routine types
14:03:18PMunchIs there a way to get all procedures that take a certain type?
14:06:13Zevvyou don't give up, do you
14:06:18PMunchNever!
14:07:36FromDiscord<Lantos> Send email through sockets
14:09:37krux02PMunch, well the dumb way to do it is to grep for that type in the source code
14:10:01krux02you can also grep for '^proc.*MyType'
14:10:05PMunchSure, I could also import nimsuggest..
14:10:05krux02it is not precise
14:10:20PMunchBut that seems a bit overkill for a simple macro :P
14:10:28krux02yea I gave up on nimsuggest a long time ago.
14:10:32PMunchOh wait, that won't even work on compile-time
14:10:54krux02ah you want it in a macro
14:11:17krux02I don't think there is a way to do it.
14:11:32krux02Maybe you can argue that you want in interface for symbol resolution in macros.
14:11:47krux02but you also have to ask in what context.
14:12:02PMunchYeah, I'm trying to fix an issue with the `with` package from Zevv (which I completely rewrote at some point)
14:12:08krux02macros always have two contexts. THe context they are written in, and the context where they are expanded in.
14:12:27Zevvyeah leave me out of this, I didn't do it
14:13:09PMunchWhat it does now is that it looks at the type definition of whatever you pass in, and then creates hidden templates with the same names as the fields in the object that doesn't take an argument.
14:13:21krux02can you explain me what problem you try to solve?
14:13:27PMunchBut that doesn't work for accessors and setter procedures
14:13:56PMunchSo if I have an object with a hiddenField and then a field= proc that sets it I won't be able to use that from within a `with` context
14:14:29PMunchZevv, haha :P This wouldn't have worked with your initial implementation either would it?
14:14:34krux02hmm
14:14:37FromDiscord<Rika> this is odd
14:14:47ZevvPMunch: nope, just as broken.
14:14:55FromDiscord<Rika> so wsl zlib doesnt work with nim, even if it's the same version as windows zlib
14:15:07krux02I don't use the `with` context. What does it do?
14:15:46PMunchhttps://github.com/zevv/with
14:17:14krux02yea I guess the problem can't be solved unless Nim has explicit "properties" like C#
14:23:46*SyrupThinker quit (Quit: ZNC 1.7.5 - https://znc.in)
14:24:34*SyrupThinker joined #nim
14:40:39*Vladar quit (Quit: Leaving)
14:40:39*alexander92 quit (Read error: Connection reset by peer)
14:45:01*alexander92 joined #nim
14:48:42*Hideki_ joined #nim
14:56:59*PMunch quit (Quit: Leaving)
14:58:58*krux02 quit (Remote host closed the connection)
15:00:07nullwarpis there an effecient way to filter a parsed json response similar to js' filter method? e.g. objects.filter((r) => r.id == 123)
15:03:42*deech joined #nim
15:04:26deechHow do I build a static or dynamic library using `nimble`? `nimble install` on a library package just moves the sources to `~/.nimble`.
15:10:21*marmotini_ quit (Remote host closed the connection)
15:11:00*marmotini_ joined #nim
15:11:01Araqnimble --app:lib
15:11:05*floppydh quit (Quit: WeeChat 2.7.1)
15:11:14*Guest12395 is now known as dadada
15:11:16*deech` joined #nim
15:13:09*deech quit (Ping timeout: 258 seconds)
15:13:36*nsf joined #nim
15:13:42*Hideki_ quit (Remote host closed the connection)
15:14:31*Hideki_ joined #nim
15:15:27*marmotini_ quit (Ping timeout: 258 seconds)
15:18:54*Hideki_ quit (Ping timeout: 258 seconds)
15:19:25*sealmove joined #nim
15:26:57zaharyCan we pin this on the forum for a week? Pretty please :)
15:26:57zaharyhttps://forum.nim-lang.org/t/6007
15:28:11Zevvooh wait. I get paid 30 USD per hour. Soooo. the slower... I... work... the... more...
15:29:03*deech` left #nim ("ERC (IRC client for Emacs 27.0.60)")
15:29:03*Trustable joined #nim
15:30:07Araqwe can't pin threads
15:30:12Araq:D
15:30:18*Hideki_ joined #nim
15:30:21Zevvwe can add a reply ever hour though :)
15:30:32Zevvand if we make it spam, it wil be removed but the thread is bumped anyway
15:30:44narimiran# Implement thread pinning for nim forum
15:31:10disrupteklol
15:32:02*Hideki_ quit (Remote host closed the connection)
15:32:56*Hideki_ joined #nim
15:34:19Zevvdisruptek: I can't mumble because your server uses outdated ciphers
15:34:22Zevvsays my mumble
15:36:14disruptekhuh.
15:36:41disrupteki am using mumble's #head and have no problems with it.
15:37:18*Hideki_ quit (Ping timeout: 258 seconds)
15:37:43disruptekcan you paste an err message?
15:37:51muffindrakeIs there a pragma that lets you use the parentheses-less function call syntax with functions that aren't echo?
15:38:18disruptekyou can always do so...?
15:38:45Araq'echo' is not special and Nim is not Python
15:39:44Zevvdisruptek: http://zevv.nl/div/boom.png + <W>2020-02-28 16:39:17.499 ServerHandler: TLS cipher preference is "TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:AES256-SHA:AES128-SHA"
15:39:59FromDiscord<Rika> muffindrake you should be able to do it nonetheless
15:40:24Zevvand now we're at it: why "uberalles"?!
15:40:26FromDiscord<Rika> echo isnt a keyword, it's a proc
15:41:26muffindrakeOops, I must have remembered that wrong, then. Sorry!
15:41:52disruptekit's a reference to a cover of a dead kennedys tune.
15:41:56*MarderIII joined #nim
15:42:05disruptekhttps://www.youtube.com/watch?v=cBAkOifDeSw
15:42:06*MarderIII is now known as warkruid
15:42:35disruptekturn up the bass, baby.
15:42:40Zevv*über* alles
15:42:46disruptekyah
15:42:55disruptekdamn dns
15:43:00Zevvfair enough, cool song :)
15:43:32*Hideki_ joined #nim
15:43:35disruptekwe had this album stuck in the car's stereo for a year or two in high school.
15:43:49*Romanson quit (Quit: Connection closed for inactivity)
15:44:27ZevvI had something similar - a minidisc player I couldn't open with a compilation of music. I *still* hear "It's unbelieveble" in my head as soon as "Creep" ends
15:45:21*Hideki_ quit (Remote host closed the connection)
15:45:45ZevvOh, it's *You're unbelievible*, https://www.youtube.com/watch?v=g4gU74gMbp0
15:45:49Zevvnow you will hear it all day too
15:46:45disruptekZevv: i don't even see you hitting the server.
15:47:07ZevvI'm trying now
15:47:11Zevvsee nothing?
15:47:27*marmotini_ joined #nim
15:48:06disruptekno, but this is a service and i dunno how up-to-date the log is.
15:48:28Zevvport is 64738?
15:48:41disruptekyes, the default.
15:49:13*Hideki_ joined #nim
15:50:49disruptekOpenSSL Support: 1 (OpenSSL 1.1.1d 10 Sep 2019) -- what's yours?
15:51:29ZevvOpenSSL 1.1.1d 10 Sep 2019
15:51:37ZevvI hate tech
15:51:44Zevvmost of it, anyway
15:52:00disruptekpretty horrible.
15:52:08*marmotini_ quit (Remote host closed the connection)
15:52:18alexander92hey guys!
15:52:25ZevvI spent my day doing asynchronous hayes protocol stuff to 2020 WWAN modems
15:52:26alexander92how are you?
15:52:37Zevvhow the hell do these vendors think this is ok in any way
15:52:40*marmotini_ joined #nim
15:53:09disruptekfinally got some sleep.
15:53:15Zevvalexander92: your h is wrong
15:54:43disruptekyeah, the logs are up-to-date. you aren't even hitting the log.
15:55:19Zevvwut? `openssl s_client --connect uberalles.mumbl.io:64738`
15:55:26Zevvand I get a letsencrypt cert
15:55:34alexander92zevv what?
15:55:53Zevvyour x
15:56:08Zevvale[xh]ander92
15:56:30alexander92oo :)
15:56:34alexander92i am actually alexander
15:56:42alexander92just usually alehander was free, so i was using it
15:56:49alexander92but i changed it on github as well
15:57:06Zevvyeah but it doesn't work like that. You can't just change your name like that.
15:57:14*marmotini_ quit (Ping timeout: 258 seconds)
15:57:17disruptekyeah man
15:57:24alexander92man my wife just changed her real national irc name
15:57:24Zevvit is just like writing code. You produce it once, but there are sooo many consumers.
15:57:35disruptek i don't trust alexhander92.
15:57:38alexander92so this stuff works
15:57:46disruptek i don't trust alexander92, either.
15:57:47Zevvit might be a good idea to you, but the dozens of people having to interact with you are the victims here
15:57:59ZevvWe - as a collective - have more rights then you as an individual
15:58:05Zevvoutraging!
15:58:19alexander92mate, let me tell you i made a values test and it seems i support theocratic distributism
15:58:29disrupteki think freenode is purging nicks now/soon.
15:58:33narimiranZevv: he used to be 50 years older back in the day, too
15:58:34alexander92so you can easily see i believe my collective more than yours
15:58:48Zevvoooh i want a test like that
15:58:54disruptekyeah, share that shit.
15:59:02Zevvthat would support any of my arguments by just saying "let me tell you, I made this test..."
15:59:27alexander92dont take it too seriously https://8values.github.io/
15:59:28ZevvI collect these kind of arguments. I also recently acquired "Everybody just has opinions, but I have facts". How about that one
15:59:29disruptekalehander managed to get into mumble. i dunno about alexhander.
15:59:56alexander92narimiran yeah 92 is correct
16:00:11alexander92i can send narimiran my passport
16:00:13alexander92or something
16:01:07alexander92disruptek i am still a bit confused about the whole mumble thing
16:01:45disrupteki did some work on it yesterday.
16:02:09disrupteknow we get speaker tag notifications, which makes it easier for viewers to see who is talking, etc.
16:02:14alexander92i am working on tests now!
16:02:38disruptektests?
16:05:45ZevvDamn I'm a liberarian socialist again
16:05:50leorizehttps://github.com/status-im/nim-chronicles/issues/73
16:05:51disbotMake sure `trace` statements are side-effect free
16:05:57leorizewhy does this one have a bounty?
16:05:58ZevvIt's just like IQ tests. Wherevery I try them, they always say 80
16:06:20leorizea quick look at the code says a boolean and {.noSideEffect.} block do the trick :P
16:06:39disrupteknow spin that into 3hrs.
16:06:45FromDiscord<Rika> thats gonna be like worth 1.5 dollars or something
16:06:51FromDiscord<Rika> yeah
16:06:58FromDiscord<Rika> do it as slowly as fuckin possible lmao
16:08:54alexander92zevv i was a liberal in 2017
16:08:59alexander92by the same test*
16:10:08Zevvyeah but this world is not the same as in 2017
16:10:38*Hideki_ quit (Remote host closed the connection)
16:11:44*Hideki_ joined #nim
16:13:47lqdev[m]is it possible to execute a nimble task from another nimble task?
16:13:53disruptekwell, i moved the server east. i think it's a problem on your end, zevv.
16:14:34leorizelqdev[m]: task are available as <taskName>task() procs iirc
16:14:48lqdev[m]let's see
16:15:16lqdev[m]I took a peek at the template and yeah, they are
16:15:35leorizeyou could have done that before asking :P
16:15:54lqdev[m]I thought there was some magic execTask thingy
16:16:06*Hideki_ quit (Ping timeout: 240 seconds)
16:16:10lqdev[m]I'm not into the tooling's internals
16:16:13leorizesometimes things aren't so magical
16:17:55vegaiZevv: I've become a social democrat apparently
16:18:00vegainot sure what I was
16:19:42vegaiprobably much farther to the right. Trump and brexit have done wonders
16:20:22disruptekshould i worry about leaving my tube preamp on 24/7?
16:20:39disruptekor is it worse to cycle it?
16:21:53zedeusif you aren't concerned about starting a fire, it's fine
16:22:35disruptekgood, 'cause i hate trying to remember to kill it.
16:24:18zedeusit limits their life span and shit can go wrong with tubes red plating and resistors failures
16:24:56disruptekyeah, that was my intuition.
16:29:32nullwarpcan anyone help me explain why the compiler reports "cannot evaluate at compile time" for taskId on line 13 in this code: https://pastebin.com/7dPfD6r4
16:30:18leorize`const r`
16:30:34leorizethat one can't be resolved at compile time :P
16:30:37leorizeuse `let` instead
16:31:10leorizecan't be resolved at compile time means that whatever you're trying to do requires data at runtime
16:31:16nullwarpah crap, switched to typescript by accident
16:31:39nullwarpthanks, rookie error
16:34:29FromDiscord<Rika> what's the recommended threading library right now
16:34:34FromDiscord<Rika> or way to thread
16:35:08disrupteklibertarian socialism
16:35:18disrupteksome of these questions aren't very good, though.
16:35:40leorizeAraq: can you take a look at this PR? https://github.com/nim-lang/Nim/pull/13201
16:35:41disbotMake file descriptors from stdlib non-inheritable by default
16:36:00leorize@Rika: I'd say weave but it don't work with `ref` type :P
16:36:10leorizeyou can do threading as usual, it's not really rocket science
16:36:18leorizeor !repo threadpools
16:36:22leorize!repo threadpools
16:36:23disbothttps://github.com/yglukhov/threadpools -- 9threadpools: 11 15 13⭐ 7🍴
16:36:38leorize^ that is a better version of the stdlib threadpools
16:37:23leorizebut then stdlib threadpools will have seamless support with async once rayman22201 finishes adding it
16:37:57disrupteksee, this is the problem. a lot of this stuff is ripe for disruption.
16:39:52federico3alexander92: what a poor UX that site
16:40:18*leorize quit (Quit: WeeChat 2.6)
16:41:22*krux02 joined #nim
16:41:40FromDiscord<Rika> ok thx leorize
16:43:32*Hideki_ joined #nim
16:55:02*ptdel joined #nim
17:01:15disruptekfederico3: really? i think it's fine.
17:01:47*Hideki_ quit (Ping timeout: 240 seconds)
17:03:12lqdev[m]the fonts are really large
17:04:45disruptekmobile first, no doubt.
17:06:43lqdev[m]but you do that using margins and media queries, not using `vw` units.
17:07:44lqdev[m]what is `--verbosity:0` supposed to do? I still get a plethora of processing hints
17:08:17disruptek--hint[Processing]=off
17:09:24krux02for my part I like the processing hints for the different modules. But I am a compiler developer, I care about how much time is spent in the modules.
17:09:43disruptekmaybe they should indicate timing, then.
17:10:41*SyrupThinker is now known as syrupthinker
17:11:17lqdev[m]Ar4q said the processing hints are like a shitty progress bar
17:11:42lqdev[m]I don't need to disable them, I was just wondering about what `--verbosity:0` is *really* supposed to do.
17:12:17alexander92federico3 did you run back button
17:12:19disruptekit's supposed to undo a prior verbosity:1 setting. 😉
17:12:21alexander92yeah you should not do that
17:13:33*solitudesf quit (Remote host closed the connection)
17:19:53lqdev[m]damned getString, kicking my butt again. but this time, I don't get a line number! splendid!
17:21:28*syrupthinker quit (Quit: ZNC 1.7.5 - https://znc.in)
17:33:27alexander92disruptek yeah
17:33:32alexander92not perfect qeustions
17:35:37Zevvdisruptek: `openssl s_client --connect uberalles.mumbl.io:64738`
17:35:42ZevvI do get a cert
17:35:47Zevvbut it's not your server, eh
17:36:11disruptekno, it's just a rando $1/mo service.
17:36:20Zevvooh right
17:36:39disruptekwhich version of the client are you running?
17:37:47Zevv1.3.0
17:38:08disrupteki think the server is 1.2 and i'm running 1.4. go figure.
17:38:31Zevvsweet
17:38:35*tane joined #nim
17:38:49*neceve quit (Ping timeout: 255 seconds)
17:50:57ZevvWell I just setup my $0/mo service, and that works, so still no clue what is wrong
17:51:14disruptekhmm.
17:52:30disruptekso you can connect successfully with the openssl client?
17:53:16Zevvit seems.
17:53:23*alexander92 quit (Ping timeout: 258 seconds)
17:55:00disruptekfeels like a client config problem. typo?
17:55:14Zevvprobly
17:56:24disruptekshould resolve to ny.mumbleio.com
17:56:47Zevvit does
17:56:54disbothttps://github.com/nim-lang/Nim/issues/13393 -- 5Slow insertion of uint in Tables and Sets Collections depending on the value 7(updated)
17:57:38disrupteki see my openssl client disconnecting but i don't see yours.
17:57:45disruptekmitm attack
17:58:08Zevvmy openssl client disonnects right away if I connect to you
17:58:12Zevvon my own server it stays open
17:58:16Zevvso something is fishy there
17:58:18disruptekyeah.
17:58:46Zevvhttp://ix.io/2cUn is that the cert you see?
17:58:48disruptekwhat does the mumble client say when it tries to connect?
17:59:08Zevvthe img I posted earlier today
17:59:20Zevvhttp://zevv.nl/div/boom.png
17:59:27Zevvand "The remote host closed the connection"
17:59:29disruptekdid you notice this from your paste? 139699514037440:error:1414D172:SSL routines:tls12_check_peer_sigalg:wrong signature type:../ssl/t1_lib.c:1110:
17:59:57Zevvsure
18:02:14*gangstacat quit (Quit: Ĝis!)
18:02:24disruptekwell, here's my output. start from the bottom and go up. http://ix.io/2cUo
18:04:42disruptekwe can also just use your server if you want.
18:04:51Zevvnaah
18:05:23Zevvthis stuff makes me mad. I hate it but still I want to know what is wrong
18:05:50Zevvit's not that I'm totally green, SSL-wise, but bah, openssl and error reporting is *sooo* bad
18:05:59disruptekit does seem to be an ssl problem. i guess your murmur is 0.8, too?
18:06:43Zevv1.3.0, or do you not mean the version?
18:06:58disruptekthe mumble server is murmur. 😁
18:07:32Zevvoh I got 'mumble-server', the default debian package
18:07:34disruptekny.mumblio.com reports murmur 0.8
18:07:53disruptekjust wondering why your server works fine.
18:08:49*SyrupThinker joined #nim
18:09:21ZevvI have no clue what is up here, but I tested from 4 different hosts with different os's to connect to yours with openssl s_client
18:09:27Zevvand all of them terminate during TLS setup
18:09:33Zevv139956291770008:error:140790E5:SSL routines:ssl23_write:ssl handshake failure:s23_lib.c:177:
18:09:41Zevv140656645686464:error:1414D172:SSL routines:tls12_check_peer_sigalg:wrong signature type:../ssl/t1_lib.c:1110:
18:09:58Zevvwhen the revolution comes, OpenSSL is the first against the wall
18:10:10disruptekyeah, it's hard to find a common sig when you have no sig algos to offer.
18:10:39federico3maybe it's time we switch doing the shared object loading in the OS
18:11:06disruptekactually, yes.
18:11:32disrupteklet's just pivot the entire c ecosystem.
18:13:06*freepump[m] quit (Ping timeout: 240 seconds)
18:13:26*oswin[m] quit (Ping timeout: 256 seconds)
18:13:27*lqdev[m] quit (Ping timeout: 256 seconds)
18:13:46*chris2020[m] quit (Ping timeout: 240 seconds)
18:13:46*leorize[m] quit (Ping timeout: 240 seconds)
18:13:46*salotz[m] quit (Ping timeout: 240 seconds)
18:14:26Zevvdisruptek: my host SSL is just to new and picky. That cert expired on 2016 already.
18:14:44ZevvI'm running unstable debian, probably more strict
18:15:14*sz0 quit (Quit: Connection closed for inactivity)
18:15:29disruptekah, that's interesting.
18:16:01federico3oww. Zevv are you using the Nim package?
18:16:29disruptekthis isn't nim software.
18:22:26FromDiscord<Lantos> does anyone work @ status.im?
18:22:42FromDiscord<Lantos> here*
18:23:31disruptekyep, there are a few.
18:25:26FromDiscord<Lantos> looking for a new chat server for corporate at work, I've thrown roit.im in the ring. It's owned by status.im correct?
18:25:41FromDiscord<Lantos> hard to tell the relationship from the sites
18:27:30*lqdev[m] joined #nim
18:27:38*oswin[m] joined #nim
18:30:11zedeusriot.im is a matrix client developed by vector.im
18:31:21*freepump[m] joined #nim
18:32:34lqdev[m]for some strange reason, I can't pass a closure from a DLL to my main app.
18:32:43lqdev[m]are there any consideration I have to make?
18:32:52lqdev[m]:s/consideration/considerations/
18:33:14FromDiscord<haydenjonesdiscord> is there an easy way to exhaust an iterator into a sequence?
18:33:26*sz0 joined #nim
18:33:26disrupteksequtils.toSeq
18:33:44FromDiscord<haydenjonesdiscord> aahhh, ok, I hadnt seen that import yet
18:34:00FromDiscord<Lantos> thanks @zedeus
18:35:34disruptekgithub dysfunctional again.
18:35:49*lqdev joined #nim
18:36:49disruptekmaybe that's why the bot isn't spamming us.
18:37:03*chris2020[m] joined #nim
18:38:10*leorize[m] joined #nim
18:38:32*salotz[m] joined #nim
18:39:48lqdev[m]so, somehow my gRes variable is nil. interesting.
18:40:05*al_ joined #nim
18:40:05*al_ is now known as Guest94576
18:40:05lqdev[m]and I think I know why. damn.
18:40:17lqdev[m]time to make a plugin macro~
18:41:43*alexander92 joined #nim
18:44:30*Vladar joined #nim
18:45:34Zevvfriggin openssl
18:45:54Zevvglobal config on latest debian says "MinProtocol = TLSv1.2" and "CipherString = DEFAULT@SECLEVEL=2"
18:45:58Zevvcomputer says nooooo
18:46:55Zevvcool and all, but these error messages are so utterly braindead. how do people think this is anywhere near ok? The whole world is running on Openssl, but the quality of that stuff is sooo bad in so many places
18:53:31disruptekwhat did you do to solve it?
18:53:37lqdev[m]sometimes I love globals, sometimes I hate 'em.
18:53:57disrupteki only use them in throwaway code.
18:54:21lqdev[m]I don't want to pass my state objects everywhere I go.
18:54:47lqdev[m]it's a refactoring hell.
19:02:34*gangstacat joined #nim
19:04:20*setenforce joined #nim
19:05:05Zevvdisruptek: adjust my global ssl config
19:07:27krux02lqdev: that is exactly what the nim compiler went through.
19:07:36krux02pass around state objects everywhere.
19:08:32krux02you should ask Araq about how it was before and how it was afterwards since I entered compiler development after the refactor, but working with the code that had state object everywhere did work well.
19:12:29lqdevstill, I don't like pointless indirections like `editor.res.theme.nodeHeaderBg`. `theme.nodeHeaderBg` looks soooo much cleaner.
19:13:02disrupteklooks? use a template.
19:15:21lqdevuse 100 of them, each specific to some type. one for Node procs, another for Io procs, another for NodeEditor procs, and a hundred more similar to this. yeah, good idea.
19:16:03disrupteki think so, too.
19:18:14lqdevlet me finish the node editor for the time being, I'll think about moving to state objects later.
19:18:59lqdevI don't disagree on the fact that it's a good idea, I just don't like pointless indirections. 1 dot is nice, 2 is ok, 3 is madness, and anything beyond that makes my blood boil.
19:19:27disruptekspeaking of boils, i can't stream very long today.
19:19:33disruptekany requests?
19:31:57Araqkrux02: tbh there is no huge difference
19:32:19Araqbut it does make the compiler cleaner to use as a library
19:32:43disruptekhuge difference. 😉
19:33:15disruptekso we want to see compiler commits here. what else?
19:34:25disruptekoh, pull test status.
19:38:24*couven92 joined #nim
19:41:36disruptek~stream
19:41:37disbotstream: 11https://twitch.tv/disruptek and mumble://uberalles.mumbl.io/ -- disruptek
19:45:44*Guest94576 quit (Quit: Guest94576)
19:47:03*Vladar quit (Quit: Leaving)
19:56:27*sealmove quit (Quit: WeeChat 2.7.1)
19:57:27*leorize joined #nim
19:59:10*mids joined #nim
19:59:49*tane quit (Quit: Leaving)
20:06:27*abm quit (Quit: Leaving)
20:08:40*lritter quit (Ping timeout: 255 seconds)
20:12:16*Hideki_ joined #nim
20:15:05*lritter joined #nim
20:16:45*Hideki_ quit (Ping timeout: 258 seconds)
20:19:17*adalricus quit (Quit: ERC (IRC client for Emacs 26.3))
20:28:46alexander92lqdev ok but you can always use mostly one level of indirection
20:29:08alexander92or to just assign to local variables or have shortcuts for common subfields
20:29:36alexander92i had such a 100 or much more? 150? i dont remember
20:29:37alexander92fields object
20:30:09alexander92and it just wasnt a good idea, i feel better when much of it is refactored in a normal subfield hierarchy
20:30:41alexander92the weather !
20:30:43alexander92disruptek ^
20:30:52alexander92!disbot weather
20:31:08disruptekwut
20:31:23disruptekare you on the stream?
20:31:54alexander92yeah but i cant hear anything
20:32:05disruptekis that my fault?
20:32:31alexander92anyway, i thought we can see the weather
20:32:44disruptekwhere?
20:32:52disruptekjust ask me, i'll tell youi.
20:32:56disruptekit's snowing right now.
20:33:09alexander92disbot whats the weather in my city
20:33:20disruptekshitty.
20:33:20alexander92disruptek i can hear youtube loud and clear
20:33:28alexander92but twitch almost nothing
20:34:01leorizehave you unmuted it?
20:34:12alexander92yes
20:34:26alexander92i can hear him but very .. the opposite of loudly
20:34:33leorizedisruptek: your mic volume is kinda small today actually
20:36:24alexander92i watch a movie about penguins
20:36:30alexander92its very nice, fascinating animals
20:39:24FromDiscord<Lantos> I can hear you
20:40:01FromDiscord<Lantos> what are you coding? disruptek
20:41:04FromDiscord<Lantos> nice
20:42:37disbothttps://github.com/nim-lang/Nim/pull/13533 -- 3Add posix_utils.isSsd 7(updated)
20:45:01FromDiscord<Lantos> didn't the 2019 survey come back with alot of vscode / vim users
20:47:05FromDiscord<Lantos> https://nim-lang.org/assets/news/images/survey2019/08.png
20:47:40alexander92hm yeah
20:47:44alexander92i think vscode has most
20:47:50alexander92i am still a sublime guy
20:47:50FromDiscord<Lantos> ahaha I'm those people
20:47:55alexander92for the editors
20:49:07FromDiscord<Lantos> yes
20:49:58FromDiscord<Lantos> "should they hear the same thing"
20:50:11FromDiscord<Lantos> sounds like you'd want that if this is a radio
20:50:56FromDiscord<Lantos> then they would go to another channel?
20:52:22*marmotini_ joined #nim
20:54:30*FromGitter joined #nim
20:55:41FromGitter<kaushalmodi> yes, if a parameter has a default value, passing that arg becomes optional
20:56:36FromGitter<TheCrappyCoder> ```code paste, see link``` ⏎ ⏎ I'm getting this error from the above code, ⏎ /usercode/in.nim(5, 6) Error: expression 'input("Hii!, What is your name? ")' is of type 'string' and has to be discarded [https://gitter.im/nim-lang/Nim?at=5e597e847fef7f2e898f6441]
20:56:39FromGitter<kaushalmodi> The cool thing is that you can have multiple optional params, and then hand-pick which you want to specify at run time by doing `myProc(optArg1 = 123, optArg99 = "abc")`
20:57:20FromDiscord<Lantos> what chat are you on?
20:57:35FromDiscord<Lantos> discord is quite stable
20:57:39disruptek~stream
20:57:39disbotstream: 11https://twitch.tv/disruptek and mumble://uberalles.mumbl.io/ -- disruptek
20:58:23FromGitter<kaushalmodi> @TheCrappyCoder `input` is returning a string
20:58:28FromGitter<kaushalmodi> so you need to do something with it
20:58:40FromGitter<kaushalmodi> either do `echo input(..)` or `discard input(..)`
20:58:50FromGitter<kaushalmodi> or don't make it return a string type
20:58:55FromGitter<TheCrappyCoder> oh thank you
20:59:04FromGitter<TheCrappyCoder> that makes perfect sense
20:59:33FromDiscord<Lantos> lol
21:00:21FromGitter<TheCrappyCoder> I'm new.
21:00:42FromDiscord<Lantos> ahahah
21:00:56FromDiscord<Lantos> wrong people come from discord
21:01:02FromGitter<kaushalmodi> @TheCrappyCoder That's alright, just laugh along
21:02:35FromDiscord<Lantos> paretos law though
21:02:50krux02disruptek, popular languages have uncool people using it.
21:03:06krux02Nim only has very few uncool people.
21:04:21*marmotini_ quit (Remote host closed the connection)
21:04:48*marmotini_ joined #nim
21:06:23FromDiscord<Lantos> I can hear you guys
21:06:33FromGitter<TheCrappyCoder> Mostly because it has very few people using it in general.
21:06:41FromGitter<TheCrappyCoder> Uncool people will come with time
21:06:43*setenforce quit (Ping timeout: 265 seconds)
21:06:50FromDiscord<Lantos> I forgot I'm on a linux kernel that screwed the intel audio in
21:09:01FromDiscord<Lantos> how are you transmitting audio ?
21:09:13Zevvmumble
21:09:23*marmotini_ quit (Ping timeout: 260 seconds)
21:09:28FromDiscord<Lantos> lol sorry I mean your radio.nim
21:09:40FromDiscord<Lantos> oh
21:10:13FromDiscord<Lantos> ahhhh
21:10:32FromDiscord<Lantos> thats cool, how do you think about of stoping it from being spammy
21:11:09leorizenarimiran, Zevv, disruptek: is it ok if I bump neovim version requirement for nim.nvim?
21:11:22disrupteksure.
21:11:24Zevvdepends on the version
21:11:33Zevv0.4.3 or lower is ok
21:11:46narimirani'm on 0.4.3
21:11:48Zevvotherwise you got one grumbling user that has to update his shit
21:11:51*clemens3 quit (Ping timeout: 272 seconds)
21:11:51Zevvsweet :)
21:12:39disbothttps://github.com/nim-lang/Nim/pull/13533 -- 3Add posix_utils.isSsd 7(updated)
21:15:33*FromGitter quit (Remote host closed the connection)
21:15:59*FromGitter joined #nim
21:19:46FromDiscord<Lantos> disruptek maybe you could put a timeout on git urls to prevent spam?
21:20:28FromDiscord<Lantos> true
21:21:44FromDiscord<Lantos> I've g2g nice stream though. Cool to see some live nim
21:27:39disbothttps://github.com/nim-lang/Nim/issues/13393 -- 5Slow insertion of uint in Tables and Sets Collections depending on the value 7(updated)
21:33:09FromDiscord<IanIAnIAN> Where do you start to solve an error like this
21:33:09FromDiscord<IanIAnIAN> https://cdn.discordapp.com/attachments/371759389889003532/683064169821503507/unknown.png
21:34:26FromDiscord<IanIAnIAN> Just having one of those oh look, zip.extractAll didn't even get the chance to fail moments
21:35:33ZevvIt's not a Nim issue. getopt.h should be part of your default c library
21:36:09Zevvit should come with wingw
21:36:59FromDiscord<IanIAnIAN> so you're saying that the Pixies have stolen my getopt.h file in mingw
21:37:29ZevvWell, you might want to check yourself it is still there maybe, just to be safe
21:37:35leorizelooks like that zip module you use don't support windows
21:37:58Zevvleorize: it's his own unistd.h trying to include getopt.h
21:38:28leorizeyou should never include unistd on windows
21:38:39Zevvwell, there you have it
21:38:49leorizeI mean it's "unix stdlib"
21:38:56Zevvyeah, so let's ship it with mingw
21:39:00Zevvlike that makes sense.
21:42:08*nsf quit (Quit: WeeChat 2.7)
21:42:33FromDiscord<IanIAnIAN> 🙂 maybe try miniz instead
21:42:56ZevvHmm nimble packages have no os-compatibility indications, right
21:45:52FromDiscord<IanIAnIAN> well, they do smell differently
21:49:25*setenforce joined #nim
21:51:31*Trustable quit (Remote host closed the connection)
21:53:59FromDiscord<balencpp> So I am using the javascript backend and interopating with a nodejs package. One of the objects has a field called "type" which I can't use as a field name in Nim and this is causing issues. Is there any way to solve this without having to modify the generated js file?
21:54:07*lqdev quit (Quit: Leaving)
21:54:14disruptekstrop the `type` field name in nim.
21:56:50FromDiscord<balencpp> What is strop? 😅 some pragma or smth?
21:57:08disruptekit means to surround the symbol with backticks.
21:57:58FromDiscord<balencpp> Oh I feel stupid now, thanks. I couldn't find any documentation on it online though.
21:58:22disruptekyeah, it's not very well linked.
21:58:38FromGitter<kaushalmodi> disruptek: Is it you who updated Wikipedia too?
21:58:39FromDiscord<balencpp> How did you figure it out, if I may ask? thanks again!
21:58:39FromGitter<kaushalmodi> https://en.wikipedia.org/wiki/Stropping_(syntax)
21:58:50FromGitter<kaushalmodi> > Stropping can also be used in the Nim programming language. In Nim, a reserved word can be used as an identifier by enclosing it in backticks.
21:59:07FromGitter<kaushalmodi> I googled strop, ended up on Wiki and was surprised to see Nim mention there
21:59:20disrupteknah.
21:59:22*sentreen_ quit (Ping timeout: 255 seconds)
22:00:06ZevvI always found stropping very overrated. If you just think of it as backticks being valid characters in identifiers, it's just another name
22:01:07disruptekbut it's in the ast.
22:01:32Zevvthat's the ast's problem, not mine
22:02:13*zyklon joined #nim
22:04:02shashlickIanIAnIAN: use nimterop getHeader to build it instead of just importing it as is
22:04:26*uvegbot quit (Ping timeout: 240 seconds)
22:05:46shashlickYou using the official wrapper?
22:06:12shashlickDoesn't look like it supports windows
22:06:17shashlickhttps://github.com/nim-lang/zip/blob/master/zip/libzip.nim#L50
22:13:35*sentreen_ joined #nim
22:14:21FromDiscord<TheCrappyCoder> hey hey
22:15:04ZevvHi
22:15:57FromDiscord<balencpp> Hello
22:18:03krux02hello
22:18:17Zevvlook at us being friendly
22:21:25*narimiran quit (Ping timeout: 255 seconds)
22:22:14FromGitter<deech> How do I programatically get the current `nimbleDir` in a `.nimble` file?
22:22:38disruptekimpossible, i think.
22:24:18FromDiscord<TheCrappyCoder> mmh
22:24:41ZevvWhat's up, TheCrappyCoder
22:25:02Araqdisruptek: do you also stream music?
22:25:09Araqstop it :P
22:25:20disruptekeh?
22:25:26Zevvit's the only reason I'm listening in!
22:25:43ZevvHis coding is horiffic, but his musical taste is excellent
22:26:00Araqlol
22:26:08Araqfor me it's the opposite
22:26:23disruptekare you on the stream?
22:26:28disruptekand you don't like the music?
22:26:40Araqyes and yes
22:26:50Araqbut it's ok, keep the music
22:27:09Araq"Heirate mich" by Rammstein
22:27:14FromDiscord<TheCrappyCoder> oh, stream?
22:27:31Araqhey hey!
22:27:38Araqit was excellent!
22:27:48AraqZevv: boooh!
22:28:15*warkruid quit (Quit: Leaving)
22:28:41*mids quit (Quit: Connection closed for inactivity)
22:30:07ZevvSo araq, how is the scope based arc going
22:30:27Araqcrashes everywhere, much harder than I expected it to be
22:30:30FromGitter<deech> @dom96: Any ideas? I'm trying to get the path the current `nimbleDir` inside the `.nimble` file.
22:30:41Araqdeech: why?
22:31:07FromDiscord<TheCrappyCoder> Huh. Feels kinda weird knowing I'm in the same chat as a guy who invented a language that might grow to overtake C++ or Python in the far future
22:31:13FromGitter<deech> Nefarious reasons. :) Actually I want to manually traverse the contents of `pkgs`.
22:31:15ZevvAraq: oh sorry to hear that
22:31:50Zevvdeech: and you can't just run nimble and ask it to give you the list?
22:32:30FromGitter<deech> It just tells me the package name like `foo [1.0.0]` but not the path to the `pkgs` directory.
22:32:49FromGitter<deech> And also I'd like it to work if nothing is installed.
22:33:02Zevvyeah but you said you wanted the path to the pkgs directory to get the contents :)
22:33:29FromGitter<deech> Right, but even `nimble list -i` which I guess is what you're suggesting doesn't do that.
22:33:36FromGitter<deech> :)
22:33:47Zevvyeah true
22:34:39FromGitter<deech> Aargh it's annoying. The system directory gives me all the information including where `nimble` keeps it's cache but not the nimble package directory.
22:35:38*my_dude joined #nim
22:35:42*my_dude quit (Client Quit)
22:35:46AraqTheCrappyCoder: thanks :-)
22:36:03*my_dude joined #nim
22:43:24*my_dude quit (Quit: ZZZzzz…)
22:45:30*my_dude joined #nim
22:46:58*setenforce quit (Quit: WeeChat 2.7.1)
22:57:45disbothttps://github.com/nim-lang/Nim/pull/13463 -- 3better endians 7(updated)
22:57:45disbothttps://github.com/nim-lang/Nim/issues/13531 -- 3JSON unmarshalling drops seq's items 7(updated)
22:57:56*my_dude quit (Quit: ZZZzzz…)
22:58:48*my_dude joined #nim
22:59:34*clemens3 joined #nim
23:15:58FromGitter<Varriount> Yay! The IRC link has been reestablished!
23:16:14ZevvJust use IRC already
23:19:36*lritter quit (Ping timeout: 258 seconds)
23:19:44FromDiscord<exelotl> anyone have the problem where `ls --color` doesn't work in msys2?
23:20:27FromDiscord<exelotl> I just get uncoloured text no matter what options I put
23:21:48ZevvI'm off disruptek, time for my nap.
23:44:51*Hideki_ joined #nim
23:55:46*rockcavera joined #nim