github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm
Set by AlexDaniel on 12 June 2018.
nwc10 good *, #moarvm 07:03
jnthn o/ 09:44
lizmat \o?
\o/ !
MasterDuke ugh, trying to track file operations in libuv is annoying. and my mouse batteries are dying so middle click (i.e., paste) isn't working... 09:48
jnthn Captian hook? :)
MasterDuke: I've yet to see tracking file operations *not* be annoying 09:49
The Windows/.Net way of doing it was so good at delivering multiple events for what you'd think of as one change that I used to use it as an exercise for debouncing then I was teaching Rx. :) 09:50
s/then/when/
MasterDuke ha, but i'm not doing something quite that difficult. just trying to track/trace how libuv does file operations through their source 09:51
i.e., what do they do for ctime on windows
nwc10 "lex, yacc, smoke and mirrors?" - oh wait, that's something else. 09:52
jnthn Oh, I thought you meant change notifications :)
MasterDuke i try to stay away from those, there be dragons
hm, looking at the blame for the jvm STAT_CHANGETIME code, looks like it's been unchanged since jnthn's original commit 09:58
ugh, there's surprisingly little documentation (i.e., none at all) about the jdk's "unix" FileAttributeView 10:42
well, looking at the openjdk source reveals more info, but really i guess i should be finding out what exactly libuv does 10:54
since ctime doesn't actually exist on windows, either we skip the test on the jvm, or try to have it manually do whatever libuv does 10:55
lizmat ctime doesn't exist on Win? 11:00
ah, yes, now I remember
it didn't on DOS either 11:01
nwc10 I slack. I missed this: blog.pyston.org/2021/05/05/pyston-...en-source/ 11:40
MasterDuke github.com/facebookincubator/cinder is interesting also 11:47
looks like the windows c api docs.microsoft.com/en-us/windows-h...nformation has a ctime equivalent that libuv uses 11:56
nwc10 OK, oh so curious. The day that I was fist aware of cinder was the same day as that blog post was written 11:59
MasterDuke so what should we do for the jvm backend? skip the test if backend eq 'jvm' && os eq 'windows' but leave the op implementation unchanged? try to call the native api ourselves in the op implementation if we get an exception and os eq 'windows'? 12:03
nwc10 MasterDuke: erk, I have no idea. I read the question, but I don't know what to suggest 12:05
MasterDuke yeah, not actually sure either. todo/skip the test is the easy answer, especially given that right now we don't even run the jvm tests on windows and i sort of accidentally turned them on in my pr 12:06
so the other option is to instead continue not even running the jvm tests on windows... 12:07
wait, no, they are run... 12:11
no again, there's a constant 'False' in the windows+jvm condition 12:12
there you go github.com/Raku/nqp/commit/ce694df...969efd62f6 12:14
111-spawnprocasync.t now passes, so the only thing holding us back from running the tests are there file op problems 12:15
*these
well, looks like we already use JNA (library to make accessing native apis easier), so maybe i'll try adding a fallback to the op that tries calling something like GetFileInformationByHandleEx on windows 12:30
Geth MoarVM/hash-debug-iter-from-empty-hash: 7be2861904 | (Nicholas Clark)++ | src/core/str_hash_table.c
Fix valgrind warnings report when HASH_DEBUG_ITER was defined.

control->serial and control->last_delete_at were never initialised when we initially allocate just a control structure, but then expand the hash to allocate space for the first entry.
This should have been part of commit 7d6107e65ddedece from Oct 2020:
   For empty MVMStrHashTable, store only the control structure.
12:38
Geth MoarVM: nwc10++ created pull request #1491:
Fix valgrind warnings report when HASH_DEBUG_ITER was defined.
12:39
MoarVM: 7be2861904 | (Nicholas Clark)++ | src/core/str_hash_table.c
Fix valgrind warnings report when HASH_DEBUG_ITER was defined.

control->serial and control->last_delete_at were never initialised when we initially allocate just a control structure, but then expand the hash to allocate space for the first entry.
This should have been part of commit 7d6107e65ddedece from Oct 2020:
   For empty MVMStrHashTable, store only the control structure.
13:17
MasterDuke i think ^^^ will let me debug my attempt to add an iterator to fixkeyhash, right? 13:21
nwc10 Yes, I think it will help. 13:54
MasterDuke: see colabti.org/irclogger/irclogger_lo...-05-08#l80 13:56
lizmat or: logs.liz.nl/moarvm/2021-05-08.html#08:02 14:03
lizmat just had her second shot, so may start receiving 5G any time now 14:05
jnthn I think it takes 2 more weeks for a full-strength signal :) 14:08
lizmat yeah... probably 14:09