Camelia, the Perl 6 bug

IRC log for #parrot, 2008-08-03

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:01 tetragon And for a flashback to the Toronto buildfest, I had problems building for the wrong architecture in #57532
00:03 tetragon (And that ticket has the workaround I used for some of the flag nonsense)
00:09 AndyA joined #parrot
00:10 kid51 I'll apply that.  Reconfiguring to test.
00:11 tetragon Hrm... The post-check details printed after applying your diff contain undesired -arch flags
00:13 tetragon I don't see them elsewhere, but they make it look like the check isn't working
00:13 kid51 Can you paste?
00:13 cjfields joined #parrot
00:16 dalek r29959 | jkeenan++ | trunk:
00:16 dalek : [configure] Applying patch submitted by Seneca Cunningham in
00:16 dalek : http://rt.perl.org/rt3/Tic​ket/Display.html?id=57532 re byteorder on Darwin on
00:16 dalek : i386:  fix to accommodate 64-bit as well as 32-bit.
00:16 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29959
00:16 nopaste "tetragon" at 76.10.153.9 pasted "Verbose Configure output with the darwin branch diff applied" (889 lines) at http://nopaste.snit.ch/13728
00:17 tetragon A check on the tree I ran Configure.pl on doesn't show any -arch flags
00:18 nopaste "cjfields" at 76.195.221.197 pasted "Rakudo spectest_regression test failures, r29959" (13 lines) at http://nopaste.snit.ch/13729
00:18 * kid51 explores
00:18 cjfields couple of Rakudo test failures, can anyone replicate?
00:19 kid51 tetragon:  I see the problem.
00:22 dalek r29960 | Whiteknight++ | gsoc_pdd09:
00:22 dalek : [gsoc_pdd09] update to trunk r29958
00:22 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29960
00:26 tetragon And I'm getting a warning from perl when I run t/steps/init_hints-02.t
00:32 tetragon But I was capable of using the command line flags to get a 64-bit build built
00:43 dalek r29961 | jkeenan++ | darwin_fix_hints:
00:43 dalek : Fix _postcheck() and associated tests per failure report from Seneca Cunningham.
00:43 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29961
00:45 nopaste "kid51" at 70.107.14.221 pasted "revised: svn diff between darwin_fix_hints branch and trunk" (490 lines) at http://nopaste.snit.ch/13730
00:46 kid51 tetragon:  Please try revised patch and paste any warnings, failures.  Thanks.
00:46 idemal joined #parrot
00:50 tetragon Better post-check output this time
00:51 tetragon Only warnings/errors during Configure for 32-bit are the usual set
00:51 tetragon (I'll apply my readline patch later)
00:51 tetragon I'm still getting the test warning
00:52 nopaste "tetragon" at 76.10.153.9 pasted "Warning output in t/steps/init_hints-02.t" (33 lines) at http://nopaste.snit.ch/13731
00:54 tetragon No unusual warnings during make (32-bit)
00:54 tetragon Now for 64-bit
00:55 tetragon Hrm... I don't see my flags from the command line in the hints output, am I supposed to?
00:57 teknomunk_ joined #parrot
00:59 kid51 tetragon:  No.   The point of the patch is that there shouldn't be any reference to command-line options in init::hints.
00:59 kid51 Can you try this at line 202 of t/steps/init_hints-02.t:
00:59 tetragon Then it's time for make
00:59 kid51 local %ENV = %ENV;
00:59 kid51 $ENV{'MACOSX_DEPLOYMENT_TARGET'} = undef;
01:00 kid51 Command-line options for ccflags are now handled via config/inter/progs.pm -- where they probably should have been all along.
01:01 tetragon Still getting the warning
01:02 tetragon MACOSX_DEPLOYMENT_TARGET is not set on my box
01:02 tetragon I stop getting the warning if I limit the undef to cases when $ENV{'MACOSX_DEPLOYMENT_TARGET'} exists
01:03 kid51 What happens with:      undef $ENV{'MACOSX_DEPLOYMENT_TARGET'};
01:04 tetragon Warning
01:04 kid51 Alright, let's RTFM.
01:05 tetragon It worked when I appended " if exists $ENV{MACOSX_DEPLOYMENT_TARGET}"
01:05 kid51 Try:      local %ENV = %ENV;
01:05 kid51 delete $ENV{'MACOSX_DEPLOYMENT_TARGET'};
01:06 tetragon No warnings or errors
01:07 kid51 That's what we want.  It's what's recommended by 'perldoc -f undef', and I saw chromatic fixing some of the steps tests with it earlier today.
01:09 dalek r29962 | jkeenan++ | darwin_fix_hints:
01:09 dalek : Localize %ENV for test, then delete the hash element rather than trying to
01:09 dalek : 'undef' it (per 'perldoc -f undef').
01:09 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29962
01:22 dalek r29963 | jkeenan++ | darwin_fix_hints:
01:22 dalek : Provide test for one previously uncovered condition.
01:22 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29963
01:27 nopaste "kid51" at 70.107.14.221 pasted "'final' diff between trunk and darwin_fix_hints branch; tests get 100% coverage" (518 lines) at http://nopaste.snit.ch/13732
01:50 cotto_home allison++
02:01 tetragon kid51: Haven't noticed any breakage with the 'final' diff applied
04:26 Andy joined #parrot
04:27 rurban_ joined #parrot
04:37 tetragon joined #parrot
05:43 Psyche^ joined #parrot
06:05 alvar joined #parrot
06:23 Senaka joined #parrot
06:44 alvar joined #parrot
08:16 rurban anyone knows the ticket number of the "make install is broken if already installed"? With the recent merge I got it and fixed it. libs belong to the end.
08:58 masak joined #parrot
09:19 rurban got it: 39742
10:18 mire joined #parrot
11:01 MeGaMiC joined #parrot
11:17 Casan joined #parrot
11:32 Whiteknight joined #parrot
11:51 alvar_ joined #parrot
11:52 alvar_ left #parrot
12:18 Andy joined #parrot
12:20 Lorn joined #parrot
12:27 rurban_ joined #parrot
12:50 kid51 joined #parrot
13:14 dalek r29964 | Whiteknight++ | gsoc_pdd09:
13:14 dalek : [gsoc_pdd09] manually fix some problems caused by "make headerizer". Fixes one build problem, exposes another.
13:14 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29964
13:16 ambs joined #parrot
13:21 Andy joined #parrot
13:45 MeGaMiC joined #parrot
13:46 MeGaMiC joined #parrot
14:05 dalek r29965 | petergibbs++ | trunk:
14:05 dalek : [jako] Change factorial test to handle more combinations of 32 vs 64 bits
14:05 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29965
14:35 tetragon joined #parrot
14:47 tetragon joined #parrot
14:47 teknomunk joined #parrot
14:58 Limbic_Region joined #parrot
15:00 tetragon joined #parrot
15:23 jhorwitz joined #parrot
15:26 jonathan jhorwitz: ping
15:27 jhorwitz jonathan: pong
15:27 jonathan jhorwitz: I want to play with mod_rakudo. Do I require a certain version of Apache? (I have a Linux box I can do this on...)
15:27 jonathan And is there some examples of HLL handlers written in Rakudo?
15:27 jhorwitz a recent apache 2.2.x will do find
15:27 jonathan That section is todo in http://www.perlfoundation.org​/parrot/index.cgi?mod_parrot
15:27 jhorwitz *fine
15:28 * jhorwitz needs to upload his mod_parrot slides...
15:28 * jonathan wonders how to find which version of Apache he has
15:29 jhorwitz /path/to/httpd -v
15:29 tetragon joined #parrot
15:30 jhorwitz jonathan: see mod_parrot/trunk/eg/perl6 for example handlers
15:30 jonathan Awesome, thanks.
15:31 jonathan About state.
15:31 jonathan If I stick something in a package variable, will it exist between runs of a handler?
15:31 jhorwitz yes
15:31 jonathan OK.
15:31 jhorwitz for that interpreter
15:32 jhorwitz it would be very nice to have a way to clear that out between runs, a la PHP
15:32 jonathan What does "for that interpreter" that imply?
15:32 jonathan oops, s:2nd/that//
15:32 jonathan Do we have one interpreter per process pre-forked by Apache?
15:33 jhorwitz in the forked mpm, you have one parrot interpreter per apache child process. if you have keepalive on, you'll hit the same process (and thus interpreter) until your keepalive timeout expires.
15:33 jhorwitz you can see this in action with the example "counter" handler
15:33 jonathan OK
15:34 jonathan I'm giving a talk on Perl 6 OO, and pondering using mod_rakudo to actually run the code but fronted by a web app.
15:34 jonathan And rather than stash stuff in a DB, it'll just keep things in a hash etc.
15:34 jonathan Or array.
15:34 jhorwitz that works
15:34 jonathan Stored in the package.
15:34 jonathan OK.
15:35 jonathan Are there any security issues with installing this on a public-facing machine?
15:35 kid51 joined #parrot
15:35 jonathan BTW, I have: Server version: Apache/2.2.0
15:35 jhorwitz not that i know of, and i'm sure that gives you a warm fuzzy feeling.
15:36 jhorwitz i run it on smashing.org, but using a separate proxied apache install, so i can crash it at will.
15:36 jonathan Hmmm.
15:36 jonathan If it segfaults, it'd bring down my Apache?
15:36 jhorwitz just the process
15:36 jhorwitz others will live
15:37 jonathan Ah, OK.
15:37 jonathan I only have some CGI apps running on there that matter anyway.
15:37 jhorwitz the only problems i've seen so far are from parrot memory leaks
15:38 * jonathan feels like too much of a n00b to try setting up the proxy stuff
15:38 jhorwitz i'm sure mod_parrot has a few of its own too...
15:38 jhorwitz proxy is easy.  i can send you my config
15:38 jonathan Ah, OK - that may be good to have, thanks.
15:38 jhorwitz and yes, apache 2.2.0 will work
15:38 jonathan Great.
15:38 davidfetter joined #parrot
15:39 * jhorwitz tests mod_parrot with newly merged pdd25cx branch
15:39 davidfetter jhorwitz++ :)
15:39 Andy joined #parrot
15:39 jhorwitz hi davidfetter
15:39 davidfetter how goes otherwise?
15:40 jhorwitz good.  conference season is over, life is calming down.
15:40 jhorwitz nopaste?
15:40 purl i heard nopaste was at http://nopaste.snit.ch/ (ask TonyC for new channels) or http://rafb.net/paste or http://poundperl.pastebin.com/ or http://paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl
15:40 clunker3 http://pasta.test-smoke.org/ or http://paste.husk.org/ or http://nopaste.snit.ch:8001/ or http://rafb.net/paste or http://poundperl.pastebin.com/ or http://paste.scsys.co.uk/
15:41 nopaste "jhorwitz" at 96.245.16.64 pasted "jonathan: apache proxy config" (8 lines) at http://nopaste.snit.ch/13733
15:43 jonathan jhorwitz: OK, that's the proxy bit; how does one run a separate instance of Apache?
15:43 jonathan (And tell me to RTFM if these questions are just too dumb... :-))
15:44 jhorwitz LOL
15:44 davidfetter jhorwitz, um, is there a "conference season?"
15:44 Ron joined #parrot
15:44 * davidfetter scheduled for one next month, tentative for one each in the following three
15:44 jhorwitz jonathan: you can either just run with a separate config file, or in this case you probably want a completely new install (compile from source with a different prefix)
15:45 jhorwitz but for starters, i'd just get mod_parrot running and worry about the proxy bit later.  ;-)
15:45 jhorwitz davidfetter: for me, it's june & july.  though i did frozen perl this year too...
15:46 * jonathan is only doing one conference this summer
15:46 jonathan Oh. This is....probably not good.
15:46 jhorwitz sweet, all tests pass in trunk.
15:46 jonathan [root@jnthn trunk]# locate apxs
15:46 jonathan /var/www/manual/programs/apxs.html
15:46 jonathan That's...it.
15:46 jhorwitz you need to install the devel package
15:47 jhorwitz prob called httpd-dev or httpd-devel, depending on your system
15:48 * jhorwitz loathes packaged apache installs
15:51 jonathan Aarrgh. This wants me to update my gcc...
15:53 tetragon joined #parrot
15:57 rurban I want to extend #CONDITIONED_LINE in Parrot::Configure::Compiler to be common lisp like.
15:57 rurban #+(win32 cygwin): bla
15:57 rurban which is the same as #+(or win32 cygwin): bla
15:58 jhorwitz jonathan: just build apache from source
15:58 jhorwitz takes less time than dealing with the package nonsense
15:58 rurban then also #-(win32 cygwin): nobla and #-(and cygwin has_sig_atomic_t): blabla
15:59 jonathan jhorwitz: It seems so...
15:59 rurban The #conditioned_line logic is very limited
15:59 jonathan jhorwitz: Not built it from source before, well, hopefully it doesn't destroy my current installation. :-)
15:59 jhorwitz use a different prefix (/usr/local/apache2 is common, if not already taken by your system)
16:02 ambs joined #parrot
16:02 jonathan jhorwitz: OK. Configure worked, making...
16:10 dalek r29966 | jkeenan++ | trunk:
16:10 dalek : Correct 1 spelling error in POD. Provide some better POD tags.
16:11 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29966
16:13 jonathan jhorwitz: Argh! I build mod_parrot as root!
16:14 jhorwitz LOL
16:14 jhorwitz shouldn't matter...
16:14 jonathan I hoped not, but...
16:14 jonathan [  error] You are running the test suite under user 'root'.
16:14 jonathan Apache cannot spawn child processes as 'root', therefore
16:14 jonathan we attempt to run the test suite with user 'nobody' (99:99).
16:14 jonathan The problem is that the path (including all parent directories): /root/mod_parrot/trunk/t
16:14 jonathan must be 'rwx' by user 'nobody', so Apache can read and write under that
16:14 jonathan path.
16:14 jhorwitz oh
16:14 kid51 rurban:  I think I see what you're getting at re Parrot::Configure::Compiler::genfile() -- but this should probably be spelled out in an RT.
16:14 jhorwitz yeah, run as yourself
16:15 jhorwitz forgot about that
16:15 rurban kid51: I saw docs/configuration.pod. I'm working on the Compiler patch now, and send it then.
16:15 * kid51 reads docs/configuration.pod
16:16 rurban the conf->data->get($1) line will be changed to some cond_eval() line, and this will be enhanced to:
16:16 rurban Just checks the logical truth of the hash value (exists and not empty)
16:16 rurban TODO: recursive (), evaluate AND, OR, NOT with multiple keys
16:16 rurban TODO: also check the platform name if the hash key does not exist
16:16 rurban TODO: check for key=value, like #+(ld=gcc)
16:17 iblechbot joined #parrot
16:17 jonathan jhorwitz: Turns out having built Parrot as root, then means that mod_parrot make can't get at it!
16:18 jhorwitz that makes no sense -- is everything world-readable?
16:19 rurban I just fixed [perl #57476] [pdb] parrot version
16:20 jonathan jhorwitz: It gives a permissions error, on trying to access Parrot's include directory.
16:20 jonathan ...and people wonder why I use Windows...
16:20 * jhorwitz won't touch that discussion with 10 foot pole
16:21 jhorwitz what are the perms on the directory, and on the parrot build directory?
16:22 jonathan Well, I built it in /root
16:22 jhorwitz ah
16:22 jhorwitz that's not world-writable by default, i know that much
16:22 jonathan Yup.
16:22 jhorwitz er, readable
16:22 jonathan OK, will build a Parrot and mod_parrot in my home directory.
16:22 jhorwitz you shouldn't be doing things as root, but that's the sysadmin in me talking.  :)
16:23 jonathan I'm a compilers guy with a Windows background. Me doing sysadmin on Linux is EPIC FAIL. :-)
16:24 jhorwitz building your own willl be easiest in the long run.
16:24 * jhorwitz hides from EPIC FAIL under desk
16:30 jonathan All tests successful.
16:30 purl jonathan: that's because you wrote only one test, slacker!
16:31 ambs tsk tsk tsk
16:31 ambs :)
16:31 jhorwitz jonathan++
16:31 jhorwitz (assuming you're talking about mod_parrot)  :)
16:32 jonathan jhorwitz: Yes, I am. OK, make install seems to have worked out. I see step 7:
16:32 jonathan # Copy the lib directory to a more desirable location. This will eventually become part of the installation process.
16:32 jhorwitz you don't *have* to do that
16:32 jonathan OK
16:33 jonathan I'll skip it for now.
16:33 jhorwitz on my development server at home, i run everything out of my build directory so all my changes go live immediately
16:34 jhorwitz try one of the sample PIR handlers, then move on to perl6
16:34 jonathan OK
16:34 jhorwitz oh -- remember to patch rakudo
16:34 jhorwitz see patches/
16:34 jonathan I need to figure out, what port etc this is running on too...
16:34 jonathan Or if it's running at all.
16:35 jhorwitz you'll likely get a conflict when patching the io builtins, since i committed the PERL6LIB change late last week.
16:35 * jhorwitz makes a new patch...
16:35 jonathan OK. I had to do a small change to the PERL6LIB code; it caused some issues with make spectest_regression, at least on some platforms.
16:36 kid51 joined #parrot
16:36 jhorwitz interesting.  obviously nothing showed up for me else i would've caught it...
16:38 kid51 rurban:  Looked at your patch for 39742.  Got some codingstd errors.
16:38 nopaste "kid51" at 71.247.44.3 pasted "Some perlcritic errors in patch for RT 39742" (12 lines) at http://nopaste.snit.ch/13734
16:39 jonathan jhorwitz: Do lines like "ParrotInit /path/to/mod_parrot.pbc" go inside some block?
16:39 jonathan Or just after the LoadModule line?
16:39 jhorwitz after LoadModule
16:39 jhorwitz they're server scope
16:39 rurban kid51: ending spaces?
16:40 rurban I found some.
16:40 rurban and nge is not quite right
16:41 rurban oops, hard tabs. will regenerate and attach a new one.
16:41 kid51 np
16:41 rurban I'm finishing my [TODO] enhance #CONDITIONED_LINE by recursive logical expressions as in LISP first
16:42 kid51 k.  I don't have expertise to evaluate all the issues in these patches myself, so I'm just seeing whether they get thru 'make test'
16:43 rurban it's a big one and it clahed with Allisons big exception patch
16:43 rurban For me it looks right but I get a GC fault.
16:44 jonathan jhorwitz: OK, and actually running the Apache I just installed? ./httpd doesn't seem to have done a lot...
16:44 jhorwitz /path/to/apache/bin/apachectl start
16:44 jhorwitz (you may need to kill the httpd you just started...)
16:45 kid51 But looking at genfile(), I'm inclined to refactor its guts into smaller, individually testable subroutines, much like I did for the config step classes' runstep() methods.
16:46 kid51 Perhaps I'll put that on *my* TODO list.
16:47 rurban Well, my enhancement is just for two single lines, if $options{conditioned_lines} is true
16:48 nopaste "rurban" at 212.183.57.140 pasted "[TODO] enhance #CONDITIONED_LINE by recursive logical expressions as in LISP" (67 lines) at http://nopaste.snit.ch/13735
16:49 jan joined #parrot
16:51 jonathan jhorwitz: OK, now I get: compiler returned NULL ByteCode '/home/default/jnthn.net/mod_​parrot/eg/pir/interpinfo.pir' - No such file or directory
16:51 jonathan However, it decidedly exists...
16:51 jonathan ls -l /home/default/jnthn.net/mod_​parrot/eg/pir/interpinfo.pir
16:51 jonathan -rw-r--r-- 1 jnthn default 3249 Aug  3 16:34 /home/default/jnthn.net/mod_​parrot/eg/pir/interpinfo.pir
16:51 * jonathan wonders if it's permissions
16:51 kid51 rurban:  Have saved your paste to disk; will have to look at it more closely later.
16:51 jhorwitz no, i know what it is
16:51 jonathan Oh! I didn't do the patch!
16:51 jhorwitz no
16:52 jhorwitz that's just for perl6
16:52 jhorwitz you need to set PARROT_RUNTIME
16:52 rurban kid51: this paste does not work yet, but the attached one to the ticket will pass all tests
16:53 jonathan Environment variable?
16:53 rurban code and tests for this feature later
16:53 jhorwitz jonathan: add this to /path/to/apache2/bin/envvars: PARROT_RUNTIME=/path/to/parrot; export PARROT_RUNTIME
16:53 jhorwitz then do apachectl stop; apachectl start
16:54 * jhorwitz needs to update the wiki for this...
16:58 jonathan jhorwitz: Aha! Seems to work.
16:58 jhorwitz jonathan++
16:58 jonathan Now I need to set up the proxy or punch a hole through the firewall
16:58 jhorwitz nice!
16:58 jonathan jhorwitz++ # being patient with an Apache n00b
16:58 jhorwitz well, now you need to test mod_perl6.  :)
17:00 tetragon joined #parrot
17:01 s1n kid51: i responded to rt#57522
17:01 jonathan http://www.jnthn.net/mod_parrot/parrot-status
17:03 jonathan jhorwitz: OK, the Rakudo patch fails to apply cleanly...
17:04 jhorwitz right, prolly cuz the PERL6LIB diffs are already applied
17:05 jhorwitz if it's just io.pir, just revert it and verify there were no other conflicts.
17:06 jonathan Yeah, was just in io.pir
17:08 pmichaud Aloha
17:09 jonathan hi pmichaud
17:09 jonathan How's vacation?
17:09 pmichaud excellent
17:10 jonathan Nice. :-)
17:10 pmichaud not enough hacking time :-(
17:10 jonathan It's *vacation*!
17:10 jonathan Hacking time is what YAPC::Europe and the surrounding days are for. ;-)
17:10 * jhorwitz seconds that
17:10 pmichaud heh
17:11 pmichaud well, I'll be hacking then, too.
17:12 rurban With the current parrot config and make state I'm thinking of applying for a small foundation grant to fix it during my weekends. I rather want to go surfing on weekends.
17:12 rurban but the period is over unfortunately.
17:13 ambs rurban, yup. Will open in October again.
17:14 rurban In october everything is already fixed. It is even fixed now in my huge patch queue.
17:14 ambs ?D
17:14 ambs :D
17:15 rurban well, 56554-make-install-lang.patch is about 70%, and 57548-CONDITIONED_LINE_enh.patch needs 2-3 more hours.
17:16 rurban well, and my planned config.pir rewrite is much more work.
17:16 rurban I'll apply for 10 hours � 100 euro in october then :)
17:18 dalek r29967 | jkeenan++ | trunk:
17:18 dalek : Applying patch submitted by Jason Switzer in
17:18 dalek : http://rt.perl.org/rt3/Tic​ket/Display.html?id=57522:  Tell the parrot harness
17:18 dalek : to pass a specific verbosity flag down to TAP::Harness.
17:18 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29967
17:18 dalek r29968 | pmichaud++ | trunk:
17:18 dalek : [rakudo]: spectest-progress.csv update: 116 files, 2003 passing, 12 failing
17:18 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29968
17:19 jonathan jhorwitz: OK, I have a patched Rakudo. What now?
17:19 jhorwitz see eg/perl6/README
17:20 jonathan aha, yes, just found
17:20 * jonathan had looked in docs/
17:20 jhorwitz yeah, keeping that parrot-specific.  mod_perl6 is moving out of the mod_parrot source tree soon.
17:21 jonathan OK
17:21 jhorwitz it's confusing, i know.  :)
17:22 jhorwitz now that this stuff actually works, i need to find tuits for documentation
17:31 jonathan Hmm.
17:31 jonathan Error: file cannot be read: ModPerl6/Registry.pm
17:32 jhorwitz can you paste your mod_parrot-specific apache config and the relevant piece of the error log?
17:32 jhorwitz and did you set PERL6LIB in envvars?
17:32 jonathan Yes
17:32 jhorwitz k
17:32 jonathan PERL6LIB=/home/default/jnthn.net​/mod_parrot/languages/perl6/lib
17:32 jonathan export PERL6LIB
17:32 jhorwitz the fact that it gave a *nice* error is favorable
17:33 jhorwitz that looks good.
17:33 jhorwitz and you did a full stop and start of apache after changing it?
17:34 jonathan yes
17:34 jhorwitz ok
17:34 jhorwitz then paste the config and logs and i'll take a quick look
17:34 Limbic_Region joined #parrot
17:35 nopaste "jonathan" at 85.216.151.226 pasted "jhorwitz - config" (17 lines) at http://nopaste.snit.ch/13737
17:35 jonathan There entire error is:
17:35 jonathan Error: file cannot be read: ModPerl6/Registry.pm
17:35 jonathan current instr.: 'parrot;ModParrot;HLL;perl6;handler' pc 233 (EVAL_16:97)
17:36 jhorwitz this tells me something is wrong with PERL6LIB & require
17:37 jhorwitz does rakudo's io.pir look ok?
17:39 nopaste "jonathan" at 85.216.151.226 pasted "jhorwitz - require" (18 lines) at http://nopaste.snit.ch/13738
17:39 jonathan Taht's what's in require
17:39 jhorwitz hm.
17:39 dalek r29969 | pmichaud++ | trunk:
17:39 dalek : [rakudo]: Refactor printf to use sprintf builtin.
17:39 dalek : * Remove improper :method flag for printf() function.
17:40 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29969
17:43 jhorwitz jonathan: can you try "use" outside of mod_parrot and see if it works with PERL6LIB?
17:49 jonathan Seems not to work..
17:50 jhorwitz maybe the patch application went worse than we though.  can you paste !find_file_in_path from guts.pir?
17:50 jhorwitz *thought
17:52 jhorwitz ah, that has to be it
17:52 jhorwitz cuz the changes to guts.pir would've already been in trunk
17:52 jhorwitz if you revert that file and rebuild rakudo, i bet it starts working
17:52 jonathan The search_path that gets passed to !find_file_in_path is an empty string
17:53 jonathan echo $PERL6LIB
17:53 jonathan /home/default/jnthn.net/parr​ot/languages/perl6/Modules/
17:53 jhorwitz i have to ask, just in case.  did you export it?
17:54 jonathan erm
17:54 jonathan no
17:54 jhorwitz :)
17:54 jonathan AH
17:54 jonathan OK that works.
17:54 jonathan But it is being exported in my envvars, as you saw
17:54 jhorwitz yes.  hrm
17:55 * jhorwitz thinks for a second...
17:57 jonathan ls -l /home/default/jnthn.net/mod​_parrot/languages/perl6/lib
17:57 jonathan total 8
17:57 jonathan drwxr-sr-x 3 jnthn default 4096 Aug  3 16:34 ModPerl6
17:57 jonathan -rw-r--r-- 1 jnthn default  952 Aug  3 16:34 mod_perl6.pm
17:57 jonathan Is that "s" in there correct?
17:57 jhorwitz that's fine
17:57 jhorwitz ok here's what's weird
17:58 jhorwitz oh, never mind
17:58 purl Okie dokie
18:02 jonathan jhorwitz: The curious thing to me is that the error is in:
18:02 jonathan Error: file cannot be read: ModPerl6/Registry.pm
18:02 jonathan current instr.: 'parrot;ModParrot;HLL;perl6;handler' pc 233 (EVAL_16:97)
18:02 jonathan Not in require
18:03 jhorwitz you can set ParrotTrace to 1 in httpd.conf and get a trace
18:03 jhorwitz it'll be in the error log, and potentially very verbose....
18:04 jhorwitz something tells me PERL6LIB just isn't being set.
18:04 jhorwitz cuz everything else is right...
18:07 jonathan 12792 new P4, "Env"                    P4=PMCNULL
18:07 jonathan 12795 set S2, P4["PERL6LIB"]           S2="(null)" P4=Env=PMC(0x92104e8)
18:07 jonathan 12799 set_args PC214 (2), S2, P3       PC214=FixedIntegerArray=PMC(0x910c514) S2="/home/default/jnthn." P3=Object(Str)=PMC(0xb7acbd24)
18:07 jonathan Is that S2 value the trace output truncating the string?
18:11 jhorwitz sorry, was afk for a few.
18:11 jhorwitz yes, trace output will truncate
18:12 jonathan OK
18:12 jonathan So it's getting something from Evn.
18:13 jonathan But it later, stat returns 0.
18:13 jhorwitz what are the args to !find_file_in_path?
18:14 jhorwitz or is that it above?
18:15 jonathan Yeah
18:15 jonathan The first is the value of the environment variable, though shown truncated
18:15 jhorwitz how insanely odd
18:15 jonathan And the other one is ModPerl6/Registry.pm
18:16 jhorwitz can you paste the trace of !find_file_in_path?
18:18 jonathan jhorwitz: Hmm. If I su to another (non-priv'd) user and do ls of the patch to Registry.pm, I get permission defined.
18:18 jonathan Presumably, stat gets the same.
18:18 jonathan (under user nobody)
18:19 jhorwitz ah, maybe the perms aren't *all* world-readable
18:19 jhorwitz what are the perms on /home/default/jnthn.net
18:19 jhorwitz ?
18:20 jonathan drwxrws--- 15 jnthn        default 4096 Aug  3 16:38 jnthn.net
18:22 jhorwitz that's it
18:22 jhorwitz chmod o+x jnthn.net
18:23 jhorwitz that'll allow apache to pass through, without being able to list anything
18:24 jonathan Ah, progress
18:24 jonathan Now:
18:24 jonathan Could not find non-existent sub th
18:24 jonathan current instr.: 'parrot;ModParrot;HLL;perl6;handler' pc 233 (EVAL_16:97)
18:25 jhorwitz what URL are you requesting?
18:25 jonathan http://www.jnthn.net/mod_parrot/perl6-bin/counter
18:26 jhorwitz "Could not find non-existent sub th" is the full error message?
18:28 jonathan Could not find non-existent sub th
18:28 jonathan current instr.: 'parrot;ModParrot;HLL;perl6;handler' pc 233 (EVAL_16:97)
18:28 jhorwitz that's really strange
18:29 Ron joined #parrot
18:29 jhorwitz mod_parrot should print a full backtrace on those errors.  something for another time....
18:30 jhorwitz jonathan: is Registry.pm world-readable?
18:33 jonathan jhorwitz: Yup.
18:33 jhorwitz are you still tracing?
18:33 jonathan No - had to turn it off.
18:33 jhorwitz can you try it again with tracing on?
18:34 jonathan Becasue output was huge
18:34 jonathan Can try
18:34 dalek r29970 | pmichaud++ | trunk:
18:34 dalek : [rakudo]: Fix 0 argument to substr (RT #57434)
18:34 dalek : * Also refactor substr into builtins/any-str.pir
18:34 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29970
18:34 jhorwitz want to see where the exception is first being thrown.
18:35 jonathan trying
18:39 paco joined #parrot
18:42 jonathan 51 find_sub_not_null P21, "th"      P21=PMCNULL
18:43 jhorwitz weeeeeeeeeird.  can you see where the "th" is coming from?
18:44 nopaste "jonathan" at 85.216.151.226 pasted "jhorwitz - last 100 lines of trace" (101 lines) at http://nopaste.snit.ch/13739
18:44 jonathan Well, it's a string constant here, that's the odd thing.
18:46 jhorwitz OH OH OH
18:47 jhorwitz ModPerl6::Registry sanitizes the script path for use as a namespace
18:47 jhorwitz your path has a dot in it, and i'm not checking for that
18:47 jonathan Oh
18:47 jonathan Which patch needs changing?
18:48 jonathan *path
18:48 jhorwitz edit ModPerl/Registry.pm
18:48 jhorwitz *ModPerl6
18:48 jhorwitz you'll see the substitution kludge in gen_module_name
18:50 jonathan aha
18:51 jhorwitz progress?
18:51 purl progress is overrated because it means that you'll have to start the next thing soon
18:51 jhorwitz indeed
18:53 jonathan Added
18:53 jonathan +    @pieces = split('.', $name);
18:53 jonathan +    $name = join('_', @pieces);
18:53 jonathan Doesn't seem to have made a difference...
18:53 jhorwitz really.
18:53 * jhorwitz thinks there's something really stupidly simple wrong here.
18:54 jonathan I don't have to copy the changed file anywhere, right?
18:54 jonathan I did restart (stop then start) Apache...
18:54 jhorwitz right, no copying, as long as it's in your PERL6LIB
18:55 ambs purl, forget progress
18:55 purl ambs: I forgot progress
18:55 jonathan Yup.
19:01 jhorwitz jonathan: can you just try a regular response handler?
19:02 jhorwitz like the one in eg/perl6/ModPerl6/Counter.pm
19:02 jhorwitz *eg/perl6/lib/ModPerl6/Counter.pm
19:07 * jhorwitz has to do some yard work.
19:07 jhorwitz afk &
19:10 jonathan jhorwitz: sorry, was just preparing dinner..
19:11 jhorwitz np.  perfect timing actually.   i'll be back in 30 mins or so.
19:13 contingencyplan joined #parrot
19:16 jonathan jhorwitz: Got the Counter one working!
19:45 jonathan jhorwitz: And with KeepAlive now too... http://www.jnthn.net:8080/perl6/counter
19:45 jonathan So looks like probably is in the Registry.
19:46 dalek r29971 | fperrad++ | opengl4lua:
19:46 dalek : [Lua] OpenGL, more tests
19:46 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29971
19:47 dalek r29972 | fperrad++ | opengl4lua:
19:47 dalek : [Lua] start binding in Lua (only GL)
19:47 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29972
19:49 jhorwitz jonathan++ :)
19:51 jonathan jhorwitz: If I can write classes and stuff inside one of these handlers (fingers crossed!), then this may let me do what I want.
19:51 jhorwitz what do you want to do?
19:52 jonathan Write a simple web-frontend to the OO code I'm showing off in my YAPC::EU talk.
19:55 jhorwitz yeah, this should work.  :)
19:55 jhorwitz i still wonder what's different about your system that registry bombs out.
19:55 jonathan I'm not sure
19:55 ambs joined #parrot
19:55 jonathan It may be the . in the path, but patching for that didn't seem to help.
19:57 dalek r29973 | fperrad++ | opengl4lua:
19:57 dalek : [Lua] move helper functions
19:57 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29973
20:33 jonathan jhorwitz: Thanks for help on mod_parrot - I will let you know, how I get on with it.
20:36 jhorwitz np, glad it works
20:49 jonathan rakudo: enum Purpose <BusinessTrip Vacation>; say BusinessTrip; say Vacation;
20:49 polyglotbot OUTPUT[0␤1␤]
20:53 tetragon joined #parrot
20:55 dalek r29974 | chromatic++ | gsoc_pdd09:
20:55 dalek : [t] Added a file missing from a previous merge.  Now the MANIFEST check doesn't
20:55 dalek : end Configure prematurely.
20:55 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29974
20:56 jonathan Strawberry fruit juice. It's SO good.
20:57 Limbic_Region joined #parrot
20:59 kid51 joined #parrot
21:19 MeGaMiC joined #parrot
22:02 teknomunk joined #parrot
22:09 Tene rakudo: say 'infinoid++ # getting automatic rebuild working on feather3'
22:09 polyglotbot OUTPUT[infinoid++ # getting automatic rebuild working on feather3␤]
22:38 Theory joined #parrot
22:59 teknomunk_ joined #parrot
22:59 kid51 joined #parrot
23:14 dalek r29975 | jkeenan++ | trunk:
23:14 dalek : Reposition one inline comment; add another.
23:14 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29975
23:16 dalek r29976 | jkeenan++ | scriptconfigure:
23:16 dalek : Creating scriptconfigure in https://svn.perl.org/parrot/branches
23:16 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29976
23:16 dalek r29977 | jkeenan++ | scriptconfigure-29975:
23:16 dalek : Tagging trunk at r29975 so that the scriptconfigure can later be synched to it.
23:16 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29977

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

Parrot | source cross referenced