Please join me in welcoming John SJ Anderson (genehack) as the newest voting member of The Perl Foundation's Grants Committee. John has helped organize several recent YAPCs, given talks and training at YAPCs, and maintains several modules on CPAN.

Additionally, as Makoto Nozaki is transitioning to the secretary of the TPF Board, he is vacating the position of GC Secretary, and I have been selected to to fill the role.

My apologies for the delays in the transition. Look for a posting shortly about the March call for proposals.

We've been reviewing Perl Foundation committees over the last few months and I'm happy to report some new people have stepped into committee leadership roles.

David Oswald is the new conferences committee chair. This position had gone vacant for a period as TPF Treasurer Dan Wright along with others took a more active role in planning for The Perl Conference. The board is happy to once again have someone in this role to help spread the work and responsibilities.

David was one of the lead organizers of YAPC::NA 2015 in Salt Lake City. He is also on the organizing team for the OpenWest open source conference. We're confident David's experience will help with this year's Perl Conference and with planning going forward.

Will Coleda is the new Secretary of the Grants Committee. Will has been a member of the Grants Committee since 2008, and involved with the Perl 6 community and development for over a decade. Will's selection is a great example of the cycle of involvement for a TPF member, starting as a committee member and then taking on a bigger role over time.

The outgoing secretary, Makoto Nozaki, has held this position since February 2014 and he will continue his work as Perl Foundation board Secretary.

As part of our committee review, I have also been looking into other committees that have recently been less active or inactive. As a result, the Steering Committee is being sunsetted.

The Steering Committee was originally created as a forum to pull in more active community members to carry out TPF business in the earlier years of the foundation when the board was much less active. When Karen Pauley, who was Steering Committee Chair, took over as president, this activity moved to the board. New committees also were created to handle specific areas of activity like conferences, grants, and marketing. With TPF activity moving to these other groups, the Steering Committee has been largely dormant so we're dissolving it. Thanks to all of the members who contributed their time to TPF through this committee.

Another committee we are evaluating is the Community Advocacy Committee. This committee was driven for many years by Ya'akov Sloman and we thank him for all of this efforts. He stepped down last year and the committee has been mostly inactive, so we are considering dissolving it as well. However, the board is open to proposals to revive the committee if community members are available to come forward. The committee charter is available for review and could be revised by new members if desired.

Please join us in congratulating and thanking David and Will as they take on their new roles. You can expect to hear more from them in the near future.

This is a monthly report by Dave Mitchell on his grant under Perl 5 Core Maintenance Fund. We thank the TPF sponsors to make this grant possible.

The main things I did last month were:

