Camelia, the Perl 6 bug

IRC log for #parrotsketch, 2010-12-28

| Channels | #parrotsketch index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
02:27 kid51 joined #parrotsketch
02:28 * kid51 has blizzard issues; will be trying to keep his car from getting towed; may not be at #ps today
03:13 kid51 left #parrotsketch
04:44 Coke left #parrotsketch
05:07 Coke joined #parrotsketch
05:28 cotto joined #parrotsketch
12:33 bluescreen joined #parrotsketch
17:41 NotFound joined #parrotsketch
19:53 * dukeleto will not be able to make #ps today
20:00 whiteknight joined #parrotsketch
20:02 whiteknight WHAT I DID:
20:02 whiteknight * Got embed_api merged. cotto++ for the help
20:02 whiteknight * Fixed a handful of issues relating to embed_api
20:02 whiteknight * Trying to keep up with GCI tasks.
20:02 whiteknight * Holiday related stuff
20:02 whiteknight WHAT I WILL DO:
20:02 whiteknight * Still haven't fixed my dev laptop. Need to do that ASAP.
20:02 whiteknight * Continue on with GCI.
20:02 whiteknight WHAT I AM BLOCKING ON:
20:02 whiteknight * Laptop broken
20:02 whiteknight * Sick kid
20:02 whiteknight * Not enough time.
20:15 Coke - on master & checkdepend_pmcs, got t/std/codingstd.t looking at all .c file deps. Please review branch and mergeback to trunk.
20:15 Coke - poked whiteknight++ into some bugfixes for rakudo.
20:15 Coke *EOR
20:15 Coke er, t/src/checkdepend.t # odd mistype.
20:18 kid51 joined #parrotsketch
20:19 kid51 kid51 additional report
20:19 kid51 * Followed up on ? of who can approve/publish GCI tasks
20:19 kid51 * Created 3 GCI tasks (which I think are still unclaimed)
20:21 kid51 * Had no time for TT #855
20:21 kid51 WILL TRY TO DO:
20:21 kid51 * TT #855 renewed effort
20:21 kid51 * Blogging re teams and roadmaps
20:21 kid51 BLOCKING ON:
20:22 kid51 * Blizzard travails:  Car was not towed but is ... injured :-(
20:22 kid51 EOR
20:22 cotto_work *did:
20:22 cotto_work - keep up (kinda) with gci
20:22 cotto_work - lots of code review
20:22 cotto_work - coke++ for the dependency cleanups, restoring my faith in make -j
20:22 cotto_work - nwellnhof++ for making our coverage tests less ugly
20:22 cotto_work - more of the same
20:22 cotto_work - packfile planning and hacking
20:22 cotto_work *blockers:
20:22 cotto_work - none
20:22 cotto_work *eor
20:26 nwellnhof joined #parrotsketch
20:26 allison joined #parrotsketch
20:27 mikehh What I did since my last report:
20:27 mikehh * building and testing parrot on amd64/i386, with gcc/g++
20:27 mikehh * last couple of days g++ does not build
20:27 mikehh * some fixes
20:27 mikehh * replace concat_s_s/concat_s_sc in examples
20:27 mikehh * html_cleanup needs to generate index pages (docs/index/*.json has the necessary info)
20:27 mikehh What I intend to do in the next week:
20:27 mikehh * testing and fixing
20:27 mikehh * hopefully complete the index/header pages in html_cleanup
20:27 mikehh .eor
20:28 nwellnhof what i did
20:28 nwellnhof - merge string_unescape
20:28 nwellnhof - work on my other branches
20:28 nwellnhof - misc fixes
20:28 nwellnhof plans
20:28 nwellnhof - merge unicode_io
20:28 nwellnhof eor
20:29 davidfetter joined #parrotsketch
20:29 Util Note: Poor connectivity; traveling
20:29 Util # Done:
20:29 Kapace_ joined #parrotsketch
20:29 Util Nothing; on holiday this week.
20:29 Util # Blockers:
20:29 Util 'Tis the season...
20:30 Util # 7-day ticket report:
20:30 Util 2 closed: done
20:30 Util 12 closed: fixed
20:30 Util 10 new
20:30 Util 1 reopened
20:30 Util .end
20:32 cotto_work good morning
20:32 Util Hello
20:32 whiteknight hello
20:32 kid51 Hello; q1q
20:33 mikehh hi there
20:33 kid51 Are any of our customary discussion leaders here?
20:33 kid51 cotto_work?
20:33 cotto_work hi
20:34 kid51 u want to start off?
20:34 cotto_work How'd we do on last week's goals?
20:34 kid51 1. Goals were recorded in #parrot, but not in #parrotsketch
20:34 kid51 2. (I don't know how to set the topic in #parrotsketch)
20:34 mikehh missed out on merge for html_cleanup, got distracted by g++ issues and examples_tests failures
20:34 kid51 3. Lots of GCI-related activity.
20:35 kid51 4. We were temporarily blocked on GCI due to absence of an "organization administrator" to approve/publish issues.  I believe that has been resolved.
20:35 cotto_work yes
20:35 cotto_work I made a note of the goals at the end of last #ps
20:36 cotto_work keeping up with gci seems to have been ok
20:36 kid51 5. Since many of the GCI participants are on Xmas break, they seem to be working/on channel round the clock :-)
20:36 cotto_work I'm an org admin and dukeleto is back, so we shouldn't be blocking on that.
20:36 NotFound Late hello
20:37 kid51 nwellnhof merged one branch (per earlier report)
20:37 nwellnhof and we merged embed_api
20:38 whiteknight ...and dealt with the fallout
20:38 whiteknight q2q
20:38 cotto_work html_cleanup needs a bit of work.  mikehh, do you think it can be merged this week?
20:39 mikehh hopefully, it's just the index page generation
20:39 cotto_work let's make that a goal then
20:40 cotto_work Did anyone look at distutils or plumage to try and increase their bus number?
20:40 whiteknight I moved plumage to github
20:40 whiteknight parrot/plumage
20:40 cotto_work great
20:40 mikehh frontend/parrot/main.c fails to build with g++ (gcc ok) and attempts I have made to fix it have failed
20:40 whiteknight so everybody reading this is now a committer on it
20:40 atrodo joined #parrotsketch
20:40 NotFound cotto_work: I took some look, but I'm not fluent witn nqp
20:41 whiteknight mikehh: I'm buidling with g++ now and will have that issue fixed soon
20:41 mikehh whiteknight: thanks
20:41 whiteknight cotto_work: I suggest plumage be the second priority
20:41 cotto_work wfm
20:42 cotto_work whiteknight: anything specific about it?
20:42 kid51 q3q
20:42 whiteknight make it work perfectly, make it able to submit smoke reports
20:42 whiteknight smoke reports for it would be a huge help
20:42 cotto_work any volunteers for that?
20:43 NotFound I had a plumage failure in machine at work with an updated ubuntu. I think the problem is the usage of a git command not pesent in old versions.
20:43 NotFound s/updated/outdated
20:44 kid51 NotFound: quite possible; my Debian box has a 1.5-ish git.  There are certain commands I have to do differently from 1.6 and 1.7.
20:44 kid51 How are smoke reports for Plumage done?
20:44 kid51 Do they go to Smolder?
20:44 NotFound I'll look at it in more detail and fill a ticket.
20:45 mikehh they used to, probably needs fixing
20:45 mikehh there was a build target to test and smolder test
20:46 cotto_work ok.  Anything else before we move to questions?
20:47 cotto_work kid51: you had some questions
20:47 kid51 Yes.
20:48 kid51 1.  I'm getting very inconsistent results with 'make quickcover'.  I know I had it working reasonably well, but others have been modifying it since.
20:48 kid51 Could i ask that if you touch the coverage targets, you do so in a branch and make sure you test both 'make quickcover' and 'make cover'?
20:49 kid51 Discussion?  Otherwise, I'll move on to #2.
20:49 nwellnhof kid51: i tracked it down to changes in Devel::Cover. version 0.68 and above break our current system.
20:50 kid51 nwellnhof: Can you post about that to parrot-dev?
20:50 nwellnhof yes, of course
20:50 kid51 Thanks.
20:50 kid51 #2: 3.0 release next month -- 3 weeks from today; anything special we have to do?
20:50 whiteknight PANIC
20:50 cotto_work DON'T PANIC
20:51 whiteknight those are the two options
20:51 kid51 Is there anything we have promised for 3.0 that we will not be able to deliver on?
20:51 whiteknight I don't think we've made many promises about it, no
20:51 kid51 Or is the .0 release fundamentally no different from the .11?
20:51 whiteknight so long as it's stable and no slower, I think we can accept it and support it
20:52 mikehh cotto_work: you are the release manager are you not?
20:52 cotto_work yes
20:52 kid51 Any deprecations we have to get in?
20:52 mikehh q1q
20:52 cotto_work I think we have plenty already, but now would be a good time if anyone thinks of one.
20:53 bluescreen old embed api ?
20:53 whiteknight bluescreen: yes
20:53 whiteknight I would like to deprecate the functions in src/embed.c in general. Some of those functions can remain but should be moved to better homes
20:54 whiteknight and with moving may come renaming, etc
20:54 kid51 Does Rakudo have any special needs as we go to 3.0?
20:54 cotto_work It sounds like doing an embed api review should be a goal for this week.
20:54 whiteknight cotto_work: yes, a review of those functions in general is a good idea
20:55 cotto_work I submitted a patch to Rakudo for the removal of concat_s_s, so they're ready for that.
20:55 whiteknight some are superfluous now, some can be improved/moved/renamed
20:55 cotto_work I'm not sure about other HLLs
20:55 plobsing joined #parrotsketch
20:56 kid51 #3: Are any of our GCI students here right now?  Want to say anything to the assembled masses of developers?
20:56 Kapace_ Make more tasks!
20:56 Kapace_ :P
20:56 Kapace_ perferably non-test coverage tasks, since make cover keeps blowing up
20:57 mikehh how long has GCI got to run?
20:57 cotto_work mikehh: it ends on the 10th
20:57 Kapace_ 12 more days
20:57 whiteknight Kapace_: noted
20:58 kid51 Kapace_: Although 'make cover' does blow up, and that's a PITA, these tasks have focused us more on code coverage than ever before in the history of the Parrot Project
20:58 Util We just discussed GCI on #phasers for Perl 6. Masak intends to submit/mentor some Perl6 tasks.
20:58 cotto_work Great!  I'll be happy to see Perl 6 get some gci love.
20:59 nwellnhof Kapace_: you can try 'make quickcover_new' if 'make cover' blows up.
20:59 kid51 END of my questions
20:59 Kapace_ nwellnhof: yes, I have tried that seems to work :)
20:59 cotto_work whiteknight: you had some questions
21:00 whiteknight yes
21:01 whiteknight We need to expose Parrot_pmc_gc_register and Parrot_pmc_gc_unregister through the API to help embedders protect their PMCs from GC
21:01 whiteknight any opinions on the best way to do that, or should I just put together a thin wrapper?
21:02 mikehh how much added complexity does it add
21:03 mikehh s/add/bring/
21:03 plobsing the only concern I know of was that it puts expectations on GC that might be undesirable
21:03 whiteknight there are two functions I want to expose. At the simplest, that's two small API functions
21:03 plobsing but I think there may be workarounds
21:03 whiteknight plobsing: exactly. We could call it something like "pin/unpin" to hide details
21:04 whiteknight the API does provide a mechanism for specifying a stacktop for GC stackwalking, so most embedding data should be safe
21:04 whiteknight but there are rare instances when we would like to keep a reference alive even when it doesn't appear to libparrot that it's still reachable
21:05 mikehh you are effectively telling the gc don't deal with this memory item - I will
21:05 plobsing like anonymous callback subs held in head-allocated structures
21:05 plobsing s/head/heap/
21:05 whiteknight mikehh: What registering does is puts the PMC into an array that is marked explicitly by the GC
21:05 whiteknight so yes, it's like explicitly saying to keep a PMC alive until I say otherwise
21:06 nwellnhof couldn't we abstract the API completely away from PMCs?
21:06 whiteknight nwellnhof: And use what instead?
21:06 mikehh so register says keep it and unregister says ok get rid of it
21:06 whiteknight mikehh: exactly
21:06 nwellnhof whiteknight: some wrappers
21:07 whiteknight nwellnhof: We could explore that option. I'm not sure I see a benefit in it right now
21:07 nwellnhof whiteknight: the benefit would be a nicer API. it's more work though.
21:08 plobsing nwellnhof: how would the wrappers handle the lifetime of objects?
21:10 Util Can we give methods to the PMCs that call reg/unreg on themselves?
21:10 plobsing wouldn't we still need to have explicit lieftime-management functions in the API?
21:10 whiteknight Util: We could put a method on default.pmc, yes
21:10 whiteknight Util: Calling a PMC method from an embedding C application is not trivial though
21:11 whiteknight okay, let's move this discussion to #parrot or the list, since I think we could talk about it all day
21:11 whiteknight My second question: I would like to deprecate and eventually remove the EventHandler PMC.
21:12 whiteknight Until this morning, it had been unusably broken for several months. Attempting to invoke it caused a segfault. It was completely untested
21:12 whiteknight I've put in a fix this morning, but the PMC is still unused, isn't pretty, and is part of a subsystem that is going to need major work in the coming months
21:13 whiteknight I suggest we remove it now, while we know that nobody is making effective use of it
21:13 whiteknight or, deprecate it now
21:14 nwellnhof it it's broken it's kind of deprecated already.
21:14 whiteknight I would agree, but I won't argue that point
21:14 whiteknight I would like to remove it, deprecate it otherwise
21:15 mikehh was it always broken, or just recently
21:15 whiteknight mikehh: Certainly it was never updated to work since the PCC refactor. So it's been months without so much as a bug report
21:15 whiteknight I can't say if it worked before that
21:15 whiteknight (untested, unused)
21:16 cotto_work If it's that broken, nobody wins anything by keeping it around.
21:16 nwellnhof i can't image it has any users, then.
21:16 cotto_work fire at will
21:16 mikehh just curious, some of the older HLL haven't been tested recently, eg cardinal
21:16 whiteknight cotto_work: thanks. Exactly what I wanted to hear
21:17 cotto_work Is that the last of your questions, whiteknight?
21:17 Tene mikehh: Cardinal recently received a small amount of work towards making it build successfully, at least, although it does not pass tests any more.
21:18 mikehh Tene: maybe if we get plumage going again we can work on cardinal and some others
21:19 cotto_work mikehh: yes.  I think part of the drive to get plumage usable is that it'll let us more easily test HLLs and libraries automatedly.
21:19 Tene whiteknight: You're wrong here.  EventHandler has worked just fine for a long time.  What was broken was the invoke vtable, which wasn't used because it's meaningless.  EventHandlers aren't vtable_invoked.
21:21 whiteknight Tene: Then maybe I don't understand what they are. What purpose do they serve if not invoked as a handler?
21:21 Tene whiteknight: The real eventhandler functionality, addhandler/schedule, has not stopped working at any time, afaict.
21:21 whiteknight cotto_work: yes, that's it
21:21 Tene whiteknight: it's like an exceptionhandler.
21:21 whiteknight Tene: exception handlers are invoked
21:21 Tene whiteknight: not vtable_invoked, no.
21:22 Tene Hmm... could be I'm full of shit here, not entirely sure.
21:22 Tene Still, the functionality of eventhandlers *has* continued to work just fine, as demonstrated by tests.
21:23 whiteknight Tene: src/exceptions.c:232
21:23 whiteknight it is VTABLE_invoked
21:23 whiteknight there's no other way to move control flow there
21:23 Tene you addhandler an eventhandler, and then schedule a task, and it works fine.
21:23 whiteknight Tene: there are very very few tests for EventHandler. Code coverage until this morning was at like 17%
21:24 whiteknight Tene: addhandler may be doing something weird. I need to look at it
21:24 NotFound whiteknight: we have lots of PMC with very low coverage, that says nothing.
21:25 Tene whiteknight: t/pmc/scheduler.t
21:25 whiteknight NotFound: no, the coverage by itself says nothing
21:26 whiteknight but if the PMC is throwing segfaults and nobody notices, we can't prove that it works
21:26 Tene Throwing segfaults for an unsupported operation that's not used by anything, or necessary.
21:26 NotFound whiteknight: I've been fixing segfault conditions in several importante PMCs that nobody noticed.
21:27 whiteknight Okay. I'll hold off on EventHandler for more study, but I still think we don't need it and it should be deprecated
21:27 cotto_work That sounds like a good idea.
21:28 whiteknight I'll look at it and raise the issue again next week if necessary
21:28 * whiteknight has to sign out now. Later
21:28 cotto_work mikehh: you had a question
21:28 whiteknight left #parrotsketch
21:29 mikehh mor like an observation really - I think it is important to run fulltest and perhaps test rakudo (maybe plumage) before merging a branch
21:30 NotFound Example of very low coverage: multisub.pmc 29%
21:30 kid51 make fulltest before branch merges+++++
21:30 mikehh for example removal of concat_s_s/concat_s_sc caused problems with rakudo and examples_tests
21:30 NotFound And for winxed
21:30 cotto_work I agree.  We need to be more proactive about ensuring that we don't break HLLs, especially Rakudo and Partcl.
21:30 kid51 If your branch touches any file starting with 'src/', you really need to do 'make fulltest'
21:30 cotto_work The plumage work should make that simpler.
21:31 mikehh don't forget winxed
21:31 NotFound But that thing was already deprecated and announced and there was an easy update path, no big issue.
21:32 plobsing branch merges shouldn't break core's fulltest. breaking HLLs should be fine if they have a reasonable upgrade path.
21:32 * Tene considers make_hlltests
21:34 bluescreen left #parrotsketch
21:34 nwellnhof examples is the most critical part of make fulltest. maybe they should be moved to normal tests.
21:35 cotto_work I think they were taken out because of how long they took to run.
21:35 plobsing nwellnhof: do that, and I'll only run coretest most of the time
21:35 mikehh also codetest
21:36 mikehh I think we might want to separate out the perlcritic test in codetest as they are the longest running part
21:38 nwellnhof the problem with make fulltest is that it tests all the runcores IIRC. that takes ages.
21:40 mikehh at the moment just testb, testf and testr
21:40 nwellnhof make examples_tests takes about a minute.
21:40 mikehh used to be another 4 or so
21:40 mikehh so does codetest without perlcritic
21:41 kid51 'make not-quite-fulltest', anyone? ;-)
21:42 cotto_work So it sounds like we need more emphasis on examples_tests
21:42 Tene make did-i-break-it
21:42 nwellnhof i'm for adding examples to the standard test target.
21:42 kid51 If people can tell me what they want, I'll create an intermediate target
21:43 kid51 'make test' + 'make examples_tests' + 'make codetest (except perlcritic)' -- does that sound okay?
21:44 kid51 (I don't want 'make test' to take any longer than it currently does.)
21:44 mikehh good target, don't know what to call it though
21:44 kid51 I'll think of something
21:45 cotto_work kid51: sounds fine.  serial examples_tests takes under a minute on my machine, parallel takes 38s.
21:45 mikehh but still keep fulltest as it is
21:45 cotto_work that's not excessive
21:45 nwellnhof i'd rather make that the default target and have other targets for quicker tests.
21:45 cotto_work Can someone start a parrot-dev thread to discuss this further?
21:46 kid51 nwellnhof: I recommend let's try an intermediate target and see how we like it -- later we can ponder making it the default for 'make test'
21:46 Tene The default should be more comprehensive, yes.  We've had problems with people not running the right tests, and a proliferation of small test targets that people need to remember doesn't actually help anyone.
21:46 Tene I'm not really clear on what the utility of trimming down the 'test' target is.
21:47 kid51 Tene: I don't think we're talking of trimming 'make test'
21:47 mikehh time to run the tests
21:47 kid51 Tene: We're talking of a new target that would include 'make test' plus others -- but much less than 'make fulltest'
21:47 Tene If the examples tests are important to run, why not add them to 'make test'?
21:47 kid51 They will only run quickly on boxes with high resources.
21:48 kid51 Also, as I stated above, I recommend trying out the new target before substituting it for 'make test'
21:50 Tene I really feel like I'm missing something here, but I certainly haven't been active enough to legitimately complain, so I'll just assume you guys have good reasons that I just haven't been present enough to notice.  :)
21:50 kid51 I will open up a Trac ticket for this.
21:50 cotto_work kid51: thanks.
21:51 cotto_work Are there any other questions?
21:51 NotFound Maye instead of adding make targets we should kill some, and use parrot programs to run some of that things.
21:52 cotto_work NotFound: that's an interesting idea.  Can you mention that in kid51's ticket?
21:52 NotFound More complex Makefile --> more portability problems
21:52 mikehh and test with C++ as well as C
21:53 cotto_work Here are the goals I have for the week:
21:53 cotto_work GOAL 1: more gci tasks (everyone)
21:53 cotto_work GOAL 2: merge html_cleanup (mikehh)
21:53 cotto_work GOAL 3: get plumage working, increase its bus number (?)
21:53 cotto_work GOAL 4: review current embedding api, decide what to keep (whiteknight)
21:53 cotto_work GOAL 5: study EventHandler, decide what parts are useful and what's worthwhile (whiteknight)
21:53 cotto_work GOAL 6: run examples_tests and test Rakudo, Partcl and winxed before merging significant changes into master (everyone)
21:53 NotFound But... plumage is working, isn't it?
21:53 kid51 cotto_work++ on goals
21:53 cotto_work NotFound: If it is, that'll be a very easy goal.
21:54 cotto_work Either way, we need more people who understand it.
21:54 mikehh also bus number increase
21:54 NotFound Last week it was broken for metedata with utf8 chars, but I fixed that, and was a parrot problem, not a plumage one.
21:55 mikehh NotFound++
21:56 NotFound The only problem I know is the one I commented before, git targets with old git versions.
21:58 kid51 Anything else before we wrap?
21:59 cotto_work That's a wrap.
22:06 Topic for #parrotsketch is now Priorities for this week: http://irclog.perlgeek.de/parr​otsketch/2010-12-28#i_3126985 | Post closed tickets in your report. | Note: This channel is for our Tuesday status meetings (at 20:30 UTC); you probably want #parrot instead. | irclog: http://irclog.perlgeek.de/parrotsketch/today
22:08 dduncan joined #parrotsketch
22:08 kid51 left #parrotsketch
22:12 NotFound left #parrotsketch
22:14 plobsing left #parrotsketch
22:18 atrodo left #parrotsketch
22:29 davidfetter left #parrotsketch
22:29 nwellnhof left #parrotsketch
23:09 dduncan left #parrotsketch

| Channels | #parrotsketch index | Today | | Search | Google Search | Plain-Text | summary