BSD Ports

devel/p5-Lexical-SealRequireHints 0.012 FreeBSD

Perl module to prevent leakage of lexical hints

System
FreeBSD
Repository
FreeBSD ports
Maintainer
[email protected]
License
ART10, GPLv1+
Categories
devel, perl5
Package size
15.1 KiB, 31.8 KiB installed

Description

Perl module to prevent leakage of lexical hints

Lexical::SealRequireHints works around two historical bugs in Perl's handling of the %^H (lexical hints) variable. One bug causes lexical state in one file to leak into another that is required/used from it. This bug, [perl #68590], was present from Perl 5.6 up to Perl 5.10, fixed in Perl 5.11.0. The second bug causes lexical state (normally a blank %^H once the first bug is fixed) to leak outwards from utf8.pm, if it is automatically loaded during Unicode regular expression matching, into whatever source is compiling at the time of the regexp match. This bug, [perl #73174], was present from Perl 5.8.7 up to Perl 5.11.5, fixed in Perl 5.12.0.

Both of these bugs seriously damage the usability of any module relying on %^H for lexical scoping, on the affected Perl versions. It is in practice essential to work around these bugs when using such modules. On versions of Perl that require such a workaround, this module globally changes the behaviour of require, including use and the implicit require performed in Unicode regular expression matching, so that it no longer exhibits these bugs.

In the other systems

The newest version among them is 0.012, as upstream numbers it.

SystemPortVersionVulnerabilitiesStatusMaintainerLast update
FreeBSDdevel/p5-Lexical-SealRequireHints0.012 newestnone known-[email protected]-
NetBSDdevel/p5-Lexical-SealRequireHints0.012nb3 newestnone known-[email protected]2026-07-16
DragonFlydevel/p5-Lexical-SealRequireHints0.012 newestnone known-[email protected]-
MidnightBSDdevel/p5-Lexical-SealRequireHints0.012 newestno data-[email protected]-
HardenedBSDdevel/p5-Lexical-SealRequireHints0.012 newestno data-[email protected]-
GhostBSDdevel/p5-Lexical-SealRequireHints0.012 newestno data-[email protected]-

Compare across BSDs

Install

Binary package:

pkg install p5-Lexical-SealRequireHints

From the ports tree:

cd /usr/ports/devel/p5-Lexical-SealRequireHints/ && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	p5-Lexical-SealRequireHints>0:devel/p5-Lexical-SealRequireHints

Packages

The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.

Repositoryaarch64amd64armv6armv7i386
FreeBSD:14:latest0.0120.0120.0110.0120.012
FreeBSD:14:quarterly0.0120.012n/a0.0120.012
FreeBSD:15:latest0.0120.012n/a0.0120.012
FreeBSD:15:quarterly0.0120.012n/an/an/a
FreeBSD:16:latest0.0120.012n/an/an/a
FreeBSD:16:quarterlyn/an/an/an/an/a

Dependency graph

Ports that need it on the left, what it needs to run on the right; at most 8 of each. "Dependencies" below lists them all.

Dependencies

The Makefile names none itself; they come from USES and USE_*.

The full lists below include those, and their dependencies in turn.

Build dependencies 2
Run dependencies 1

Configuration

No options to configure.

USES
perl5
Service scripts
none

Files

pkg-plist 3
  • %%SITE_ARCH%%/Lexical/SealRequireHints.pm
  • %%SITE_ARCH%%/auto/Lexical/SealRequireHints/SealRequireHints.so
  • %%PERL5_MAN3%%/Lexical::SealRequireHints.3.gz
distinfo 1
FileSizeSHA256
Lexical-SealRequireHints-0.012.tar.gz28463c32bdc38e06f8d6c90765bbbe3168c358247da7dae85b80ba84a2da1763757dd
Master sites 1
  • CPAN

Commit history 0

No commits in the history this site was built from.