August 2014 Archives

Randy Stauner writes:

Thanks to the sponsorship of the Perl Foundation, this summer I had the pleasure of mentoring Pattawan Kaewduangdee from Thailand as a MetaCPAN contributor through the GNOME Foundation's Free and Open Source Program for Women.

Pattawan was a great help to MetaCPAN and the Perl community. She's bright and ambitious and accomplished a lot during her internship. Her schedule adapted over the summer and she kept up with it well.

I was assisted by Thomas Sibley and Olaf Alders. Thomas shared his OpenID experience to help direct one of Pattawan's longer and more difficult pull requests and was available on IRC to answer questions. Olaf was busy mentoring a student with Google Summer of Code but made time to review and discuss issues and do video chat Hangouts with us. I'm grateful to them both for the support.

Overall Pattawan submitted 27 pull requests, several of which were quite long and involved. Noteworthy changes include implementing OpenID login, upgrading the website to Bootstrap 3, adding activity to news feeds and making them more visible, helping us improve the development virtual machine for future contributors, and implementing several features and bug fixes that had plagued our users for years :-). At the end of the program a few of the pull requests have not yet been merged, but they are nearly complete and will be merged soon.

Pattawan was very receptive and I saw her learn and grow over the summer. I'm pleased to see the ways that she engaged with the community: on IRC, by commenting on lots of github issues (several that were not her own), and arranging to go to YAPC::Asia. It seemed to me that Pattawan's involvement inspired more people to get involved as the number of pull requests from others increased. One couldn't ask for more than that.

She also helped me to learn and grow as a contributor and a mentor and I'm grateful to her for that. I believe she will continue to be an open source contributor, both with MetaCPAN and other projects.

Many thanks to the GNOME Foundation, the Perl Foundation, and all involved with OPW.

New Grant Manager


We are pleased to announce that Mark Jensen has joined the Grants Committee as a Grant Manager.

Mark has been a core developer on the BioPerl project since 2009, and is the author of the Neo4j graph database Perl driver, REST::Neo4p. He currently manages the Data Coordinating Center team of The Cancer Genome Atlas.

Please join me in extending a warm welcome to Mark.

Dave Mitchell writes:

I spent July mainly processing my p5p mailbox, and looking at various bugs, especially ones which appear that they may be 5.20.0 regressions.


