Parrot 2.11.0 Released | parrot.org | Log: irclog.perlgeek.de/parrot/today | More gci tasks | Merge html_cleanup | Get Plumage working | Review current embedding api | Study EventHandler | Run examples_tests, test HLLs before merges
Set by moderator on 31 December 2010.
Yuki`N gist.github.com/761444 00:00
A lot of failed files but no explicit subtest failures... 00:01
cotto rfw, do you feel like adding PARROT_EXPORT to all functions in config/gen/platform/*/*.c?
I'd be happy to make it a gci task.
rfw cotto: sure, it's not too much work
cotto wonders if rfw has seen how many files there are 00:02
rfw i could probably make a script to do it
cotto though perl is your friend
Yuki`N Retrying the tests without -j4 00:03
dalek rrot: 9677789 | (Gerd Pokorra)++ | / (2 files):
switch the year output form 2010 to 2011
00:06
cotto rfw, socghop.appspot.com/gci/task/edit/g...9384045345 00:07
rfw www.google-melange.com/gci/task/sho...9373930207 first 00:08
cotto deal
Yuki`N xD
rfw also you linked me to the edit page 00:09
lol
cotto done
how clever
dalek rrot/encapsulate-main: cdce8c3 | plobsing++ | / (12 files):
fix examples tests by adding :main tags
cotto socghop.appspot.com/gci/task/show/g...9384045345
Yuki`N I'm confused. 00:10
I dropped -j and now a test failed when it used to pass.
aloha, coverage? 00:11
aloha Yuki`N: coverage is cv.perl6.cz or tapir2.ro.vutbr.cz/cover/cover-results/
rfw cotto: www.google-melange.com/gci/task/sho...9373930207 and github.com/parrot/parrot/pull/68 00:13
cotto GeJ, my parrot is from the future now.
rfw also cotto, don't i just have to add it to platform_interface.h 00:14
00:14 TonyC left
cotto rfw, ok. 00:15
rfw even things like memalign?
cotto that's less necessary 00:16
rfw hm, what about dlopen? 00:17
cotto I don't think that'd be helpful. 00:18
rfw hm okay
i think i've marked everything that would be useful
cotto: did you see my pull request yet? 00:20
cotto yes, but I can pull again
same branch?
rfw uh, for get_user_id?
dalek TT #1921 created by cotto++: RFC: decorate all functions in src/platform.c with PARROT_EXPORT
TT #1921: trac.parrot.org/parrot/ticket/1921
cotto for the platform.h work 00:22
rfw ah 00:23
okay hold on
i'm doing it to master, not get_user_id
Matt_ cotto: Got any ideas how to test readline_interactive on FileHandle? I thought it would immediately return a string when reading from a file from disk
rfw cotto: did you approve the get_user_id task yet?
cotto rfw, yes 00:25
rfw ah okay
cotto Matt_, that's an interesting question
I'm not sure.
rfw cotto: www.google-melange.com/gci/task/sho...9384045345
and i'll submit a pull request
Matt_ cotto: I thought it would only block when reading from stdin 00:26
Yuki`N cotto, I'm going to take care of bringing Timer.pmc to 100% 00:27
rfw github.com/parrot/parrot/pull/69 there we go, pull request
Yuki`N Could someone approve? socghop.appspot.com/gci/task/show/g...9361462839 00:31
rfw www.google-melange.com/gci/task/sho...9384045345 too
cotto stop being so productive 00:33
rfw deal with it :D
dalek rrot: 75ebfbe | cotto++ | / (2 files):
Merge branch 'kapace/gci_test_role' of github.com/kapace/parrot into kapace-kapace/gci_test_role
00:34
rrot: 3c0a1de | cotto++ | / (2 files):
Merge branch 'kapace-kapace/gci_test_role'
cotto roles approved 00:35
Kapace_ thanks again :)
dalek rrot/gci_platform_export: 99cd2e6 | rfw++ | include/parrot/platform_interface.h:
Added PARROT_EXPORT to a few functions in platform_interface.h
00:36
rrot/gci_platform_export: d9b5338 | cotto++ | include/parrot/platform_interface.h:
Merge branch 'master' of github.com/rofflwaffls/parrot into gci_platform_export
rfw thanks
Yuki`N While I'm waiting for make cover to run, when did PASM and PIR begin to delineate.
I'm curious.
cotto parrot_export approved
rfw cotto: www.google-melange.com/gci/task/sho...9374026617 dynlexpad_get_iter 00:37
brb lunch
cotto oh melange. To know you is to hate you.
rfw, accepted
ajaxy in all the wrong ways 00:38
Matt_ cotto: any new tasks being added soon?
plobsing Yuki`N: not sure, it was well before my time. My guess is thatit had probably already started when IMCC was still being written. 00:40
cotto Yuki`N, I think only allison, chromatic or Coke could answer that. It's pretty far back in Parrot's history. 00:41
Yuki`N Ah.
cotto Matt_, do you have a suggestion?
Matt_ cotto: Naah, actually I may just take a 1-day break from GCI 00:42
cotto github.com/404
Matt_ I saw that earlier today for the first time :P 00:43
Kapace_ most of the tasks point to it because of, for example:"The tests should be added to t/pmc/role.t" -> github.com/parrot/parrot/blob/t/pmc/role.t -> 404 00:45
whoa, i didn't realize it was interactive 00:46
cool
Yuki`N t/spec/integration/advent2009-day18.rakudo ..................... Dubious, test returned 1 (wstat 256, 0x100) 00:47
Failed 6/6 subtests
That doesn't look good.
Full output here gist.github.com/761444 00:48
cotto let me see if the same thing happens to me with master
Yuki`N Ok.
rfw hm it looks like dynlexpad doesn't like to iterate 00:55
cotto that's why it needs love 00:58
01:00 patspam joined
rfw it just seems that nothing is getting added to dlp 01:02
Yuki`N So both quickcover and quickcover_new don't work for me. :(
rfw how do things actually get insterted into dlp?
01:03 TonyC joined
cotto Yuki`N, what happens? 01:04
Yuki`N I forget what happens with quickcover.
But quickcover_new gives me only 5 files.
Same thing that happened when someone changed cover to "work"
01:04 nopaste joined
Yuki`N Oh nopaste is back. 01:04
TonyC sorry, forgot to restart it after the reboot the other day 01:05
the machine Oopsed on the morning of the 28th (Sydney time) while I was out of town, and was inaccessible 01:06
01:08 patspam left
rfw yes, i win 01:09
who the hell wrote this test though
"pants\\npants\\bpants"
Yuki`N # Trailing space or tab char found in the following files: 01:10
# /home/nlum/parrot/t/pmc/role.t 61, 81
failure
Who wrote tests for role.t?
Kapace Yuki`N, i didn't install it yet :P
Yuki`N lol 01:11
It's ok.
Kapace i had these test done before..
Yuki`N The first test I wrote, for the integer PMC, I doubled the number of subtests there were.
About 40 lines had trailing space, mostly because of auto-indent.
I think the Integer PMC at or very close to 100%.
99.1% actually. 01:13
When I started it was 59.5% -3-
I actually only claimed 20% of that lol.
rfw cotto: www.google-melange.com/gci/task/sho...9374026617 01:16
er i have no idea why that PARROT_EXPORT thing is there
cotto We have a pretty good shot at increasing coverage by 2% before the end of gci.
Yuki`N cotto, github.com/parrot/parrot/pull/71 and socghop.appspot.com/gci/task/show/g...9361462839
cotto rfw, is the "Fixed iteration test for dynlexpad." commit the only important one? 01:17
rfw cotto: yes
sorear rfw: Microsoft C requires functions to be annotated if they are going to be the target of cross-DLL calls 01:19
rfw sorear: where?
sorear rfw: you asked what PARROT_EXPORT was for 01:20
rfw uh i don't think so
did i?
dalek rrot: 2a43588 | rfw++ | t/dynpmc/dynlexpad.t:
Fixed iteration test for dynlexpad.
rfw also funny because the lack of PARROT_EXPORT was breaking it on windows
er
linux*
oh crap 01:21
cotto: did i ask you to pull into master?
i meant dynlexpad_get_iter, oops
cotto rfw, I pulled to master on purpose 01:22
rfw ah
just checking :D
dalek rrot/gci_timer_coverage: 040c950 | Yuki`N++ | / (15 files):
Merge branch 'master' of git://github.com/parrot/parrot
01:24
Yuki`N I'm trying to bring integer back up the 1% just for fun lol.
rrot/gci_timer_coverage: d8178c2 | Yuki`N++ | / (15 files):
Merge branch 'master' of git://github.com/parrot/parrot
rrot/gci_timer_coverage: cd8284d | Yuki`N++ | t/pmc/timer.t:
Fully cover the timer PMC.
rrot/gci_timer_coverage: b1c54c8 | Yuki`N++ | t/pmc/role.t:
[t] Fix trailing space in the Role PMC test.
rrot/gci_timer_coverage: 3fc540f | cotto++ | t/pmc/ (2 files):
Merge branch 'master' of github.com/nol888/parrot into gci_timer_coverage
cotto It's not as important to put tests into a new branch as it is for features and bugfixes.
01:26 contingencyplan left
rfw aloha: coverage 01:26
aloha, coverage
aloha, coverage? 01:27
aloha rfw: coverage is cv.perl6.cz or tapir2.ro.vutbr.cz/cover/cover-results/
dalek rrot: 3fc540f | cotto++ | t/pmc/ (2 files):
Merge branch 'master' of github.com/nol888/parrot into gci_timer_coverage
Yuki`N Might as well take socghop.appspot.com/gci/task/show/g...9361456169 too 01:28
I was so confused. 01:30
My coverage went DOWN
rfw hahah 01:31
Yuki`N And then I saw >changed make cover to fullcover and quickcover to cover
Rather, I went `git log config/gen/makefiles/root.in'
Version control is so nice.
cotto Yuki`N, acceptex
d
Yuki`N Submitted~ 01:32
cotto srsly?
Yuki`N Yeah that commit brought it from 80 to 100%.
Someone should probably change the script on the coverage site to use fullcover~
cotto got it
Yuki`N I don't want our precious coverage going DOWN. 01:33
Who hosts that, anyway?
cotto mj41, ping 01:34
rfw cotto: www.google-melange.com/gci/task/sho...9360989496 01:35
cotto done 01:36
rfw i really need to stop semicoloning in parrot 01:38
Matt_ rfw: I've been doing that too :P
rfw Matt_: yeah it just happens :( 01:39
Yuki`N I really need to stop semicoloning in python.
rfw Yuki`N: yes but that actually works
Yuki`N lol
I actually think of PIR more of an ASM-language so I don't have that problem.
Unless you semicolon your asm, in which case that's your problem.
rfw cotto: how do i initialize an unmanagedstruct? 01:40
cotto orderedhash iirc
rfw ah so
i convert an orderedhash into an unmanagedstruct?
Yuki`N github.com/parrot/parrot/pull/72 cotto pull this one at your leisure. 01:41
It just makes Integer.pmc 100% again, someone much have changed something around.
rfw t/pmc/unmanagedstruct.t .. 1/1 Illegal initializer for struct
heh
cotto: apparently not 01:42
dalek rrot: d1d6cd1 | cotto++ | t/pmc/integer.t:
Merge branch 'master' of github.com/nol888/parrot into nol888-master
01:43 redicaps joined
cotto rfw, checkout src/pmc/unmanagedstruct.pmc 01:44
rfw yeah i'm looking at that
hm so i need a C struct?
that's kinda weird
cotto my brain's shutting down 01:45
I'll take a look at it tomorrow
or next year 01:46
rfw dang, okay
heh
01:47 M_o_C joined 01:48 whiteknight joined
rfw whiteknight! 01:48
i broke cotto so can you help me
whiteknight rfw!
rfw how do i initialize an umanagedstruct? 01:49
whiteknight Great question. I don't think I've ever initialized an unmanaged struct 01:50
what do you mean "initialize" anyway?
rfw well 01:51
not make it say "Missing struct initializer"
Matt_ whiteknight: How would you go about testing readline_interactive? I thought it might not block when reading files, but it still waits for input from stdin 01:52
(on the FileHandle PMC)
whiteknight rfw: let me look at the source 01:54
Matt_: That's a very good question. I'll have to look at the source of that too
rfw: in src/pmc/unmanagedstruct.pmc:calc_offsets, it's looking like the initializer PMC is supposed to be an array PMC with integer values 01:57
rfw ah
whiteknight entries come in sets of 3. The first element in the set looks like some kind of type_pmc, the second is an integer count, and the third is an integer offset 01:58
repeat
Yuki`N Hmm, looks like I missed a task. socghop.appspot.com/gci/task/show/g...9360894940 This was for Opcode, which I already have additional tests for in trunk.
whiteknight rfw: you're going to have to find a preexisting example to follow, I can't quite figure out what type of PMC that first element is supposed to be 02:00
rfw =item 0
The datatype. See the C<enum> in F<include/parrot/datatypes.h>.
it seems
whiteknight great
rfw ah 02:01
there's some code in managedstruct.t
02:01 kennym left
Yuki`N dukeleto, ping 02:02
rfw goddammit, it still doesn't work 02:10
02:13 kennym joined
Matt_ whiteknight: Can you look at the FileHandle pmc and readline_interactive 02:18
whiteknight working on it
cotto I'm leaving and I'm not coming back until 2011. 02:19
rfw unmanagedstruct refuses to work
cotto: see you this year 02:20
whiteknight Matt_: that's a tough one. The readline() function doesn't take a filehandle so we can't override it 02:22
Matt_: Do you need to test that function? Can you avoid it? 02:24
rfw is there an opcode for the mark vtable function?
Matt_ whiteknight: Ill try to test everything else and see how much the coverage goes up
whiteknight Matt_: I suspect the only way to test that is to use a perl script to pipe input into it. Not an easy task, much bigger than a GCI task would be 02:25
rfw: the mark vtable is called internally by the GC. You need to trigger a GC run, either by allocating enough garbage or using an opcode to do it
rfw ah
whiteknight it will automatically mark anything that's in a register
rfw how do i trigger a GC run?
whiteknight or, anything that's pointed to by something in a register
rfw: There is a sweep opcode, I think that does it 02:26
rfw ah okay
thanks
whiteknight GC has two phases, mark and sweep. The opcode is called "sweep", but I think it does both
02:27 theory left
rfw ./src/pmc/unmanagedstruct.pmc:572: failed assertion 'p' 02:30
Backtrace - Obtained 14 stack frames (max trace depth is 32).
yeah i can't get an unmanagedstruct to properyl initialize
Yuki`N sweep 1 02:32
whiteknight stupid UnmanagedStruct 02:33
rfw: what is your task, to test UnmanagedStruct?
rfw yeah
increase by 5%
whiteknight are there any existing tests that you can copy logic from? 02:34
rfw i tried copypasting the managedstruct.t code
but unmanagedstruct always seems to have a null pointer backing it 02:35
src/pmc/unmanagedstruct.pmc 84.6 84.6 02:36
increased by .6%!
whiteknight you may want to pick a different task, if this one is going to be such a pain 02:38
rfw heh there's nothing else really
02:41 M_o_C left
Matt_ whiteknight: I'm pretty sure I'm testing the clone VTABLE correctly yet the test is crashing. After cloning an 'opened' file handle should I be able to read from the new file handle without any other logic? 02:43
whiteknight Matt_: that clone VTABLE looks...suspicious 02:45
it copies the raw OS handle, but it doesn't copy any of the other data like encoding, mode, filename, etc
I *suspect* that's a gigantic bug
Matt_ That will explain the crash, should I add a TODO? 02:46
whiteknight and it actually copies the raw handle instead of doing a proper duplication, which is almost always a bad idea
Matt_: yes, a TODO
Yuki`N I can try fixing that. 02:47
whiteknight Yuki`N: you want me to put together a GCI task for it?
Yuki`N Sure.
rfw eh how do i call the clone opcode?
oh wait 02:48
whiteknight $P0 = clone $P1
rfw never mind
yeah i wasn't reading the error properly
dukeleto ~~
rfw t/pmc/unmanagedstruct.t .. error:imcc:The opcode 'clone' (clone<0>) was not found. Check the type and number of the arguments
what's <0>?
whiteknight <0> is the number of arguments you are giving it 02:49
clone needs two arguments: an input and an output
rfw but i have $P2 = clone $P0
oh
doh
my sub is named clone
whiteknight ...
rfw better change that to can_clone
Yuki`N dukeleto, Do we have compile farm credentials?
rfw and I are working on Darter and I wanted to go ahead and start generalizing a shell process for compiling parrot in that environment. 02:50
dukeleto Yuki`N: no, currently only I have access to the farm, but that can be fixed. I am also thinking of the farm "pulling in" requests to test stuff 02:52
Yuki`N: tonight isn't the best night for figuring that stuff out, i only have a few minutes right now
does anybody need tasks accepted?
Yuki`N What do you mean? Ok then. 02:53
dukeleto Yuki`N: we will figure out the compile farm authentication stuff soon
Yuki`N: just assume that the client polls some resource for new jobs periodically
Yuki`N: do you have a summary of what darter does and how it does it? does darter have docs? 02:54
Yuki`N: 18:49:36 <@whiteknight> ...
18:49:36 <@whiteknight> ...
oops, mispaste from my netbook
Yuki`N Well, I think our architecture involves some git post-receive hook which tells darter to do stuff.
It's on github; github.com/rofflwaffls/darter 02:55
dukeleto Yuki`N: that sounds good
dukeleto has been out of the loop in the last few days 02:56
whiteknight dukeleto: I just created a task for Yuki'N. Approve?
rfw whiteknight: src/pmc/unmanagedstruct.pmc 87.0 87.0 <-- 2.4% now, yay
whiteknight rfw: awesome
Yuki`N Matt_, are your tests on github anywhere? 02:57
dukeleto whiteknight: approved 2 tasks by you
whiteknight Yuki'N: I don't know if duplicating a file descriptor copies the location info
that will either require some experimentation or reading some documentation 02:58
I think it's time for me to go to bed.
See you folks next year
Yuki`N whiteknight, I traced Parrot_dup and I see all it does is call dup()
Which is an OS call.
whiteknight right 02:59
I don't know if dup() copies file pointer location info
anyway, bed. Goodnight
02:59 whiteknight left 03:00 bluescreen left 03:01 bluescreen joined 03:02 Matt_ left
Yuki`N After a successful return from one of these system calls, the old and 03:04
new file descriptors may be used interchangeably. They refer to the
same open file description (see open(2)) and thus share file offset and
file status flags
I guess that answers that question.
dalek TT #1922 created by jkeenan++: Review Parrot's 'make help' 03:05
TT #1922: trac.parrot.org/parrot/ticket/1922
rfw why do you torture me so, unmanagedstruct pmc 03:06
kid51 msg cotto Created GCI task related to TT #1922: www.google-melange.com/gci/task/sho...9385113378
aloha OK. I'll deliver the message.
kid51 msg dukeleto Created GCI task related to TT #1922: www.google-melange.com/gci/task/sho...9385113378
aloha OK. I'll deliver the message.
rfw oh 03:07
i am so stupid
ManagedStruct is a superclass of UnManagedStruct
sheesh
03:08 Matt_ joined
dukeleto rfw: :) 03:14
rfw [16:13:49] <Dark_Shikari> WTF ?!?!?!? @ rfw
haha
dalek rrot/leto/embed_grant: f62ad6a | dukeleto++ | t/src/embed.t:
[t] Parrot_PMC_modulus

This function does not seem to work, a TT needs to be created.
Matt_ rfw: lol 03:15
03:15 kennym left
Matt_ Yuk`N: if you still need a test I can send you a patch, they're not on github 03:15
03:21 kid51_ joined
dukeleto kid51: approved and published 03:24
03:24 kid51 left
Yuki`N Matt_, please do. 03:24
dukeleto Yuki`N: opcode pmc task accepted 03:26
03:27 kid51_ is now known as kid51
Yuki`N Thanks. 03:27
kid51 dukeleto: Thanks.
Yuki`N dukeleto, the relevant tests are already in master actually. 03:28
dukeleto kid51: thanks for making tasks!
dukeleto is about to go to a New Years Eve party
Yuki`N Aha.
Matt_ Yuki`N: pastie.org/private/ivf2nkhff2h2itygjonua
dukeleto Yuki`N: submit the task and I will approve it, then
Yuki`N: soon! I will be gone in a few minutes 03:29
kid51 dukeleto: We will need to get a list of all students who participated in GCI for Parrot.
Both for public acknowledgement ...
dukeleto kid51: sure, no problem
kid51: most of them are in CREDITS 03:30
kid51 ... and also because they will satisfy the "2 contributions" rule to qualify as members of the Parrot Foundation.
IIRC, you're the Secretary!
We also need to see who wants to continue with Parrot after Jan 10 2011 and offer commit bits, which will entail CLAs, etc. 03:31
Yuki`N How can I get full stack frames in my backtrace, i.e. build with gdb information or something.
dukeleto Yuki`N: --debugging arg to Configure.pl ? 03:32
kid51: if you are volunteering to figure that stuff out, go for it
rfw god increasing test coverage of this stupid unmanagedstruct is hard
dukeleto kid51: in the age of forks on github, we don't really need to push CLAs
kid51 No, I'm not volunteering for that! 03:33
dukeleto rfw: but when you get it to work, you will have mad street cred
rfw lol
dukeleto kid51: neither am I!
kid51 dukeleto: I'm not sure I agree with you on CLAs ... but let's discuss that at another time.
dukeleto kid51: that is my thought on CLAs, you are free to have your own :)
dukeleto goes. Happy 2011! 03:34
kid51 dukeleto: Well, at the very least, you will be able to produce of all our GCI participants, correct?
Kapace I had to accept a CLA for x264, all I had to do was say "I agree with the terms." in an email
rfw dukeleto: src/pmc/unmanagedstruct.pmc 90.7 90.7 03:35
dukeleto: where's my mad street cred
Kapace rfw, nice
rfw++
rfw heh thanks
kid51 So now we come to the part of the day when all the grizzled Parrot old-timers retire ... and the GCI students stay up late to chat watch the ball drop in Times Square :-) 03:36
Yuki`N Oh gdb gives me backtrace info. 03:38
Whoo.
rfw dukeleto: i'm very slowly submitting 03:39
dukeleto: www.google-melange.com/gci/task/sho...9360989496
Yuki`N Oh of course the one file that I need line # information from I don't have it. 03:40
Stupid .pmc->.c
How can I get libparrot.so to be linked in with debugging symbols. 03:46
rfw is anyone else around to approve my task, heh? 03:47
Yuki`N Matt_, I've fixed clone, however that means your test should fail, and it does. 03:58
Matt_ Yuki`N: you mean pass? 03:59
Yuki`N No, clone duplicates the state of a filehandle exactly.
Hence if you try to readfully twice, you've reached eof already.
Matt_ aaah ok, but the crash doesn't happen anymore right? 04:00
Yuki`N Nope.
I'll push to a branch on my github fork.
Matt_ kk
Yuki`N At least, that should be the behavior. 04:01
If it doesn't happen that way, do tell.
git pull git://github.com/nol888/parrot.git fix_filehandle_clone 04:04
Make sure you're fully up-to-date with parrot master.
04:05 kid51 left, LaVolta joined
Yuki`N Matt_, ^ 04:05
Matt_ will try in a sec 04:06
Yuki`N Matt_, not to let you down or anything but there's quite a few conditionals in the new clone() method. :P 04:08
Make sure you cover all of them~
Matt_ aloha: coverage? 04:13
aloha Matt_: coverage is cv.perl6.cz or tapir2.ro.vutbr.cz/cover/cover-results/
Matt_ Yuki`N: doing it now. There's already a Fix FileHandle clone task on melange btw for you 04:16
Yuki`N Yeah, I'm waiting on another approval though. 04:17
-sigh-
Are you\tMatt221 on Trac?
dalek rrot: e4bebcd | Coke++ | README:
Update the generic Copyright year.

  (update individual files to include 2011 as you go.)
04:18
Yuki`N Hi Coke!
Matt_, are you Matt221 on Trac? 04:19
rfw Yuki`N: i don't think he approves tasks heh
Yuki`N Hurr 04:20
Matt_ Yuki`N: yea
rfw probably going to need to wait for {cotto,dukeleto,whiteknight}
Yuki`N Oh well. 04:24
Made a trac ticket for that bug.
rfw is still waiting for his mad street cred 04:25
Yuki`N I need my mad reps yo.
I just went spelunking through the IO API to figure out how to properly clone a filehandle lol. 04:26
rfw i cheated with my UnManagedStruct tests
half of it is push_eh
actually more like all of it 04:27
dalek TT #1923 created by Yuki`N++: Filehandle PMC clone VTABLE does not work
TT #1923: trac.parrot.org/parrot/ticket/1923
Yuki`N rfw, lol
Were those PIR tasks?
rfw yes
Yuki`N *PIR tests rather
rfw "It's basically a compiler that converts LLVM into JavaScript, which can be used together with llvm-gcc (or clang) to convert C/C++ to JavaScript. You can check it out in the link above." 04:28
haha what
Yuki`N Lol.
So you were using is() and all that good stuff
rfw yeah
Yuki`N Bro there's this cool function.
throws_substring
c
rfw yeah i forgot about it
too late anyway
Yuki`N :c
rfw i have like
Yuki`N throws_substring is much better too. 04:29
rfw eh1: eh2: eh3: and
finally1: finally2: finally3:
lol
Yuki`N lol wow
Kapace rfw, just exception testing, street cred gone :P
rfw Kapace: :(
Kapace just kidding, good work
rfw Kapace: really bad exception testing too
:<
Kapace goes back to execption testing Capture.pmc 04:30
rfw heh
Yuki`N You overlook how important exception testing is., 04:37
Kapace_ If an execption is thrown, but no one is there to catch it...
rfw Kapace_: hurr 04:47
04:55 Matt_ left
Kapace_ i was kinda hoping someone would finish it off with something clever too 04:55
rfw well if the exceptions aren't tested then you really need to go test those, heh 04:57
05:15 LaVolta left 05:24 gbacon left 05:28 he__ left 05:36 he joined 05:37 rurban_ joined 05:40 rurban left, rurban_ is now known as rurban
Yuki`N Who killed cotto? 05:59
06:01 redicaps left 06:11 Coke left
Kapace_ Yuki`N: rfw did 06:20
rfw y u so mean :(
rfw kills Kapace_
Kapace_ That's strange: github.com/parrot/parrot/blob/gci_...apture.pmc should have the functions removed, right? 07:02
Yuki`N msg mj41 I assume that, since cotto pinged you when I asked, you maintain the coverage information online. You need to update the script to use "make fullcover" instead of "make cover." This was changed in a recent commit. 07:05
aloha OK. I'll deliver the message.
07:05 Yuki`N left 08:16 chromatic left 08:26 fperrad joined
cotto blarg I am dead 08:39
rfw hey cotto 08:44
could you approve that task?
that i've lost the link to
www.google-melange.com/gci/task/sho...9360989496 this one 08:45
also happy new year!
cotto rfw, thanks! Unfortunately the task will probably have to wait until the morning (or someone else). I'm not especially awake right now. 08:47
rfw cotto: can't you just approve it :< 08:48
cotto how hard would it be to get it past 94%? 08:49
rfw a bit tricky
but it's mostly exception testing and stuff
a lot of the tests can be done with a ManagedStruct
cotto It's fine to increase one PMCs coverage by testing another.] 08:50
rfw yeah but even then it's tricky 08:51
since you have to invoke all the weird exceptions
cotto I don't want to separate approving and reviewing. I'll take a look in the morning. 08:58
rfw oh well 09:02
09:51 perlite joined 09:55 rfw left 10:23 kennym joined 11:06 bluescreen left 11:15 contingencyplan joined 11:17 kennym left 11:38 kennym joined
mj41 Yuki`N, cotto - cv.perl6.cz/ coverage reports changed to make fullcover 12:37
12:57 contingencyplan left 13:35 Coke joined 13:36 rurban_ joined 13:40 rurban left, rurban_ is now known as rurban 13:41 bluescreen joined 14:00 kid51 joined 14:02 whiteknight joined
dalek rrot/get_user_id: 5cdded1 | rfw++ | / (2 files):
Adding dynpmc tests.
14:10
rrot/get_user_id: f57b9b7 | rfw++ | / (2 files):
Fixed weird get_user_id test, but still getting undefined symbols.
rrot/get_user_id: d453c0e | rfw++ | include/parrot/platform_interface.h:
Added PARROT_EXPORT to Parrot_get_user_id.
rrot/get_user_id: 11665b9 | rfw++ | t/dynpmc/os.t:
Added dynpmc can_execute test.
whiteknight good morning, #parrot 14:12
happy new year
bluescreen happy new year 14:24
14:56 lucian joined
kid51 whiteknight: Do you have any feelings about trac.parrot.org/parrot/ticket/1908? 14:57
dalek rrot: 2c9a66a | Whiteknight++ | README:
Merge branch 'master' of github.com:parrot/parrot
15:05
rrot: e9bac73 | Whiteknight++ | / (10 files):
Merge remote branch 'origin/get_user_id'
whiteknight kid51: I'm fine with it 15:07
adding a new make target which is orthogonal to existing targets should always be fine 15:08
dalek rrot/gci_unmanagedstruct_coverage: 3a7004e | rfw++ | / (9 files):
Merge branch 'master' of git://github.com/parrot/parrot
15:13
rrot/gci_unmanagedstruct_coverage: 9d68a5c | rfw++ | t/pmc/ (2 files):
Brought coverage of UnManagedStruct up to 90.7%.
whiteknight kid51: that get_user_id test is failing on your system? 15:16
dalek rrot: 76b7908 | jkeenan++ | config/gen/makefiles/root.in:
Add 'make moretests' target: 'test' + 'examples_tests' + 'codetest' (- t/codingstd/perlcritic.t).
15:17
whiteknight i'm on linux/i386 too, and it works fine for me
15:22 preflex left 15:27 preflex joined
dalek rrot: d69dbbc | Whiteknight++ | config/gen/makefiles/root.in:
Merge branch 'master' of github.com:parrot/parrot
15:35
15:42 JimmyZ joined 15:45 M_o_C joined 15:49 preflex left 15:51 preflex joined 16:06 Patterner left 16:07 Psyche^ joined, Psyche^ is now known as Patterner, JimmyZ left 16:16 Coke left 16:18 whiteknight left 16:33 kid51 left
dalek rrot: 0e9a7a9 | mikehh++ | MANIFEST:
re-generate MANIFEST
16:38
rrot: 79d8f1c | mikehh++ | config/gen/platform/ (6 files):
fix coda to conform to new coda
rrot: 9fe6c1b | mikehh++ | config/gen/platform/ (6 files):
add documentation
rrot: 8098b0b | mikehh++ | config/gen/platform/win32/uid.c:
change c++ comment to c comment
rrot: 1d0e70c | mikehh++ | src/dynpmc/os.pmc:
change c++ comments to c comments
16:50 lucian_ joined, lucian left
dalek rrot: 94c904a | mikehh++ | t/pmc/unmanagedstruct.t:
remove trailing whitespace (and update copyright)
16:54
rrot: 67b0d61 | mikehh++ | config/gen/platform.pm:
replace hard tab with spaces
17:24 Matt_ joined 17:34 kid51 joined
kid51 msg whiteknight Following the get_user_id branch merge, my 'make' output log is showing 214 instances of this warning: ./include/parrot/platform_interface.h:155: warning: function declaration isn't a prototype 17:36
aloha OK. I'll deliver the message.
kid51 msg whiteknight Also getting this warning: config/gen/platform/generic/uid.c:28: warning: old-style function definition 17:40
aloha OK. I'll deliver the message.
kid51 msg rfw Please check out the warnings described in my msgs to whiteknight 17:46
aloha OK. I'll deliver the message.
17:46 Kristaba joined
Kristaba Happy new year #parrot 17:47
dukeleto ~~ 17:56
mikehh kid51: didn't see that building with g++ 17:57
dukeleto Yuki`N: opcode pmc task completed 17:58
kid51 mikehh: I've been seeing it all morning with regular gcc build 17:59
dukeleto rfw: Unmanagedstruct task completed 18:00
cotto mj41, thanks! 18:09
nice timing dukeleto. I was just looking at it. 18:10
mikehh kid51: ok, I also get that warning with the gcc build (but not with the g++ build) 18:11
dukeleto cotto: top of year to ya 18:12
kid51 mikehh: Yes, I suspect that if we fix 2 lines, all those warnings will vanish.
Matt_ cotto: I don't see the logical VTABLE's mentioned here: www.google-melange.com/gci/task/sho...9419#c1001 (not, logical_and)
dukeleto tries to add a few new GCI tasks before brunch 18:13
these students are plowing through tasks
18:14 chromatic joined
cotto Matt_, how clever of us. We must have removed them. 18:19
Um... good job? 18:20
Matt_, just submit some bogus work. I guess you found a really easy task. ;)
Matt_ lol. I even grep'ed for 'logical' and barely got anything (so its not just a missing entry from vtables.tbl 18:21
cotto: :)
cotto PROTIP: src/vtable.tbl has the master list of VTABLE functions. If it's not there it doesn't exist.
dalek rrot: ed1ecd8 | mikehh++ | include/parrot/platform_interface.h:
make function arguments void, to remove warning
mikehh kid51: try that, works for me 18:22
Matt_ cotto: submitted anything :) www.google-melange.com/gci/task/sho...9380839419
cotto done 18:24
dukeleto Matt_: that commit you link to, that is not useful. it has lots of changes mixed together 18:25
Matt_: you need to make a pull request with only the work for the task
cotto dukeleto, the task was already completed before he requested it. 18:26
dukeleto cotto: hokey dokey 18:29
kid51 mikehh: Thanks. That cleans up all but this one: config/gen/platform/generic/uid.c:32: warning: old-style function definition 18:30
18:30 gbacon joined
dukeleto added some new GCI tasks 18:39
Kristaba I did some changes in Parrot ( github.com/Kristaba/parrot/commit/...ad23c46e49 ), and now I have a strange error when Make try to build Perl6Grammar.pir :( 18:44
I have "attempt to access code outside of current code segment" 18:45
Maybe someone has an idea of what is the cause of this error?
cotto We save that error for really special occasions.
kid51 That error is for very naughty boys and girls.
Kristaba :p 18:46
Really, I spent many hours to try to locate the problem, but I don't understand what I did that cause this issue :/ 18:47
mikehh kid51: ok I think I got that one - testing now 18:48
Kristaba Maybe I forgot something in root.in? I'm not a makefile specialist...
cotto Why are you replacing do_sub_pragmas with something else?
Aren't you just moving code around? 18:49
Kristaba cotto: www.google-melange.com/gci/task/sho...9372125825
cotto: The do_sub_pragmas is now a private function of PackFile
kid51 Paging Dr Whiteknight! 18:50
cotto we need 50CCs of What's Going On?, stat. 18:51
kid51 That's not a GCI task; it's a GSOC-project!
dukeleto gets the bedpan 18:52
cotto Kristaba, as a temporary measure you can make it publicly accessible.
That way you're only changing one thing at a time.
Then you can figure out a replacement for the non-packfile code and test it in a nice iterative fashion. 18:53
You definitely don't want to change more than one thing at a time if it's evitable. 18:54
does that make sense? 18:55
kid51 Kristaba: minor point re config/gen/makefiles/root.in: Double-check that you're using hard-tabs vs. wordspaces correctly.
18:55 theory joined
kid51 evitable? new back-formation? 18:55
Kristaba cotto: Hum... Yes, I'll try this, but I don't understand the real problem for now
plobsing (re: do_sub_pragmas) don't mess with that stuff. I'm just going to have to revert that work to merge encapsulate-main.
Kristaba kid51: Thank you, I just see this 18:56
cotto kid51, it's a perfectly cromulent word. 18:57
kid51 wonders where he misplaced his cromulent ..
Kristaba: This is quite a formidable task. And plobsing seems to think it's misdirected. So you'll probably have to consult with the mentor (whiteknight) about this. 18:58
Kristaba: In other words, I am mostly clueless about this.
plobsing my objection is that it is like adding veneer to a piece of wood I am in the process of whittling. 19:00
I'm just going to take it off. 19:01
dalek rrot: bc6c763 | mikehh++ | config/gen/platform/ (6 files):
make function arguments void, to remove warning (and docs)
Kristaba Okay, so I'll wait until whiteknight devat of last night 19:04
19:11 rfw joined 19:15 Yuki`N joined
Yuki`N Just a comment on the removal of logical VTABLEs. 19:19
Did the logical AND VTABLE short-circuit evaluate? 19:20
Because the suggested replacement `VTABLE_get_bool(interp, pmca) & VTABLE_get_bool(interp, pmcb)` doesn't.
I couldn't find any changes in the commit linked to Melange, so I'm just asking here.
cotto Yuki`N, I think that should be && 19:22
Yuki`N It should be.
I mean, both should work, if booleans implemented by parrot are 1 (true) and 0 (false) 19:23
cotto right, but && would use C's short-circuiting.
Yuki`N Yes.
cotto I used a language once that didn't have that. It was surprising. 19:24
Yuki`N Heh.
Somewhat related question, whiteknight commented that I don't have to use Parrot_str_clone when copying strings, but I'm worried about the old string getting GC'd.
cotto It won't get GC'd if there's a reference to it on the stack or in a PMC that properly marks its strings. 19:26
If it does, that's a bug.
Yuki`N How do you mark strings?
If I reference those strings in a PMC that's still on the stack, will the GC check for it? 19:27
cotto Parrot_gc_mark_STRING_alive
yup.
Yuki`N I'll copy the pointer and mark it anyway. 19:28
dukeleto Yuki`N: more tasks for you. Testing dynops. Very fun. 19:29
Yuki`N Oh yay. 19:30
As long as I don't have to worry about the dynop detection. `-` 19:31
That's hell in a handbasket.
cotto Yuki`N, accepted 19:33
Yuki`N Thanks cotto.
Parrot_gc_mark_STRING_alive takes null ok? 19:34
dukeleto is going to brunch. Enjoy the new year! More tasks just created!
cotto yup
rfw hooray, more parrot tasks! 19:37
Yuki`N Cool so I don't have to null check the strings.
rfw morning cotto
cotto hi rfw
kid51 mikehh: That looks good. Thanks. 19:39
rfw www.google-melange.com/gci/task/sho...9391004631 <-- could someone approve? 19:40
kid51: which messages? 19:41
kid51 rfw: msgs that were addressed to whiteknight: see backscroll 19:42
rfw: Review: git diff e9bac731bdb..
rfw: mikehh has fixed those problems, but please review 19:43
rfw okay i see it
ah okay 19:44
i didn't get those warnings though
kid51 mikehh reported that he did not get them compiling with g++; but I got them -- and he confirmed -- when compiling with gcc 19:45
rfw: I approved the sys dynops task
rfw ah okay, thanks 19:46
either i didn't notice the warnings when i was compiling or didn't have any, i guess
kid51 We don't keep close track of them ...
... but having run 'make' thousands of times, I have a sense of where to expect warnings. 19:47
rfw hehe
kid51 If you log your build, you can say: grep 'warning:' buildlog
rfw what's the difference between i and ic?
plobsing integer vs integer constant
rfw oh never mind
yeah i thought was much
i is a value from the $I? registers, right? 19:48
plobsing yes.
rfw okay, got it
plobsing and ic is *usually* from integer literals
rfw whoever named these tests sucks
plobsing however, ic is magic in that it can also be label addresses arguments
rfw they calling the ic variant of the opcode, when the tests are named i
+'re 19:49
plobsing that's the danger of polymorphic ops. you never really know exactly what you are calling (unless you have knowledge of the compiler) 19:50
cotto Yuki`N, your task needs tests 19:54
Yuki`N Yes, it does.
Matt_ was supposed to be taking care of that.
He was increasing test coverage when he found the bug, actually.
Not sure how that's working out. 19:55
I'll go ahead and write a clone test I guess, :/ 19:56
cotto good idea
19:58 gbacon left, gbacon joined 20:09 Nol888 joined 20:14 Yuki`N left, kid51 left
rfw src/dynoplibs/sys_ops.c 60.2 60.2 <-- oof, just 2% more 20:16
Nol888 Hmm. 20:19
I'm getting a failed assertion.
Copying this buffer is more annoying than I expected. 20:20
msg Matt_ Don't worry about testing the clone method; I'll take care of it. 20:25
aloha OK. I'll deliver the message.
Nol888 cotto, would you happen to know what I'm not able to get source line info from libparrot.so? 20:26
cotto Nol888, debugging symbols should be build unless you're using --optimize 20:27
Nol888 I can get info from parrot fine, but libparrot.so only gives me some method names, no stepping available. 20:28
cotto you mean for PIR code? 20:29
rfw cotto: www.google-melange.com/gci/task/sho...9391004631 when you can
Nol888 No, for the PMCs and such.
I can't actually get line # info for any code in libparrot.
Kapace_ morning #parrot.. 20:41
So, I was trying to test Capture's set_pmc method, using this test: gist.github.com/761993
And it doesn't seem to call set_pmc at all.. 20:42
Nol888 You have to use set_ref 20:43
=item B<setref>(invar PMC, invar PMC)
Make $1 refer to $2 by calling C<set_pmc>.
Kapace_ hmm, ok, Ill try to do that.. 20:44
plobsing Nol888: line # information gets incorrectly generated by pmc2c. you can turn it off as a parrot configure.pl option. '--no-line-directives'. I always do that. 20:51
Nol888 Oh.
plobsing it should be the default IMHO
downside - line numbers reference generated C files in stead of the original sources. 20:52
Nol888 Not a huge problem, I think.
I was looking at the generated c files anyway.
Is there any solution to that pmc2c problem? 20:53
plobsing that requires knowledge of how those line numbers are supposed to be generated that I do not have. All I know is how to turn the broken functionality off.
Nol888 Ah.
Is a trac ticket yet? 20:54
plobsing probably
rfw plobsing: could you look at my increased test coverage for sys dynops?
plobsing Nol888: TT #1735 20:55
rfw: sure, but I'm fairly sure I don't have the authority to accept/reject gci tickets. 20:56
rfw ah okay
i'll wait for someone else then
you can pull the changes in for me, though?
plobsing if they're good, yes 20:57
rfw they should be :D
Nol888 Derp 21:04
I was using the wront pointer.
*wrong pointer
SELF when it should have been copy.
21:05 Nol888 is now known as Yuki`N
Yuki`N Whooh it works! 21:06
dalek rrot/leto/embed_grant: 6b2b50f | dukeleto++ | t/src/embed.t:
[t] Refactor some embed test infrastructure
21:08
Yuki`N That was actually fun. 21:10
dukeleto, you should find more C coding that needs to be done, I need to improve my gdb-fu.
Pull request'd github.com/parrot/parrot/pull/75 21:19
21:19 fbrito joined 21:20 fbrito left 21:26 fperrad left
dalek rrot: 7653132 | rfw++ | t/dynoplibs/ (2 files):
Increased coverage of sysinfo to 62.2%
21:30
plobsing rfw: merged
rfw thanks
21:34 fbrito joined 21:37 rurban_ joined
Yuki`N plobsing, could you take a look at my pull request for the filehandle clone vtable? 21:37
21:40 rurban left, rurban_ is now known as rurban
dalek rrot/leto/embed_grant: d170bd5 | dukeleto++ | t/src/embed.t:
[t] Fix Parrot_PMC_modulus test and add Parrot_PMC_divide

It seems that these functions take three arguments, but nothing is done with the third argument. The function signatures of Parrot_PMC_modulus, Parrot_PMC_divide and all similar functions should probably be deprecated and either changed to:
1) take 2 arguments and return 1 value 2) return void and take 3 arguments
I think for unification with future design principles (such as fixed width opcodes that return void), that option 2) should be persued, but this issue needs to be brought up on parrot-dev.
21:40
rfw hi dukeleto
hi dukeleto 21:42
er
wrong window
fbrito hey rfw and Yuki`N :D. Happy New Year :) 21:43
rfw happy new year fbrito!
Yuki`N fbrito, happy new year! 21:44
fbrito can't believe that it is already 10am of 2nd january in New Zealand
rfw heh
rfw is playing with node.js 21:45
fbrito I am going to have lunch :). be right back
21:59 Yuki`N left, Yuki`N joined, aantn joined 22:01 Nol888 joined
aantn I'm about to start working on socghop.appspot.com/gci/task/show/g...9372687973 22:03
I was wondering if the mentor is on IRC? 22:04
rfw aantn: nobody is around atm
aantn Andrew whitorth?
rfw: thanks
rfw also, happy new year!
aantn rfw: you too :)
22:06 Yuki`N left
fbrito rfw: we should write a IRC bot that send a notification to the project channel when someone comment/submit work/claim request on a task :D 22:07
rfw fbrito: there is one
fbrito ah, fail 22:08
Kapace_ but really broken
it would spam the channel with repeated "task claimed" messaged
fbrito is the source code available somewhere? (github?)
rfw fbrito: there's only 9 days left so is there even any point :D 22:09
fbrito hm, true :(
it would be just for fun. I have never touched in a IRC bot code :(
we still have 419 GCI tasks available, wow 22:10
rfw i'm writing a crappy physics engine in js, heh 22:11
22:11 Nol888 is now known as Yuki`N, M_o_C left, Yuki`N left, Yuki`N joined
Kapace_ rfw: physics in node.js? 22:13
rfw Kapace_: optionally, yes
but mostly just client side physics
javascript is javascript is javascript, after all
Kapace_ heh, ok 22:14
rfw still haven't gotten the hang of "inheritance"
Yuki`N I call dibs on the bitwise-operator opcodes. 22:15
Hehe.
Bit shifting!
Kapace_ Yuki`N >> 1
In russia, bit shifts you!
Yuki`N More like Yuki`N | 0xFFFFFFFF
rfw did you just half the karma of N 22:16
sorear no
Kapace_ aloha: karma N
aloha Kapace_: N has karma of 39.
rfw sorear: i was just being silly :)
karma rfw
aloha rfw has karma of 22.
Yuki`N Fabulous, coverage information for the .pmc file doesn't get properly generated by make fullcover. 22:18
Oh derp 22:19
There is no .pmc file.
I wonder why the .ops file doesn't get info though.
cotto Yuki`N, you can look at core_ops.c 22:20
Yuki`N I can.
It's pretty much 1:1 anyway.
Oh hai cotto, there are many tasks waiting for your approval I hear.
22:20 contingencyplan joined
cotto except when it isn't 22:20
orly?
rfw www.google-melange.com/gci/task/sho...9391004631 <-- this one (merged in already) 22:21
cotto you're not kidding
Yuki`N I'm waiting for whiteknight to get back so he can review my clone method.
fbrito parrot has 4 opened pull requests by GCI students :D 22:23
aantn what's the difference between "make smoke" and "make test?" 22:26
rfw make smoke submits a report to theserver iirc
fbrito aantn: make smoke will send a result report to a server
rfw whereas make test is purely local
aantn rfw, fbrito: thanks 22:27
cotto hi aantn
fbrito aantn: this is the server: smolder.parrot.org/app/projects/smoke_reports/1
aantn hey cotto
fbrito: if I'm working in my own git branch, should I ever send a smoke report?
rfw i don't think i've ever submitted one, heh 22:28
cotto aantn, no need
fbrito aantn: it is not really necessary. but you should run "make codetest" before submitting your work 22:29
cotto the purpose of smoke testing is so we can see how Parrot works on a variety of platforms. For most changes, knowing that it works one one platforms is sufficient.
aantn fbrito: what's the difference between "make codetest" and "make test?"
Kapace aantn, make help ftw 22:30
fbrito aantn: you can run "make help" to see the options you have
aantn okay 22:31
cotto aantn, make codetest runs test on code, e.g. coding standards tests
fbrito aantn: code test is for coding standards tests. it will check if your lines are not too long, whitespaces (i think) and so on
cotto the output from make help is a bit verbose 22:33
rfw nothing a little | less can't solve
cotto: could you close my task? 22:37
cotto rfw, you don't need a whole new hll to play with hllmaps. See t/pmc/parrotinterpreter.t for an example.
Sure.
rfw hllmaps?
cotto HLLs can tell the interp to use a custom type instead of a core PMC. 22:38
you mentioned them in a comment in t/dynoplibs/time.t 22:39
rfw i don't think that was me
oh, that's not me
i just copied the tests on there and invoked the _i opcodes instead of _ic 22:40
cotto github.com/parrot/parrot/commit/76...4e858cf18b
rfw yeah they wre on the _ic tests
cotto ok
dalek rrot: 44899d8 | cotto++ | /:
Merge branch 'master' of github.com/rofflwaffls/parrot into rfw_sysops_coverage
22:43
cotto rfw, approved 22:44
rfw thanks
"Increase the code coverage of the math opcodes by at least 20%" "This will ensure there are no hidden bugs in our Hashs, which are a very important subsystem of Parrot." 22:45
lol
haha, github's new 404 page is awesome 22:47
fbrito rfw: ahaha, true. and yeah, src links on tasks are wrong 22:48
rfw: you can change /parrot/blob/... in the url to /parrot/tree/master/... and it will work :D 22:49
Yuki`N I will improve the bitops coverage by at least 60%. :| 22:52
Matt_ cotto: Can you look at this: www.google-melange.com/gci/task/sho...5574#c2002 22:59
cotto I was. You can explicitly specify the op you want to use if desired. 23:00
$I2 = rand_i_i_i $I0, $I1 is perfectly valid PIR 23:01
not necessary, but it might make the tests a little clearer 23:02
Matt_ aah. ok thanks. I did indicate the 'i_i_i' and stuff in the test method name 23:03
cotto yes. that's why I mentioned it
aantn I'm working on trac.parrot.org/parrot/ticket/749 for GCI, but I don't see src/pmc_freeze.c
never mind :) 23:04
cotto never minds 23:05
aantn I git-logged it and it's been refactored in object_serialization.c
cotto yup
let git do the work
aantn cotto: what's the difference between freezing/thawing and unpacking? 23:06
dalek rrot: 4a4a4bb | (Matt Rajca)++ | t/dynoplibs/math.t:
Increased coverage of math dynops
23:07
plobsing aantn: the difference is artificial, it is a well-known unecessary distinction
cotto Matt_, approved
aantn plobsing: I'm just trying to understand the code flow 23:08
plobsing, cotto: when a .pbc file is unpacked, then the validation stage should still occur when the packfile is frozen in memory, right? 23:09
plobsing aantn: unpacking is what happens to packfile segments (which implement the bytecode format). freezing/thawing is what happens to parrot-level objects. when segments become parrot-level objects, this all gets very muddy.
aantn plobsing: I understand 23:10
plobsing: what format are the segments stored in when they're thawed?
plobsing pretty much arbitrary binary format
aantn plobsing: I'm refactoring the validation code into a separate function. Should that functions signature still be PackFile_validate(PARROT_INTERP, PackFile *self, const opcode_t, *packed, size_t packed_size) ? 23:11
plobsing: that explains it :)
plobsing the format is defined by parts that simply agree on a specified ordering.
23:12 aantn left
plobsing eg: everybody agrees that the segment starts with an integer 23:12
oh no. I scared the student off :( 23:13
23:14 aantn joined
aantn sorry, I got disconnected. I didn't see your respone 23:15
plobsing <@plobsing> the format is defined by parts that simply agree on a specified ordering.
<@plobsing> eg: everybody agrees that the segment starts with an integer
cotto aantn, this channel is logged at irclog.perlgeek.de/parrot/today in case that happens again 23:16
aantn plobsing, cotto: thanks
dalek rrot: 7bdd2c9 | Yuki`N++ | src/pmc/filehandle.pmc:
Fix filehandle clone.
23:18
cotto Yuki`N, task accepted
rrot: b235875 | Yuki`N++ | src/pmc/filehandle.pmc:
Remove unnecessary string clones.
rrot: 476cb11 | Yuki`N++ | / (2 files):
Add tests, (re-)fix the clone VTABLE.
rrot: 6fb2a10 | cotto++ | src/pmc/filehandle.pmc:
[pmc] rename some variables for clarity
cotto <3 rebase
plobsing cotto: rfw had a coverage task earlier that I was able to merge. if you have not already, please accept his work. 23:20
cotto plobsing, I also merged that 23:21
aantn cotto, plobsing: what's the best way to pass information from (the new) Packfile_validate to Packfile_unpack 23:24
the validate function starts parsing information out of the packfile and checks if it's correct
cotto what kind of information?
aantn cotto: the unpack function needs some of that data to actually unpack the file 23:25
cotto: e.g. director format
*directory
dalek rrot: 74168f9 | (Lļæ½o Grange)++ | / (8 files):
Move code-running functions out of src/packfile/api.c
23:28
rrot: 39626b8 | (Lļæ½o Grange)++ | / (7 files):
Some fix. do_sub_pragmas is back public for now
rrot: e4903f9 | cotto++ | config/gen/makefiles/root.in:
[build] makefile dependency fix
cotto task accepted
aantn cotto: ? 23:29
cotto fbrito, nice atomic commits 23:32
aantn, your gci task
aantn cotto: yes? 23:34
cotto: I don't need help actually implementing it. I just want to make sure that I start implementing this the correct way
cotto: the task is www.google-melange.com/gci/task/sho...7973#c1001 23:35
dalek rrot: b20da13 | fbrito++ | t/pmc/class.t:
[t] Add remove_method test to Class PMC
23:38
rrot: 70a8378 | fbrito++ | t/pmc/class.t:
[t] Add find_method test to Class PMC
rrot: 83ac3c5 | fbrito++ | t/pmc/class.t:
[t] Add vtable_override test to Class PMC
rrot: 76d3804 | fbrito++ | t/pmc/class.t:
[t] Improve add_method on Class PMC
rrot: 00e660b | fbrito++ | t/pmc/class.t:
[t] Improve test coverage on Class PMC
rrot: 8946a18 | fbrito++ | t/pmc/class.t:
[t] Improve tests on Class PMC
cotto all pending gci requests are answered 23:42
Kristaba cotto: Thank you ;)
cotto Kristaba, thanks for contributing 23:47
rfw++ for being one task away from the venerable jumpyshoes
that's impressive
rfw, your next gci task: beat jumpyshoes. It's worth 3 points. ;] 23:48
melange-- melange-- melange-- 23:49
How did it not occur to them to make the front page display gci students who've taken on a task?
aantn cotto: do you have time to help me for a moment with www.google-melange.com/gci/task/sho...7973#c1001 23:58
cotto aantn, what's your question? 23:59