00:03:47 | * | yglukhov joined #nim |
00:08:00 | * | yglukhov quit (Ping timeout: 246 seconds) |
00:12:28 | * | Jesin quit (Quit: Leaving) |
00:28:18 | * | PMunch quit (Ping timeout: 250 seconds) |
00:29:02 | * | brson quit (Ping timeout: 276 seconds) |
00:29:29 | * | brson joined #nim |
00:38:33 | * | Roin quit (Ping timeout: 240 seconds) |
00:39:21 | * | Roin joined #nim |
00:53:49 | * | libman quit (Remote host closed the connection) |
01:13:24 | * | brson quit (Ping timeout: 244 seconds) |
01:17:16 | * | enthus1ast quit (Read error: Connection reset by peer) |
01:19:42 | * | brson joined #nim |
01:25:32 | * | yglukhov joined #nim |
01:27:03 | * | brson quit (Ping timeout: 240 seconds) |
01:31:54 | * | yglukhov quit (Ping timeout: 260 seconds) |
02:01:20 | * | brson joined #nim |
02:30:35 | * | brson quit (Ping timeout: 276 seconds) |
02:31:51 | * | brson joined #nim |
02:53:47 | * | brson quit (Ping timeout: 260 seconds) |
03:06:08 | * | brson joined #nim |
03:29:05 | * | yglukhov joined #nim |
03:33:27 | * | yglukhov quit (Ping timeout: 260 seconds) |
03:55:07 | * | brson quit (Ping timeout: 244 seconds) |
04:02:59 | * | notfowl is now known as fowl |
04:09:35 | * | ludocode quit (Ping timeout: 244 seconds) |
04:50:50 | * | yglukhov joined #nim |
04:55:03 | * | yglukhov quit (Ping timeout: 240 seconds) |
05:43:18 | * | kseg joined #nim |
05:52:22 | kseg | How can I turn a pointer (say, from http://nim-lang.org/docs/sqlite3.html#column_blob,Pstmt,int32) into something usable? Was hoping p = cast[ptr byte](pointer) would work, but p[1] doesn’t (p[] gives me the first value though) |
06:00:17 | * | ludocode joined #nim |
06:02:47 | * | endragor joined #nim |
06:14:32 | * | yglukhov joined #nim |
06:16:06 | kseg | type BArray {.unchecked.} = array[0..0, byte] |
06:16:21 | kseg | cast[ptr ByteArray](pointer) |
06:16:22 | kseg | seems to work |
06:19:07 | * | yglukhov quit (Ping timeout: 260 seconds) |
06:20:23 | * | endragor_ joined #nim |
06:24:26 | * | endragor quit (Ping timeout: 244 seconds) |
06:29:21 | * | endragor_ quit (Remote host closed the connection) |
06:29:50 | * | endragor joined #nim |
06:33:22 | * | fastrom joined #nim |
06:59:45 | * | gokr joined #nim |
07:01:11 | * | kseg quit (Quit: kseg) |
07:12:49 | * | kseg joined #nim |
08:06:26 | * | Demon_Fox quit (Quit: Leaving) |
08:13:09 | * | moigagoo joined #nim |
08:16:20 | moigagoo | Hi! Just a quick silly question. Any idea on when Nim 0.14 will be released? |
08:16:44 | moigagoo | Also, haven't you thought about switching from IRC to Gitter? :-) |
08:16:48 | * | Arrrr joined #nim |
08:30:02 | gokr | moigagoo: IRC is still home for a LOT of people. It's also "free". Gitter is great, we use it a lot at Evothings, but its still a commercial entity. Personally I find both have their respective merits. |
08:31:58 | * | kseg quit (Quit: kseg) |
08:45:22 | * | kseg joined #nim |
08:49:11 | * | zodiak_ joined #nim |
08:52:08 | * | zodiak quit (Ping timeout: 276 seconds) |
08:56:16 | * | yglukhov joined #nim |
08:57:07 | yglukhov | dom96: can you merge, https://github.com/nim-lang/Nim/pull/4150 |
09:00:09 | * | fastrom quit (Quit: Leaving.) |
09:02:23 | * | Arrrr_ joined #nim |
09:02:37 | * | Arrrr_ quit (Client Quit) |
09:04:24 | * | Arrrr quit (Ping timeout: 250 seconds) |
09:05:57 | * | Salewski joined #nim |
09:09:34 | Salewski | Currently I can not remember the Nim way to ensure cleanup when the program terminates. For example, I start a new process, how can i ensure that this process is always terminated when my main program terminates? |
09:10:36 | Salewski | (My main program may terminate regular, or maybe by an exception) |
09:15:28 | * | moigagoo quit (Ping timeout: 250 seconds) |
09:15:42 | Salewski | Do we use try/finally or defer for that? Have not seen an example yet, but I think so. |
09:16:49 | Araq_ | Salewski: yeah but also addQuitProc is useful for that |
09:17:27 | Salewski | Ah, thanks! |
09:20:42 | Salewski | Araq_ Is http://forum.nim-lang.org/t/2258 a bug that I should report, or may the return of all the templates definitions for a sug query really be intended? |
09:30:42 | Araq_ | it's intended indeed, sorry wanted to answer |
09:31:00 | Araq_ | since float matches expr, all the templates are candidates |
09:35:47 | Araq_ | and there is little we can do about it |
09:36:38 | Salewski | OK, I indeed guessed that. But I can not imagine for what that is useful. When I import glib, I get hundred of such templates, makes no sense to display them to user for selection, so I will just filter all out. |
09:37:46 | Salewski | Bye. |
09:37:49 | * | Salewski quit () |
09:41:00 | yglukhov | dom96, cheatfate. regarding this deep recursion problem. I think there's an easy fix for that. in future.complete() check for current stack size, and if it exceeds threshold, defer callback to selector and wake it up. selector will unconditionally call deferred callbacks after every iteration. |
09:46:33 | * | nsf quit (Ping timeout: 240 seconds) |
09:49:55 | * | PMunch joined #nim |
10:01:30 | * | kulelu88 quit (Quit: Leaving) |
10:18:58 | * | kseg quit (Quit: kseg) |
10:26:06 | * | br3w5 joined #nim |
10:37:39 | * | PMunch quit (Ping timeout: 246 seconds) |
10:48:47 | * | Trustable joined #nim |
10:59:27 | * | Trustable quit (Quit: Leaving) |
11:03:54 | * | gokr quit (Ping timeout: 276 seconds) |
11:06:38 | * | gokr joined #nim |
11:33:38 | * | tankfeeder joined #nim |
11:35:56 | * | elrood joined #nim |
12:16:42 | * | yglukhov quit (Ping timeout: 260 seconds) |
12:24:44 | * | gokr quit (Quit: Leaving.) |
12:24:47 | * | gokr1 joined #nim |
12:28:15 | dom96 | yglukhov: interesting idea. I think it would work pretty well. |
12:29:01 | dom96 | explicitly deferring a callback might be better though |
12:29:23 | dom96 | otherwise async becomes even more unpredictable |
12:30:13 | * | arnetheduck joined #nim |
12:34:56 | dom96 | yglukhov: merged |
12:35:23 | cheatfate | dom96, i cannot agree, because we are not fall to "deep recursion" fast we are going to it step by step... and after when we reach position stackSize - 1 we will always run only one callback per pool |
12:35:42 | cheatfate | per pool() call |
12:35:51 | dom96 | cheatfate: so you think we should do what yglykhov suggests? |
12:36:09 | cheatfate | dom96, nope we need to stay with our old plan of callSoon |
12:36:18 | cheatfate | dom96, this is the best variant |
12:36:51 | dom96 | hrm okay. |
12:39:07 | cheatfate | dom96, you know yesterday i have tested GetQueuedCompletionStatusEx() which can receive not one result like GetQueuedCompletionStatus() but an array of results... and for some reason this new function not give asyncdispatch any speed increase... |
12:39:47 | cheatfate | 0.01ms... |
12:42:35 | dom96 | btw, just in case, I re-added these sanity checks https://github.com/nim-lang/Nim/commit/299989f3aa72b4bb0558ce5dbe7043dc83a4d2a5 |
12:46:17 | * | zaquest joined #nim |
12:49:11 | * | lubos_cz joined #nim |
12:58:16 | * | gokr1 quit (Ping timeout: 265 seconds) |
12:59:37 | * | gokr joined #nim |
13:13:53 | * | yglukhov joined #nim |
13:21:25 | * | lubos_cz_ joined #nim |
13:22:05 | * | lubos_cz_ quit (Remote host closed the connection) |
13:22:39 | * | lubos_cz quit (Quit: Leaving) |
13:23:04 | * | lubos_cz joined #nim |
14:02:16 | * | pregressive joined #nim |
14:02:39 | yglukhov | cheatfate: do you mean that callSoon should now be called instead of future.complete? or inside futureComplete? |
14:04:50 | yglukhov | using callsoon unconditionally will make every completion deferred. isn't that less efficient? |
14:06:17 | yglukhov | with my suggestion (which actually still requires callSoon), we can complete more futures immediately under normal load. under heavy load we will fallback to callsoon. |
14:06:51 | yglukhov | also we can define a min/max threshold. e.g. if stack > max: callSoon until stack < min |
14:07:00 | yglukhov | ping dom96 also |
14:08:22 | dom96 | yglukhov: I think the plan with callSoon is that it's a part of the API and we only use it in certain places |
14:08:43 | dom96 | basically any time the future completes immediately |
14:09:14 | * | pregressive quit (Remote host closed the connection) |
14:09:55 | yglukhov | ah, that makes sense. nevermind what i said |
14:10:58 | yglukhov | callSoon sounds like dead easy to implement. will you do it soon? :) |
14:11:36 | yglukhov | do i understand correclty that it's like no more than 5 lines of code total? |
14:13:14 | * | BitPuffin joined #nim |
14:15:42 | yglukhov | Araq_: can i cast a ref to anything to ref RootObj and hope that GC will not mess it up? |
14:17:16 | Araq_ | yglukhov: yeah that sounds about right |
14:17:47 | yglukhov | ok thanks |
14:20:21 | yglukhov | Araq_, also if i cast int or smth small to ref RootObj, am i in trouble? |
14:20:35 | Araq_ | yep |
14:21:06 | Araq_ | then you are in big trouble and need to patch the GC so that every != nil check checks for ptr >% PageSize or something |
14:21:27 | Araq_ | which doesn't seem wise for bug preventions |
14:22:01 | Araq_ | otherwise I would have done it years ago since it has no cost and makes it a bit more flexible |
14:22:02 | yglukhov | ok thanks again |
14:23:15 | yglukhov | does gc somehow check object variants in this context? |
14:23:36 | yglukhov | Araq_ |
14:24:07 | Araq_ | sure, it's precise for object variants too |
14:24:21 | Araq_ | don't use them as an unsafe union |
14:24:30 | yglukhov | ok |
14:28:14 | * | tautologico quit () |
14:35:08 | * | nsf joined #nim |
14:35:56 | arnetheduck | hey Araq_, what's the motivation behind skirting the dynamic loader and loading dynlibs with dlopen/equivalents? |
14:37:50 | Araq_ | so that I don't need braindead -dev packages which contain some shitty libs that I link statically against that then call the stuff in the dynamic lib anyway |
14:38:44 | * | Arrrr joined #nim |
14:38:53 | * | Arrrr quit (Changing host) |
14:38:53 | * | Arrrr joined #nim |
14:39:10 | Araq_ | it makes no sense at all and the scripting languages all use dlopen anyway so the "dependency walkers" are all completely unreliable |
14:40:37 | Araq_ | not too mention that the command line order in the linking step is still relevant. In 2016. |
14:42:36 | * | tankfeeder quit (Quit: Leaving) |
14:45:30 | * | zahary joined #nim |
14:47:24 | * | kulelu88 joined #nim |
14:47:24 | * | kulelu88 quit (Changing host) |
14:47:24 | * | kulelu88 joined #nim |
14:56:46 | * | pregressive joined #nim |
15:03:33 | * | BitPuffin quit (Ping timeout: 240 seconds) |
15:05:42 | * | gokr quit (Ping timeout: 276 seconds) |
15:15:17 | reactormonk | Araq_, is there a windows-equivalent of the mac automator? |
15:19:21 | Araq_ | no idea. does COM/ActiveX count? |
15:19:47 | Araq_ | speaking of which, why does Nim still lack COM support? |
15:20:22 | Araq_ | disphelper ain't that hard to port to Nim and then you can script Excel/Word etc with Nim. |
15:20:45 | reactormonk | Araq_, does that have a GUI? :-) |
15:22:17 | * | nsf quit (Ping timeout: 244 seconds) |
15:22:32 | Araq_ | http://www.webdomination.de/2010/10/actions-das-automater-pendant-fuer-windows/ |
15:23:29 | reactormonk | Nice. |
15:23:37 | Araq_ | funny it's a Java App |
15:24:36 | * | fastrom joined #nim |
15:25:09 | Araq_ | this seems to be way more useful though: https://www.autoitscript.com/site/autoit/ |
15:25:20 | Araq_ | since it emulates mouse events |
15:28:37 | reactormonk | The automator would be the equivalent of the command line in power - somewhat of. |
15:37:12 | * | nsf joined #nim |
15:47:53 | Araq_ | blasphemy! ;-) |
15:57:38 | * | pandada8_ joined #nim |
15:57:49 | * | pandada8_ quit (Client Quit) |
15:59:18 | * | pandada8 joined #nim |
16:05:10 | * | arnetheduck quit (Ping timeout: 244 seconds) |
16:19:10 | yglukhov | Araq_: is there some magic flag which asserts nim upon compilation error/warning so that it's easier to debug nim? |
16:19:43 | Araq_ | hmm? -d:useSysAssert -d:useGcAssert turns on even more memory checks |
16:20:40 | yglukhov | no. e.g. error: cannot evaluate 'sizeof(Foo[int])'. it looks like nim bug. i want to know the stacktrace of nim that produces this error. stacktrace of the nim compiler itself. |
16:21:54 | yglukhov | .e.g $ nim c --assertOnErrors test.nim |
16:22:03 | yglukhov | and nim will crash with stacktrace |
16:22:39 | * | Jesin joined #nim |
16:23:21 | yglukhov | because otherwise i have to patch compiler/msgs.nim to doAssert(false) |
16:27:09 | * | endragor quit (Remote host closed the connection) |
16:27:14 | Araq_ | koch temp c -d:debug foo.nim |
16:27:28 | Araq_ | or --verbosity:3 instead of -d:debug |
16:28:00 | Araq_ | it's not a bug though, the compiler cannot evaluate complex sizeof() expressions, it passes them to C |
16:29:36 | yglukhov | oh, really... |
16:32:53 | yglukhov | ok then |
16:39:12 | * | Arrrr quit (Ping timeout: 246 seconds) |
16:44:56 | * | libman joined #nim |
16:50:36 | * | kulelu88 quit (Quit: Leaving) |
16:59:49 | yglukhov | Araq_: i want to add a note to sizeof doc: "If used within nim VM context ``sizeof`` will only work for scalar types." does it sound right? |
17:04:31 | * | brson joined #nim |
17:06:44 | Araq_ | yup |
17:07:34 | * | libman quit (Ping timeout: 250 seconds) |
17:18:06 | * | libman joined #nim |
17:23:02 | cheatfate | yglukhov, about `callSoon` we want to add https://github.com/nim-lang/Nim/blob/devel/lib/pure/asyncdispatch.nim#L260 callSoon(future.cb) which enqueue future.cb and dequeue it after this line https://github.com/nim-lang/Nim/blob/devel/lib/pure/asyncdispatch.nim#L471 |
17:23:34 | cheatfate | and run all callbacks there... queue data structure must be placed in globalDispatcher |
17:24:12 | cheatfate | i have already made it, but it causes very very strange warnings and errors... I dont understand it so i ask dom96 to make it |
17:25:05 | yglukhov | cheatfate: sounds reasonable. got a gist? |
17:27:28 | cheatfate | yglukhov, ok give me some time to make it again... could not find it |
17:28:00 | * | endragor joined #nim |
17:28:57 | * | brson quit (Quit: leaving) |
17:29:49 | * | brson joined #nim |
17:31:52 | yglukhov | ok, bbl |
17:32:47 | * | endragor quit (Ping timeout: 276 seconds) |
17:37:34 | * | libman quit (Remote host closed the connection) |
17:37:48 | * | yglukhov quit (Ping timeout: 276 seconds) |
17:41:49 | * | br3w5 quit (Quit: br3w5) |
17:58:07 | cheatfate | yglukhov: dom96: this is my proposal of `callSoon` https://gist.github.com/cheatfate/ea85f5f8fb8f26ba79ff253541b526dc/revisions |
17:59:25 | cheatfate | but for some reason it got an error |
17:59:41 | cheatfate | error are in the comments |
18:06:42 | * | endragor joined #nim |
18:09:38 | dom96 | cheatfate: have you tried to mark that proc with {.gcsafe.}? |
18:09:57 | dom96 | cheatfate: now that I'm looking at the diff, maybe we could just reuse the timers for this? |
18:10:23 | cheatfate | dom96, but we will kill timers when we got hardware timers... |
18:11:15 | dom96 | cheatfate: even if the timers are implemented in hardware it will still be possible to use them this way |
18:11:36 | * | endragor quit (Ping timeout: 276 seconds) |
18:11:38 | cheatfate | dom96, for what reason? |
18:11:57 | dom96 | cheatfate: simpler code? |
18:12:04 | cheatfate | dom96, but insane slowdown |
18:12:27 | dom96 | I don't think so |
18:12:43 | cheatfate | dom96, i have already tested old timers and i have an issue on that |
18:13:32 | cheatfate | dom96, https://github.com/nim-lang/Nim/issues/3909 |
18:13:45 | cheatfate | it makes asynchttpserver 2x times slower... |
18:13:50 | cheatfate | there was old timers |
18:14:04 | dom96 | I think yglukhov fixed that |
18:14:57 | Xe | does the async macro rewrite code with await to callback-ify it? |
18:15:12 | dom96 | Xe: it rewrites it into a coroutine |
18:15:27 | cheatfate | dom96, you want me to make tests again? |
18:15:29 | dom96 | (kind of, Nim's closure iterators aren't really coroutines) |
18:15:37 | dom96 | cheatfate: if you want |
18:15:53 | Xe | i should look at rewriting the time library |
18:16:05 | cheatfate | dom96, i dont because i have already tested hardware timers and there only 2-5% speed decrease if you use hardware timer |
18:16:07 | Xe | because for the love of god that needs cleansing |
18:16:28 | Araq_ | Xe: please start with fixing the open bugs :P |
18:18:17 | dom96 | Xe: PRs are always warmly welcome :) |
18:18:39 | Xe | Araq_: like the one I reported that was basically "this doesn't work"? |
18:19:27 | Araq_ | do you really think I know every bug in detail? |
18:19:37 | Araq_ | we have 700 of these |
18:21:08 | cheatfate | dom96, please check gist for my last comment, there was a bunch of warnings if i add {.gcsafe.}... |
18:21:45 | dom96 | Xe: which one is that? (Can't remember your GH username) |
18:21:51 | Xe | Xe |
18:22:24 | Xe | timetotimeinfo has been causing me hell |
18:22:46 | * | Salewski joined #nim |
18:22:47 | Xe | i think that it should be removed as well as the time object made private |
18:22:49 | dom96 | Xe: oh, Github didn't show it in the completions so I assumed that wasn't it. |
18:23:04 | * | yglukhov joined #nim |
18:24:36 | dom96 | Xe: I think we deprecated that |
18:25:19 | Salewski | sug skProc system.toFloat proc (i: int): float{.noSideEffect.} /home/stefan/Nim/lib/system.nim 1534 5 "" 100 # Araq, what is the 100 (last value result) when nimsuggest is launced with --v2 ? Priority? |
18:26:07 | dom96 | confidence perhaps? |
18:26:57 | Salewski | Yes, maybe. Seems to be always 100, so some percentage maybe? |
18:27:08 | dom96 | Xe: in fact, your issue might be fixed now? |
18:27:31 | Araq_ | Salewski: yup, it's a "matching quality" |
18:27:42 | * | yglukhov quit (Ping timeout: 260 seconds) |
18:27:42 | Araq_ | currently I might only use 100 and 0, but hey |
18:27:43 | Salewski | OK, thanks! |
18:27:51 | Araq_ | it can scale. |
18:28:13 | Salewski | Bye. |
18:28:16 | * | Salewski quit () |
18:30:08 | cheatfate | dom96, did you saw warnings? |
18:30:45 | dom96 | cheatfate: yes, I'm not sure what to do about them. Maybe Araq_ can help. |
18:34:12 | cheatfate | dom96, its because callSoon using queue which are not gcsafe |
18:34:41 | cheatfate | but i dont understand why first error wants {.closure,gcsafe.} |
18:34:43 | * | yglukhov joined #nim |
18:35:31 | cheatfate | dom96, i even dont understand why first error appeared |
18:48:09 | cheatfate | dom96, i can make queue to be gcsafe... |
18:54:29 | * | aziz joined #nim |
18:58:55 | yglukhov | cheatfate: your gist works ok for me |
18:59:17 | cheatfate | yglukhov, you can compile it without error? |
18:59:18 | yglukhov | if callSoon is {.gcsafe.} |
18:59:21 | yglukhov | yup |
18:59:24 | yglukhov | but im on mac |
18:59:39 | cheatfate | yglukhov you made callSoon gcsafe but it not gcsafe |
18:59:49 | yglukhov | it is gcsafe on mac |
18:59:52 | cheatfate | it uses queues.nim |
18:59:53 | yglukhov | probably =) |
19:00:19 | cheatfate | its just because you marked callSoon proc with {.gcsafe.} i have marked callback with {.gcsafe.} |
19:03:39 | cheatfate | yglukhov, and in your case it can cause memory leaks i think... |
19:03:52 | * | brson quit (Ping timeout: 260 seconds) |
19:04:55 | yglukhov | cheatfate: im not sure i understand you. |
19:05:35 | cheatfate | callSoon using queue from queues... so enqueue() operation is not {.gcsafe.} but you have marked whole proc with {.gcsafe.} |
19:06:10 | yglukhov | why enqueue is not gcsafe? |
19:07:30 | yglukhov | it doesnt use globals as far as i can see |
19:07:53 | cheatfate | yglukhov, yeah you are right, but queue stored in global variable |
19:07:59 | cheatfate | getGlobalDispatcher |
19:08:26 | cheatfate | queue stored here https://gist.github.com/cheatfate/ea85f5f8fb8f26ba79ff253541b526dc#file-asyncdispatch_norecurse-nim-L416 |
19:08:57 | yglukhov | globalDispatcher is gcsafe because its in tls |
19:09:19 | yglukhov | can you show your errors if you mark callSoon gcsafe? |
19:11:42 | yglukhov | also you should callSoon in future.complete, shouldnt you? |
19:13:20 | cheatfate | yglukhov, nope callSoon is in right place |
19:13:21 | * | libman joined #nim |
19:16:07 | cheatfate | yglukhov, i was forgot about initalizing queue... and i have added {.gcsafe.} to callSoon declaration... and now it compiled without warnings and errors |
19:16:09 | cheatfate | https://gist.github.com/cheatfate/ea85f5f8fb8f26ba79ff253541b526dc |
19:16:42 | * | Gonzih quit (Ping timeout: 250 seconds) |
19:17:04 | * | pecan left #nim ("WeeChat 1.5") |
19:17:21 | yglukhov | cheatfate: great! could you please define callSoon not in the windows section, but further in the shared section? |
19:18:07 | cheatfate | yglukhov, ok lets try |
19:19:21 | yglukhov | shouldnt call soon wake selector up? |
19:19:52 | yglukhov | oh, nevermind. |
19:19:52 | cheatfate | yglukhov, the problem is that callSoon uses getGlobalDispatcher() to obtain pointer for queue |
19:20:28 | cheatfate | but in shared section there still no getGlobalDispatcher() declaration |
19:20:54 | yglukhov | just move it lower |
19:21:03 | yglukhov | after both windows and unix sections end |
19:22:18 | yglukhov | before proc sleepAsync |
19:24:10 | yglukhov | oh and i think that processPendingCallbacks should be called before select as well as after select |
19:24:34 | yglukhov | because otherwise you might stall in select for some time |
19:25:30 | cheatfate | https://gist.github.com/cheatfate/ea85f5f8fb8f26ba79ff253541b526dc/revisions |
19:27:12 | cheatfate | why you think processPendingCallbacks must be called twice? just because it can break your timers? |
19:29:11 | cheatfate | currently until it used privately it can't break timers because for unix we have only 1 place where future can be returned already finished |
19:29:41 | yglukhov | on the other hand.... you're right. processPendingCallbacks at the end should be enough |
19:30:08 | yglukhov | your gist works smoothly btw |
19:31:30 | cheatfate | yglukhov, https://gist.github.com/cheatfate/ea85f5f8fb8f26ba79ff253541b526dc#gistcomment-1777128 |
19:32:16 | cheatfate | yglukhov, and i dont this Araq_ will accept this gist as PR :) |
19:34:40 | * | Gonzih joined #nim |
19:43:07 | * | brson joined #nim |
19:54:24 | * | aziz quit (Quit: Ex-Chat) |
19:55:29 | * | lcm337 joined #nim |
20:08:08 | zodiak_ | re library is deprecated ?! |
20:08:20 | zodiak_ | according to http://nim-lang.org/docs/lib.html it's the one to use :'( |
20:08:59 | zodiak_ | oh, I see, clicking into the doc tells me to use nre or pegs |
20:09:03 | Araq_ | zodiak_: there is 'nre' but I use 're' for my new projects so ... |
20:09:13 | Araq_ | I might de-deprecate it ... |
20:09:13 | zodiak_ | (thumbsup) |
20:09:35 | zodiak_ | yeah.. I think (personally speaking) coming from python/perl.. re is 'the one true namespace' for regex ;) |
20:10:00 | Araq_ | oh ok but we could remove 're' and make 're' an alias for 'nre' |
20:10:08 | zodiak_ | oh |
20:10:10 | zodiak_ | *laughs* |
20:10:16 | zodiak_ | yeah, that would work (duh on me :) |
20:10:27 | Araq_ | but at some point I will introduce Araq's lib |
20:11:26 | Araq_ | the "old stdlib" |
20:13:36 | Araq_ | cheatfate: last time I checked dom96 needs to accept stdlib PRs |
20:13:39 | Araq_ | not me. |
20:22:40 | cheatfate | dom96, so we have Araq_ opinion and do you accept my gist as PR? with this latest `hidden` warnings? https://gist.github.com/cheatfate/ea85f5f8fb8f26ba79ff253541b526dc |
20:22:43 | yglukhov | cheatfate: these warnings existed before your changes |
20:22:50 | yglukhov | stash and try |
20:23:56 | cheatfate | yglukhov, yeah you are right just lost in this big amount of warnings... |
20:24:09 | yglukhov | so youre free to go i guess |
20:26:20 | * | bozaloshtsh quit (Ping timeout: 276 seconds) |
20:34:14 | dom96 | cheatfate: make a PR please so that I can see the full diff |
20:36:40 | cheatfate | dom96, https://github.com/nim-lang/Nim/pull/4156 waiting for tests to be completed |
20:40:28 | * | gokr joined #nim |
20:57:34 | * | yglukhov quit (Remote host closed the connection) |
21:00:18 | * | libman quit (Remote host closed the connection) |
21:01:13 | * | elrood quit (Quit: Leaving) |
21:07:53 | dom96 | cheatfate: looks like you broke tests |
21:08:12 | dom96 | https://travis-ci.org/nim-lang/Nim/builds/130101013#L2301 |
21:16:47 | cheatfate | dom96, yeah working on it |
21:17:22 | cheatfate | its just because yglukhov ask me to add callSoon to shared branch... and i have not tested it on unix yet... will made pr later |
21:20:05 | * | yglukhov joined #nim |
21:20:20 | * | gokr quit (Ping timeout: 244 seconds) |
21:23:08 | * | Matthias247 joined #nim |
21:25:13 | * | pregressive quit (Remote host closed the connection) |
21:25:59 | * | yglukhov quit (Ping timeout: 260 seconds) |
21:33:38 | * | saml quit (Remote host closed the connection) |
21:43:08 | * | saml joined #nim |
21:43:21 | * | tautologico joined #nim |
21:43:47 | * | bozaloshtsh joined #nim |
21:44:42 | tautologico | I just tried to register on the forums, but my email won't fit in the text field... very small limit |
21:44:50 | * | saml quit (Remote host closed the connection) |
21:46:35 | cheatfate | dom96, made new PR https://github.com/nim-lang/Nim/pull/4159, tested in linux/windows/freebsd |
21:47:08 | dom96 | tautologico: really? I don't recall adding any limits for that. |
21:47:12 | dom96 | tautologico: Are you getting an error? |
21:47:32 | tautologico | no, no error |
21:47:45 | tautologico | the browser suggested the autocomplete with my address |
21:48:09 | tautologico | but then I noticed it said the confirmation email was sent to [email protected] |
21:48:12 | tautologico | the m was cut out |
21:49:03 | tautologico | when I try to put the m back the form won't let me |
21:50:10 | tautologico | limit seems to be 30 characters |
21:50:51 | dom96 | tautologico: oh, looks like it's a limit in the html. |
21:52:56 | dom96 | tautologico: I can change the email address for you if you'd like |
21:59:46 | dom96 | tautologico: added the 'm' |
22:04:41 | cheatfate | dom96, please could you remember how to run particulare async tests with koch |
22:05:22 | * | yglukhov joined #nim |
22:09:36 | * | yglukhov quit (Ping timeout: 246 seconds) |
22:10:13 | Araq_ | cheatfate: tests/testament/tester cat async |
22:10:25 | cheatfate | Araq_, thank you |
22:10:36 | Araq_ | not sure what the koch alias is. 'koch test cat async' ? |
22:12:39 | * | fastrom quit (Quit: Leaving.) |
22:13:03 | cheatfate | koch test c async working good |
22:14:29 | * | Matthias247 quit (Read error: Connection reset by peer) |
22:14:56 | cheatfate | looks like my pr seriously break tests... |
22:16:57 | * | Matthias247 joined #nim |
22:23:18 | cheatfate | and looks like method to dequeue callbacks in pool() not works, because not all async code use poll() |
22:29:14 | * | yglukhov joined #nim |
22:30:18 | * | KYKYLLIKA joined #nim |
22:30:45 | KYKYLLIKA | Anyone know of a lib that implements guids? |
22:33:19 | dom96 | KYKYLLIKA: haven't used these personally but might be close enough: https://github.com/wheineman/nim-only-uuid https://github.com/idlewan/nim-uuid http://nim-lang.org/docs/oids.html |
22:33:42 | * | yglukhov quit (Ping timeout: 244 seconds) |
22:34:29 | KYKYLLIKA | dom96: Thanks, I already found the oids, but uuids should be interesting to look at. |
22:36:52 | cheatfate | dom96, looks like dequing callback would be tough task |
22:43:20 | * | Demon_Fox joined #nim |
22:45:27 | cheatfate | and now i even dont know how we can resolve this "deep recursion" bug |
22:53:35 | * | yglukhov joined #nim |
22:58:04 | * | yglukhov quit (Ping timeout: 265 seconds) |
23:00:15 | * | Phoenixbl4 joined #nim |
23:02:33 | * | KYKYLLIKA quit (Ping timeout: 240 seconds) |
23:05:09 | * | Phoenixbl4 quit (Ping timeout: 260 seconds) |
23:30:05 | * | yglukhov joined #nim |
23:34:50 | * | yglukhov quit (Ping timeout: 276 seconds) |
23:53:59 | * | yglukhov joined #nim |
23:58:26 | * | yglukhov quit (Ping timeout: 244 seconds) |