Maintaining Perl 5 Core (Dave Mitchell): January - February 2024
Tue, 05-Mar-2024 by
alh
edit post
Dave writes:
(this report covers two months)
This is my monthly report on work done during Jan,Feb 2024 covered by my
TPF perl core maintenance grant.
I spent the last two months mainly on two goals.
1) Understanding XS better so that I can then decide how to update the XS
ecosystem to better support a reference-counted stack; as an example,
automatically removing the need to call XSUBs via a wrapper in some
circumstances.
Doing this led me down a rabbit hole of realising how awful our current XS
documentation is. Just about every section I read resulted in confusion,
followed by time out to experiment and/or to look at the ParseXS src code
to try to understand what the documentation was trying to tell me. It's
also very out of date: telling us of exciting "new" features introduced 25
years ago.
The net result of this is that I now have about 1000 lines of notes on
"things to fix in the XS docs". I intend sometime soon to completely
revamp perlxs.pod and perlxstut.pod, based on these notes. Which is a bit
of sidetrack from getting XS working better under PERL_RC_STACK builds.
And doing PERL_RC_STACK was itself initially a sidetrack from doing more
work on perl signatures. Such is often the way when working on perl.
2) General small tasks to help get blead into shape for the 5.40 release,
such as analysing and reducing smoke failures, fixing bugs, and fixing any
Deparse regressions that have crept in over the last year.
SUMMARY:
* 0:38 #21822: BBC: Blead Breaks Variable::Magic
* 1:20 #21876: BBC: 5.39.7 breaks GONZUS/Cache-utLRU-0.002000.tar.gz
* 3:21 #21969: clone-with-stack.t crash
* 2:17 fix Test -deparse failures
* 1:35 fix minitest failures
* 3:39 make `__LINE__` etc Deparse batter
* 1:57 make stack reference counted
* 30:30 make stack reference counted - XS
* 19:46 process p5p mailbox
* 1:28 reduce build stderr noise
* 8:33 reduce smoke failures
TOTAL:
* 75:04 (HH::MM)
Comments (0)