|
github.com/moarvm/moarvm | IRC logs at irclog.perlgeek.de/moarvm/today Set by moderator on 3 August 2013. |
|||
|
00:05
grondilu left
00:50
FROGGS joined
00:55
cognominal joined
01:02
crab2313 joined
01:42
FROGGS_ joined
|
|||
| dalek | arVM/libuv2: cbdd341 | jimmy++ | src/io/fileops.c: re-implemented MVM_file_stat by libuv api |
01:49 | |
|
02:03
FROGGS_ joined
|
|||
| dalek | arVM/libuv2: f276e33 | jimmy++ | src/ (2 files): re-implemented MVM_file_read_fhs/MVM_file_write_fhs by libuv api |
02:28 | |
|
03:28
FROGGS joined
03:58
ggoebel joined
04:56
birdwindupbird joined
05:11
FROGGS joined
05:32
woolfy joined
|
|||
| dalek | arVM/libuv2: 5fcd8bd | jimmy++ | / (7 files): changed all codes in fileops.c to libuv api |
05:41 | |
|
05:42
FROGGS joined
06:00
lizmat joined
06:16
woolfy left
06:17
isBEKaml joined
06:18
isBEKaml left
06:36
FROGGS joined
06:53
crab2313 joined
07:24
mst_ joined
|
|||
| dalek | arVM/libuv2: c3a0226 | jimmy++ | / (3 files): make some fileops test passed |
07:33 | |
| JimmyZ | not_gerd: ping | ||
|
07:37
FROGGS joined
07:42
woolfy joined
07:45
not_gerd joined
|
|||
| not_gerd | JimmyZ: pong | 07:45 | |
| JimmyZ | not_gerd: gist.github.com/zhuomingliang/6239017 | 07:46 | |
| on ubuntu | |||
| no, it's centos | 07:49 | ||
| not_gerd | JimmyZ: probably missing -luuid | ||
| that was expected, but BabsSeed had it working without it | 07:50 | ||
| I'll add it, no problem | |||
| JimmyZ | and clock_gettime | ||
| not_gerd | so -lrt as well | 07:51 | |
| JimmyZ | oh | ||
| works | |||
| not_gerd: Could you help fixes these fileops test on windows, please? I don't know how to fix it :( | 07:52 | ||
| not_gerd | JimmyZ: I can try | ||
| will take a shot at it later today | 07:53 | ||
| JimmyZ | it' about read and delete | ||
| not_gerd: thanks | |||
| make test passed on linux but failed on windows ... | 07:59 | ||
|
08:00
woolfy left
08:07
FROGGS joined
|
|||
| not_gerd | JimmyZ: it might just be that the test files are created with write protection... | 08:16 | |
| JimmyZ: yes, that's it | 08:22 | ||
| JimmyZ | not_gerd: and how about read? | ||
| not_gerd | no idea yet ;) | ||
| JimmyZ | how to fixed delete? | ||
| not_gerd | JimmyZ: depends on what the API is supposed to be | 08:23 | |
| either the tests need to be changed to do a chmod +w | 08:24 | ||
| or the delete implementation needs to be changed to take care of that | |||
| JimmyZ | looks like libuv doesn't not support windows well enough | ||
| not_gerd: the read problem is ReadFile cant not return :( | 08:25 | ||
| I mean ReadFile() API | |||
|
08:32
japhb joined
|
|||
| BabsSeed | Hey all | 08:35 | |
| not_gerd | o/ | ||
| BabsSeed | Just got to work | 08:36 | |
| JimmyZ | so left work in libuv2 branch is about socket and threads | 08:37 | |
| BabsSeed | Yay threads | 08:39 | |
| JimmyZ | I may do threads prot firstly | ||
| and I don't want to touch socket and streams | |||
| s/prot/port/ | 08:40 | ||
| BabsSeed | I have about zero knowledge of threaded programming. | 08:43 | |
| I know how to use threads, but not properly | 08:44 | ||
| JimmyZ | BabsSeed: threads are already there ,just do apr api => libuv api | 08:45 | |
| not_gerd | JimmyZ: if I understand the libuv code correctly, one needs to pass _S_IWRITE as mode argument to uv_fs_open | 08:50 | |
| see libuv/src/win/fs.c:461 | |||
| otherwise, we get readonly files | 08:51 | ||
| JimmyZ: github.com/MoarVM/MoarVM/pull/50 | 09:01 | ||
| I'll look into the remaining breakage later today | |||
| JimmyZ | not_gerd: Failed to delete file: operation not permitted | 09:03 | |
| which test it fixed? | 09:05 | ||
| not_gerd | t\\moar\\dirs.t gets further | 09:08 | |
| note that you need to manually delete the files first before running the test again | |||
| looks like this for me: t\\moar\\dirs.t ................... Failed to rmdir: | 09:09 | ||
| JimmyZ | I got Failed to copy file: bad file descriptor | ||
| not_gerd | hm... | 09:10 | |
| I'll make a clean build and gist my failures so we can compare | |||
| JimmyZ | not_gerd: gist.github.com/zhuomingliang/0cb1...52b92e03a0 | 09:15 | |
| not_gerd | hm.. | 09:16 | |
| now even more stuff passes: gist.github.com/gerdr/6228451 | |||
| JimmyZ | not_gerd: I just updated my gist | 09:17 | |
| not_gerd: I'm on Windows7 x64 | 09:18 | ||
| not_gerd | same | ||
| nqp compiled with mingw64, moarvm compiler with msvc64 | 09:19 | ||
| s/compiler/compiled/ | |||
| JimmyZ | same | 09:22 | |
| nqp comiple by strawberry perl, moarvm compiler with msvc64 | 09:23 | ||
| Microsoft Visual Studio 2012 Express | |||
| not_gerd | JimmyZ: no idea what's the cause | 09:27 | |
| maybe git clean -xdf, check that you *really* have the commit, and try again? | 09:28 | ||
| that worked for me ;) | |||
| which branch are you suing? | |||
| *using? | |||
| JimmyZ | libuv2 and you pr | 09:30 | |
| not_gerd | then I have no idea | 09:35 | |
| JimmyZ | I just did git clean -xdf and rebuild | ||
| same error :( | |||
| Failed to copy file: bad file descriptor | |||
| not_gerd | let's wait for another windows person and see what happens for them ;) | 09:36 | |
| JimmyZ | not_gerd: slurp.t is the same error to me | 09:38 | |
| and open_file_for_reading.t ... | |||
| not_gerd: I know why | 09:50 | ||
| not_gerd: in_fd and out_fd is all 0 | 09:51 | ||
| I don't know why :( | |||
| not_gerd: | 09:53 | ||
| out_fd 0 const int | |||
| in_fd 0 const int | |||
| a 0x00000000002ff020 "Makefile" char * const | |||
| b 0x00000000002b0800 "Makefile2" char * const | |||
| not_gerd | JimmyZ: what happens if you replace DEFAULT_MODE with 0 in MVM_file_copy() but leave it in MVM_file_open_fh()? | 09:56 | |
| JimmyZ | not_gerd: file_copy.t doesn't call MVM_file_open_fh | 09:59 | |
| JimmyZ decommutes | |||
| not_gerd | JimmyZ: sure, but other tests do | 10:00 | |
|
10:17
FROGGS joined
10:33
japhb joined
|
|||
| not_gerd | bye, #moarvm | 11:09 | |
|
11:09
not_gerd left
|
|||
| JimmyZ | good evening | 11:15 | |
| not_gerd: pr/49 builds faild on windows x86, master didn't fail | 11:48 | ||
| not_gerd: on windows x86, apr lib dir is not apr\\.lib, it's apr\\LibR, and it has problems to link _AO_compare_and_swap_full | 11:50 | ||
| can't find _AO_compare_and_swap_full | |||
|
12:02
woolfy joined
12:40
not_gerd joined
|
|||
| not_gerd back | 12:40 | ||
| JimmyZ: pushed some fixes and an assertion that shows where we fail | |||
| JimmyZ: it's fixed in libuv master | 12:46 | ||
| JimmyZ | not_gerd: thanks | 12:47 | |
|
12:49
crab2313 joined
|
|||
| not_gerd | JimmyZ: should we switch to libuv 0.11.7 (latest unstable release from 9 days ago) | 12:53 | |
| JimmyZ | not_gerd: I copied form master | 12:56 | |
| not_gerd: I think it does not need, before we merge to master, they will release 0.11.8 | 12:58 | ||
| how do checkout new pr/49 | 13:00 | ||
| not_gerd | JimmyZ: git merge origin/pr/49 | ||
| don't know if there's some git magic that makes it work out of the box | 13:01 | ||
| JimmyZ | works after delete and re-checkout | 13:02 | |
| crab2313 | is t/moar/thread.t really take a long time? | 13:04 | |
| JimmyZ | yeah | ||
| know issue | |||
| not_gerd: weird, file-copy.t works on win x86 | 13:10 | ||
| not_gerd: gist.github.com/zhuomingliang/6240724 | |||
| not_gerd | JimmyZ: I imported libuv master and got a clean test run just now | 13:14 | |
| gist.github.com/gerdr/6228451 | |||
| JimmyZ | not_gerd: nice | ||
| not_gerd | should I add that to my pull request? | 13:15 | |
| JimmyZ | not_gerd: cherry-pick to your libuv2? | 13:16 | |
| or my | |||
| :p | |||
| not_gerd | JimmyZ: I actually created a local libuv branch with your changes a few days ago | 13:19 | |
| now pushed to github.com/gerdr/libuv/tree/moarvm | |||
| in particular github.com/gerdr/libuv/commit/7ed9...9e90edaf13 | |||
| should make it easier to track libuv | 13:20 | ||
| merge to the fork, then copy to moarvm | |||
| JimmyZ | yeah, I had one in my github too... | ||
| not_gerd | ;) | 13:21 | |
| JimmyZ | 7ed94eb3fa6e71d7161096ccbaceeb9e90edaf13 is out of date | 13:22 | |
| I wonders why these test fail to me | 13:24 | ||
| hmm, just found libuv has no mmap | 13:31 | ||
| and loadbytecode needs it | 13:32 | ||
| dalek | arVM/libuv2: 8561f61 | (Gerhard R)++ | src/io/fileops.c: no longer create readonly files by default |
13:42 | |
|
13:42
benabik joined
|
|||
| JimmyZ | not_gerd: m0_platform_mmap_file_private is equal mmap? | 13:50 | |
| not_gerd | JimmyZ: no, it's just a dummy Icreated so Icould keep going | 13:51 | |
| JimmyZ | ok | ||
| :) | |||
| not_gerd | JimmyZ: you need CReateFileView on windows, iirc | ||
| misremembers | 13:52 | ||
| I | |||
| I'll dig it up... | |||
| JimmyZ | not_gerd: CreateFileMapping, but I don't want to implement it | ||
| I hate windows API | 13:53 | ||
| :P | |||
| they doesn't work for me | |||
| not_gerd | JimmyZ: I've seen mmap wrappers over the WinAPI | ||
| if I only could remember which project that was ;) | 13:54 | ||
| benabik | git has a variety of useful Windows to POSIX wrappers in platform | ||
| not_gerd | I *do* remember that they leaked handles, though | ||
| JimmyZ | not_gerd: apr implemented mmap by CreateFileMapping | ||
| benabik | Sorry... compat/win32 | ||
| not_gerd | on windows, you need to keep a handle and the pointer to the memory block | 13:55 | |
| benabik | Ah, but they just use posix calls to emulate mmap by just reading the file into a large buffer. | ||
| not_gerd | if you do a 1:1 mmap() wrapper, you leak the handle | ||
| JimmyZ | not_gerd: msdn.microsoft.com/en-us/library/wi...85%29.aspx | 13:56 | |
| not_gerd: you're right, I see it in apr | 13:57 | ||
| and see it here msdn.microsoft.com/en-us/library/wi...85%29.aspx | 13:58 | ||
| anyway, I don't want to touch windows API | 13:59 | ||
| not_gerd | hm... | 14:01 | |
| JimmyZ | I have found a [s]printf bug in MSVC 2012 | ||
|
14:47
donaldh joined
|
|||
| not_gerd | JimmyZ: I updated my pull request to use latest libuv | 14:56 | |
| JimmyZ: do you keep yout libuv/patch branch up to date? | 14:58 | ||
| *your | |||
| JimmyZ | not_gerd: uv_fs_getstd* is already removed | ||
| not_gerd: not yet | |||
| not_gerd: and uv_fs_getfullpath removed too | 14:59 | ||
| not_gerd | too many branches to keep track of ;) | ||
| so moarvm/libuv2 is authorative? | 15:00 | ||
| JimmyZ | not_gerd: yeah | 15:01 | |
| not_gerd: libuv3 is too, but it doesn't do apr => libuv | |||
| and libuv2 based libuv3 | 15:02 | ||
| dalek | arVM/libuv2: 897be12 | jimmy++ | 3rdparty/libuv/ (14 files): update libuv to c82e7033a5d6c604b891c1f722cf23a063c202b0 |
15:08 | |
| arVM/libuv2: d772baf | jimmy++ | 3rdparty/libuv/test/test-async-null-cb.c: oops, lost test/test-async-null-cb.c |
15:14 | ||
| JimmyZ | Good night | 15:27 | |
| not_gerd | good night | 15:30 | |
|
16:19
ggoebel joined
17:20
ggoebel2 joined
18:50
dalek joined
19:08
crab2313 joined
|
|||
| jnthn | .tell JimmyZ In 2262765 I suspect the MVMROOT on cloned may be needed; it's plausible some clone routine would allocate | 19:45 | |
| yoleaux | jnthn: I'll pass your message to JimmyZ. | ||
| dalek | arVM: 68366d8 | jonathan++ | src/gc/roots.c: compiling_scs needs to be a TC root in GC. |
19:49 | |
| jnthn | Please can we either (a) not do needless whitespace changes, or (b) keep them out of commits that do other stuff... | 19:54 | |
| Also, and much more importantly, code like: | 19:57 | ||
| ((MVMException *)ex)->body.message = GET_REG(cur_op, 2).s; | |||
| is always wrong. Never assign MVMString or MVMObject references directly, unless you're writing code in the GC or something. This must always be done with the MVM_ASSIGN macro. | |||
| Otherwise, it doesn't get write-barried and then we spend months tracking down stupid GC bugs... | 19:58 | ||
| *barriered | |||
| uA*MVM_ASSIGN_REF | 19:59 | ||
| grr, stupid connection | 20:00 | ||
| dalek | arVM: 7b36749 | jonathan++ | src/core/interp.c: A couple of missing MVM_ASSIGN_REF. |
20:01 | |
| jnthn has sorta caught up-ish on reviewing master :) | 20:03 | ||
| Which of the libuv branches, if any, should I be looking at and reviewing? | 20:04 | ||
|
20:07
not_gerd joined
|
|||
| not_gerd | jnthn: JimmyZ does his work in libuv2 based on libvu3 ;) | 20:08 | |
| I added my build system refactor to that in pr/49 | |||
| tests cleanly on my win7 system, but not on JimmyZ's | |||
| we needed to go to libuv master as the old import returned a handle where they should have returned a file descriptor | 20:09 | ||
| dalek | arVM: e5b8fe5 | grondilu++ | src/core/loadbytecode.c: typo: 38s/Inovke/Invoke/ |
20:10 | |
| arVM: 51fc554 | jonathan++ | src/core/loadbytecode.c: Merge pull request #47 from grondilu/patch-1 typo: 38s/Inovke/Invoke/ |
|||
| jnthn | not_gerd: OK. And we're pulling libuv itself into the Moar repo? | 20:11 | |
| not_gerd | jnthn: not decided yet | ||
| jnthn | OK, the decision is "no" :) | ||
| not_gerd | personally, I'd say fork libuv to MoarVM repo and do periodic imports | ||
| (or use git subtrees, which are non-standard :() | 20:12 | ||
| jnthn | We can maintain our own fork of it in a MoarVM/libuv repo, but ideally at some pointI'd hope we can use a system one. | ||
| not_gerd | jnthn: libuv isn't a full APR replacement | ||
| JimmyZ added missing functionality in the uv_* namespace | 20:13 | ||
| jnthn | Yes, I'm aware it's not. I don't think putting our extra stuff in the uv_* namespace is a good idea. | 20:15 | |
| It'll be confusing. What's ours vs. what's in libuv, etc. And what if they use that symbol in the future? | 20:16 | ||
| not_gerd | github.com/gerdr/libuv/compare/master...moarvm should be his patch set | ||
| (if I didn't mess is up) | |||
| jnthn | (yes, I know it's probably JimmyZ I should be mentioning this to more than you :)) | ||
| not_gerd: Thanks for the link...if only this hotel wifi will ever open it... | 20:18 | ||
| hmm...the places where stuff gets added to libuv structs probably makes teasing it apart a bit harder, though... | 20:23 | ||
| Anyways, probably more useful to discuss this when more folks are here :) | 20:24 | ||
| And when I'm not conf exhausted. :) | |||
| not_gerd | slacker - only 3 talks: you're only allowed to feel exhausted after at least a dozen ;) | 20:25 | |
| jnthn | :P | 20:26 | |
| Well, I did work hard on some beers too. | |||
| not_gerd | btw, the Rust guys are also working on better libuv integration | 20:27 | |
| I posted github.com/mozilla/rust/issues/4419 a few days ago | |||
| might be worth looking into their design work | |||
| jnthn | thanks, will do, looks interesting | 20:28 | |
| yes, it's interesting, but I need to read it again when I'm less tired and explore the links | 20:34 | ||
| not_gerd++ | |||
| Time for an early night here...after staying up until 4am or so last night :) | 20:35 | ||
| o/ | |||
| not_gerd | good night | 20:37 | |
|
20:50
not_gerd left
22:43
benabik joined
|
|||