Groups | Search | Server Info | Login | Register


Groups > perl.perl5.changes > #34411

[Perl/perl5] 21b46a: bump B.pm version to 1.92

Newsgroups perl.perl5.changes
Path csiph.com!fu-berlin.de!bofh.it!nntp.perl.org
Xref csiph.com perl.perl5.changes:34411
Return-Path <noreply@github.com>
Mailing-List contact perl5-changes-help@perl.org; run by ezmlm
Delivered-To mailing list perl5-changes@perl.org
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=perl.org; h=date :from:to:message-id:subject:mime-version:content-type :content-transfer-encoding:list-unsubscribe:reply-to; s=dr1; bh= fIborY2Sddnw+oJzHMx16L4XvM0ic7KXFmDn5iElZMk=; b=p2OqzC3jp4T/2HEW 2rEYSz/eBX6UbZENIk43IPFn3gKKidgC8TSCLVYztPlENkNBZL11NJ+sMc89BJQd /Druqlb7v+VbF+kCsYk36fr+YdIVQ73ADgL2st685TwIuZD2DIpVQQD+PzvOtITL pRFR6tdQgn5Embw5HmTcxyB0QcKu0+mk9mArS9mwp1vufATqoRWXzibPwIWOurTO OXSdk4YWL9NDTQs5eFwL/MoURDAA1QF1lBq11q6/b3lPeb8syDXZDLGsUGr3e2PZ /1EkULs6JUk00j3Gwx8AMgF8CVepehsUccNwM+UikSLgB21VtRQ1UchnAZuqdAth phvbKw==
Received (qmail 17156 invoked from network); 27 Feb 2026 11:13:17 -0000
Received from xx1.develooper.com (147.75.38.233) by x6.develooper.com with SMTP; 27 Feb 2026 11:13:17 -0000
Received from inbound-egress-11.mailchannels.net (inbound-egress-11.mailchannels.net [23.83.208.2]) by xx1.develooper.com (Postfix) with ESMTP id 9C1297C1A2 for <perl5-changes@perl.org>; Fri, 27 Feb 2026 03:13:17 -0800 (PST)
ARC-Seal i=1; a=rsa-sha256; d=mailchannels.net; s=arc-2022; cv=none; t=1772190796; b=xc7fVNG/y5Vtsb6nNm+vtevTJo6Oe1L2Wy58ExPJQJ0fnsdTlcKzE7xpAX7GFQAwS5wrk0 UPwiqhDsgVZxHKupQfffZnALP1qQFGbkbqm0Hu1PEFIAnhIGlFdtTt0cjYL92wZGF8gsEr 5qgfYbXORL0oWzL6VHBvui/6FGufpNZOAJ1p5uXOiopzNrseNGtt1T/RILbok+23o8Oe1w AfImfNMoUR2sHV/xusqVH2/i8bw745VPnqPXbBJTKx6hCPHs93qCaaPhSIeHbsXywgt35K TwWuSCUH3rrTI5cB9QCpc/L9WAMDUipTiLP8wxeLSkXWgOHcOv4i52r7WGkVag==
ARC-Message-Signature i=1; a=rsa-sha256; c=relaxed/relaxed; d=mailchannels.net; s=arc-2022; t=1772190796; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding:list-unsubscribe: dkim-signature; bh=fIborY2Sddnw+oJzHMx16L4XvM0ic7KXFmDn5iElZMk=; b=DDinRpvKIRzipuVp/B0xsJV2Z9LsyhC15OWWfebRRf24IxLCXLzOTWeOA2rBzXQZWGdrTA zMTMcrF+TQwK1Wws0upTk4VTaU8jF97IOM9aZCIxrvQ0Lo8f1pxQnfx1xuzSdBcn6pJjnp xX9LBKO7deFm7HrEKwSsnloG5Jy0f2t4Dpy78grxOwco0IM4IFtNGYQDMmvzFJIJyqi/a5 6vdLFtwMAZRNUc7q6DjxMfHyCRspVIUUcXFb9qDjX3/P3Qh7Wf5GE8FGDZlAYPNmN4uatN QeMLVmK0uckwyVaqz529pLyzWlCOzoeiFZvgRwEUe0PkU0n+3jymS8aZsTwn2g==
ARC-Authentication-Results i=1; inbound-rspamd-59f67b687b-gpfk9; none
X-Message-ID x4sXXksrm333PolZgxJ3dGFQ
Received from out-19.smtp.github.com (out-19.smtp.github.com [192.30.252.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384) by 100.99.99.127 (trex/7.1.3); Fri, 27 Feb 2026 11:13:16 +0000
Authentication-Results inbound.mailchannels.net; spf=pass smtp.mailfrom=noreply@github.com; dkim=pass header.d=github.com; dmarc=pass (policy=reject; pct=100; status=pass); arc=none
Received-SPF pass (dmarc-service-78968d7585-jhf4h: domain of github.com designates 192.30.252.202 as permitted sender) client-ip=192.30.252.202; envelope-from=noreply@github.com; helo=out-19.smtp.github.com;
Received from github.com (hubbernetes-node-cb288ef.va3-iad.github.net [10.51.98.14]) by smtp.github.com (Postfix) with ESMTPA id 22AB9E0333 for <perl5-changes@perl.org>; Fri, 27 Feb 2026 03:13:15 -0800 (PST)
Date Fri, 27 Feb 2026 03:13:15 -0800
To perl5-changes@perl.org
Message-ID <Perl/perl5/push/refs/heads/blead/ff4e15-5a884d@github.com> (permalink)
Subject [Perl/perl5] 21b46a: bump B.pm version to 1.92
Mime-Version 1.0
Content-Type text/plain; charset=UTF-8
Content-Transfer-Encoding 7bit
X-GitHub-Recipient-Address perl5-changes@perl.org
X-Auto-Response-Suppress All
Original-From David Mitchell <noreply@github.com>
Reply-To David Mitchell <noreply@github.com>,
Approved news@nntp.perl.org
From perl5-changes@perl.org (David Mitchell via perl5-changes)

Show key headers only | View raw


  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 21b46a7e11c4619da7bed49ea611c4f20a43448c
      https://github.com/Perl/perl5/commit/21b46a7e11c4619da7bed49ea611c4f20a43448c
  Author: David Mitchell <davem@iabyn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M ext/B/B.pm

  Log Message:
  -----------
  bump B.pm version to 1.92


  Commit: c8282019f273d4a086a051a1001a3eee925a5f89
      https://github.com/Perl/perl5/commit/c8282019f273d4a086a051a1001a3eee925a5f89
  Author: David Mitchell <davem@iabyn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M ext/B/B.xs

  Log Message:
  -----------
  B.xs: avoid setting ST(0) in void XSUBs

Update some XSUBs in this distro's XS to avoid an old anti-pattern.

In detail: a historical quirk of XS, which was fixed in 1996, allowed code
to be written along the lines of:

    void
    foo(...)
      CODE:
        ...
        ST(0) = ...;

This is wrong, because the code is declared as returning nothing, but
still puts something on the stack.

ExtUtils::ParseXS has some hacky logic to work around this coding style.
Normally it would emit 'XSRETURN_EMPTY' for a void XSUB, but if it sees
text like 'ST(n) = ' in the body of a void XSUB, it emits 'XSRETURN(1)'
instead.

The docs were fixed in 1996, but this anti-pattern continues to reproduce.
This commit is part of an branch which eliminates this code style within
the parts of bleadperl under p5p's control.


  Commit: b8f5896090d8ebb9c97c54864f08eff981b282c5
      https://github.com/Perl/perl5/commit/b8f5896090d8ebb9c97c54864f08eff981b282c5
  Author: David Mitchell <davem@iabyn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M dist/IO/IO.pm
    M dist/IO/lib/IO/Dir.pm
    M dist/IO/lib/IO/File.pm
    M dist/IO/lib/IO/Handle.pm
    M dist/IO/lib/IO/Pipe.pm
    M dist/IO/lib/IO/Seekable.pm
    M dist/IO/lib/IO/Select.pm
    M dist/IO/lib/IO/Socket.pm
    M dist/IO/lib/IO/Socket/INET.pm
    M dist/IO/lib/IO/Socket/UNIX.pm

  Log Message:
  -----------
  bump IO::* version to 1.56


  Commit: 03d9903dcd70dc10a21c0fa56a17780d533e0224
      https://github.com/Perl/perl5/commit/03d9903dcd70dc10a21c0fa56a17780d533e0224
  Author: David Mitchell <davem@iabyn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M dist/IO/IO.xs

  Log Message:
  -----------
  IO.xs: avoid setting ST(0) in void XSUBs

Update some XSUBs in this distro's XS to avoid an old anti-pattern.

In detail: a historical quirk of XS, which was fixed in 1996, allowed code
to be written along the lines of:

    void
    foo(...)
      CODE:
        ...
        ST(0) = ...;

This is wrong, because the code is declared as returning nothing, but
still puts something on the stack.

ExtUtils::ParseXS has some hacky logic to work around this coding style.
Normally it would emit 'XSRETURN_EMPTY' for a void XSUB, but if it sees
text like 'ST(n) = ' in the body of a void XSUB, it emits 'XSRETURN(1)'
instead.

The docs were fixed in 1996, but this anti-pattern continues to reproduce.
This commit is part of an branch which eliminates this code style within
the parts of bleadperl under p5p's control.


  Commit: ca20dc3f3766c93438c900a4dd95f407e672fd20
      https://github.com/Perl/perl5/commit/ca20dc3f3766c93438c900a4dd95f407e672fd20
  Author: David Mitchell <davem@iabyn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M ext/Opcode/Opcode.pm

  Log Message:
  -----------
  bump Opcode.pm version to 1.71


  Commit: d987c7395f4c19fa72a72679d2aa474620787b2f
      https://github.com/Perl/perl5/commit/d987c7395f4c19fa72a72679d2aa474620787b2f
  Author: David Mitchell <davem@iabyn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M ext/Opcode/Opcode.xs

  Log Message:
  -----------
  Opcode.xs: avoid setting ST(0) in void XSUBs

Update some XSUBs in this distro's XS to avoid an old anti-pattern.

In detail: a historical quirk of XS, which was fixed in 1996, allowed code
to be written along the lines of:

    void
    foo(...)
      CODE:
        ...
        ST(0) = ...;

This is wrong, because the code is declared as returning nothing, but
still puts something on the stack.

ExtUtils::ParseXS has some hacky logic to work around this coding style.
Normally it would emit 'XSRETURN_EMPTY' for a void XSUB, but if it sees
text like 'ST(n) = ' in the body of a void XSUB, it emits 'XSRETURN(1)'
instead.

The docs were fixed in 1996, but this anti-pattern continues to reproduce.
This commit is part of an branch which eliminates this code style within
the parts of bleadperl under p5p's control.


  Commit: 0376c15bc6a6c61144d10983150fc1394747ecf8
      https://github.com/Perl/perl5/commit/0376c15bc6a6c61144d10983150fc1394747ecf8
  Author: David Mitchell <davem@iabyn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M ext/POSIX/lib/POSIX.pm

  Log Message:
  -----------
  POSIX: bump version to 2.26


  Commit: 25f40b3ff13fd9e6262e18c4a9b685ecc82fa46f
      https://github.com/Perl/perl5/commit/25f40b3ff13fd9e6262e18c4a9b685ecc82fa46f
  Author: David Mitchell <davem@iabyn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M ext/POSIX/POSIX.xs

  Log Message:
  -----------
  POSIX.xs: avoid setting ST(0) in void XSUBs

Update some XSUBs in this distro's XS to avoid an old anti-pattern.

In detail: a historical quirk of XS, which was fixed in 1996, allowed code
to be written along the lines of:

    void
    foo(...)
      CODE:
        ...
        ST(0) = ...;

This is wrong, because the code is declared as returning nothing, but
still puts something on the stack.

ExtUtils::ParseXS has some hacky logic to work around this coding style.
Normally it would emit 'XSRETURN_EMPTY' for a void XSUB, but if it sees
text like 'ST(n) = ' in the body of a void XSUB, it emits 'XSRETURN(1)'
instead.

The docs were fixed in 1996, but this anti-pattern continues to reproduce.
This commit is part of an branch which eliminates this code style within
the parts of bleadperl under p5p's control.


  Commit: 05fff3d0cc10fb247ed41095312ded33d1805990
      https://github.com/Perl/perl5/commit/05fff3d0cc10fb247ed41095312ded33d1805990
  Author: David Mitchell <davem@iabyn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M dist/Storable/lib/Storable.pm

  Log Message:
  -----------
  Storable: bump version to 3.40


  Commit: bbf4b5b4661f7f077148f7bcf0315e5e643fcbaf
      https://github.com/Perl/perl5/commit/bbf4b5b4661f7f077148f7bcf0315e5e643fcbaf
  Author: David Mitchell <davem@iabyn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M dist/Storable/Storable.xs

  Log Message:
  -----------
  Storable.xs: avoid setting ST(0) in void XSUBs

Update some XSUBs in this distro's XS to avoid an old anti-pattern.

In detail: a historical quirk of XS, which was fixed in 1996, allowed code
to be written along the lines of:

    void
    foo(...)
      CODE:
        ...
        ST(0) = ...;

This is wrong, because the code is declared as returning nothing, but
still puts something on the stack.

ExtUtils::ParseXS has some hacky logic to work around this coding style.
Normally it would emit 'XSRETURN_EMPTY' for a void XSUB, but if it sees
text like 'ST(n) = ' in the body of a void XSUB, it emits 'XSRETURN(1)'
instead.

The docs were fixed in 1996, but this anti-pattern continues to reproduce.
This commit is part of an branch which eliminates this code style within
the parts of bleadperl under p5p's control.


  Commit: 801c6d332e19d508f5c396ec1e5c3739c27b405d
      https://github.com/Perl/perl5/commit/801c6d332e19d508f5c396ec1e5c3739c27b405d
  Author: David Mitchell <davem@iabyn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M dist/threads/lib/threads.pm

  Log Message:
  -----------
  threads: bump version to 2.45


  Commit: 5aa665484ca2892c74c6cf0f2cad99acbecd38d3
      https://github.com/Perl/perl5/commit/5aa665484ca2892c74c6cf0f2cad99acbecd38d3
  Author: David Mitchell <davem@iabyn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M dist/threads/threads.xs

  Log Message:
  -----------
  threads.xs: avoid setting ST(0) in void XSUBs

Update some XSUBs in this distro's XS to avoid an old anti-pattern.

In detail: a historical quirk of XS, which was fixed in 1996, allowed code
to be written along the lines of:

    void
    foo(...)
      CODE:
        ...
        ST(0) = ...;

This is wrong, because the code is declared as returning nothing, but
still puts something on the stack.

ExtUtils::ParseXS has some hacky logic to work around this coding style.
Normally it would emit 'XSRETURN_EMPTY' for a void XSUB, but if it sees
text like 'ST(n) = ' in the body of a void XSUB, it emits 'XSRETURN(1)'
instead.

The docs were fixed in 1996, but this anti-pattern continues to reproduce.
This commit is part of an branch which eliminates this code style within
the parts of bleadperl under p5p's control.


  Commit: badb56ac90d2e69b62c7f7120d2a5c0cda5e56a8
      https://github.com/Perl/perl5/commit/badb56ac90d2e69b62c7f7120d2a5c0cda5e56a8
  Author: David Mitchell <davem@iabyn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M dist/threads-shared/lib/threads/shared.pm

  Log Message:
  -----------
  threads::shared: bump version to 1.73


  Commit: 3b4508d3012c936ac677c92040c1cb50f6ddea8c
      https://github.com/Perl/perl5/commit/3b4508d3012c936ac677c92040c1cb50f6ddea8c
  Author: David Mitchell <davem@iabyn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M dist/threads-shared/shared.xs

  Log Message:
  -----------
  threads::shared: avoid setting ST(0) in void XSUBs

Update some XSUBs in this distro's XS to avoid an old anti-pattern.

In detail: a historical quirk of XS, which was fixed in 1996, allowed code
to be written along the lines of:

    void
    foo(...)
      CODE:
        ...
        ST(0) = ...;

This is wrong, because the code is declared as returning nothing, but
still puts something on the stack.

ExtUtils::ParseXS has some hacky logic to work around this coding style.
Normally it would emit 'XSRETURN_EMPTY' for a void XSUB, but if it sees
text like 'ST(n) = ' in the body of a void XSUB, it emits 'XSRETURN(1)'
instead.

The docs were fixed in 1996, but this anti-pattern continues to reproduce.
This commit is part of an branch which eliminates this code style within
the parts of bleadperl under p5p's control.


  Commit: 0d7078e0315cb6c1087a05de7d418e0092352781
      https://github.com/Perl/perl5/commit/0d7078e0315cb6c1087a05de7d418e0092352781
  Author: David Mitchell <davem@iabyn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M ext/XS-APItest/APItest.pm

  Log Message:
  -----------
  XS::APItest: bump version to 1.50


  Commit: e1641793d1a6764bdcea5a32192a98f52053b535
      https://github.com/Perl/perl5/commit/e1641793d1a6764bdcea5a32192a98f52053b535
  Author: David Mitchell <davem@iabyn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M ext/XS-APItest/APItest.xs

  Log Message:
  -----------
  XS::APItest: avoid setting ST(0) in void XSUBs

Update some XSUBs in this distro's XS to avoid an old anti-pattern.

In detail: a historical quirk of XS, which was fixed in 1996, allowed code
to be written along the lines of:

    void
    foo(...)
      CODE:
        ...
        ST(0) = ...;

This is wrong, because the code is declared as returning nothing, but
still puts something on the stack.

ExtUtils::ParseXS has some hacky logic to work around this coding style.
Normally it would emit 'XSRETURN_EMPTY' for a void XSUB, but if it sees
text like 'ST(n) = ' in the body of a void XSUB, it emits 'XSRETURN(1)'
instead.

The docs were fixed in 1996, but this anti-pattern continues to reproduce.
This commit is part of an branch which eliminates this code style within
the parts of bleadperl under p5p's control.


  Commit: 5a884dc576328766b16e235aa6a9752ca40cdecb
      https://github.com/Perl/perl5/commit/5a884dc576328766b16e235aa6a9752ca40cdecb
  Author: David Mitchell <davem@iabyn.com>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M dist/IO/IO.pm
    M dist/IO/IO.xs
    M dist/IO/lib/IO/Dir.pm
    M dist/IO/lib/IO/File.pm
    M dist/IO/lib/IO/Handle.pm
    M dist/IO/lib/IO/Pipe.pm
    M dist/IO/lib/IO/Seekable.pm
    M dist/IO/lib/IO/Select.pm
    M dist/IO/lib/IO/Socket.pm
    M dist/IO/lib/IO/Socket/INET.pm
    M dist/IO/lib/IO/Socket/UNIX.pm
    M dist/Storable/Storable.xs
    M dist/Storable/lib/Storable.pm
    M dist/threads-shared/lib/threads/shared.pm
    M dist/threads-shared/shared.xs
    M dist/threads/lib/threads.pm
    M dist/threads/threads.xs
    M ext/B/B.pm
    M ext/B/B.xs
    M ext/Opcode/Opcode.pm
    M ext/Opcode/Opcode.xs
    M ext/POSIX/POSIX.xs
    M ext/POSIX/lib/POSIX.pm
    M ext/XS-APItest/APItest.pm
    M ext/XS-APItest/APItest.xs

  Log Message:
  -----------
  [MERGE] make core XS not rely on void XSUB hack

This branch modifies XS code under p5p control to remove any reliance on
the 1996-era ParseXS hack that special-cases void XSUBs which assign to
ST(0).

In detail: a historical quirk of XS, which was fixed in 1996, allowed code
to be written along the lines of:

    void
    foo(...)
      CODE:
        ...
        ST(0) = ...;

This is wrong, because the code is declared as returning nothing, but
still puts something on the stack.

ExtUtils::ParseXS has some hacky logic to work around this coding style.
Normally it would emit 'XSRETURN_EMPTY' for a void XSUB, but if it sees
text like 'ST(n) = ' in the body of a void XSUB, it emits 'XSRETURN(1)'
instead.

These commits make the XSUBs avoid replying on this hack.

A general pattern within these commits is that when changing the XSUB's
return type from void to SV*, account has to taken that the typemap for
SV* mortalises the return value. Thus a lot of these commits remove an
explicit sv_2mortal() call or similar.


Compare: https://github.com/Perl/perl5/compare/ff4e1580450c...5a884dc57632

To unsubscribe from these emails, change your notification settings at https://github.com/Perl/perl5/settings/notifications

Back to perl.perl5.changes | Previous | Next | Find similar


Thread

[Perl/perl5] 21b46a: bump B.pm version to 1.92 perl5-changes@perl.org (David Mitchell via perl5-changes) - 2026-02-27 03:13 -0800

csiph-web