[[!meta copyright="Copyright © 2011 Free Software Foundation, Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Foster Perl programming"]] [[!template id=note text="""**2011-08**. A dependency loop in Debian GNU/Hurd currently leads to: *Could not perform immediate configuration on 'perl'*. Easy workaround: # apt-get install perl perl-base -o APT::Immediate-Configure=false """]] Resolve issues uncovered by Perl's test suite, and enable Hurd-specific features. There is a [[!FF_project 264]][[!tag bounty]] on this task. # Bugs in perl There is a bug in perl's putenv which makes it interact badly with fakeroot-tcp and fakeroot-sysv (not fakeroot-hurd), this shows up as this *** glibc detected *** /usr/bin/perl: free(): invalid pointer: 0x01026000 *** See http://rt.perl.org/rt3/Ticket/Display.html?id=91452 for details A workaround is to do this before building packages calling perl inside fakeroot: export FAKEROOTUID=0 FAKEROOTEUID=0 FAKEROOTSUID=0 FAKEROOTFUID=0 FAKEROOTGID=0 FAKEROOTEGID=0 FAKEROOTSGID=0 FAKEROOTFGID=0 --- # Part I First, make the language functional, have its test suite pass without errors. ## Original [[community/GSoC]] Task Description [[!inline pages=community/gsoc/project_ideas/perl_python feeds=no]] ## IRC, OFTC, #debian-hurd, 2011-11-08 pinotree: so, with your three fixes applied to 5.14.2, there are still 9 tests failing. They don't seem to be regressions in perl, since they also fail when I build 5.14.0 (even though the buildd managed it). What do you suggest as the way forward? (incidentally I'm trying on strauss's sid chroot to see how that compares) Dom: samuel makes buildds build perl with nocheck (otherwise we'd have no perl at all) which tests still fail? ../cpan/Sys-Syslog/t/syslog.t ../cpan/Time-HiRes/t/HiRes.t ../cpan/autodie/t/recv.t ../dist/IO/t/io_pipe.t ../dist/threads/t/libc.t ../dist/threads/t/stack.t ../ext/Socket/t/socketpair.t io/pipe.t op/sigdispatch.t buildds> I see ah ok, those that are failing for me even with my patches I hadn't spotted that the builds were done with nocheck. (but only sometimes...) Explains a lot syslog is kind of non-working on hurd, and syslog.t succeeds in buildds (as opposted to crash the machine...) because there's no /var/log in chroots libc.t appears to succeed too in buildds * Dom notices how little memory strauss has, and cancels the build, now that he *knows* that running out of memory caused the crahses iirc HiRes.t, io_pipe.t , pipe.t and sigdispatch.t fails because of trobules we have with posix signals socketpair.t is kind of curious, it seems to block on socketpair()... * Dom wonders if a wiki page tracking this would be worthwhile stack.t fails because we cannot set a different size for pthread stacks, yet (similar failing test cases are also in the python test suite) if there are problems which aren't going to get resolved any time soon, it may be worth a few SKIPs conditional on architecture, depending on how serious the issue is then we'd get better visibility of other/new issues (problems which aren't bugs in perl, that is) understandable, yes i think nobody digged much deeper in the failing ones yet, to actually classify them as due to glibc/hurd/mach (eg unlike the pipe behaviour in sysconf.t i reported) ### 2011-11-26 cool, my recvfrom() fix also makes the perl test recv.t pass --- # Part II Next, Hurd-specific features can be added. Add an interface to the language/environment for being able to do [[RPC]] calls, in order to program [[hurd/translator]]s natively in Perl. ## Original [[community/GSoC]] Task Description [[!inline pages=community/gsoc/project_ideas/language_bindings feeds=no]]