<< 22-03-2016 >>

00:03:28yutaHi
00:07:38yutaI would add simple tests to nimsuggest, but can I use nimscript?
00:07:46yutait seems nimble file locked version to `"nim >= 0.11.2, compiler#head"`.
00:15:40yutaI mean nimsuggest.nimble file need to support INI format?
00:15:58yuta(nimscript introduced v0.12.0 according to http://nim-lang.org/news.html)
00:18:14*macbeth quit (Ping timeout: 252 seconds)
00:21:32*desophos quit (Remote host closed the connection)
00:27:06*Ven quit (Ping timeout: 246 seconds)
00:27:10cheatfateyuta, but current version is 0.13.0
00:28:31cheatfateVarriount, are nimsuggest goto defination support imports?
00:29:01Varriountcheatfate: No idea.
00:29:22yutacheatfate yeah, I wanted to change the nimble file of to current version,
00:29:24yutabut I wondered if there is reason in current nimsuggest.nimble file
00:29:41Varriountcheatfate: Do you mean, will using the 'def' command in nimsuggest on an import give something?
00:30:36*Ven joined #nim
00:30:53cheatfatei know you have Goto Definition in NimLime but i dont know nimsuggest at all, is it working like Visual Studio Goto Definition or just looking for definition in current file
00:32:36Varriountcheatfate: It literally passes the filename of the current view, the cursor row, and the cursor column to a nimsuggest instance.
00:33:10Varriountcheatfate: It currently doesn't support project files, but those aren't needed most of the time.
00:33:48VarriountYou can use 'nimsuggest stdin --interactive:true <file>' to start the NimLime fork of Nimsuggest in interactive mode.
00:34:12VarriountI'm currently messing around with things, so it's broken for me at the moment.
00:34:15cheatfateok i will try thanks
00:34:40*uryga quit (Ping timeout: 244 seconds)
00:36:19Varriount(you don't need the interactive mode, but it's a bit nicer looking)
00:37:20yutaVarriount I seem you have permission to merge in nimsuggest repo
00:37:33yutacould you review my PR? https://github.com/nim-lang/nimsuggest/pull/22
00:37:38VarriountSure.
00:38:38yutaVarriount thank you very much
00:39:13Varriountyuta: My only problem is that it will probably mean my PR has to be merged manually. :\
00:41:42yutaIf you merge my PR, I can send PR for your PR #21.
00:41:47*brson quit (Ping timeout: 260 seconds)
00:42:13yutaoh god. Your work is so fast
00:42:50Varriountyuta: Well, it's not like there's much to review.
00:43:07VarriountAnd it's just a single button-push to merge.
00:43:51yutaVarriount thank you. I'll make PR to you including my EPC later.
00:44:28Varriountyuta: Any idea what's up with chk option regression?
00:45:01Varriounthttps://github.com/nim-lang/nimsuggest/pull/21#issuecomment-198434703
00:48:26yutaVarriount: Sorry, I haven't checked seriously yet.
00:49:08cheatfateVarriount, and what is syntax for def command?
00:49:15yutaI have to go... Bye bye gays
00:49:23*yuta quit (Remote host closed the connection)
00:49:58Varriountcheatfate: Same for the others. '<filename>:line:col'
00:51:02VarriountOr rather, 'def <filename>:<line>:<col>'
00:53:32cheatfatei see nimsuggest will not work until file has errors...
00:53:41VarriountHuh?
00:53:59Varriountcheatfate: What do you think about adding a 'NimLime' menu in the main command bar in Sublime Text?
00:54:44cheatfateYou know i have st2... but i think adding Goto Definition must be in popup menu
00:55:06cheatfateWhat you want to add to this NimLime menu?
00:55:27cheatfatenot in ctrl+shift+p only
00:55:50cheatfateVarriount, and also you not answered me about libcef
00:56:02Varriountcheatfate: Oh? I thought I did.
00:56:34Varriountcheatfate: As I said before, ST2 doesn't have nimsuggest support yet.
00:57:02cheatfateVarriount, yeah i remember about st2 support :)
00:57:26cheatfatehow do you think is it possible to build something like phantomjs using libcef?
00:57:47cheatfateor you want to delete libcef repo because libcef is useless?
00:58:01Varriountcheatfate: Regarding libcef, the wrapper was virtually useless. I deleted it this morning.
00:58:56cheatfateArgh why it was useless? or libcef updating to often to support mainline?
01:00:58Varriountcheatfate: It was over 2 years old, completely untested, and probably broken.
01:01:21VarriountIt would probably be easier to simply re-wrap the libcef C api.
01:03:10*gokr quit (Quit: Leaving.)
01:06:00*[CBR]Unspoken quit (Ping timeout: 250 seconds)
01:12:26*Demon_Fox quit (Quit: Leaving)
01:18:57*desophos joined #nim
01:20:10*desophos quit (Remote host closed the connection)
01:20:12*[CBR]Unspoken joined #nim
01:22:13*desophos joined #nim
01:26:29*desophos quit (Ping timeout: 260 seconds)
01:57:43*desophos joined #nim
02:03:22*saml_ quit (Quit: Leaving)
02:07:06*bamorim quit (Ping timeout: 244 seconds)
02:17:57*krux02 quit (Remote host closed the connection)
03:21:51*yglukhov joined #nim
03:25:55*yglukhov quit (Ping timeout: 248 seconds)
03:33:07*endragor joined #nim
03:57:11*desophos quit (Read error: Connection reset by peer)
03:59:39*endragor quit (Remote host closed the connection)
04:01:02*endragor joined #nim
04:53:02*vendethiel joined #nim
05:10:24*yglukhov joined #nim
05:14:41*yglukhov quit (Ping timeout: 244 seconds)
06:00:21*vendethiel quit (Ping timeout: 276 seconds)
06:18:44*endragor_ joined #nim
06:22:21*endragor quit (Ping timeout: 246 seconds)
06:45:01*endragor_ quit (Remote host closed the connection)
06:45:30*endragor joined #nim
06:54:56*endragor quit (Remote host closed the connection)
07:09:05*bjz joined #nim
07:13:11*endragor joined #nim
07:31:03*sarlalian quit (Ping timeout: 264 seconds)
07:32:15*toaoMgeorge quit (Read error: Connection reset by peer)
07:32:45*rok joined #nim
07:42:14*yglukhov joined #nim
08:15:18*Ven quit (Ping timeout: 268 seconds)
08:17:22*Ven joined #nim
08:18:33*bjz_ joined #nim
08:19:00*bjz quit (Ping timeout: 268 seconds)
08:23:50*gokr joined #nim
08:40:15*rok quit (Ping timeout: 276 seconds)
08:42:14*rok joined #nim
08:51:56*dorei joined #nim
08:54:46*iamd3vil joined #nim
09:19:04*vendethiel joined #nim
09:28:17*ludocode_ quit (Quit: No Ping reply in 180 seconds.)
09:30:42*ludocode joined #nim
09:31:54*enthus1ast quit (Ping timeout: 252 seconds)
09:43:18*vendethiel quit (Ping timeout: 276 seconds)
09:50:56veganskAraq, ping!
09:52:50ldleworkdon't do that, just send your message
09:54:16Araqbong
09:54:43ldleworkyes please.
09:56:23veganskAraq, hi! I've found a strange compiler's bug. But I can't reproduce it in the small example. The problem is that compiler fails with "Error: cannot prove 'xr' is not nil". But ``xr`` is an object, not ref etc.
09:56:59Araqlol.
09:57:50veganskI'm trying to find it by myself. Can you tell me, how the compiler detects if it must check the parameter of the function?
10:02:24Araqin ast.nim there is some propagation proc
10:02:30Araqthat propagtes type properties
10:03:14AraqtfNotNil is one such property
10:03:45Araqmy bet is that it's simply applied for generic instantiations regardless of it's actually nilable to begin with
10:03:54Araq*of whether
10:04:10Araqshouldn't be that hard to find when you grep for tfNotNil
10:05:23*yglukhov quit (Ping timeout: 248 seconds)
10:09:23*ludocode quit (Ping timeout: 268 seconds)
10:26:16*arnetheduck joined #nim
10:26:50*rok quit (Quit: rok)
10:35:45veganskI found how to reproduce it in minimal example while grepping ``tfNotNil`` :-)
10:39:50Araqmaybe you should get a faster grep
10:41:00*iamd3vil left #nim ("Leaving")
10:41:36*darkf quit (Quit: Leaving)
10:41:52veganskIt's ``ag`` and it's really fast :-) The time was spent to minimize mimimum example from 100 lines to 10. https://github.com/nim-lang/Nim/issues/3993
10:47:41Araqnow fix the compiler bug and see for yourself it's irrelevant whether the example program is 100 lines or 10 lines.
11:00:10*bamorim joined #nim
11:00:31veganskAraq, this type is really ``not nil``, so it must have tfNotNil flag. The problem is that ``impliesNotNil`` is called with the empty ``facts`` list, so it doesn't check it, and returns impUnknown immediately.
11:01:54veganskMaybe it's not the problem, but the consequence of the problem
11:12:39*Arrrr joined #nim
11:17:31*bjz joined #nim
11:18:16endragorAraq: is there any hack for a macro to get nnkCommentStmt contents?
11:19:49*bjz_ quit (Ping timeout: 252 seconds)
11:21:04*vendethiel joined #nim
11:23:14*bamorim quit (Ping timeout: 260 seconds)
11:23:56*bamorim joined #nim
11:24:00veganskendragor, use strVal
11:25:53endragoroh, nice, then it seems macros.nim doc is outdated. thanks vegansk
11:30:02*boopsiesisaway is now known as boopsies
11:34:33*uryga joined #nim
11:36:00federico3how can nimble configured to build with the right flags?
11:37:21*Trustable joined #nim
11:39:38*yglukhov joined #nim
11:40:40Araqwhat are the right flags?
11:41:03*enthus1as joined #nim
11:41:26*enthus1as is now known as enthus1ast
11:43:03*vendethiel quit (Ping timeout: 240 seconds)
11:46:10*coffeepot joined #nim
11:51:58*uryga quit (Ping timeout: 244 seconds)
11:58:31*fredrik92 joined #nim
11:59:03enthus1astHi, i've made some little changes on the smtp module (implemented attachements) and i would like to contribute. But i have never done anything like this ( on github ). Is there anything i have to pay attention to?
12:00:58fredrik92enthus1ast, have you forked the repo?
12:01:02*vegansk is now known as veganskaway
12:04:56enthus1astfredrik92: jep
12:05:31fredrik92ok, then you should be able to just issue a Pull Request on GitHub
12:06:25fredrik92the nim team will then get notified, and if there's something wrong with your code, there will be a discussion on that Pull Request thread
12:07:06fredrik92Also it helps a lot if your forked branch is automatically mergeable with the target branch in the nim repo
12:07:32gokrenthus1ast: You basically make a Pull Request using the web UI of github.
12:07:58gokrenthus1ast: https://help.github.com/articles/creating-a-pull-request/
12:08:33*gokr1 joined #nim
12:08:56enthus1asti've made a feature branch, should i merge it to the devel branch in my fork?
12:09:48enthus1astgokr: i will have a look
12:09:56federico3Araq: it depends on the package, -d:release would be a starting point for many
12:12:21*gokr quit (Ping timeout: 246 seconds)
12:20:48*vendethiel joined #nim
12:29:28cheatfateenthus1ast, do you have implemented full mime support?
12:30:49enthus1astatm i get the mime type out of the file extension.
12:31:04cheatfateenthus1ast, which type of encodings you support?
12:31:12enthus1astbase64
12:31:21cheatfateor could you give me address of your repo so i can watch?
12:32:03enthus1asthttps://github.com/enthus1ast/Nim/blob/devel/lib/pure/smtp.nim
12:32:08enthus1astoh sorry
12:32:24enthus1asthttps://github.com/enthus1ast/Nim/blob/smtpattachment/lib/pure/smtp.nim
12:34:23Araqfederico3: nimble build -d:release foo ?
12:37:02federico3Araq: I'm looking for a place to store all the required build flags, e.g. --threads:on
12:37:31federico3 -d:ssl and so on
12:42:01*vendethiel quit (Ping timeout: 240 seconds)
12:42:41flyxfederico3: config.nims?
12:44:16flyxfederico3: see http://nim-lang.org/docs/nims.html
12:44:27federico3thanks
12:49:54*enthus1ast quit (Ping timeout: 252 seconds)
12:50:27*vendethiel joined #nim
12:50:52federico3are the scripts designed to be executable with a shebang #!/usr/bin/env nim ?
12:51:05federico3(it works but it's not documented)
12:52:12flyxfederico3: if you code standalone nimscript, yes
12:52:24flyxconfig.nims rather works like this: https://github.com/flyx/NimYAML/blob/master/config.nims
12:52:50flyxyou can just type "nim build" and it executes the "build" task from config.nims
12:53:20flyxwhich defines some switches and sets the nim command to "c yaml"
12:53:26flyxafter that, nim executes that command
12:53:40*coffeepot quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
12:54:17federico3it's sidestepping nimble essentially? :-/
12:54:21*enthus1ast joined #nim
12:54:44flyxum. it is a different tool with different goals
12:55:15flyxconfig.nims just configures the nim compiler.
12:55:34flyxyou can still have a .nimble file which takes care of package management
12:56:02federico3sidestepping the *build* part of nimble, to be more precise :)
12:57:35*veganskaway quit (Ping timeout: 244 seconds)
12:57:52flyxisn't that more of a test feature anyway?
12:57:57*flyx never used nimble build
13:00:47flyxhmm, it seems like you can also create tasks in a nimble config file if you use nimscript
13:01:02flyxbut I never used that
13:01:27flyxI don't think of nimble as a build tool
13:06:15*krux02 joined #nim
13:06:27*bamorim quit (Ping timeout: 264 seconds)
13:12:32*vendethiel quit (Ping timeout: 268 seconds)
13:28:06enthus1astcheatfate: do you think this will be good enough?
13:29:21cheatfateenthus1ast, i dont know, maybe dom96 asks you to add more features, or maybe he will ask you to move this to separate module like "mime.nim" or something
13:30:27cheatfateenthus1ast, currently smtp.nim is doing what it must to do... attachments are part of something bigger and different nature, so i think they must be hold in other place, not inside smtp.nim
13:32:29cheatfateenthus1ast, smtp.nim is a transport, but attachments is subset of email message
13:33:18cheatfateenthus1ast, but it will be good for nim to have library which can make mime messages or parse mime messages and i think your code must be there
13:34:43*bjz quit (Quit: Textual IRC Client: www.textualapp.com)
13:35:26cheatfateenthus1ast, but its only my opinion, be brave and make your first PR :)
13:37:00enthus1ast: )
13:38:13enthus1asta little nervous
13:38:23*vendethiel joined #nim
13:38:41enthus1asti think to make this more cool we need to have something like "file" magic
13:39:11Araqenthus1ast: we have a mimetypes stdlib module or something, check it out
13:40:18enthus1astyeah im useing this but this (as far as i see) is only checking the file extensions
13:40:46enthus1astwhat we do on linux content by string?
13:40:56enthus1astlinux or content in a string
13:40:57*vegansk joined #nim
13:41:16enthus1astthen we have no extension
13:41:29Araqever used gcc on Linux?
13:41:54enthus1astthink so : )
13:42:03Araqhint: it uses file extensions to determine the source language and how to parse things ;-)
13:42:23AraqLinux too has file extensions. it's just that's an inconsistent clusterfuck.
13:46:27*bjz joined #nim
13:59:56cheatfateenthus1ast, i think the best way you can improve your project is to add MIME parser
14:00:07*Ven quit (Ping timeout: 244 seconds)
14:02:06*vendethiel quit (Ping timeout: 250 seconds)
14:03:50*Ven joined #nim
14:13:17*endragor_ joined #nim
14:17:04*endragor quit (Ping timeout: 260 seconds)
14:17:39*endragor_ quit (Ping timeout: 260 seconds)
14:24:39*Demon_Fox joined #nim
14:30:22cheatfateAraq, i made second try to explain https://github.com/nim-lang/Nim/issues/3989
14:51:47*BitPuffin joined #nim
15:00:34*arnetheduck quit (Ping timeout: 244 seconds)
15:03:21*sarlalian joined #nim
15:08:35*gokr1 quit (Quit: Leaving.)
15:36:52*brson joined #nim
15:47:17*Arrrr_ joined #nim
15:48:45*Arrrr quit (Ping timeout: 248 seconds)
15:50:41*vendethiel joined #nim
15:55:42*dorei quit (Quit: Page closed)
16:12:16*krux02 quit (Remote host closed the connection)
16:12:32*vendethiel quit (Ping timeout: 250 seconds)
16:15:58*enthus1ast quit (Ping timeout: 252 seconds)
16:17:02*mahasamoot_ quit (Ping timeout: 244 seconds)
16:17:55*yglukhov quit (Ping timeout: 252 seconds)
16:21:56*Arrrr_ quit (Quit: WeeChat 1.4)
16:22:56*desophos joined #nim
16:35:07baabelfishTell me what is the best way for my nim plugin to detect the main file?
16:36:57baabelfishshould I force the user to use some variable in *.nims?
16:38:11federico3baabelfish: would it help to look at "bin" in a .nimble file?
16:38:34baabelfishthat is one of the alternatives I came up, not many nimble projects do that even
17:03:02*rok_ joined #nim
17:08:51*mahasamoot joined #nim
17:14:18*GangstaCat quit (Quit: Leaving)
17:20:57*UberLambda joined #nim
17:27:11*francisl joined #nim
17:32:43*lcm337 quit (*.net *.split)
17:40:01*GangstaCat joined #nim
17:41:36*yglukhov joined #nim
17:46:03*yglukhov quit (Ping timeout: 264 seconds)
17:47:34*francisl quit (Ping timeout: 252 seconds)
18:04:20*UberLambda quit (Quit: GTG)
18:05:57reactormonkbaabelfish, https://github.com/nim-lang/nim-mode/blob/master/nim-suggest.el#L34
18:14:45*gokr joined #nim
18:36:36*toaoMgeorge joined #nim
18:47:17*fredrik92 quit (Quit: Leaving)
18:48:55*enthus1ast joined #nim
19:03:33*vendethiel joined #nim
19:06:25*brson quit (Ping timeout: 240 seconds)
19:20:11*yglukhov joined #nim
19:38:42*vendethiel quit (Ping timeout: 260 seconds)
19:47:11*vendethiel joined #nim
19:50:15*mwbrown joined #nim
19:51:30*sorakun joined #nim
19:54:07baabelfishreactormonk: thanks, still got a hackish feeling about that
19:54:08*nsf quit (Quit: WeeChat 1.4)
19:55:10baabelfishisn't cfg deprecated in favour of nims?
19:56:04*nsf joined #nim
19:57:44*sarlalian quit (Ping timeout: 260 seconds)
19:57:44*Sergio965 quit (Ping timeout: 260 seconds)
19:58:19*Vivek quit (Ping timeout: 260 seconds)
19:58:19*ekarlso- quit (Ping timeout: 260 seconds)
19:59:49*Vivek joined #nim
20:00:12*Vivek is now known as Guest82270
20:01:49*sarlalian joined #nim
20:03:06*darkf joined #nim
20:05:08*Sergio965 joined #nim
20:07:18*BitPuffin quit (Ping timeout: 276 seconds)
20:12:30*brson joined #nim
20:12:40*sorakun quit (Ping timeout: 244 seconds)
20:12:57*ekarlso- joined #nim
20:13:09*sora joined #nim
20:28:09*yglukhov quit (Remote host closed the connection)
20:38:59*yglukhov joined #nim
20:39:53*yglukhov quit (Remote host closed the connection)
20:40:31*yglukhov joined #nim
20:40:33*sora quit (Ping timeout: 240 seconds)
20:40:55*sorakun joined #nim
20:41:25*filippo joined #nim
20:41:31*filippo is now known as filcuc
20:42:10filcucstupid question..but what's the safer way for passing a sequence as an array to C?
20:45:01filcucright now i'm doing myseq[0].unsafeAddr
20:45:05filcucis it correct?
20:45:30filcucand the result is assigned to a pointer
20:45:40filcuclet p: pointer = myseq[0].unsafeAddr
20:52:51*arnetheduck joined #nim
20:54:32ldleworkfilcuc: just take the addr of a ref
20:54:42ldleworkno need for unsafeAddr I think
20:54:46*darkf quit (Read error: Connection reset by peer)
20:56:39*darkf joined #nim
20:58:57filcucldlework: i need the unsafeAddr because myseq is a proc parameter
20:59:04filcucldlework: so i cannot use addr
21:00:23filcucbut i'm experiencing weird behaviour probably and the generated c code is a mess
21:15:34cheatfateAraq, could you please help me with "out" keyword
21:16:30Araqcheatfate: hi. the 'out' keyword hasn't been implemented.
21:17:25cheatfateahh ok
21:19:01Araqfilcuc: myseq[0].unsafeAddr is fine
21:21:28*yglukhov quit (Remote host closed the connection)
21:21:33filcucAraq: right now i'm seeing weird thing..basically if my seq.len is 0 everything is fine and from C i get the correct pointer
21:21:49filcucAraq: but i get garbage with the seq has two values
21:22:24filcucAraq: the generated seems fine...but who knows..but this is could be caused also from my code
21:22:34Araqcint vs int problem?
21:23:24filcucAraq: the array contains some enum values but the values should be cint
21:23:43filcucbecause in the enum i've: myvalue = 0.cint, mysecondvalue = 1.cint
21:23:45filcucetc
21:23:58Araqha, that's wrong I think
21:24:09Araqyou need to use the .size pragma on the enum instead
21:24:15Araqc2nim does this
21:24:40filcuc:(
21:24:57filcuci'll google about .size pragma
21:25:01*irrequietus joined #nim
21:27:19filcucAraq: mh..but isn't the .size pragma just declarating the enum width?
21:27:48filcucAraq: because in this case i don't get how does it related to cint vs int
21:29:14filcucAraq: should i write MyEnum {.size: sizeof(cint).}
21:29:20filcuc?
21:30:06rok_Hey, question to the guys from nimsuggest. Which branch should be used right now? Master or major-restructure?
21:32:25cheatfatefilcuc, if you not .size pragma then every variable of MyEnum size will be 1 byte size
21:33:24*sorakun quit (Read error: Connection reset by peer)
21:35:55filcuccheatfate: good to know that..i think that i should be in the manual
21:36:36Araqrok_: major-restructure I guess
21:36:40filcucor at least in a FFI section
21:36:49AraqI need to review it and merge it though.
21:37:24Araqfilcuc: PRs welcome. you could also use c2nim ... ;-)
21:38:11*sorakun joined #nim
21:38:50rok_Araq: alright
21:39:11filcucAraq: Touché :D
21:40:10*tinAndi joined #nim
21:40:16filcucAraq: you know that the real men write they're on ffi without a supporting tool
21:41:17filcuc*own*
21:43:16Araqreal men wrote c2nim.
21:43:31Araq;-)
21:43:56*bamorim joined #nim
21:45:22filcuc:D given that, using the .size pragma solved my issues
21:45:27filcucthanks
22:01:02*desophos_ joined #nim
22:04:12*desophos quit (Ping timeout: 246 seconds)
22:05:17*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
22:14:29*rok_ quit (Quit: rok_)
22:16:02*mat4 joined #nim
22:19:33*mwbrown quit (Ping timeout: 240 seconds)
22:20:02*darkf_ joined #nim
22:21:59*sorakun quit (Remote host closed the connection)
22:22:53*darkf quit (Ping timeout: 248 seconds)
22:29:08cheatfateAraq, does repr preserve object members order?
22:31:12Araqya
22:32:49*desophos_ quit (Remote host closed the connection)
22:34:29*desophos joined #nim
22:38:38*desophos quit (Ping timeout: 250 seconds)
22:41:58*bamorim quit (Ping timeout: 244 seconds)
22:44:00*mat4 quit (Quit: Leaving)
22:47:17*tinAndi quit (Quit: ChatZilla 0.9.92 [Firefox 44.0.2/20160210153822])
22:49:28*vendethiel quit (Ping timeout: 250 seconds)
22:59:21*filcuc quit (Quit: Konversation terminated!)
23:06:28*desophos joined #nim
23:10:35*Trustable quit (Quit: Leaving)
23:16:44*irrequietus quit ()
23:22:14*boopsies is now known as boopsiesisaway
23:25:29*bjz_ joined #nim
23:28:01*bjz quit (Ping timeout: 252 seconds)
23:32:21*vendethiel joined #nim
23:41:28*darkf_ is now known as darkf
23:47:50*Varriount quit (Read error: Connection reset by peer)
23:48:13*Varriount joined #nim
23:53:17*vendethiel quit (Ping timeout: 244 seconds)