<< 22-05-2018 >>

00:00:13*yglukhov[i] joined #nim
00:07:18*dddddd quit (Remote host closed the connection)
00:20:17*gokr quit (Ping timeout: 252 seconds)
00:43:37*ahmed___ quit (Quit: Connection closed for inactivity)
00:59:37*skellock quit (Quit: Textual IRC Client: www.textualapp.com)
01:23:09subsetparkWhat should I use for terminal layout these days? Like making a text editor?
01:28:26*MyMind joined #nim
01:28:32*Sembei quit (Ping timeout: 245 seconds)
01:29:23*FuntDobra joined #nim
01:32:52*sramsay joined #nim
01:33:07*sramsay quit (Client Quit)
01:35:09*asound joined #nim
01:35:29*FuntDobra quit (Ping timeout: 248 seconds)
01:36:15FromDiscord<Aearnus> how can I tell nimble to build a certain project as JS?
01:37:23*asound quit (Client Quit)
01:37:52FromDiscord<Aearnus> I have my whole `bin` setting set up correctly but it just builds using the c backend
01:41:00*athenot joined #nim
01:44:49*yglukhov[i] quit (Ping timeout: 260 seconds)
01:48:20*athenot_ joined #nim
01:49:57*athenot quit (Ping timeout: 260 seconds)
01:51:04FromGitter<aboisvert> use `backend = "js"` in your nimble file
01:52:20*yglukhov[i] joined #nim
01:54:03FromDiscord<Aearnus> ah, thanks
01:54:11FromDiscord<Aearnus> how do I choose an install path?
01:57:25FromDiscord<Aearnus> in fact -- there are a lot of things that are confusing. how do you define submodules? why does nimble insist on there being no folders in the package with a strange parent folder name?
02:02:45*athenot_ quit (Ping timeout: 245 seconds)
02:08:06leorizeAearnus: https://github.com/nim-lang/nimble#project-structure
02:09:56FromDiscord<Aearnus> will read it -- thanks
02:16:32*Snircle quit (Quit: Textual IRC Client: www.textualapp.com)
02:30:44*asound joined #nim
02:41:39*ahmed___ joined #nim
03:06:03*endragor joined #nim
03:14:05*asound quit (Quit: leaving)
03:16:03*max3 quit (Quit: Connection closed for inactivity)
03:51:33*ARCADIVS joined #nim
04:01:05*leorize quit (Ping timeout: 260 seconds)
04:02:12*skrylar joined #nim
04:07:31*CodeVance quit (Read error: Connection reset by peer)
04:28:48*sz0 quit (Quit: Connection closed for inactivity)
04:39:46*leorize joined #nim
04:51:28*ahmed___ quit (Quit: Connection closed for inactivity)
04:52:30*FuntDobra joined #nim
04:56:52FromGitter<Varriount> Araq: Do you know the best way to get in touch with zahary? I need to ask him some questions regarding his recent logging code concept
05:03:30skrylararrange a series of candles on an empty desk, then adjust a small crystal prism to deflect the light towards the sky where it bounces off a butterfly in to the gitter clouds and lands on his head
05:05:15*FuntDobra quit (Ping timeout: 245 seconds)
05:09:25*yglukhov[i] quit (Ping timeout: 245 seconds)
05:20:38skrylarso i tested asynchttpserver on linux
05:20:55skrylarit did work, just don't write any code that doesn't. the error messages with async are very strange
05:21:00*nsf joined #nim
05:21:15*yglukhov[i] joined #nim
05:23:28*gokr joined #nim
05:25:33*yglukhov[i] quit (Ping timeout: 260 seconds)
05:32:41*gokr quit (Ping timeout: 252 seconds)
05:39:08*xet7 joined #nim
05:47:08*yglukhov[i] joined #nim
05:56:52*leorize quit (Ping timeout: 245 seconds)
06:02:10*gokr joined #nim
06:04:28*gokr quit (Client Quit)
06:10:47livcdi wanted to play with karax on friday and instead i ended up in a hospital :D..cant be a coincidence
06:18:03*leorize joined #nim
06:58:11FromGitter<diegogub> helloo
06:58:30FromGitter<diegogub> someone using maxmind lib with nim?
07:08:07*FuntDobra joined #nim
07:13:15FromDiscord<Aearnus> https://github.com/nim-lang/nimble#project-structure suggests that the inner folder to build your package is named `<packagename>`
07:13:47FromDiscord<Aearnus> whereas actually running nimble tells you that it should be named `<packagename>pkg`
07:15:02FromDiscord<Aearnus> is there something i'm missing or is this an error in documentation
07:19:09*PMunch joined #nim
07:22:10FromGitter<Varriount> @diegogub What is maxmind?
07:23:04FromGitter<Varriount> Aearnus: Probably a documentation error. What do the other libraries made by dom96 follow?
07:32:43*gokr joined #nim
07:37:48*SenasOzys joined #nim
07:50:15*xet7 quit (Ping timeout: 245 seconds)
07:50:23*xet7_ joined #nim
07:55:00*Vladar joined #nim
07:57:13*FuntDobra quit (Ping timeout: 260 seconds)
08:01:52*floppydh joined #nim
08:02:42*gmpreussner quit (Ping timeout: 245 seconds)
08:05:01*gmpreussner joined #nim
08:05:03*FuntDobra joined #nim
08:11:37FromGitter<diegogub> @Varriount its geo location IP db I use..I want to avoid keeping a golang service to do just that..
08:11:58FromGitter<diegogub> It has a C lib but I never wrap something with nim..
08:19:17ehmryis it possible to include C header files with a nimble package? how would I include a nim.cfg?
08:20:18FromGitter<Varriount> @diegogub Let me take a quick look
08:20:31FromGitter<Varriount> ehmry: I believe you would just include it in the repository.
08:20:56FromGitter<diegogub> @Varriount thanks, https://github.com/maxmind/libmaxminddb this is the library I would need to wrap
08:21:50ehmryVarriount: thats what I'm doing
08:22:20FromGitter<Varriount> @diegogub It looks fairly simple to wrap. C2Nim or Nimgen should handle it.
08:22:27FromDiscord<Aearnus> Varriount: all of the other libs I've seen use the documentation's format. maybe I have an old version of nimble
08:22:59FromGitter<Varriount> @diegogub You'll still likely need to make some changes to the header before feeding it into C2Nim, but you shouldn't need too many.
08:23:06*sendell joined #nim
08:23:27ehmryi don't think nim.cfg's included in nimble packages have an effect
08:23:58FromDiscord<Aearnus> also, I'm running into some trouble trying to compile a file that uses `pegs` with the JS backend. it requires a few symbols that don't exist, such as `readFile`. I tried writing a little shim that just made dummy functions but it doesn't seem to be picking up on that
08:25:34FromGitter<diegogub> @Varriount I will try it, thanks!
08:27:13FromGitter<Varriount> @diegogub Looking through the file, the tricky bits I can see are: using a configure header, some sort of special uint128-bit type, ifdefs and unions inside structure typedefs, and 'extern'
08:27:36FromGitter<Varriount> Oh, and anonymous structs.
08:28:24FromGitter<Varriount> The ifdefs, anonymous structs and anonymous unions will need to be 'lifted' out of the type definitions. extern can be removed by using `#def extern`
08:29:04*skrylar quit (Remote host closed the connection)
08:32:21FromGitter<Varriount> Oh, wait, it looks like c2nim has gotten better
08:37:52FromDiscord<Aearnus> hmm, is there any way for you to shadow identifiers in packages you import
08:39:17FromGitter<Varriount> Aearnus: Well, if you really must, you can use `except`: https://nim-lang.org/docs/manual.html#modules-import-statement
08:39:33FromGitter<Varriount> @diegogub https://gist.github.com/Varriount/efb5a15a646917e076ac42bae3f43350
08:39:55FromGitter<Varriount> @diegogub If you search for "WARNING", you will find the section that I couldn't figure out how to translate.
08:40:30FromDiscord<Aearnus> Varriount: I need to shadow the method within the scope of the package -- so that I can provide a dummy version of `readFile`
08:40:33FromGitter<Varriount> You can probably access __int128 via an importc statement or an emit statement
08:41:20FromGitter<diegogub> @Varriount I will check it. Thank you so much
08:42:05FromGitter<Varriount> Aearnus: Can I see the source code?
08:43:13FromDiscord<Aearnus> pasting the relevant part, 1 second. the gist is that i'm importing the pegs library and trying to compile to js
08:44:18FromDiscord<Aearnus> Varriount: https://gist.github.com/Aearnus/31fb7e10123d5455dbe4b695c3e5f474
08:45:21FromDiscord<Aearnus> (that doesn't compile with the error `lib/nim/pure/pegs.nim(1015, 11) Error: undeclared identifier: 'readFile'`)
08:46:13*CodeVance joined #nim
08:49:22FromGitter<Varriount> Hm, there's patchFile, which I believe is used to virtually replace a file with another. That's used in Nim
08:49:25FromGitter<Varriount> scrip
08:49:35FromGitter<Varriount> Nimscript
08:50:02FromGitter<Varriount> I need to get to bed, sorry.
08:50:54FromDiscord<Aearnus> it's no problem!
08:58:42FromDiscord<Aearnus> i fixed it by including the file (and just pulling it in on a text replacement basis) after doing the JS shinm
08:58:44FromDiscord<Aearnus> i fixed it by including the file (and just pulling it in on a text replacement basis) after doing the JS shim
09:11:58FromGitter<Varriount> Aearnus: https://nim-lang.org/docs/nimscript.html#patchFile,string,string,string
09:16:23FromDiscord<Aearnus> nah, it can't find `nimscript`
09:16:25FromDiscord<Aearnus> which is strange
09:20:01*FuntDobra quit (Ping timeout: 252 seconds)
09:27:54ehmrydom96: is it possible to include C/C++ headers in a nimble library package, to be included during compilation of another project?
09:29:18*FuntDobra joined #nim
09:34:47*PMunch quit (Ping timeout: 245 seconds)
09:39:34*FuntDobra quit (Quit: Leaving)
09:40:16yglukhovehmry: it is possible with {.header.} pragma on types/procs
09:40:53*endragor quit (Remote host closed the connection)
09:41:48*endragor joined #nim
09:42:30ehmryyglukhov: yes, but the issue is finding the right directory for the header
09:45:09ehmryi think this is a case for {.emit.}
09:49:50dom96Aernus: You may as well create a PR for Nim to fix this :)
09:52:01*Vladar quit (Read error: Connection reset by peer)
09:54:39*leorize quit (Ping timeout: 260 seconds)
09:54:53*PMunch joined #nim
10:06:23*CodeVance quit (Read error: Connection reset by peer)
10:16:16*skrylar joined #nim
10:16:35*skrylar covers mratsim in paper labeled "could not import: cblas_sscal"
10:19:31yglukhovehmry: here's a sample: https://github.com/status-im/nim-ttmath/blob/master/src/ttmath.nim#L1-L11
10:20:19yglukhovehmry: note `currentSourcePath`
10:20:57ehmryyglukhov: perfect, thank you!
10:30:51federico3diegogub: there are few geoip packages in Nimble
10:43:11*Cthalupa quit (Ping timeout: 255 seconds)
10:46:25*Cthalupa joined #nim
10:49:08*skrylar quit (Quit: Leaving)
11:11:24*xkapastel quit (Quit: Connection closed for inactivity)
11:29:40*dddddd joined #nim
11:40:57*CodeVance joined #nim
11:49:00FromGitter<diegogub> yeah, but outdated, and do not support current maxmind db
12:01:21*yglukhov[i] quit (Read error: Connection reset by peer)
12:01:57*yglukhov[i] joined #nim
12:10:04FromGitter<mratsim> @skrylar what blas are you using? try passing -d:openblas or -d:blas=libopenblas
12:11:36*leorize joined #nim
12:15:14Notkeahello, I have a compilation error from gcc when trying to call an anonymous function refered from a table
12:15:39Notkea error: ‘eventDeserialisers_SgM0JGNiOCFZXR5Tz9b7LbA’ undeclared (first use in this function) T3_ = X5BX5D__MPSR0pkHEVH1jMQrAYh2Pw((&eventDeserialisers_SgM0JGNiOCFZXR5Tz9b7LbA), T2_);
12:17:19Notkeacall comes from here: https://github.com/pacien/nim-matrix-client-lib/blob/914046ca934012b24eefbc97b6a6f8724caea8ac/src/matrixclient/events.nim#L40
12:17:35*CodeVance quit (Ping timeout: 240 seconds)
12:27:45*BitPuffin joined #nim
12:28:44FromGitter<diegogub> how can I do a sync http request from jester http request?
12:29:58*athenot joined #nim
12:31:07*gokr quit (Ping timeout: 256 seconds)
12:32:31*SenasOzys quit (Ping timeout: 252 seconds)
12:35:48federico3diegogub: I can update my package then
12:36:48FromGitter<diegogub> that would be amazing, current module us .dat database right?
12:37:00FromGitter<diegogub> I have the mmdb database, for comercial use
12:39:27*Vladar joined #nim
12:39:44federico3are you saying that the commercial database cannot be used with libgeoip1 ?
12:47:10FromGitter<diegogub> No, just the .mmdb format
12:47:44FromGitter<diegogub> commercial or not
12:48:16*nsf quit (Quit: WeeChat 2.1)
12:49:11federico3according to https://qa.debian.org/popcon-graph.php?packages=libmaxminddb0%2Clibgeoip1&show_installed=on&want_legend=on&want_ticks=on&from_date=&to_date=&hlght_date=&date_fmt=%25Y-%25m&beenhere=1 the old library is still very popular and the new one is almost unused
12:53:55*SenasOzys joined #nim
13:00:06*Vladar quit (Remote host closed the connection)
13:00:33*fvs left #nim ("ERC (IRC client for Emacs 25.3.1)")
13:06:01endragorare there constants within system.nim for detecting compiler version?
13:06:54endragorah, yes, there are, missed them the first time...
13:07:08Araqok :-)
13:08:12*athenot quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
13:10:46*jjido joined #nim
13:11:23Notkeahow can I turn a compileTime variable into a const, having some side effects building it?
13:13:54FromGitter<krux02> Notkea: with block ;)
13:14:05FromGitter<krux02> or with a proc
13:14:30*Vladar joined #nim
13:15:03Notkeahmm… I don't see how to achieve that
13:16:05FromGitter<krux02> well I don't know your exact use case so I cant exactly tell you how to do that
13:16:08NotkeaI want user components to be able to register their module at compile time
13:16:11FromGitter<krux02> (post your code)
13:16:31FromGitter<krux02> I tried that, too.
13:16:38FromGitter<krux02> was not very satisfying
13:16:45FromGitter<krux02> you can have a static variables
13:16:49Notkeacode is here https://github.com/pacien/nim-matrix-client-lib/blob/master/src/matrixclient/events.nim#L33
13:16:51FromGitter<krux02> (a var in a static block)
13:16:57FromGitter<krux02> a macro can append to that variables
13:17:01*Vladar quit (Client Quit)
13:17:14Notkeaand module register using the template just below
13:17:18FromGitter<krux02> then you can call a macro at the end of the program that does something with each element of that list
13:17:29FromGitter<krux02> and that is exactly the problem why I didn't like the solution
13:17:49FromGitter<krux02> the statement that collects the modules has to be at the end of the user code
13:17:49Notkeai see, how do you make the macro execute only at the end?
13:18:07FromGitter<krux02> you put it at the end
13:18:15Notkea:/
13:18:24FromGitter<krux02> yea
13:18:25NotkeaI cannot define the end because of all the imports :/
13:19:03FromGitter<krux02> you can define the macro whereever you want, but you have to put the instanciation at the end
13:19:18FromGitter<krux02> the last line of your root module of the project
13:19:50FromGitter<krux02> so you can't put the macro invocation in a library/module
13:20:39FromGitter<krux02> the module has to have something like this is the documentation "put ``executeMagicMacro()`` at the end of your program when you are using this module"
13:20:56*athenot joined #nim
13:21:03Notkea:/
13:21:12NotkeaI can't see another solution/pattern :/
13:21:31FromGitter<krux02> well I worked around it with lazy initialization
13:21:45FromGitter<krux02> I wanted to generate an init procedure
13:22:05FromGitter<krux02> that initializes several things.
13:22:57FromGitter<krux02> then I ended up generating a lot of "if not initialized: { <initilization code> } invocation code"
13:23:57FromGitter<krux02> maybe it is a good idea now to ask for a feature request in the issues list for the macros module
13:24:10FromGitter<krux02> well let me do it now, you can vote that you would need it, too
13:24:11Notkeahmm… I come from the java world, I used to search everywhere for some annotations at runtime
13:24:51FromGitter<krux02> yea but in java you can't even ask for all subclasses of a class because reasons
13:25:26FromGitter<krux02> lazy loading of classes, you never know if there might be another subclass dynamically loaded
13:25:33Notkeaindeed, hence the need of putting annotations everywhere, then you end up with things like spring :D
13:26:15FromGitter<krux02> I hate java.
13:26:28*Vladar joined #nim
13:26:46Notkea;)
13:33:41*endragor quit (Remote host closed the connection)
13:37:53*CodeVance joined #nim
13:41:08enthus1astNotkea: maybe try static:
13:42:17NotkeaI'm registering outside components with static actually
13:42:30enthus1astaround var eventDeserialiser
13:44:41Notkeathen eventFromJson is unable to see the variable
13:45:03*yglukhov[i] quit (Read error: Connection reset by peer)
13:45:46*yglukhov[i] joined #nim
13:46:07NotkeaI think I'll run all this registration thing at runtime, it can be done in my case, but I'd have loved it at compile time :)
13:48:44enthus1astnim compiles it but gcc complains
13:49:04PMunchNotkea, haven't looked at what you've tried. But couldn't you create a macro that runs your compileTime stuff and then outputs a const statement for you?
13:50:19Notkeait's basically a central module to which other module can register. I would need to control when the macro would execute to output the const only once every module has registered
13:50:59Notkeathis would require the user to call the macro at "the end" of the whole program, as krux02 suggested
13:52:48PMunchWell
13:52:51PMunchThere is another way
13:56:52PMunchYou can keep a global counter. Then for each call update the counter and return your actual macro call. The compiler will then do a second pass and run all the new macro calls. These then decrement the counter again, and when the counter is 0 you output.
13:57:44PMunchOr if you want the declaration to appear at the top you could keep a boolean instead of a counter. So register all and return a "if first: <output code>"
13:58:08PMunchOr rather "when first: <output code>; first = false"
13:58:43Notkeaneat! that could be wrapped in a library
13:58:53*endragor joined #nim
14:03:24*endragor quit (Remote host closed the connection)
14:04:01*leorize quit (Ping timeout: 260 seconds)
14:04:57*endragor joined #nim
14:13:44PMunchHmm, I'm sure this used to work
14:13:48PMunchBut I can't get it working now..
14:21:58*leorize joined #nim
14:30:09*endragor quit (Remote host closed the connection)
14:36:36FromGitter<Varriount> PMunch: What about term rewriting macros? Could those help at all?
14:37:43PMunchWhat're you thinking?
14:49:41FromGitter<krux02> How did I debig Nim again?
14:49:51FromGitter<krux02> I tried --debugger:native but it doesn't seem to work
14:51:05FromGitter<krux02> gdb tells me "no source available"
14:52:45PMunchHmm, --debuginfo perhaps?
14:55:07PMunchSeems to work with --debuginfo and --debugger:native here
14:55:15FromGitter<krux02> well it works now
14:55:28FromGitter<krux02> it don't know what I did do wrong
15:01:34*xkapastel joined #nim
15:01:48*BitPuffin quit (Remote host closed the connection)
15:03:36shashlickdata-man: the filter fix now eats up all empty lines
15:09:56*gokr joined #nim
15:12:44*PMunch quit (Quit: Leaving)
15:18:51*leorize quit (Quit: WeeChat 2.1)
15:20:00*endragor joined #nim
15:21:52*endragor quit (Remote host closed the connection)
15:29:14*floppydh quit (Quit: WeeChat 2.1)
15:32:36*BitPuffin joined #nim
15:36:26*yglukhov[i] quit (Remote host closed the connection)
15:36:51*yglukhov[i] joined #nim
15:38:57*yglukhov[i] quit (Read error: Connection reset by peer)
15:39:31*yglukhov[i] joined #nim
15:41:53FromGitter<data-man> Vote, please: https://github.com/nim-lang/Nim/pull/7836#issuecomment-391038946
15:45:19Yardanicolol :D
15:45:49YardanicoYou could just make one comment and then ask other people to use "thumbs up" or "thumbs down" github reaction :)
15:50:50*cavariux joined #nim
15:54:00*gokr quit (Ping timeout: 245 seconds)
15:54:02FromGitter<Varriount> @data-man While it's true that the two functions are similar for the common cases, they exhibit differences in other cases.
15:55:06shashlickdata-man: kind of hard to tell what the change is
15:55:20shashlickhow about a short description
15:57:24FromGitter<Varriount> @data-man For example, I don't believe the `[]` notation works on Windows.
15:57:29FromGitter<data-man> @shashlick: Fixed now (I hope)
15:58:35FromGitter<Varriount> You would be better off doing what Python did, and just emulate fnmatch: https://github.com/python/cpython/blob/3.4/Lib/fnmatch.py
15:59:32shashlickwhy did build fail? I made no changes to nim core: https://travis-ci.org/nim-lang/Nim/jobs/382205870
16:00:07shashlickappveyor passed
16:00:55shashlickThe job exceeded the maximum time limit for jobs, and has been terminated.
16:01:21FromGitter<data-man> Just the patterns depend on the OS. This is all that needs to be clarified in the description.
16:01:53shashlickdata-man: where did you add the description?
16:02:48FromGitter<data-man> @Yardanico: Yes. So, thumbs up. :)
16:04:43FromGitter<data-man> @shashlick: Currenrly: "Returns true if the path matches with the specified `pattern`, false otherwise. *Warning*: The matching is case-insensitive."
16:05:20FromGitter<data-man> Just to add "Pattern is OS-specific" to the warning.
16:05:40*cavariux quit (Ping timeout: 245 seconds)
16:07:14shashlickdata-man: what do I do with my PR? close and reopen to have build run again? https://github.com/nim-lang/Nim/pull/7856
16:07:16*cavariux joined #nim
16:10:04FromGitter<data-man> @shashlick: No, I checked. Works.
16:12:15shashlickbut it is marked as failed
16:12:42Yardanicobecause travis build ran out of time
16:12:44Yardanicothis is fine
16:12:55shashlickok hopefully araq merges it
16:14:01FromGitter<data-man> Oh, I check 7855 :)
16:15:43shashlickdata-man: oh, ya if you run koch csources, your build.bat generated has all newlines removed
16:15:55shashlickblank lines, not new lines
16:16:17shashlicki tried latest #head
16:22:21FromGitter<data-man> koch csources created ```C:\Temp\nimcache\nim\debug/ ``` for me. On *nix. :)
16:28:19FromGitter<7sDream> I'm new to nim and try to use nimble with my first project/package.
16:28:37*riidom joined #nim
16:28:46dom96shashlick: I'll restart for you
16:28:47*athenot quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:29:03FromGitter<7sDream> but I found the instantiationInfo().filename in `.nimble` file is not the full path
16:29:16FromGitter<7sDream> ``````
16:29:49shashlickthx dom96
16:29:58FromGitter<7sDream> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5b044586a2d95136335e62ce]
16:30:29FromGitter<7sDream> this give me: `home/i7sdream/code/nimchat`
16:30:43FromGitter<7sDream> with out the root `/`
16:31:10dom967sDream: You might be the first person to try this in a .nimble file :)
16:31:17dom96I guess that's a bug, report it
16:31:56FromGitter<7sDream> OK, I will open a issue
16:34:31dom96thx
16:37:04FromGitter<data-man> Rust just added to https://github.com/JuliaLang/Microbenchmarks
16:37:44Yardanico@data-man they use GCC 4.8.5, ahahhaha
16:41:25FromGitter<data-man> @dom96: What do think? https://github.com/nim-lang/nimforum/issues/124
16:41:44*athenot joined #nim
16:42:09dom96Maybe in the future
16:42:17dom96FTS3 works fine
16:43:07FromGitter<genotrance> 7sDream, dom96: works on Windows with latest nimble
16:43:12FromGitter<data-man> FTS4 :)
16:43:57*jjido quit (Ping timeout: 240 seconds)
16:44:25FromGitter<7sDream> I meet this bug in a Linux
16:44:50Yardanicotime to compile nim forum locally to see how new design looks like :)
16:44:54FromGitter<genotrance> yes reproduced failure on linux
16:45:17FromGitter<genotrance> instantiationInfo().filename itself is wrong
16:48:15Yardanicodom96 can new nimforum be compiled or not yet? Because I get this on devel https://bpaste.net/show/f5f6921d4dc3
16:48:23Yardanico(devel nim I meant)
16:48:56dom96Yardanico: Wouldn't want to spoil the surprise :P
16:49:06dom96I'll hopefully have it deployed tonight
16:49:11Yardanicoyay!
16:59:12Yardanicodom96 "tonight" is how much hours from now? :D
16:59:27dom96~4 maybe
16:59:34Yardanicook, that's very good
17:02:15FromGitter<7sDream> https://i.loli.net/2018/05/23/5b044ced64c2a.png ⏎ another interesting behavior
17:02:29*sendell quit (Remote host closed the connection)
17:03:10FromGitter<7sDream> should I add this to the same issue or open a new one
17:03:25FromGitter<7sDream> @genotrance
17:05:00FromGitter<genotrance> not sure, probably - I also saw the ??? - I don't think instantionInfo() is the right thing to use in .nimble
17:05:14Yardanico@7sDream - what's your nim version?
17:05:22FromGitter<7sDream> latest, 0.18.0
17:05:26Yardanicotry with devel
17:05:36shashlicki see with devel too
17:06:39*SenasOzys quit (Remote host closed the connection)
17:06:52FromGitter<7sDream> So, any alternatives to get the dir of current script?
17:07:36shashlickwhy don't you use thisDir()
17:07:44Yardanicowhat's your use-case for current root?
17:08:19*SenasOzys joined #nim
17:09:13FromGitter<7sDream> oops, I missed this proc when searching docs
17:10:06shashlick7sDream: please add ??? also to issue but document that thisDir() is good enough
17:10:44FromGitter<7sDream> yes, thisDir is what I need
17:11:06FromGitter<7sDream> I will add the `???` problem into the issue
17:12:56shashlickinstantiationInfo() is broken in compile mode too
17:13:10shashlickecho instantiationInfo() by itself gives filename = ???
17:17:58*Trustable joined #nim
17:18:12*jjido joined #nim
17:18:18FromGitter<7sDream> issue updated
17:21:53*PMunch joined #nim
17:22:56*natrys joined #nim
17:25:46*rockcavera is now known as Guest50451
17:25:46*tiorock joined #nim
17:25:46*Guest50451 quit (Killed (niven.freenode.net (Nickname regained by services)))
17:25:46*tiorock is now known as rockcavera
17:29:14*nsf joined #nim
17:39:44*sz0 joined #nim
17:44:51*BitPuffin quit (Remote host closed the connection)
17:48:41*Trustable quit (Remote host closed the connection)
18:06:34*gokr joined #nim
18:06:45FromDiscord<awr> lookin at threadpool.nim
18:07:04FromDiscord<awr> what's the difference between a "DistinguishedThread" and a normal thread
18:07:21FromDiscord<awr> normal worker thread, that is
18:14:42Araqa DistinguisedThread has an identity
18:14:53Araqwhat runs on it can only run on it
18:15:17PMunchdata-man, just realized, after converting the entire parsetoml implementation to read Unicode runes instead of characters I realised that it was actually crapping out because the file didn't have a newline at the end..
18:15:26PMunchFor the unicode heard thing
18:15:52Araqto understand why this is necessary, buy my book "learning Nim in one hundred thousand simple steps"
18:21:19PMunchWouldn't that just be the manual in book form?
18:21:20Yardanicoi'd buy it if it was a thing :D
18:39:22federico3if it's a really big book it could be titled "Nim: the good parts"
18:39:52*ARCADIVS quit (Quit: WeeChat 2.0.1)
18:43:35*SenasOzys quit (Ping timeout: 252 seconds)
18:49:54*elrood joined #nim
18:52:11FromGitter<data-man> @PMunch: Thanks! Now all official tests and examples is validated, ha-ha. :) ⏎ I think, that a position of a wrong symbol in exception will useful.
18:52:15FromDiscord<Aearnus> Is the standard library accepting PRs?
18:52:30Araqsure
18:53:01FromGitter<data-man> @Aearnus: except for OS.
18:53:39FromDiscord<Aearnus> Alright cool. I'm going to patch the PEG library to work in JS as well & I don't want that to go to waste
18:54:17Araqdata-man: for OS too if it passes the bloat vs usefullness threshold
18:55:12Araqthere is already os.walkDir, os.walkFiles, etc
18:55:13subsetparkdata-man: if there's a good implementation in nimble, isn't that a vote *against* inclusion in stdlib, rather than *for*?
18:55:57FromGitter<data-man> @Araq: walkxxx has IO effect
18:56:28Araqsure but why is that a problem?
18:58:24FromGitter<data-man> I just want check path with pattern, without PCRE, etc. without walking through a dirs.
18:58:46*CodeVance is now known as alterna
18:59:23*alterna is now known as CodeVance
18:59:57FromGitter<xmonader> anyone interested in code review for nimday9? tic tac toe with minmax algorithm? ⏎ https://github.com/xmonader/nim-tictactoe/blob/master/src/nim_tictactoe.nim
19:00:57FromGitter<xmonader> also is there away to do the same max/min calls here https://gist.github.com/xmonader/b94bcb90605d79b508f4addf2405306a#file-minmax-py-L76 ? not sure of the alternative in nim that's why i expanded it into a loop
19:01:59FromGitter<data-man> If Nim is a systems programming language, it should use system API.
19:03:11Yardanico@xmonader use mapIt from sequtils and then max? like max(myseq.mapIt(it.score))
19:03:24*SenasOzys joined #nim
19:03:52*SenasOzys quit (Remote host closed the connection)
19:04:20Yardanicoit's not the best performance-wise (if you really need to squezze every last ms of performance), but it's quite elegant :)
19:04:41FromGitter<xmonader> but i won't get the move tuple i'll get max score then correct? @Yardanico
19:04:59Yardanicowell, yeah, with max you'll get max value, isn't that what you wanted?
19:05:16Yardanicoah, I see
19:05:53FromGitter<data-man> @Araq: Bloat? One proc?
19:06:10FromGitter<xmonader> i want to allow passing a comparator key on a collection but not sure if that's a builtin
19:06:11*SenasOzys joined #nim
19:06:48Yardanico@xmonader just define `<` for your type/tuple and max/min will automagically work on it :)
19:07:13Yardanicolike proc `<`(a, b: MyType): bool = a.score < b.score
19:08:08FromGitter<xmonader> oh really? very nice
19:08:28FromGitter<data-man> ```proc cmp```` is better
19:08:32Araqdata-man: I'm actually quite displeased with my turnaround times
19:08:36Yardanicohttps://nim-lang.org/docs/system.html#max,openArray%5BT%5D it also says that in the documentation :)
19:08:48Araqand everything in the stdlib is currently compiled and compiled again
19:09:09Araqand so I'm saying "no further than this, will be reconsidered once symbol files work"
19:11:20FromGitter<data-man> Ok, moved to the end of my ToDos.
19:11:52Yardanico@xmonader if you define `<` for you type, you can then also use `>` and many other operators/procs which need `>` or `<` operator
19:11:56Yardanico*your
19:12:25FromGitter<xmonader> yeah like defining < in haskell for Ord instance
19:12:32FromGitter<data-man> And again ```proc cmp``` is better.
19:12:50FromGitter<data-man> @xmonader ^
19:13:20Yardanico@data-man why?
19:13:32*yglukhov[i] quit (Ping timeout: 245 seconds)
19:13:47FromGitter<xmonader> Why? too late i already pushed the less than one @data-man xD
19:13:52Araqin addition to that, while your implementation is nice, it's yet another thing that people can complain about "ugh, the differences between the OSes are not documented, oh, I spent five days figuring out the exact behaviour of it and so I'm blaming Nim/Nim's stdlib"
19:14:53Araq"Bug report: pathMatches does not support the [a] notation on Windows"
19:15:10FromGitter<data-man> Oh, glob used in walkPattern != findFirstFile! :)
19:15:27Yardanicoa bit off-topic - it's actually very good that we now have a pure-nim regex engine
19:15:34YardanicoI know it's better to use PEGs, but still
19:15:50*yglukhov[i] joined #nim
19:16:30subsetparkFor log-parsing and the like are PEGs faster than regex or simply more elegant/combining ?
19:16:58Araqthey are actually both terrible in their own ways
19:17:01*CodeVance quit (Read error: Connection reset by peer)
19:17:13Araqbut pegs are easier to grasp.
19:17:16Yardanicoand what should I use instead ? :D
19:17:34Araqscanf if you can.
19:17:50Araqthe upcoming 'grammar' macro that eventually I will write :P
19:18:33*cavariux quit (Ping timeout: 256 seconds)
19:18:46*Vladar quit (Quit: Leaving)
19:19:26*CodeVance joined #nim
19:21:47FromGitter<data-man> @Yardanico: Just look at the implementation system.cmp ;)
19:22:08YardanicoI see, but how it will help to use `max` without a loop?
19:22:36Yardanico(I mean without a need to manually write a loop)
19:23:58*cavariux joined #nim
19:25:29FromGitter<xmonader> what pure regex engine?
19:25:39FromGitter<data-man> I missed something. I mean ```cmp`` vs ```<```.
19:26:39FromGitter<data-man> @xmonader: https://github.com/nitely/nim-regex
19:27:07FromGitter<data-man> With a big data from unicode tables
19:27:27FromGitter<xmonader> thanks @data-man
19:27:45subsetparkI can probably use scanf for most of this stuff. I've never used it before. Let me guess: it's greedy pattern matching using printf syntax?
19:28:01Yardanicohttps://nim-lang.org/docs/strscans.html
19:28:22subsetparkAhhh yes! I've seen that before. Looked interesting. Forgot about it.
19:29:08*yglukhov[i] quit (Remote host closed the connection)
19:30:46FromGitter<data-man> Can be much improved (and should): backreferences, binding tuples, array, objects, etc. :)
19:33:15subsetparkoh yeah, totally. let's make it realll fuckin' complex.
19:38:18FromGitter<data-man> @Araq: Another idea: we can implement ```proc match``` in strutils, and use it in os module. So, Windows-users will be able to use advanced patterns.
19:55:51FromDiscord<awr> does AddressSanitizer exist at all for windows
19:55:59*natrys quit (Quit: natrys)
19:58:25*CodeVance quit (Quit: Leaving.)
19:58:55FromGitter<Aearnus> Is that pure regex library on nimble?
19:59:01*CodeVance joined #nim
19:59:05Yardanicoyes
19:59:13Yardanicojust read in its' readme
19:59:18Yardanico"regex" is the module name in nimble
20:04:48Araqdata-man: that doesn't solve anything
20:05:19Araqwhat you can do, is it put it in its own module
20:05:33Araqin the end it will have a full page of documentation anyway
20:09:22*athenot_ joined #nim
20:10:07*athenot quit (Read error: Connection reset by peer)
20:12:52FromGitter<data-man> @Araq: I'd be very surprised if ```walk???[a-b]*```works for you on Windows.
20:13:29Araqit doesn't matter
20:17:16Araqthe docs don't claim it would work.
20:18:46PMunchdata-man, what do you mean? It already gives you the position
20:22:12FromGitter<data-man> @PMunch: ```./validator hard_example.yaml``` -> ```Error: unhandled exception: (1:5) bare key has illegal character [TomlError]``` for me
20:22:50PMunchMight be because you try to parse a yaml file?
20:23:02FromGitter<data-man> Which character?
20:23:13PMunchLine 1, character 5
20:24:13FromGitter<data-man> No, value of character will be very useful. No?
20:24:27PMunchAah
20:24:35PMunchYeah that's probably a good idea
20:24:56FromGitter<data-man> Sure, I specially run with yaml :)
20:33:30*athenot_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:38:38*xet7_ quit (Remote host closed the connection)
20:50:59FromGitter<kayabaNerve> Morning
20:51:10FromGitter<kayabaNerve> What's the best config file format for Nim?
20:51:33FromGitter<kayabaNerve> I like JSON but I'm curious if Nim has a more supported option
20:52:08FromGitter<kayabaNerve> Of course, it's not just the program, but also the person that matters (if config files are to be edited like mine).
20:55:31FromGitter<Varriount> They're
20:55:42FromGitter<Varriount> Nimya
20:55:43FromGitter<Varriount> ml
21:02:10*jjido quit (Ping timeout: 252 seconds)
21:02:47Araqparsecfg.nim
21:04:43shashlickI use parsecfg for all nim projects
21:08:03*cavariux quit (Ping timeout: 252 seconds)
21:10:01dom96Can't get easier than json :)
21:10:17dom96For something quick and dirty it's perfect
21:10:39shashlickagree, that's what I used for vire: https://github.com/genotrance/vire/
21:12:25Araqjson sucks for configuration, quotes everywhere
21:13:05shashlicki used it to save state, guess that way I prefer cfg/ini since it is so easy to edit
21:13:13Araqquotes and commas and unclear rules (is a number really a floating point? are comments supported?)
21:13:25shashlickof course everyone wants gui nowadays :D
21:14:18shashlickdom96/araq: while you both are here, can we deprecate installing mingw with finish/choosenim?
21:14:37Araqno way.
21:14:49Araqwhy would we do that?
21:14:51shashlickon linux, you rely on package manager to install C compiler, Windows, we can just point to compilers
21:15:04shashlickwhy keep an old cached copy of mingw
21:15:10FromGitter<data-man> New parsetoml is the best :)
21:16:20shashlickwhy take on responsibility of provisioning compiler on windows when the compilers have installers of their own
21:16:48Araqbecause the installers constantly change and suck
21:17:09Araqwhy make it less convenient for our users?
21:17:46Araqalso, serving a fixed version of mingw means we get reliability, in doubt use the mingw we officially tested everything with.
21:18:33shashlickneither of those statements are true on linux and macosx
21:18:49shashlickwe test on one specific distro / compiler on travis
21:19:16Araqwell you won't convince me it's a bad idea.
21:19:26Araqwe can stop this dicussion here already.
21:20:11shashlickstill using 6.3.0 of mingw
21:20:22shashlicki'm not saying it's a bad idea, i'm saying we solution it in a better way
21:20:34Araqif anything, that's an argument for doing the same on osx and Linux...
21:20:52shashlickgive clear instructions on how to setup and configure nim
21:22:40FromGitter<data-man> I think we should use the same compilers on all CIs.
21:22:46PMunchkayabaNerve, you could also check out parsetoml
21:23:06PMunchTOML is like the old INI configuration format. But more capable and better specified
21:23:24PMunchStrikes a nice balance between human-readability and features
21:23:42Araqwhich means it's like parsecfg which predates TOML by a decade :P
21:23:55PMunchI'm also working on making the interface more like the json module
21:24:51PMunchAraq, yeah that's true
21:25:02PMunchDoes parsecfg keep comments by the way?
21:25:08dom96> why take on responsibility of provisioning compiler on windows when the compilers have installers of their own
21:25:08dom96Convenience. As Araq said. And reliability.
21:25:54dom96Linux and Mac almost always already ship with gcc/clang
21:26:04*nsf quit (Quit: WeeChat 2.1)
21:31:40FromDiscord<treeform> Thank you for shipping your own tested version of the mingw compiler on windows. When I first started nim I got wrong mingw compiler for windows and though nim did not work on windows.
21:31:56FromDiscord<treeform> but now that you ship your own I don't have to think about it.
21:32:16FromGitter<data-man> AppVeyor has MSYS: https://www.appveyor.com/docs/build-environment/#mingw-msys-cygwin ⏎ No need to download anything from SourceForge.
21:34:57FromGitter<data-man> And MSYS2
21:36:39dom9685 files changed, 6702 insertions(+), 3484 deletions(-)
21:37:27dom96That's what ~120 hours of work looks like :D
21:38:12FromDiscord<treeform> what did you do?
21:41:06dom96redesigned the forum
21:41:07Araqhe kicked nimforum into the 21st century
21:42:05federico3nice!
21:42:18dom96argh, just realised I forgot to add code to update the <title> of the page...
21:42:59FromGitter<data-man> @dom96: Well when already ?!!! :)
21:44:26FromGitter<genotrance> @dom96 - why take on the responsibility of provisioning someone else's project? at least invoke their installer silently or something
21:45:44Araqwe take the responsiblility because the mingw project continued to deliver an installer that just works (TM) without a super confusing UI.
21:45:54Araq*to not deliver
21:46:32Araqheck, I myself ended up installing a GCC without binutils or such nonsense
21:46:49Araqbut hey, I could also install Perl and Flex at the same time...
21:46:57dom96data-man: patience :)
21:47:10Araqand hundreds of others shitty unix "tools"
21:47:56*cavariux joined #nim
21:48:33FromGitter<genotrance> would you be receptive to a reliable "installer" for a C compiler to drop the .tgz/.7z mingw cache method?
21:49:13Araqno, because this "reliable installer" will get worse as the time passes by.
21:49:26Araqas I've seen it happen with the mingw installer...
21:52:20*cavariux quit (Ping timeout: 245 seconds)
21:53:27FromGitter<genotrance> okay can we at least have choosenim and finish download the same mingw archive
21:57:11Araqsure, but fyi I didn't ask for choosenim to be developed and think it's misguided.
21:59:01PMunchWhy do you think choosenim is misguided?
21:59:09PMunchIt's a pretty handy utility
21:59:24FromGitter<genotrance> i like it too, i can test different versions of nim super easily
21:59:27FromGitter<data-man> Someday I'll finish the work on updating the CIs for Nim and I'll persistently ask to create a NimCITemplate repository in the Nim-Lang organization. :-D
22:00:02FromGitter<genotrance> https://sourceforge.net/projects/mingw-w64/files/ <= .7z builds of mingw64, 32-bit and 64-bit easily downloaded without requiring any installer
22:00:29FromGitter<kayabaNerve> Thanks guys for the suggestions
22:00:53FromGitter<kayabaNerve> I hate keys requiring quotes, and the lack of comments in JSON
22:00:56FromGitter<kayabaNerve> But I think it is clear
22:01:40FromGitter<kayabaNerve> I am scarred by TOML and INI
22:01:45FromGitter<kayabaNerve> plz halp
22:01:52Araqit ignores the existance of git and I'm still not convinced 'koch pick v0.18' couldn't do the same with a fraction of the code
22:02:06*NimBot joined #nim
22:02:40PMunchkayabaNerve, what's wrong with TOML?
22:02:56Araqand it adds yet another way to install Nim on top of the existing solutions
22:04:17PMunchAraq, installing Nim was always a bit of a pain though.. With choosenim it's a whole lot easier
22:04:41PMunchWell, installing the stable version wasn't too bad. But installing two, or three versions jumping between them
22:04:41Araqmaybe, but even if so.
22:04:57PMunchMaybe one installed from GitHub, it quickly became messy..
22:05:02Araqwhy not improve what we have instead of developing a full new solution for it
22:05:13PMunchWell that I can agree with
22:05:18FromGitter<genotrance> that's what I'm trying to do
22:05:24FromGitter<genotrance> adding 64-bit detection to choosenim
22:05:31PMunchkoch is this tool I just forget that exists :P
22:05:39FromGitter<genotrance> merging finish and choosenim over time
22:05:51PMunchA typical user uses it once during installation, then never again
22:06:01FromGitter<genotrance> you should be able to download a small tool that you run and it installs everything for you
22:06:46FromGitter<kayabaNerve> PMunch: ⏎ [SECTION] ⏎ key=value
22:06:51FromGitter<kayabaNerve> That is TOML, right?
22:06:54FromGitter<kayabaNerve> Triple checking here
22:07:02PMunchSo when you get fun bugs like: "Error: internal error: genLiteral(nkHiddenCallConv); No stack traceback available; To create a stacktrace, rerun compilation with ./koch temp c <file>" it's a bit confusing
22:07:12PMunchkayabaNerve, yeah
22:07:21dom96"Just add it to koch" misses the point IMO
22:07:28Araqgenotrance, I know and kudos to you for doing it, but throwing away our precious mingw zips is going too far :-)
22:07:29FromGitter<genotrance> at the very least, let's download mingw from sourceforge and update the link every time we get a new build
22:07:32dom96Getting koch is already a ton of work
22:07:57FromGitter<kayabaNerve> PMunch: It's ugly as hell and barely structured
22:07:58Araqyou can ship koch as a binary much like you can ship choosenim
22:07:59FromGitter<genotrance> and have choosenim and finish download the same file
22:08:10Araqbut I don't want to discuss this again.
22:08:13PMunchkayabaNerve, this is TOML: https://github.com/toml-lang/toml#example
22:08:58PMunchWhat do you mean barely structured? It maps unambiguously to a hash-map, and it's super human-friendly
22:09:35FromGitter<kayabaNerve> I understand it has structure. There's still a minimal amount.
22:09:50FromGitter<genotrance> @Araq - still not clear, are you okay with downloading the official .zip of mingw or stick to your cached copy - i'm fine with finish/choosenim downloading it for convenience
22:09:51FromGitter<kayabaNerve> And it feels like "what's the easiest way to create a hashmap as a TXT"
22:09:55PMunchMinimal amount of unnecessary brackets..
22:10:01FromGitter<kayabaNerve> Fair enough lol
22:10:05FromGitter<kayabaNerve> It just irks the hell out of me
22:10:13FromGitter<data-man> @PMunch: We should to add parsetoml to https://github.com/toml-lang/toml/wiki#implementations :)
22:10:16FromGitter<kayabaNerve> It feels like something I would do in a day as a quick fix to log vars
22:10:22Araqno, I want it to continue to download our mingw files.
22:10:28PMunchWell "what's the easiest way to create a hashmap as a TXT" is pretty much exactly what it is
22:10:32FromGitter<kayabaNerve> Yeah
22:10:37FromGitter<kayabaNerve> And I'm not saying that's horrible
22:10:41FromGitter<kayabaNerve> I'm saying I can't stand it
22:10:47PMunchdata-man, it's there. But with the old URL and in the 0.3.1 section :P
22:10:52PMunchAll by it's self
22:10:58FromGitter<genotrance> okay was worth a try
22:11:06dom96Araq: That's true, and that approach didn't pop into my head.
22:11:16Araqwhen we serve these files ourselves at least the downtimes are synchronized
22:12:05FromGitter<genotrance> any plans of updating to 7.3.0?
22:12:19FromGitter<genotrance> data-man: what version of mingw do we test with on appveyor
22:12:38PMunchkayabaNerve, well I guess it's a taste thing. For me it's the perfect balance. Readable at a glance, but not too heavy on brackets and "unnecessary cruft". If you have a mock-up of something better I'd love to see it :) MemoServ me a paste if you decide to type something up, I'm off to bed.
22:12:42*PMunch quit (Quit: leaving)
22:15:11Araqgenotrance, remind me again when the release is closer :-)
22:15:35Araqand btw, https://sourceforge.net/projects/mingw-w64/files/ is anything but clear
22:15:45dom96Sorry guys, I've decided to postpone the deployment until tomorrow
22:15:53Araqand if we would simply redirect our users to that page we would lose half of them
22:16:10dom96oh god yes, sourceforge is horrible
22:16:20Araqx86_64-posix-sjlj vs seh? wtf? (yeah, I know what it is about)
22:17:26FromGitter<genotrance> ya, most people download i686-7.3.0-release-posix-dwarf-rt_v5-rev0.7z so we could directly link to that
22:17:54FromGitter<genotrance> or cache it on our servers
22:18:22Araqwhy posix? I would pick the win32 version
22:18:37FromGitter<mratsim> ugh I hate that mingw nonsense.
22:18:37FromGitter<genotrance> that's the latest 7.x release, there's also a 6.4.0 release if that matters
22:18:41*gmpreussner quit (Ping timeout: 248 seconds)
22:19:19FromGitter<mratsim> we use the 4.9.2 at Status :P - https://github.com/status-im/nimbus/blob/master/.appveyor.yml#L4-L5
22:20:01FromGitter<genotrance> going based on most download package which is the installer default
22:20:07AraqI used to a "maintainer" for clang on Windows...
22:20:08FromGitter<genotrance> x86_64-7.3.0-release-posix-seh-rt_v5-rev0.7z for win64
22:20:25Araqmaybe we should consider that. moving to clang on Windows.
22:20:30FromGitter<mratsim> I’m pretty sure most of the downloads are Appveyor CI
22:20:44FromGitter<data-man> @genotrance ⏎ ⏎ > MinGW 32-bit 5.3.0 (core components and compilers - C:\MinGW) ⏎ > MinGW-w64 ⏎ > 5.3.0: C:\mingw-w64\i686-5.3.0-posix-dwarf-rt_v4-rev0 ... [https://gitter.im/nim-lang/Nim?at=5b0497bc5f3e6b40fad8b84f]
22:20:53Araqmratsim: I just copy Nim's appveyor file...
22:21:03*gmpreussner joined #nim
22:21:13FromGitter<genotrance> same choices on appveyor as well
22:21:37FromGitter<genotrance> posix-dwarf for 32-bit, posix-seh for 64-bit
22:22:40FromGitter<data-man> See also https://github.com/nim-lang/Nim/pull/6621 and https://github.com/nim-lang/Nim/pull/6999
22:29:00FromGitter<genotrance> just running a full test on 7.3.0 on 32-bit and 64-bit to verify that all tests still pass
22:31:26FromGitter<Aearnus> How do you
22:32:37FromGitter<genotrance> @Aearnus: is that for me? how to run nim tests?
22:35:57FromGitter<Aearnus> Oops.. I didn't mean to press enter haha
22:36:16FromGitter<genotrance> :)
22:36:40FromGitter<Aearnus> The full message would have been "how do you detect what backend you are compiling with" but I figured it out 😄
22:58:25*gmpreussner quit (Ping timeout: 252 seconds)
23:01:05*gmpreussner joined #nim
23:05:36*elrood quit (Quit: Leaving)
23:14:32FromDiscord<2vg> I want to connect to DB at compile time and define type from table column, but importc error
23:14:32FromDiscord<2vg> Is there anyone who knows the solution?
23:16:03shashlickimportc = trying to use an external C library which isn't supported by the VM (or compiletime)
23:17:56*CodeVance quit (Read error: Connection reset by peer)
23:22:58*gmpreussner quit (Ping timeout: 252 seconds)
23:24:42dom962vg: create a separate program and then call it via staticExec
23:25:36*gmpreussner_ joined #nim
23:33:42FromDiscord<2vg> @dom96 thx, Is there the best way to receive the results mainly done in another program?
23:34:17dom96never done it, but I would probably just use JSON :)
23:35:49FromDiscord<2vg> okey, i'll try it. thx :3
23:37:17FromDiscord<2vg> Are there plans to support importc with VMs?
23:37:41*skrylar joined #nim
23:51:05*gokr quit (Ping timeout: 240 seconds)
23:52:59FromDiscord<Aearnus> https://github.com/nim-lang/Nim/pull/7866
23:57:44shashlick2vg: it's on the backlog