Camelia, the Perl 6 bug

IRC log for #parrot, 2009-04-08

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:00 Infinoid Thanks, I'll ignore copyright.t and c_function_docs.t for now
00:06 Infinoid hmm, I'm getting lots of segfaults from t/pmc/nci.t on x86-64 (no jit)
00:09 AndyA joined #parrot
00:09 nopaste "Infinoid" at 75.5.243.250 pasted "r37969 t/pmc/nci.t failures on x86-64 (backtrace at the bottom)" (382 lines) at http://nopaste.snit.ch/16189
00:10 cotto Infinoid, I see them too when I configure with --jitcapable=0
00:10 cotto Infinoid++
00:10 Infinoid any idea what broke?
00:11 cotto lemme dig
00:11 Infinoid cotto++
00:12 dalek parrot: r37970 | pmichaud++ | trunk/compilers/pct/src (2 files):
00:12 dalek parrot: [pct]:  Add HLL source line bytecode annotations to PCT.
00:12 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37970/
00:12 Tene pmichaud: should parrot also report HLL source line number on uncaught exceptions?
00:13 cotto It sure looks easier to debug than the jit backtraces
00:14 pmichaud Tene: I think HLLCompiler will probably do that, rather than Parrot.
00:14 pmichaud But sure, if Parrot wants to do it -- that'd be cool too.
00:14 Tene 'kay
00:14 pmichaud but at the moment I don't remember how to get the annotation information :-)
00:14 chromatic If the annotation is there, why not?
00:15 pmichaud I think it would be really awesome if parrot could do it by default :)
00:15 dukeleto cotto: ping
00:16 pmichaud looks like it's an 'annotations' method on Exception objects
00:17 cotto dukeleto, pong
00:17 pmichaud and the annotations opcode otherwise
00:18 cotto dukeleto, I'd like to mentor the person who proposed the decnumber integration GSoC project.
00:18 cotto I sent you an email to that effect.
00:23 dalek rakudo: a2728b4 | pmichaud++ | build/Makefile.in:
00:23 dalek rakudo: Refactor Makefile testing again -- previous method caused too much rebuild.
00:23 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/a​2728b421d65ab98790e57497c8502cbf4471cae
00:23 shorten dalek's url is at http://xrl.us/ben8e3
00:24 Tene argh, been too long since I've worked with PMCs from C.
00:26 Infinoid Is anyone here in touch with Tod McQuillin (nickname "devin")?
00:26 Tene VTABLE_annotations doesn't work...
00:26 Infinoid He runs the shorten bot, and I haven't managed to get a response from him in email or irc.
00:26 pmichaud I think it's a normal method, not a vtable function.
00:28 Tene I don't remember how to call PMC methods from C.
00:28 pmichaud me either... looking.
00:28 Tene That's what I'm trying to recall. :)
00:29 pmichaud PCCINVOKE
00:29 pmichaud PCCINVOKE(INTERP, obj, "methodname"), perhaps?
00:29 bacek_ joined #parrot
00:29 pmichaud see examples in src/pmc/complex.pmc
00:30 pmichaud also in codestring.pmc
00:33 Infinoid bacek_: Would you be opposed to making get_string() and set_string_native() the real functions, and pack()/unpack() wrappers around those?  Calling a vtable is a hell of a lot more efficient than calling a method, so I'd rather the basic ops not pay the PCCINVOKE penalty.
00:34 Infinoid (that's in regards to r37965)
00:35 Tene no, PCCINVOKE doesn't work...
00:35 chromatic I thought the same thing when I read that commit.
00:35 bacek_ good morning again.
00:36 dukeleto mornin'
00:36 bacek_ Infinoid: no problems.
00:36 Infinoid Thanks!
00:36 * bacek_ just arrived at $work...
00:37 kid51 joined #parrot
00:38 TiMBuS joined #parrot
00:38 dalek parrot: r37971 | allison++ | branches/pcc_rewiring/src/call/pcc.c:
00:38 dalek parrot: [pcc] Initialize the index into the list of positional arguments. After
00:38 dalek parrot: handling an optional parameter that can't be filled by a positional
00:38 dalek parrot: argument, break to the next parameter.
00:38 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37971/
00:39 rhr joined #parrot
00:41 Whiteknight Tene: What method are you trying to call from where
00:41 Whiteknight ?
00:42 Tene Whiteknight: the 'annotations' method on an Exception pmc from src/exceptions.c
00:44 Whiteknight Parrot_PCCINVOKE(interp, obj, "annotations", "->P", &result)
00:44 Whiteknight or Parrot_PCCINVOKE(interp, obj, "annotations", "S->P", name, &result)
00:45 Tene that segfaults.
00:46 Whiteknight send me the patch?
00:46 Tene Lemme make sure I'm not doing somethind stupid first. :)
00:47 Whiteknight great, give me a clean slate to do something stupid myself :)
00:52 nopaste "tene" at 97.117.63.134 pasted "diff for WhiteKnight++" (22 lines) at http://nopaste.snit.ch/16190
00:53 nopaste "tene" at 97.117.63.134 pasted "example pir to test for WhiteKnight++" (12 lines) at http://nopaste.snit.ch/16191
00:54 nopaste "tene" at 97.117.63.134 pasted "backtrace for WhiteKnight++" (24 lines) at http://nopaste.snit.ch/16192
00:55 cotto Infinoid, I'll look at the new, improved NCI segfault later tonight.
00:55 Infinoid Thanks!
00:55 cotto It's too bad make fulltest doesn't catch that on a jitcapable build.
00:56 Infinoid That does seem a bit unexpected
00:57 acajou joined #parrot
01:03 Tene Whiteknight: I'm driving home... back online in a bit.
01:04 Whiteknight okay
01:08 Theory joined #parrot
01:11 rhr joined #parrot
01:19 nopaste "Whiteknight" at 69.249.200.13 pasted "Solution for Tene++" (27 lines) at http://nopaste.snit.ch/16193
01:37 dalek parrot: r37972 | allison++ | branches/pcc_rewiring/src/call/pcc.c:
01:37 dalek parrot: [pcc] Allow return values to be constants too.
01:37 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37972/
01:41 Whiteknight allison: ping
01:42 allison Whiteknight: pong
01:42 Infinoid Does ManagedStruct.clone() even work?  I see a memmove() to copy the data pointed to by SELF.ptr, but I don't see where the new buffer is actually allocated.
01:43 Whiteknight allison: need any help on the pcc stuff? I've got tuits finally, just looking for a place to get involved
01:43 allison Whiteknight: it's not really parallelizable at the moment
01:44 Whiteknight Infinoid: I don't think I've ever seen it used or tested anywhere
01:44 Infinoid Well, my version's gonna work, dang it.
01:44 Whiteknight allison: that's fine. just let me know when you need an extra set of hands
01:48 Tene I don't know as much C as I should... I don't quite get the const stuff.
01:48 Tene Whiteknight: why are there two consts in those declarations?
01:49 Whiteknight because it's a constant pointer, pointing to a constant structure
01:50 Tene Thanks. :)
01:50 Whiteknight no problem, it's a small bit of C esoterica that provides a small optimization sometimes
01:53 Whiteknight Tene, does that do what you want? I wasn't sure if the output was all correct
01:53 Tene Whiteknight: yes, that's exactly right.
01:53 Whiteknight okay, Tene++
02:03 acajou left #parrot
02:03 Infinoid Parrot_jit_build_call_func() writes a bunch of code to a buffer and *then* checks whether it overran the buffer.  I love that kinda code
02:40 dalek parrot: r37973 | allison++ | branches/pcc_rewiring/src/gc/register.c:
02:40 dalek parrot: [pcc] Defaults for call signature stored in context.
02:40 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37973/
02:48 janus joined #parrot
02:56 dalek parrot: r37974 | allison++ | branches/pcc_rewiring/src/ops/core.ops:
02:56 dalek parrot: [pcc] Removing unused variable.
02:56 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37974/
02:56 Tene jonathan: ping
02:59 Tene purl: msg jonathan There's a problem with annotations for source lines... if I call 'die' in p6, it looks for the annotations set in control.pir, and finds none.
02:59 purl Message for jonathan stored.
03:00 nopaste "tene" at 166.70.38.237 pasted "example of annotations not working for jonathan++" (10 lines) at http://nopaste.snit.ch/16194
03:00 nopaste "tene" at 166.70.38.237 pasted "patch to report the source line of uncaught exceptions for jonathan++" (58 lines) at http://nopaste.snit.ch/16195
03:04 Tene purl: msg jonathan Perhaps Exception.pmc's annotations method should climb the contexts of the resume continuation if it doesn't find the asked-for annotation?
03:04 purl Message for jonathan stored.
03:12 Andy joined #parrot
03:23 eternaleye joined #parrot
03:52 dalek parrot: r37975 | allison++ | branches/pcc_rewiring/src/embed.c:
03:52 dalek parrot: [pcc] The 'main' sub needs to be invoked using the new conventions.
03:52 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37975/
03:52 dalek parrot: r37976 | allison++ | branches/pcc_rewiring/src/call/pcc.c:
03:52 dalek parrot: [pcc] Graceful handling for too many return arguments.
03:52 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37976/
04:05 tetragon joined #parrot
04:09 Tene joined #parrot
04:21 cotto Infinoid, it looks like ManagedStruct's clone is called 63 times during make cover.
04:22 cotto but I don't see where the memory is allocated either
04:24 * cotto loves having make cover work again
04:35 flh joined #parrot
04:36 Infinoid hrm.  well, I've got a patch that adds a custom clone handler (which, in this case, does mmap to get an executable buffer for jit).  If something else is allocating memory behind the scenes, it probably leaks like a sieve
04:48 masak joined #parrot
04:50 eternaleye joined #parrot
04:59 Theory joined #parrot
05:14 eternaleye joined #parrot
05:26 chromatic joined #parrot
05:30 dalek rakudo: 241ae0d | (Stephen Weeks)++ | src/builtins/control.pir:
05:30 dalek rakudo: [die]: Set exception severity and type in die()
05:30 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/2​41ae0ddb7c925877e32e097ea7f892cfe708dea
05:30 shorten dalek's url is at http://xrl.us/ben88m
05:39 Fayland_logger joined #parrot
06:05 clunker3 joined #parrot
06:09 japhb joined #parrot
06:13 dukeleto joined #parrot
06:23 eternaleye joined #parrot
06:47 masak joined #parrot
06:52 iblechbot joined #parrot
07:06 Doubi joined #parrot
07:06 japhb joined #parrot
07:46 eternaleye_ joined #parrot
08:06 riffraff joined #parrot
08:20 mikehh_ joined #parrot
08:53 dalek parrot: r37977 | fperrad++ | trunk/docs/book (2 files):
08:53 dalek parrot: [book] fix POD format
08:53 dalek parrot: code in section =begin/=end needs extra empty line
08:53 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37977/
09:05 cghene joined #parrot
10:32 bacek good evening.
11:13 * bacek wonders is String.pmc doing "wrong things" in destroy?
11:28 masak joined #parrot
11:56 ruoso joined #parrot
12:05 Tene_ joined #parrot
12:12 bacek Bah. PackFile_unpack/PackFile_pack combo leads to "weird results"...
12:14 bacek It produces at least wrong header. And may be anything else...
12:24 davidfetter joined #parrot
12:24 dalek parrot: r37978 | bacek++ | branches/packfile_revamp/src/pmc/packfile.pmc:
12:24 dalek parrot: Switch Packfile.pmc to use attributes.
12:24 dalek parrot: Main intention - keep copy of passed string to "unpack" because PackFile doesn't
12:24 dalek parrot: own this string.
12:24 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37978/
12:24 iblechbot joined #parrot
12:29 dalek parrot: r37979 | bacek++ | branches/packfile_revamp/t/pmc/packfile.t:
12:29 dalek parrot: Add test (disabled ATM) for set_string/get_string unpack/pack synonyms.
12:29 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37979/
12:37 rg1 joined #parrot
12:40 Whiteknight joined #parrot
12:41 Whiteknight cotto: ping
12:49 Infinoid what's the status of jit on win32?
12:53 schinkelm joined #parrot
12:53 schinkelm joined #parrot
12:55 nopaste "pmichaud" at 72.181.176.220 pasted "exception backtrace fail, for jonathan++" (28 lines) at http://nopaste.snit.ch/16198
12:58 dalek rakudo: c76c692 | pmichaud++ | docs/spectest-progress.csv:
12:58 dalek rakudo: spectest-progress.csv update: 349 files, 8444 passing, 0 failing
12:58 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/c​76c692e9d97c3b88f955631fdc61d5db87a71e8
12:58 shorten dalek's url is at http://xrl.us/ben9wt
13:02 bacek Infinoid: I hit... erm... "roadblock". See TT#545. I'll try to do something with it. But currently PBC are very unreliable.
13:03 bacek afk # zzzz....
13:09 Infinoid Will do, sleep well
13:10 gryphon joined #parrot
13:11 slavorg joined #parrot
13:28 rdice joined #parrot
13:35 amoc joined #parrot
13:38 * PerlJam reads yesterday's #ps
13:51 uniejo joined #parrot
14:06 uniejo joined #parrot
14:19 iblechbot joined #parrot
15:03 jan joined #parrot
15:12 uniejo joined #parrot
15:18 Tene joined #parrot
15:20 dalek rakudo: 7a22e0d | (Moritz Lenz)++ | t/spectest.data:
15:20 dalek rakudo: we pass the new S06-signature/types.t
15:20 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/7​a22e0d72f8ea70e0692d2828e6cf0a7c242fa63
15:20 shorten dalek's url is at http://xrl.us/beoaf4
15:49 uniejo joined #parrot
15:52 Khisanth joined #parrot
15:55 Psyche^ joined #parrot
16:01 flh joined #parrot
16:04 shucho_ joined #parrot
16:07 Theory joined #parrot
16:46 Tene joined #parrot
16:51 acajou joined #parrot
17:15 davidfetter joined #parrot
17:17 dalek parrot: r37980 | jonathan++ | trunk/src/pmc/sub.pmc:
17:17 dalek parrot: [core] Parrot Subs that get their arity inspected cache the information. However, when we cloned, we ended up with two subs sharing that cache. This could lead to double frees, or (in the case that led to me discovering this bug) a sub reporting an arity of over sixty thousand.
17:17 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37980/
17:18 acajou FWIW, Rakudo is failing tests today for me...
17:18 acajou (spectests)
17:20 acajou http://perl.pastebin.com/d7a9f5e8
17:21 dalek rakudo: 582e78c | (Moritz Lenz)++ | src/builtins/any-list.pir:
17:21 dalek rakudo: .join now defaults to empty separator
17:21 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/5​82e78c78d66aad6f06c32f8d2417f18f88cd8a2
17:21 shorten dalek's url is at http://xrl.us/beoavn
17:24 moritz acajou: thanks. It looks like an update of your local rakudo could fix that
17:26 darbelo joined #parrot
17:27 * acajou git fetches and recompiles again...
17:32 dalek rakudo: 776152d | jnthn++ | src/classes/Signature.pir:
17:32 dalek rakudo: !add_implicit_self on a Signature should be able to take a type, which will become the invocant's type in the signature.
17:32 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/7​76152d1823161e3ace5fcbecd59328ece5ff196
17:32 shorten dalek's url is at http://xrl.us/beoaw2
17:32 dalek rakudo: ccc12b3 | jnthn++ | src/builtins/guts.pir:
17:32 dalek rakudo: Make !EXPORT able to handle converting multis to Perl6MultiSub as it exports them, to save sprinking calls to !TOPERL6MULTISUB all over the code base and to make sure we export the multi in its Perl 6 dispatch algorithm form.
17:32 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/c​cc12b3e3eecc195aebbf47323959d5daf2852b0
17:32 shorten dalek's url is at http://xrl.us/beoaw4
17:32 dalek rakudo: 0fa3809 | jnthn++ | src/classes/ (2 files):
17:32 dalek rakudo: Give methods on Array a Perl 6 signature and get the transformed into Perl6MultiSub, which is not only more correct but also resolves the issues with method calls on typed arrays. Note that we also bump the required Parrot version number, since I found and fixed a Parrot bug along the way.
17:32 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/0​fa3809cc3fb9e0f64556d8f8db5b8ef226de59d
17:32 shorten dalek's url is at http://xrl.us/beoaw6
17:32 dalek rakudo: d43f016 | jnthn++ | build/PARROT_REVISION:
17:32 dalek rakudo: Oops, forgot to commit updated Parrot rev.
17:32 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/d​43f016f0ebeff73cf53dd095634a3ab75680185
17:32 shorten dalek's url is at http://xrl.us/beoaw8
17:32 dalek rakudo: d019aff | jnthn++ | :
17:32 dalek rakudo: Merge branch 'master' of git@github.com:rakudo/rakudo
17:32 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/d​019aff62179f5c87e957fc00eb8be18c5d8c79e
17:32 shorten dalek's url is at http://xrl.us/beoaxa
17:40 flh joined #parrot
17:43 dalek rakudo: 8a2b924 | (Moritz Lenz)++ | t/spectest.data:
17:43 dalek rakudo: we now pass S09-typed-arrays/arrays.t
17:43 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/8​a2b92460be2fdda3c75472d3305a4398d3c2a20
17:43 shorten dalek's url is at http://xrl.us/beoaym
17:44 acajou Hmmm, maybe I should wait a little...
17:45 acajou Looks like by the time make spectest runs the binary is out of date!
17:45 moritz indeed ;-)
17:45 acajou My latest try got worse, not better.
17:46 moritz acajou: what operating system do you use?
17:46 acajou Kubuntu 8.04.2
17:46 acajou gcc 4.2.4
17:46 moritz reasonably similar to mine to not expect any big differences
17:48 acajou Maybe I got the tree at an odd moment...
17:48 acajou http://perl.pastebin.com/d67833d75
17:49 moritz acajou: ah, that's because TimToady changed the specs for @array.join, and my updated to rakudo came only 30min later :-)
17:50 acajou :)
17:51 acajou Is there a time of day where things are generally more quiet when it might be more useful for the peanut gallery to try a spectest?
17:52 * acajou is in EDT.
17:52 Infinoid try 11pm or midnight your time, that's usually pretty quiet here
17:52 moritz acajou: 6 o'clock GMT might be good ;-)
17:53 * acajou nods.
17:53 acajou Thanks.
17:55 acajou left #parrot
17:58 cognominal_ joined #parrot
18:51 barney joined #parrot
18:57 LylePerl joined #parrot
18:57 LylePerl Hello
18:59 Infinoid hi!
19:00 LylePerl Infinoid: hi
19:00 purl que tal, LylePerl.
19:01 LylePerl I've started working with Rakudo recently with the aim to get it running with IIS/Vista
19:01 Infinoid Cool.
19:01 LylePerl I've got Rakudo running, working with Apache, got november working with apache
19:02 LylePerl but can't get rakudo working with IIS
19:02 Infinoid Ok, how can I help?
19:02 LylePerl I've tried a load of different things. It appears IIS has a problem with parrot (or maybe the other way round)?
19:02 Infinoid What's the problem?
19:02 purl SIR NO PROBLEM SIR!
19:03 LylePerl I've just tried a basic PIR script hello world with content type, and it doesn't work either
19:03 LylePerl Error is:-
19:04 LylePerl This application has requested the Runtime to terminate it in an unusual way.
19:04 LylePerl src\io\api.c:455: failed assertion 'pmc'
19:04 Infinoid Is this with the latest svn version of parrot?
19:05 Infinoid So far it sounds like parrot needs a little more environmental stuff set up... probably the "stdout" io descriptor
19:06 LylePerl It's the one that comes with rakudo parrot -V gives 1.0.0-devel
19:06 Infinoid rakudo binary or built from git?
19:06 LylePerl from git
19:06 Infinoid Ok, rakudo will probably have just done a "svn co" or "svn export" or whatever to get a copy of the parrot sources
19:07 Infinoid So that means you should be pretty much up to date
19:07 LylePerl I can check if you want?
19:07 Infinoid It's ok, I just wanted to check so I can follow along here
19:08 Infinoid I imagine you've written some kind of iis plugin which links to libparrot and uses the embedders' API to call into it?
19:08 Infinoid (I know nothing about iis)
19:08 LylePerl No, just calling through cgi
19:09 LylePerl the same way IIS gets setup with perl.exe
19:09 Infinoid Oh, ok.  What's the pir script?  Can you paste it into http://nopaste.snit.ch (it will show up here)?
19:09 LylePerl I've set it the same way with pugs and pugs works
19:10 nopaste "LylePerl" at 78.86.207.240 pasted "cgi pir hello world" (4 lines) at http://nopaste.snit.ch/16204
19:11 Infinoid Simple enough. :)
19:11 Infinoid Does it work when you "cd" into the parrot build directory and run "parrot.exe test.pir"?
19:11 LylePerl yes, works fine on cmd
19:12 Infinoid Ok.  Does your CGI wrapper chdir into that directory before invoking parrot?
19:13 LylePerl Hmmm... I'm pretty sure IIS doesn't do that.
19:13 LylePerl In Perl 5 I have to use findbin and chdir at the top of scripts
19:15 LylePerl In the Rakudo test code I had it open a file and write to it at the start and end of the script. The file was written to, so the script is being ran. Just IIS doesn't seem to get the output??
19:15 Infinoid I can run parrot just fine from outside the tree, on linux.  Maybe we're building something in a different way on win32, or maybe I'm barking up the wrong tree
19:15 Infinoid Ah, does IIS try to read from a special tmpfile or somesuch?
19:16 LylePerl Not that I'm aware of. I'm pretty sure it's invoked as parrot.exe \full\path\to\file.pir
19:16 Infinoid Well, hmm.  "parrot-dev/test/parrot parrot-dev/test.pir" works just fine here
19:17 Infinoid That kind of full-path syntax works in cmd too?
19:17 LylePerl Actually I'm sure it is as I did a request trace
19:17 LylePerl yes it works in cmd
19:17 Infinoid If you can run it from somewhere else using absolute paths to parrot and to the pir file, it must be something else environmental that's different when it's run under iis
19:18 Infinoid Does iis run it as a different user?  Could some differing environment variables be getting in the way?
19:18 LylePerl That's what I'm thinking
19:18 purl Oooh he is soooo fine!!!
19:18 Infinoid Thanks for that, purl.
19:19 LylePerl I'm thinking either IIS invokes it in a certain way, or expects it to return data and close in a certain way
19:19 LylePerl this might help, I posted some details on their forum
19:19 LylePerl http://forums.iis.net/p/1156635/1899524.aspx
19:19 Infinoid by "return data", if you mean "print to stdout", your test.pir script should definitely do that
19:21 Infinoid hah!
19:21 Infinoid The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are "".
19:21 LylePerl I know. But the error from my rakudo test script was a bit different for a simple script, it showed nothing be returned
19:21 Infinoid That's just beautiful.
19:21 LylePerl but the script is returning headers
19:21 Infinoid Yeah, it says it's missing something but apparently can't tell you what
19:22 LylePerl I know the trace was pretty worthless
19:22 LylePerl :(
19:22 Infinoid Hmm.  Do we do any \r translation on win32?
19:22 Infinoid This is just a guess, but maybe try skipping the \r's and just doing \n\n after the headers.
19:22 LylePerl ok, one sec
19:23 Infinoid If IIS was actually receiving \r\r\n\r\r\n, that might cause some confusion
19:23 LylePerl nope, same error :(
19:23 Infinoid Bummer.
19:24 LylePerl With Rakudo I tried something a bit more detailed I'll paste it
19:24 Infinoid Do you have a similar trace for the just-running-parrot-directly case?
19:24 Infinoid Ok, thanks
19:25 nopaste "LylePerl" at 78.86.207.240 pasted "cgi p6 hello world" (7 lines) at http://nopaste.snit.ch/16205
19:25 LylePerl I'll do one now
19:27 Infinoid You'll have a blank line at the top of your content, but that script looks fine to me otherwise
19:29 dalek rakudo: 6b97553 | pmichaud++ | :
19:29 dalek rakudo: Merge branch 'master' of git@github.com:rakudo/rakudo
19:29 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/6​b97553103e247da96d1fafe6896d1a49b764f13
19:29 shorten dalek's url is at http://xrl.us/beobfx
19:30 nopaste "LylePerl" at 78.86.207.240 pasted "pir iis trace" (18 lines) at http://nopaste.snit.ch/16206
19:31 LylePerl pretty much the same as the rakudo one
19:31 Infinoid Ok.  Normally IIS expects CGI stuff to write to stdout, just like every other server on the planet, right?
19:32 LylePerl yes
19:32 Infinoid Is this compiled with msvc or with mingw?
19:32 LylePerl for some reason it also picks up stuff from stderr and treats it like it came from stdout
19:32 Infinoid or cygwin, or what
19:32 LylePerl mingw
19:33 Infinoid Ok.  Do you have any way of knowing whether the script is even running?
19:33 Infinoid Oh, right, you mentioned writing something to a secondary file
19:33 LylePerl yes that's right
19:33 LylePerl the script actually ran fine to the end
19:33 LylePerl I redirected STDERR
19:34 Infinoid well, that rules out a lot of problems
19:34 LylePerl I'm emailed Jan from ActiveState about this as I know he has probable done the most Perl/IIS stuff, but he is away for a few days
19:35 Infinoid The equivalent script works fine with perl5 (or heaven forbid, a batch file), right?
19:35 LylePerl Works with perl 5
19:36 LylePerl never tried a batch file, lol :)
19:36 Infinoid I have.  It's not a very good way to pick up chicks.
19:36 Infinoid Ok, so if the I/O is the same, it must be something else
19:37 LylePerl Do you think it's worth waiting for Jan to get back? He might have all the answers?
19:37 Infinoid Nah, I don't think this is a perl issue
19:37 moritz maybe parrot does something unusal, like closing STDOUT and reopening?
19:37 Infinoid Could be.  Or just not flushing stdout properly
19:37 Infinoid Or leaving a thread running for a moment after the main one exits
19:38 Infinoid Or something weird like that, I dunno
19:38 LylePerl those sound good
19:38 Infinoid I'm concerned about this, though: [12:04] < LylePerl> src\io\api.c:455: failed assertion 'pmc'
19:38 Infinoid That looks like an altogether different issue
19:38 LylePerl Is there a way of tracing what parrot is doing?
19:38 LylePerl After all the script is being called
19:38 Infinoid Yeah, pass it the "-t1" argument
19:39 LylePerl where will the trace output go?
19:39 Infinoid stderr, I think.
19:39 LylePerl ok, last question
19:39 purl it has been said that last question is how to use template by itself from plugin :)
19:40 Infinoid Do you get that failed assertion often?  If so, I'm amazed that IIS is reporting a successful execution, that causes SIGABRT on the unix side of the pond
19:40 LylePerl I only just realized purl is a bot
19:40 Infinoid purl, forget last question
19:40 purl Infinoid: I forgot last question
19:41 LylePerl I really don't know any parrot code. Any chance of a snippet updating that hello world script but directing STDERR to a file at the start?
19:41 LylePerl Sorry to ask, I feel dirty :(
19:41 Infinoid No problem, let me see
19:42 Infinoid pir is basically assembly code, I only learn bits and pieces of it on an as-needed basis, so don't worry
19:43 Infinoid If you can open a normal file, you can use the "setstderr" op to assign it to stderr
19:44 Infinoid there's some more details in docs/ops/io.pod if you need
19:45 LylePerl thanks
19:45 cognominal_ joined #parrot
19:45 Infinoid it's also entirely possible that your script isn't running at all (or crashing due to that assertion failure) and thus isn't outputting anything, and some return value snafu is preventing iis from detecting the error
19:46 Infinoid If Parrot_confess() isn't returning an error value on mingw, we should probably fix that
19:48 LylePerl sorry you lost me a bit there :/
19:49 Infinoid I'll provide some background.
19:49 Infinoid We have a framework intended to keep all of us coders honest, by crashing horribly whenever we pass a NULL pointer to a function that wasn't expecting one
19:49 Infinoid That error you mentioned earlier, "src\io\api.c:455: failed assertion 'pmc'", means you've hit that
19:49 LylePerl i see
19:49 Infinoid When that crashes, it calls a C function, called "Parrot_confess", to emit that message and crash as violently as possible
19:50 Infinoid And yet IIS is reporting a successful execution
19:50 LylePerl that's could be iis though
19:50 Infinoid I suspect it isn't crashing violently enough on mingw
19:50 LylePerl is there something I can do to check?
19:51 Infinoid Hopefully the tracing will give us more info
19:53 LylePerl I've got to grab some food and spend a little time with the missus. I'll try out some more things and get back with what I find.
19:53 LylePerl Thanks very much for your help on this
19:53 Infinoid No problem, hope we can sort this out next time
20:13 schinkelm joined #parrot
20:17 Andy joined #parrot
20:24 donaldh joined #parrot
21:12 Whiteknight joined #parrot
21:43 donaldh left #parrot
21:51 LylePerl This is nagging at me so I've found a bit more time for it tonight
22:06 nopaste "LylePerl" at 78.86.207.240 pasted "pir iis tests" (65 lines) at http://nopaste.snit.ch/16207
22:06 LylePerl That's the different things I've tried since we spoke and the results I got
22:07 LylePerl I'm open to suggestions as to new things to try
22:20 rg this looks a lot like the cgi is not getting any stderr handle.
22:22 * rg has no idea about windows, though, but this again confirms all my prejudices against it ;P
22:22 LylePerl IIS is a total pain :/
22:23 rg i guess suggesting to at least use apace is not an option ;)
22:23 rg *apache
22:23 LylePerl IIS has always been weird with cgi such as things printed to STDERR randomly appear on STDOUT instead. Also not in the order you print them to STDOUT and STDERR
22:24 LylePerl I've already got apache working :)
22:25 LylePerl But parrot is going to need to be able to work with IIS
22:25 LylePerl I'm kinda surprised to find this problem in v1 :/
22:26 LylePerl My fault I should have been along to test it sooner...
22:26 moritz ;-)
22:26 moritz 1.0 is also just a version number
22:26 purl okay, moritz.
22:28 rg well you could change your perl wrapper to open stderr to a file before calling parrot. maybe that will give you a new clue.
22:31 Infinoid LylePerl: try putting some 'printerr "got here 1"' in your pir script to make sure parrot keeps running the whole way through
22:31 Infinoid those lines will show up in your test.txt
22:31 Infinoid if it doesn't crash (which is what I think is happening)
22:33 Infinoid unfortunately, the "setstderr" opcode only changes what the PIO layer thinks is stderr; it won't affect stuff in parrot which uses stdio directly (which includes Parrot_confess)
22:37 Infinoid The next step is to figure out why _PIO_STDOUT(interp) (in the print(STR) op) is NULL when running under IIS
22:37 LylePerl trying now
22:41 rg infinoid: i don't think the -t version is getting that far. Parrot_io_is_tty is called before the first op is executed.
22:42 nopaste "LylePerl" at 78.86.207.240 pasted "pir iis test file" (14 lines) at http://nopaste.snit.ch/16208
22:42 bacek joined #parrot
22:42 LylePerl rg: ahhh, that explains that then
22:43 LylePerl this code behaves as you would expect on the cmd
22:43 LylePerl but through IIS the file is wiped but nothing is written to it
22:43 Infinoid so it crashed on the first print
22:43 LylePerl guess so
22:44 LylePerl is this an IO issue then?
22:44 rg hmm the open actually runs?
22:44 Infinoid ... somehow.
22:44 LylePerl yep the open runs, opening the file for w which wipes it
22:44 rg strange
22:44 LylePerl I guess it could crash at the end of the open
22:44 rg i guess there's no such thing as a core file on windows?
22:44 rg nor a debugger :P
22:45 Infinoid he's running mingw, he can try to get gdb up and running
22:45 Infinoid but attaching it to a script running under iis will be an additional challenge...
22:45 rg that script will probably only run for a fraction of a second
22:45 rg you'd need a core dump to debug.
22:46 Infinoid well, you can put a sleep(10) in there I guess, but ... does win32 even have pids?
22:46 LylePerl I've been looking for something I used about 4 years ago, which did a very useful debugging trace thing, but I can't for the life of me remember what it was called :(
22:46 LylePerl Can't seem to find it on google either, been looking for 2 days now
22:46 * rg goes back to hacking html on unix for $job. at least that's unix ;)
22:46 LylePerl pretty sure it has pids
22:46 Infinoid hah, thanks rg
22:48 * Infinoid is reading through the Parrot IO init stuff
22:48 LylePerl I've posted to a windows programming forum to try and find that software I'm looking for
22:50 Infinoid ok.  if you're feeling brave, there is a gdb build for mingw
22:51 LylePerl ummm... what's that?
22:51 purl That's the money you could be saving with Geico.
22:52 Infinoid gdb is the command line debugger from the gnu project (common on unix platforms)
22:52 LylePerl your bot is crazy :)
22:52 LylePerl How can we use that through IIS?
22:53 Infinoid the only way I can think is, to put a "sleep 30" at the very top of the pir file, go find parrot in the windows task list, and then run "gdb parrot.exe <processid>" and hope that actually works on win32
22:53 Infinoid I'm working on testing that right now.
22:55 LylePerl that's if a sleep doesn't make it crash, :)
22:55 Infinoid that would be an interesting bug, indeed
22:55 LylePerl It's pretty late here now 12pm
22:56 LylePerl how long do you think this'll take?
22:56 LylePerl sorry, 12am
22:56 Infinoid hmm, probably half an hour or so
22:56 Infinoid We still don't really know what the problem is.
22:56 LylePerl ok, I'll give it a go
22:56 Infinoid We can resume this tomorrow, if you prefer.
22:58 Infinoid I'm building with strawberry perl, here, and the version of mingw bundled with that
22:59 Infinoid I've just downloaded http://sourceforge.net/project/sho​wfiles.php?group_id=2435&amp;packa​ge_id=20507&amp;release_id=594520 and unpacked it to a tmpdir, and copied bin/gdb.exe and bin/gdbserver.exe to my c:\strawberry\c\bin\
22:59 shorten Infinoid's url is at http://xrl.us/beocaa
22:59 LylePerl I've downloaded gdb
22:59 Tene joined #parrot
23:00 Infinoid oh, nice, my process list doesn't include pids.
23:00 Infinoid hmm
23:02 rg infinoid: there's a menu in the process manager where you can select the displayed columns
23:04 Infinoid yeah, found it.  next problem: no debugging symbols on mingw
23:05 Infinoid oh good
23:05 Infinoid ok, LylePerl, you want to put a "sleep 30" at the top of your pir sub
23:05 LylePerl done that
23:05 Infinoid then pull up your task manager, processes tab, select "Select Columns..." from the View menu and enable process ids if they aren't already
23:06 LylePerl done that
23:06 Infinoid sort by image name, start the page loading, find parrot's process id
23:06 Infinoid run "gdb parrot.exe <process id>" from the parrot directory
23:06 Infinoid it will attach to the process
23:06 Infinoid "break Parrot_io_putps" will add a breakpoint just before the crash
23:06 Infinoid then "cont" until it gets out of the windows system nonsense (this took a couple of tries for me)
23:07 Infinoid then when it hits the breakpoint, it will look like: Breakpoint 1, Parrot_io_putps (interp=0x3a26d8, pmc=NULL, s=0x61b7c8)
23:07 Infinoid then at the (gdb) prompt, run "bt" and nopaste us the results
23:08 Infinoid I'm fairly sure pmc will be null and it'll be called from Parrot_say_sc or another similar op... but we'll want to poke around a little bit in the interp object
23:12 LylePerl pmc= isn't null
23:12 Infinoid that means it won't crash this time around.  "cont"
23:12 LylePerl pmc=0x0?
23:12 Infinoid that works
23:12 LylePerl so bt
23:12 Infinoid Yes, please
23:13 Infinoid sorry, I use NULL and 0 interchangeably, so when you said it wasn't null, I figured it had a non-zero value
23:14 Infinoid so, just to verify, "print interp->piodata->table[1]" should also return null
23:14 LylePerl it didn't at first, had 0x32...
23:14 Infinoid or (PMC *) 0x0 or somesuch
23:14 nopaste "LylePerl" at 78.86.207.240 pasted "pir iis debug output" (26 lines) at http://nopaste.snit.ch/16210
23:14 acajou joined #parrot
23:14 Infinoid ok, looking good so far
23:15 Infinoid are all the values of the interp->piodata->table[] array NULL?
23:15 Infinoid 0, 1 and 2 should be our Filehandles for stdin, stdout and stderr, respectively
23:15 Infinoid print interp->piodata->table[0]
23:15 Infinoid (fortunately, gdb has command-line editing)
23:17 nopaste "LylePerl" at 78.86.207.240 pasted "pir iis debug output" (7 lines) at http://nopaste.snit.ch/16211
23:17 LylePerl table [2] has a pmc
23:17 rg yes, the one from setstderr
23:17 LylePerl I see
23:18 LylePerl should I retry without setting that?
23:18 Infinoid nah, I think we know what's happening
23:18 LylePerl can you fill me in?
23:18 Infinoid the code responsible for allocating that array is in Parrot_io_init(), but that seems to be working fine
23:19 Infinoid The code responsible for filling in the values (which are null) is in Parrot_io_init_win32()
23:19 Infinoid I just put a watchpoint for table[1] and it's set by src/io/win32.c:148
23:19 Infinoid so, your GetStdHandle(STD_OUTPUT_HANDLE) is returning INVALID_HANDLE_VALUE when run under iis
23:20 Infinoid The million dollar question is why :)
23:20 LylePerl lol
23:20 * Infinoid googles for the msdn page
23:21 Whiteknight Tene: ping
23:21 Tene Whiteknight: pong
23:21 Whiteknight Have you committed that exception stuff you were working on yesterday?
23:21 Tene Whiteknight: there's a problem with annotations.
23:21 Whiteknight what kind of problem?
23:22 Tene when I fetch the annotations in effect at the point of an exception thrown from rakudo's die(), it gets the annotations from rakudo's control.pir
23:22 Tene not from where die() was called.
23:22 Infinoid LylePerl: are you able to write C code, or do you have a patch command if I send you a diff?
23:22 LylePerl I have patch
23:22 Tene I could patch exception.pmc's annotations method to search up the chain of contexts looking for a particular named annotation as a workaround.
23:23 Whiteknight ah, so it's a lot of work then
23:23 Tene well, that woul dbe a little bit of work
23:23 Tene but I'd need confirmation that that's the right fix.
23:23 Tene so consulting with jonathan and/or allison
23:23 LylePerl Or I can write it in, but it's years since I wrote any C
23:23 LylePerl and I didn't know much in the first place :p
23:24 Whiteknight Tene: Ok. let me know if you need anything with it
23:24 nopaste "infinoid" at 75.5.243.250 pasted "debug patch for LylePerl; apply with 'patch -p1 <patch.txt'" (23 lines) at http://nopaste.snit.ch/16212
23:25 Tene Whiteknight: I'm considering adding a find_annotation mathod that does that as a first draft.
23:25 Tene Whiteknight: are you wanting it for anything, or just curious?
23:25 Infinoid LylePerl: With that patch, if it fails, it should emit a message (complete with content-type) containing the error number, so we can go and look it up to (hopefully) figure out what's going on.
23:26 Whiteknight Tene: I was doing some comment-updating work in exceptions.c, and I didn't want to commit if I was going to interfere with you. But i will now
23:26 Infinoid at the bottom of the nopaste page, there will be a "plain text" option which will get rid of all the html rubbish and then you can save it as a text file from the File menu.
23:27 Infinoid Interestingly, http://support.microsoft.com/kb/239588 claims GetStdHandle works in cgi stuff running under iis.
23:29 LylePerl I downloaded from git, but through the browser and not git clone
23:29 dalek parrot: r37981 | whiteknight++ | trunk/src/exceptions.c:
23:29 dalek parrot: update some of the function-level documentation in src/exceptions.c to be more descriptive and accurate
23:29 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37981/
23:29 LylePerl I've patched with patch win32.c patch.c
23:30 Infinoid ok, then "mingw32-make" to rebuild parrot
23:30 LylePerl ok
23:30 Infinoid and then, try your cgi failure again (you don't need a sleep this time)
23:31 LylePerl waiting for perl Makefile.PL to finish. Guess I didn't need to do that?
23:31 Infinoid it'll just take longer, that's all.
23:31 Infinoid With any luck, you'll get a "Unable to open stdin handle: err = <somenumber>" response, and that number will be of great use to us figuring this issue out
23:31 jonathan Tene: Hi
23:31 LylePerl ok, building now...
23:31 Tene jonathan: Hi. :)
23:31 jonathan Tene: Modifying exception.pmc to walk up the ret-conts chain sounds fine to me.
23:32 jonathan Plz just add a Parrot test after adding that. :-)
23:32 jonathan And probably a note in the POD above it.
23:32 jonathan But yes, I think it's a good idea.
23:32 Infinoid hey jonathan, you wouldn't happen to know anything about the win32 I/O init stuff, would you?
23:32 Tene jonathan: I'll try that tonight, then.
23:32 jonathan Tene++
23:33 Tene purl: karma tene
23:33 jonathan Tene: If you don't get to it tonight, I may do tomorrow.
23:33 purl tene has karma of 403
23:33 jonathan Infinoid: Not a great deal - is that the source of the IIS problems?
23:33 Infinoid Yeah.  LylePerl's Parrot_io_init_win32() is failing to get handles for stdin, stdout and stderr, and leaving null pointers in the io handle table which crash later on.
23:33 jonathan OK
23:33 * Infinoid doesn't have a clue why, was wondering if you knew anything about it
23:33 Infinoid thanks tho :)
23:34 jonathan We probably want to check they're not coming back null in Parrot_io_init_win32, so debugging this in the future is less of a pain...
23:34 jonathan Let me take a peek at what that function is doing...
23:35 Infinoid There are some cases where parrot will run without those filehandles being open, which we should handle.  I just didn't think this would be one of them.
23:35 jonathan Infinoid: OK, but perhaps then putting a PMCNULL so we don't segv?
23:35 Infinoid (though maybe IIS gives us a closed stdin except during POST requests)
23:35 Infinoid Yeah, we should fix the segv either way.
23:36 LylePerl Unable to open stdin handle: err = 0x6
23:36 Infinoid Oh, goodie.  One moment
23:36 jonathan Infinoid: Is it the GetStdHandle that fails?
23:36 Infinoid yes
23:36 jonathan Or when you later pass the handle to Parrot_io_fdopen_win32?
23:36 jonathan OK.
23:36 Infinoid I'd like it to keep trying for the other handles, even when stdin fails
23:36 jonathan Infinoid: One other thing...
23:36 purl well, one other thing is to be aware of my own breath.
23:36 Infinoid Now that I've thought it through, I bet stdout will work just fine
23:37 jonathan ...erm, yes, exactly what you just said.
23:37 jonathan I'm suspecting that if there is no POST data, IIS won't open STDIN
23:37 jonathan And then we never get to try and open STDOUT
23:37 LylePerl that sounds good
23:37 jonathan Well, easy check is to re-order them and see ;-)
23:37 Infinoid yeah, my thoughts exactly
23:37 Infinoid true
23:37 Infinoid LylePerl: can you move the stdin clause so it appears after the other two?
23:38 LylePerl on it
23:38 LylePerl still with your patch or should I remove it?
23:38 Infinoid my patch only provides more diagnostics, it won't hurt
23:39 Infinoid ...and stderr will still fail silently, because I didn't add prints to that failure path
23:39 rg it might not even fail
23:39 Infinoid (ohnoes)
23:40 * rg just wonders why there is a return value when it's not checked :P
23:40 * Infinoid guesses this is a work in progress
23:40 LylePerl Wohooooo!!!!
23:40 dalek rakudo: 2ae3181 | jnthn++ | src/classes/ (2 files):
23:40 dalek rakudo: Get type checking of operations involving arrays working. Along the way, fixed the bug where my @a; @a = 1; then made anything that referenced @a[0] blow up with a Null PMC Exception.
23:40 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/2​ae3181d3854d65ec8268d11ef1ef82e4eb2ccdd
23:40 shorten dalek's url is at http://xrl.us/beocep
23:41 LylePerl :)
23:41 Infinoid It did something different this time?
23:41 LylePerl it works
23:41 Infinoid LylePerl++
23:41 Infinoid LylePerl++
23:41 Infinoid LylePerl++
23:41 Infinoid karma LylePerl
23:41 purl lyleperl has karma of 3
23:41 LylePerl the script displays the hello world, then you get another content type from your patch, I'll remove that now
23:43 LylePerl infinoid++
23:43 LylePerl infinoid++
23:43 LylePerl infinoid++
23:43 LylePerl jonathan++
23:43 rg iis-- :P
23:43 LylePerl do we still want return -1;?
23:44 Infinoid r37986 will hopefully fix that.
23:44 LylePerl for stdin
23:44 dalek rakudo: 0a9dd6d | jnthn++ | src/classes/ (2 files):
23:44 dalek rakudo: Get typed hashes working in dispatch and have assignments to them typed-checked. Calling methods on them is still broken; need a few more things to become Perl6MultiSub.
23:44 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/0​a9dd6dc16cf92db529ecceb5c8370f1e4f1b212
23:44 shorten dalek's url is at http://xrl.us/beoce7
23:44 Infinoid No, I have another fix on the way
23:44 Infinoid I don't like returning -1, because among other things, it will prevent the winsock init stuff from running
23:44 Infinoid So for now I'm just setting it to PMCNULL, jonathan++ for suggesting that
23:45 Infinoid It'll probably still try to crash if you access it, but at least stdin won't break stdout any more.
23:45 LylePerl so "return PMCNULL;"
23:45 rg actually it should throw an exception ;)
23:45 Infinoid actually, I did _PIO_STDOUT[interp] = PMCNULL; and let the function keep running
23:45 Infinoid rg: an exception wouldn't get LylePerl any farther with his stuff
23:46 dalek parrot: r37982 | bacek++ | branches/packfile_revamp/t/p​mc/packfileconstanttable.t:
23:46 LylePerl my next step is to get november to run on iss, and I'm pretty sure that checks STDIN
23:46 rg it might if he's able to output a content type first
23:46 dalek parrot: Rewrite packfileconstanttable.t in pure PIR.
23:46 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37982/
23:46 dalek parrot: r37983 | bacek++ | branches/packfile_revamp/t/p​mc/packfileconstanttable.t:
23:46 dalek parrot: Add tests for PackfileConstantTable.set_*_int
23:46 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37983/
23:46 dalek parrot: r37984 | bacek++ | branches/packfile_revamp/src/p​mc/packfileconstanttable.pmc:
23:46 dalek parrot: Implement PackfileConstantTable.set_*_int methods.
23:46 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37984/
23:46 dalek parrot: r37985 | bacek++ | branches/packfile_revamp/src/p​mc/packfileconstanttable.pmc:
23:46 dalek parrot: Add PackfileConstantTable.init method which allocates PackFile_ConstTable.
23:46 Whiteknight I'm getting test failures in t/pmc/nci.t and t/pmc/codestring.t. Anybody else seeing these things
23:46 dalek parrot: Will be reimplemented soon to avoid memory leaks. But for now it allows
23:46 dalek parrot: set_*_int methods works on fresh PackfileConstantTable.
23:46 Whiteknight ?
23:46 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37985/
23:46 dalek parrot: r37986 | Infinoid++ | trunk/src/io/win32.c:
23:46 dalek parrot: [win32] Make Parrot_io_init_win32 try to be a little more resistant to closed filehandles.  LylePerl++
23:46 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37986/
23:46 dalek parrot: r37987 | bacek++ | branches/packfile_revamp (2 files):
23:46 dalek parrot: Fix PackfileConstantTable.set_pmc_keyed_int.
23:46 dalek parrot: Now it sets PFC_PMC flag. Add more tests for set_*_int methods.
23:46 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37987/
23:46 dalek parrot: r37988 | bacek++ | branches/packfile_revamp/t/p​mc/packfileconstanttable.t:
23:46 dalek parrot: :retab test file
23:46 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37988/
23:46 dalek parrot: r37989 | bacek++ | branches/packfile_revamp/t/pmc (2 files):
23:46 dalek parrot: Simplify tests by proper using Test::More.
23:46 dalek parrot: Also retab files to use spaces.
23:46 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37989/
23:46 Infinoid oh no, someone left the bacekinator on overnight
23:47 rg whiteknight: yes: http://smolder.plusthree.com/app/pu​blic_projects/report_details/19708
23:47 shorten rg's url is at http://xrl.us/beocff
23:47 Infinoid My patch is busted (though it should still work for LylePerl), another fix on the way
23:48 joubert joined #parrot
23:49 rg whiteknight: though just nci, not codestring.
23:49 Whiteknight thanks rg. Just making sure I'm not crazy
23:50 Infinoid LylePerl: r37990 should fix all your troubles.  You can just delete the parrot directory entirely and rakudo should get you a clean checkout and build it for you
23:51 LylePerl Now I can finally start writing the Rakudo cgi script guides for Linux/Apache and Win/Apache||IIS ;)
23:51 Infinoid LylePerl++
23:51 Infinoid Lemme know if it breaks again (I haven't tested this fix at all)
23:52 rg rakudo will need to bump parrot_revision to pick that up.
23:52 Infinoid Well, on the plus side, you should be able to do a "getstdin" and check the result with "isnull" to see whether you have POST data to be read
23:52 Infinoid ah, hmm.
23:52 Infinoid does rakudo do an export, or a checkout?
23:52 LylePerl Thanks. Your help has been really great. I wouldn't have had a clue about gdb or anything
23:52 LylePerl This has been really insightful
23:52 Infinoid gdb requires a lot of patience sometimes, thanks for sticking with it
23:53 dalek parrot: r37990 | Infinoid++ | trunk/src/io/win32.c:
23:53 dalek parrot: [win32] Hey, idiot, set the right value this time.
23:53 dalek parrot: Infinoid--
23:53 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37990/
23:53 LylePerl to think. Sunday I promised myself I could look at Perl 6, but only for an hour
23:53 bacek_ joined #parrot
23:53 LylePerl 3 days later... :)
23:54 rg can i ask here what are the plans for cpan with perl6 or do i need to go to #perl6? ;)
23:54 Infinoid bacek_: I looked at your bug, but I'm not really sure what's going on.  The ticket didn't have any actual details as to why it's broken, whether it crashes, etc
23:54 LylePerl I really do need to get back to some £work though. Thanks again, I'm sure I'll be back when I've written some more scripts
23:54 Infinoid rg: That's been discussed a few times, but I don't remember the resolution.  There may be a synopsis for it
23:54 Infinoid #perl6 probably wouldn't hurt
23:54 Infinoid Thanks again, LylePerl!
23:55 Infinoid LylePerl: You might need to do a little more work to get these fixes into the version of parrot rakudo gives you, as rg++ was saying
23:55 Infinoid If you bug me about it the next time you're playing with this stuff, I can give you a summary patch you can apply
23:56 Infinoid Or you can just keep using the version you've got, I don't think it will break anything
23:57 Tene rg: There are no plans.  There has been a lot of discussion, but none that anybody has any interest in implementing yet.
23:57 Infinoid rg: If you're volunteering... :)
23:57 * Infinoid is already mirroring cpan(5), and is willing to do the same for 6
23:57 LylePerl cpan isn't actually controlled by TPF is it...
23:58 Infinoid cpan is run by Jarkko, I don't know who or what is "officially" responsible for it
23:58 rg weill there is something at cpan6.org, but it doesn't seem to be moving very fast
23:59 LylePerl Infinoid: If I keep my parrot build separate I should be ok? (unless rakudo has problems with newer versions...)
23:59 Infinoid there are also some google hits for 6pan, which may or may not be the same thing
23:59 Infinoid LylePerl: Yeah.  There's a sliding window of compatibility, but if you ever run into trouble, pmichaud or jonathan should be able to tell you which version you need

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

Parrot | source cross referenced