Firstly, fixing various issues with scopes in regexes. In particular,
(RT #126697), code blocks sometimes failed to undo localisations when
backtracking. For example the $s below wasn't always being restored when
the B part of the match failed and it backtracked to try another A - where
A represents something complex like (\w+\s+)* which can match in multiple
ways:

    /A(?{ local $s = ...})B/

As part of that work, non-greedy matching of complex sub-expressions with
captures and repeated backtracking was made more efficient under some
circumstances; for example the following now runs about 25% faster:

    $s = ("a" x 1000);
    $s =~ /^(?:(.)(.))*?[XY]/ for 1..10_000;

Secondly, improving 't/TEST -deparse'.

The -deparse option to t/TEST causes it to run all the core's test
scripts, but after running them through the deparser first. Many of these
modified scripts are currently known to fail, and there is an exclusion
file, Porting/deparse-skips.txt, which is supposed to list the known
failures. However, over time, new failures have appeared which are not in
the exclusion list. Last August I did some work on Deparse.pm and managed
to reduce some of the expected and unexpected failures, but since then
more failures have crept in.

My recent work includes: modifying t/TEST so that it distinguishes
between expected failures and unexpected passes, and warning of unknown
files in Porting/deparse-skips.txt; purging Porting/deparse-skips.txt to
account for files that have been renamed or are no longer in the core, and
to reflect the current state of things; and fixing Deparse.pm to:
    * better handle 'BEGIN { use_ok() }';
    * better handle 'BEGIN { require expr }' (as opposed to require Bareword);
    * deparse lexical var attributes, e.g. 'my $foo :bar(baz)';
    * avoid a 'deep recursion' warning;
    * handle an escaped literal tab char in a pattern, e.g
        /.....\ ..../x where the whitespace char following the backslash is
        actually a tab; previously the deparse failed to emit the backslash;
    * handle declarations with multiple lexical vars within a pattern code
      block, e.g. /(?{ my ($x, $y) = @a; })/

Because we're currently in code freeze, this as been pushed as
smoke-me/davem/deparse and will be merged in 5.27.x.

Thirdly, reviewing and fixing tickets in the security queue. There's quite
a lot of tickets in the security queue due to fuzzing, where if the fuzzer
detects a use-after-free or buffer overrun for example, the reporter
submits it to the security queue rather than the normal queue. Once
examined, 95% of the time it will be found to be harmless or
non-exploitable, but until someone has assessed and fixed it, it lingers
as an open security ticket.

The Perl Foundation is excited to announce that Makoto Nozaki, grants chair, has joined TPF board as secretary. He has served as grants chair since 2014 and has done a great job overseeing grants and providing funding for perl projects. In addition to supporting Makoto's TPF work, Two Sigma Investments, LP, Makoto's employer, has also provided donations to TPF for which we are very grateful.

A focus for us this year is bringing new people into TPF at all levels, and adding a new member to the board as a replacement for Karen Pauley is part of that effort. Thank you to Karen for all of her years of service on the board. As part of his role, Makoto will be taking on some projects to help us get the community more involved.

One important project scheduled for this year is to launch an updated and more public process for nominating and appointing new board members. TPF isn't a membership organization, so this doesn't mean we'll have elections. However, we would like to get the community involved in nominations and to have an opportunity to ask questions and interact with prospective board members as part of the evaluation process.

Once we have a new process in place for bringing in new board members, we plan to add more structure around the 2 year terms defined in the TPF bylaws. Currently board members have held their seats until they step down, typically because of time constraints. We would like to revise this process such that at the end of a 2 year term, existing board members will actively seek out another 2 year term if they would like to continue to serve.

These initiatives are at the idea phase right now and there are many details to work out to define the actual processes for both. We look forward to working these out with Makoto's active work over the next year.

This is a monthly report by Tony Cook on his grant under Perl 5 Core Maintenance Fund. We thank the TPF sponsors to make this grant possible.

Approximately 38 tickets were reviewed, and 8 patches were
applied

[Hours]         [Activity]
 13.82          #122490 (sec) more merge conflicts
                #122490 (sec) more merge conflicts, track down warning
                sources
                #122490 (sec) track down warning sources, start merging
                test changes
                #122490 (sec) more test merging, testing, debugging
                #122490 (sec) debugging
                #122490 (sec) debugging
  0.97          #126228 build testing, apply to blead
 16.08          #127663 testing, apply hash seed env suppression patch,
                back to in-place changes
                #127663 work on chdir test, testing, debugging, make
                mg_freeext() API and fix docs
                #127663 cleanup, threads handling, threads test
                #127663 more threads testing, try to make it fail with
                fork
                #127663 more try to make it fail with fork and succeed,
                work on fix, code polish
                #127663 hoist some work back up, testing
                #127663 uncombine thread/fork child handling which I
                combined by accident, work on more tests and find a couple
                of cleanup issues
                #127663 more tests
                #127663 post patch to ticket
  0.22          #128528 (sec) review and comment
  0.88          #128998 track down when it was fixed, ticket management
  0.30          #129012 make public, comment and close
  1.88          #129024 review, make public, check fix backports to 5.24,
                non-trivial backport to 5.22, comment
  1.30          #129125 check, testing, apply to blead
  1.65          #129149 apply patch, test #130557 case, testing, make
                public apply to blead, comment on #130557
  0.08          #129187 check and merge into #129149
  0.95          #129190 rebase with some conflicts, testing, make public,
                apply to blead
  0.17          #129199 make public, comment and close
  2.62          #129274 (sec) try to find an alternative attack
                #129274 more trying to break it, write regression test,
                testing, make public, apply to blead
  2.12          #129292 review code, debugging, make public and comment
  1.77          #129298 review patches, research, consider whether changes
                improve perl
                #129298 more consideration, ask khw
  4.32          #129340 (sec) review code, think about solutions
                #129340 (sec) work on a solution, testing
                #129340 (sec) write a regression test, testing
                #129340 (sec) suggested changes, testing
                #129340 (sec) research, comment with updated patch
  0.50          #129342 (sec) test provided patch, create a test case and
                comment
  0.45          #129377 (sec) review patch, look for similar issues,
                comment
  1.32          #129840 (sec) review, testing
                #129840 get it to test, merge into 129377
  0.40          #129848 review and make public
  1.53          #129861 (sec) debugging
  0.42          #129887 (sec) review and comment
  0.82          #129963 research, make public and link to stack-not-
                refcounted meta ticket
  0.92          #129975 debugging, make public and link to stack-not-
                refcounted meta ticket
  0.28          #130100 make public and point at list discussion on
                removal
  0.73          #130256 debugging, make public and link to stack-not-
                refcounted meta ticket
  1.67          #130262 apply patch with noise, test #130558 case,
                testing, make public, push to blead, comment on #130558
  0.18          #130321 (sec) debugging
  0.68          #130504 review, testing, apply to blead
  0.43          #130560 comment
  0.90          #130567 reproduce, suspect 94749a5ed was bad, ask khw on
                #p5p
                #130567 irc discussion
  1.35          #130569 (sec) comment
  2.85          #130578 debugging
                #130578 debugging, comment
  0.58          #130591 review discussion and comment
  0.33          #130614 research and comment
  1.57          #130635 review changes, check memory use, testing, comment
                #130635 comment
  1.55          #130675 debugging, #p5p discussion
                #130675 debugging, #p5p comment, ticket comment on #130679
  0.42          comment on deprecations thread
======
 69.01 hours total

About TPF

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

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

Pages

Recent Comments

  • Tom Browder: +1 And I second Moritz's comments. read more
  • PaweĊ‚ Murias: +1 read more
  • Christopher Bottoms: +1 Ditto what Moritz said. read more
  • Aleks-Daniel Jakimenko-Aleksejev: Awesome! +1 of course! read more
  • Karl Williamson: Perl Weekly today was the first I've heard about this read more
  • Tushar Dave: +1 read more
  • Moritz Lenz: +1 Zoffix has been a very prolific contributor, and is read more
  • Naoum Hankache: +1 read more
  • Jonathan Worthington: Gets my vote. I/O, both in test coverage and implementation, read more
  • MasterDuke: +1 Now I guess I have to follow through on read more
OpenID accepted here Learn more about OpenID
Powered by Movable Type 6.2.2