2:45 [perl #122148] "Malformed UTF-8 character
1:41 [perl #122184] Bad STORE call for tied hash
0:13 [perl #122283] Possible regexp memory explosion in 5.20.0
1:28 [perl #122322] OOK hack example in perlguts is outdated with COW
0:25 [perl #122331] Pathological performance of a pattern match
0:30 cpan/Time-HiRes/t/itimer.t persistently fails with clang
2:24 deprecate /\C/
3:52 finish off making last op_sibling point to parent
0:47 fix smoke issues
19:06 process p5p mailbox

33:11 Total (HH::MM)

As of 2014/07/31: since the beginning of the grant:

41.6 weeks
561.2 total hours
13.5 average hours per week

There are 239 hours left on the grant

The organizers of The Pittsburgh Perl Workshop have announced the tentative dates of November 8 and 9, 2014 for this year's PPW. The event is conditional on having 30 signups by September 1st. They have established a Tilt campaign to determine if there is sufficient community interest to host the event.

Tony Cook writes:

Approximately 67 tickets were reviewed or otherwise worked on, and 11 patches were applied.

I spent some more time on [perl #81074] this month, finding a bug in pthreads on NetBSD. Thread specific storage should be initialized to NULL, but under some circumstances this doesn't happen on NetBSD, including NetBSD 6.1.3. This is apparently fixed in NetBSD current.

I produced a candidate patch for this ticket, LeonT asked me to hold off on applying it until he'd commented on it.

rjbs asked me to work on rebasing and adapting Father Chrysostomos' sprout/smartpatch branch, the results can be found in tonyc/smartmatch.

I have 32.19 hours remaining of my grant.

Tony Cook writes:

Approximately 63 tickets were reviewed or worked on, and 10 patches were applied.

Probably the most interesting task this month was attempting to optimize regen/ which became noticably slower when extra EBCDIC code pages were added to the build. Two fairly simple optimizations fell out of the profile from Devel::NYTProf.

get_a2n() and get_I8_2_utf() were each called over 150,000 times, and returned their mappings as a list, while in most cases only a small part of the mapping was used. I changed these return an array reference instead, speeding up significantly.

Paul Johnson writes:

In accordance with the terms of my grant from TPF this is the monthly report for my work on improving Devel::Cover covering May and June 2014.

Actually, it's really only for May. I did some work on Devel::Cover in June, but I am not charging that to the grant, so the month referred to here is May.

This month I released versions 1.14 and 1.15.

Perls 5.20.0 and 5.21.0 were released this month and, thanks in no small part to work by Matthew Horsfall, they are both fully supported by Devel::Cover.

The main body of work this month was the merging of the cpancover branch. I have had up and running for some time now. But it has only been providing coverage for a fairly small subset of the modules on CPAN. Naturally, I tried to pick the most interesting modules, but the coverage of CPAN was minimal.

Since the QA hackathon I have been trying to extend the scope of cpancover to provide coverage for all of CPAN, and not just for the most recent version. In this quest I have been aided and assisted by Neil Bowers, Olaf Alders and others.

The major problem with running Devel::Cover on arbitrary code is an extension of running arbitrary code. Even if the author of the code has no malicious intent and made no coding mistakes, there are surely bugs in Devel::Cover which might cause the coverage run to loop indefinitely or to use up all the memory or cause other problems.

My initial attempts to solve these problems using things like fork and sleep and kill and killpg weren't completely successful. (Those CPAN authors are so crafty!) And, naturally, other people who might be willing to provide machines on which to run cpancover will want some assurances regarding the resource usage.

So I looked into using Docker. Running each coverage run in an individual docker container should allow each instance to be resource constrained and ultimately completely killed if necessary.

Docker is still reasonably immature, but has recently released version 1 which has removed the warning not to use it in production. I had problems with the earlier versions, but each release has made it more solid. The branch containing this work has been fairly successful and is now merger into the git master.

This has been running on and, although I've still not been able to work all the way through CPAN, there's a pretty good start at (Warning, that's quite large now - I need a better solution than showing all modules on a single page.)

Perhaps more importantly, there's a json file available giving basic coverage information about the covered modules. This will eventually be used by Neil Bowers' CPAN dashboard and by MetaCPAN to provide information and create links to a module's cpancover page. It's also available to anyone else who can think of a good use. Suggestions, and code, welcome. The json data is available at

I really want to get this cpancover work to pick up new modules as they are released. I think the only work left is fixing up the occasional problems that show up because of docker, providing a better landing page and navigation, and automating the whole thing.

Other work this month included fixing up some testing failures on *BSD and Windows and providing better support for 5.20 or, more accurately, 5.21 and beyond when will be removed from the core.

As usual, there were also some patches applied, pull requests merged, and other bugs fixed.

From the figures below, you can see that this grant is now very nearly completed. Within the next few weeks I will finish it up and write a closing report. If you or your company has contributed to the Perl 5 Core Maintenance Fund then I would like to offer my sincere thanks for your help in funding this work and trust that you have found it useful. Dan Wright, the Treasurer of The Perl Foundation, has recently written about how the fund is now almost depleted. See

If you would like to see the other grantees being able to continue their work (and there is some excellent work being done) then please consider whether you or, more likely, your company would be in a position to donate to the Core Maintenance Fund.

Closed Github tickets:

89 Allow -coverage default,-pod option to cover

Fixed cpantesters reports:

... and many more ...

You can see the commits at

Hours worked:

02.05 3:40
22.05 2:30
25.05 3:10
26.05 2:00
28.05 2:50
29.05 3:20
31.05 7:30

Total 25:00

Total hours worked on grant: 390:25

We are looking for enthusiastic volunteers who can make contributions to Perl development through the Grants Committee.

Currently we have a couple of openings for Grant Managers.


  • Work with grantees and help grants be delivered successfully.
  • Ensure the grant progress is published to the community every month.
  • Become the communication hub between grantees and the Committee.
  • Join the Committee's discussion to improve the grant program.

Preferred qualifications

  • Medium or large scale software development experience using Perl.
  • Software development project management experience.
  • Commitment to spend several hours per month for the next 12 months or more.

If you are interested and think you have one or more of the above, please contact the Secretary (tpf-grants-secretary at with an explanation of your enthusiasm, background and experience by August 15th. It does not need to be a formal resume.

Those whom are selected will be announced here in the TPF news.

About TPF

The Perl Foundation - supporting the Perl community since 2000. Find out more at

About this Archive

This page is an archive of entries from August 2014 listed from newest to oldest.

July 2014 is the previous archive.

September 2014 is the next archive.

Find recent content on the main index or look in the archives to find all content.


OpenID accepted here Learn more about OpenID
Powered by Movable Type 6.2.2