CPANscan logo

CPANscan

Recent Perl modules, releases and favorites.
Last updated 14 June 2026 04:30 PM
Perl logo

Data-Identifier

Release | 14 Jun 2026 03:19 PM | Author: LION | Version: v0.30
CPAN Testers: Pass 94.6%N/A 5.4%
Format independent identifier object
Data::Identifier provides a single, format‑independent object for working with many kinds of identifiers such as UUIDs, OIDs, URIs, Wikidata and FactGrid IDs, GTIN, IBAN, BIC, DOI and others, letting you keep both the raw value and its type while offering normalization and basic deduplication. It can create identifiers from strings or from other objects, produce canonical forms (UUID, OID, URI or a combined ISE form), generate high quality random identifiers from a variety of sources, compare and sort identifiers, and convert them into related objects for use with URI and tagging libraries or file and datecode modules. The module supports type-level options like validation patterns, namespaces and generators, returns user-friendly display names or permanent tagnames for UI use, and lets you register frequently used identifiers to improve performance. Validation and deduplication aim for practicality and speed so they may not catch every invalid value and deduplication is not guaranteed to merge all equal identifiers. Some features are marked experimental and you can disable OID support to gain speed if you do not need it.
Perl logo

Mac-Pasteboard

Release | 14 Jun 2026 11:23 AM | Author: WYANT | Version: 0.106
Upvotes: 1 | CPAN Testers: N/A 100.0%
Manipulate Mac OS X pasteboards
Mac::Pasteboard provides a Perl interface to macOS pasteboards and the system clipboard, letting scripts and programs read and write clipboard data. It offers simple exported helpers pbpaste and pbcopy for plain text and a full object-oriented API to work with named pasteboards, individual pasteboard items and Uniform Type Identifier flavors so you can store or retrieve different data types and inspect flavor flags and tags. The module includes optional encoding handling for several text UTIs, taint-aware behavior, error/status reporting and a set of constants for common pasteboard errors and flags. Note that it requires macOS 10.3 or later, currently only accesses the first item on multi-item pasteboards, does not support promised data, and some encoding behavior may be unreliable on older macOS or Perl versions. If you need programmatic clipboard control on macOS from Perl, this module supplies a practical and featureful toolkit.
Perl logo

HTML-TableContentParser

Release | 14 Jun 2026 11:19 AM | Author: WYANT | Version: 0.306
CPAN Testers: Pass 100.0%
Extract tables from HTML
HTML::TableContentParser is a small utility for pulling the contents of HTML tables into simple Perl data structures so you can work with rows, cells and headers without writing a full DOM scraper. You create a parser and call parse($html) to get an array reference of tables found in document order, and each table is returned as a hashref containing attributes plus useful keys like caption, headers and rows where each row lists its cells and any th/header entries with their text in a data field. There is a classic option to preserve older behavior for <th> handling if you need backward compatibility. The module intentionally ignores rowspan and colspan and nested tables are reported separately rather than being linked into their parent cell, but recent maintenance releases fixed nested-table truncation and improved row-header (<th>) support along with metadata and test updates.
Perl logo

Games-Sudoku-General

Release | 14 Jun 2026 11:15 AM | Author: WYANT | Version: 0.028
CPAN Testers: Pass 100.0%
Solve Sudoku and related puzzles
Games::Sudoku::General is a Perl module for solving and generating Sudoku-style puzzles with flexible rules and layouts. Instead of assuming a square grid it lets you define arbitrary topologies so you can handle standard 9x9 Sudoku, Latin squares, Samurai (quincunx), cube variants, odd/even or high/low constraints, and many custom designs, and you can define custom symbol sets and multi-character symbols. It can both generate puzzles with controllable difficulty and constraints and solve given puzzles while also producing a human-readable trace of the solving steps so you can see which logical rules produced each placement. Generation is heuristic and not guaranteed to succeed and very exotic constraints called X, Y, and W are not implemented as dedicated rules though the solver will fall back to backtracking when needed. Clipboard copy and paste require the Clipboard module. If you need a general, extensible Sudoku engine in Perl that explains its reasoning and supports nonstandard puzzles, this module is a good fit.
Perl logo

Game-Life-Faster

Release | 14 Jun 2026 11:10 AM | Author: WYANT | Version: 0.008
CPAN Testers: Pass 100.0%
Play John Horton Conway's Game of Life, hopefully faster than a naive implementation
Game::Life::Faster is a Perl implementation of Conway's Game of Life that focuses on speed and low memory use for large, mostly empty grids. It exposes a Game::Life-like API so you can create rectangular grids, tweak birth and survival rules, place or toggle patterns, run iterations, and get text or region-limited representations of the grid. Under the hood it uses a hash-based grid and change bookkeeping to avoid autovivifying unused cells and to limit processing to active areas, and recent releases added efficient used/active-region queries and an executable script with load and pause options. If you need a faster, more memory-efficient Game of Life engine in Perl for sparse simulations this module is a good fit, while noting a few small incompatibilities with Game::Life such as scalar get_text_grid returning a single string and place_points ignoring undef values.
Perl logo

BATsh

Release | 14 Jun 2026 09:24 AM | Author: INA | Version: 0.05
Bilingual Shell for cmd.exe and bash in one script
BATsh is a pure-Perl bilingual shell that lets you write and run files containing both Windows cmd.exe batch syntax and Unix sh/bash syntax in the same script, with the interpreter switching modes line by line and sharing variables via BATsh::Env. You can run script files, evaluate shell source strings, or use an interactive REPL, and the implementation supports common builtins, pipelines, I/O redirection, functions, control flow, batch parameters and many familiar cmd and sh features so most cross-platform scripting patterns work inside Perl without launching an external shell. Only non-built-in programs are executed via the host operating system so commands like FINDSTR, SORT or other platform-specific utilities require the corresponding executable to be present. The SH side omits arrays, brace expansion, tilde expansion and several advanced shell features, and the CMD side has a few unimplemented FOR /F variants and some subtle differences in block expansion and scope because parenthesised groups do not create isolated subshells. BATsh is suitable when you need a single, portable interpreter that mixes Windows and Unix shell idioms directly in Perl and are willing to accept the noted limitations for the convenience of a unified, pure-Perl solution.
Perl logo

Plack-Middleware-Security-Simple

Release | 14 Jun 2026 09:17 AM | Author: RRWO | Version: v0.13.2
CPAN Testers: Pass 100.0%
A simple security filter for Plack
Plack::Middleware::Security::Simple is a lightweight Plack middleware that lets PSGI applications block obvious attack patterns by matching request environment fields against simple rules. Rules can be provided as an array reference of key/regex pairs, a Hash::Match object, or a custom subroutine that inspects the Plack environment, so you can block things like bad user agents or requests for CGI and PHP paths. When a rule matches a default handler logs the event to psgix.logger and returns a configurable HTTP status (400 by default), and you can replace the handler to customize the response or raise HTTP exceptions. This module is useful when you want an easy in-application filter for common probes and malicious requests, and it requires Perl 5.14 or newer; for more comprehensive filtering you may prefer a reverse proxy solution such as modsecurity.
Perl logo

DBIx-QuickORM

Release | 14 Jun 2026 05:23 AM | Author: EXODIST | Version: 0.000023
Upvotes: 1 | CPAN Testers: Pass 98.3%N/A 1.7%
Composable ORM builder
DBIx::QuickORM is a Perl DSL for building modular, reusable object-relational mappings that lets you declare ORMs, servers, databases, schemas, tables, columns, links and row classes in code instead of plumbing DBI calls by hand. It supports composing pieces across ORMs, grouping connection settings into servers, choosing SQL dialects and DBI drivers, attaching plugins, and defining types, defaults, indexes and constraints so you can both generate schema SQL and shape how rows are inflated into objects. The autofill tool can inspect an existing database and automatically build schema and row classes with hooks to customize naming, skipping, and type mapping. If you need a programmable, repeatable way to map multiple databases or deployments into consistent Perl row classes and queries, DBIx::QuickORM gives a concise, extensible framework to do that.
Perl logo

Test-Simple

Release | 14 Jun 2026 05:16 AM | Author: EXODIST | Version: 1.302221
Upvotes: 200 | CPAN Testers: Pass 97.6%Fail 2.4%
Basic utilities for writing tests
Test::Simple is a tiny, no-frills testing toolkit for Perl that lets you write TAP-compatible tests with a single primitive. You declare how many tests you plan to run then use ok to record pass or fail and output lines like "ok 1" or "not ok 2", and the module produces sensible exit codes so harnesses and CI can tell success from failure. It is intentionally minimal to get you started quickly and is fully forward compatible with Test::More when you need richer assertions and diagnostics. Test::Simple is mature and well maintained across many Perl versions, and recent work has modernized its internals to use the newer Test2 infrastructure and cleaned up packaging and test reporting so diagnostics and line numbers are more accurate.
Perl logo

DBIx-QuickDB

Release | 14 Jun 2026 05:16 AM | Author: EXODIST | Version: 0.000051
Upvotes: 3 | CPAN Testers: Pass 100.0%
Quickly start a db server
DBIx::QuickDB is a small utility for quickly creating disposable database servers for testing and development, letting you spin up PostgreSQL, MySQL/MariaDB, SQLite and optional DuckDB instances on demand. You can declare named databases at compile time that provide connection constants or build them programmatically at runtime, and each instance supports options like autostart/autostop, bootstrap, cleanup (which will delete the data dir so do not use it on production data), loading SQL schemas, driver selection or fallbacks, and global caching of built instances. It is designed for test suites and CI workflows where you need isolated, short-lived servers or cloned database copies, and it includes convenience features like a driver viability checker, pool and clone support, and environment knobs such as QDB_TMPDIR and DB_VERBOSE. Recent releases focus on robust teardown and resource handling including a fast_destroy path and improved watcher shutdowns to avoid leaked resources and stalled shutdowns. The source is on GitHub if you want to inspect drivers or contribute.
Perl logo

Audio-Scan

Release | 14 Jun 2026 05:13 AM | Author: ELBRUS | Version: 1.13
Upvotes: 4 | CPAN Testers: Pass 98.6%Unknown 1.4%
Fast C metadata and tag reader for all common audio file formats
Audio::Scan is a fast C-based Perl module for extracting metadata and tag information from most common audio formats including MP3, MP4/M4A, Ogg Vorbis, FLAC, ASF/WMA, WAV, AIFF, Musepack, Monkey's Audio, WavPack and several others. It exposes simple routines to scan a file or filehandle for both technical info and user tags or to get just tags or just file info. You can request an audio-only MD5 to detect identical audio despite differing tags and you can locate byte offsets for seeking or produce rewritten headers for MP4 and Ogg/FLAC to build seeked streams. Embedded artwork can be skipped to save memory by setting an environment flag though some formats still allocate memory for images and FLAC files will use an internal MD5 when present. The module returns normalized, UTF-8 tag data and rich format-specific info such as bitrates, durations, offsets and codec details, making it a practical choice for media servers, taggers and batch metadata tools.
Perl logo

Developer-Dashboard

Release | 14 Jun 2026 05:09 AM | Author: MICVU | Version: 4.16
CPAN Testers: Fail 100.0%
A local home for development work
Developer::Dashboard is a Perl-based local "home" for development that unifies a lightweight browser UI, a single CLI entrypoint and a prompt status layer so links, notes, helpers, and status checks live in one place instead of scattered scripts and tabs. It runs a local web app by default on port 7890, ships a "dashboard" command with built-in helpers for opening files, querying JSON/YAML/TOML/properties, and wrapping Docker Compose, and it uses background "collectors" to prepare cached state that feeds compact indicators for the web chrome and shell prompt. The runtime is layered so per-project ./.developer-dashboard trees override a secure home runtime under ~/.developer-dashboard, and the system stages private helper assets and supports custom CLI hooks plus an installable "skills" plugin system for project-specific pages, collectors and commands. It handles lifecycle tasks like starting and supervising web and collector processes, can generate a self-signed local SSL cert, and targets mixed-language teams by keeping workflows, path aliases, file shortcuts and Docker overlays consistent across repositories.
Perl logo

Dist-Zilla-PluginBundle-Author-DBOOK

Release | 14 Jun 2026 04:48 AM | Author: DBOOK | Version: v1.0.9
CPAN Testers: Pass 100.0%
A plugin bundle for distributions built by DBOOK
Dist::Zilla::PluginBundle::Author::DBOOK is a ready-made collection of Dist::Zilla plugins that mirrors Dan Book's own build-and-release setup, so you can automate the routine tasks of preparing a CPAN distribution. It wires together metadata and README generation, prereq harvesting from cpanfile or prereqs json/yml, git-aware file gathering, committing, tagging and pushing, version bumping, test and pod checks, and copy-out of release artifacts like META.json, LICENSE and Makefile.PL. You can tweak behavior with a few dist.ini options such as github_user, installer and pod_tests, and the bundle assumes a git repo with a Changes file and a declared set of prereqs; it also supports a FAKE_RELEASE mode to exercise the release steps without uploading.
Perl logo

mb

Release | 14 Jun 2026 03:44 AM | Author: INA | Version: 0.63
Upvotes: 4 | CPAN Testers
Can easy script in Big5, Big5-HKSCS, GBK, Sjis(also CP932), UHC, UTF-8, ..
mb.pm is a lightweight "modulino" that lets you run Perl scripts written in a variety of legacy multibyte encodings by transparently transpiling MBCS literals and regexes into octet-oriented Perl that still behaves sensibly at the codepoint level. You run your script with perl mb.pm [options] script.pl and it produces a temporary transpiled file while adding multibyte anchoring, escaping problematic multibyte sequences, rewriting character classes, and offering an mb:: namespace of codepoint-aware helpers such as mb::length, mb::substr, mb::tr and mb::chop so you can choose byte or codepoint semantics where needed. It supports Big5, Big5-HKSCS, EUC-JP, GB18030, GBK, Shift_JIS/CP932, UHC, UTF-8 and WTF-8, works on common OSes and recent Perl versions, and avoids using Perl's UTF8 flag to reduce mojibake. Because it is a source filter it produces an extra .oo.* file and you invoke it via the mb.pm wrapper rather than changing the interpreter, and there are known limitations such as some regex and Unicode features not being supported (named codepoints, Unicode properties, some look-behind and cloistering), a Windows chdir edge case, and a few behavior differences inherited from the design choices. Use mb.pm if you need JPerl-like convenience for maintaining or running MBCS-encoded Perl scripts without converting them to UTF‑8 or rebuilding Perl itself.
Perl logo

Protobuf

Release | 14 Jun 2026 03:10 AM | Author: CJCOLLIER | Version: 0.03
High-performance Protocol Buffers implementation using upb
Protobuf is a placeholder CPAN module that simply reserves the Protobuf namespace for future Perl bindings to Google's Protocol Buffers. It does not provide any runtime functionality or helpers and exists only to claim the name so later work can be published under Protobuf. Protocol Buffers are Google's compact, language-neutral format for serializing structured data, so if you need a working Perl implementation today this module is not the implementation you want, but it signals that official bindings may appear here in the future. The package is published under the Apache License 2.0 and attributed to C.J. Collier and contributors.
Perl logo

DesktopWorkspace

Release | 14 Jun 2026 12:05 AM | Author: PERLANCAR | Version: 1.0.0
CPAN Testers: Pass 100.0%
DesktopWorkspace specification
DesktopWorkspace is a concise specification for declaring what should be opened to set up a desktop workspace — applications, files, directories and browser URLs — so you can create reusable workspace presets (for example coding, writing or project-specific setups) under a DesktopWorkspace:: namespace. A specification is a DefHash containing an items array plus flags such as new_browser_window and kde_activity and each item must be one of url, file, dir or app_path with optional hints like firefox_container or per-item new_browser_window. It is aimed at automating or documenting which windows and browser tabs to open rather than performing the launches itself and currently a single spec only targets one KDE activity. The series is still 1.x/unstable with 2.x planned as the stable API and this release (1.0.0) is an early release.
Perl logo

Linux-Event

Release | 13 Jun 2026 11:19 PM | Author: HAX | Version: 0.012
Upvotes: 1 | CPAN Testers: Pass 65.5%Fail 1.8%N/A 32.7%
Linux-native readiness event loop for Perl
Linux::Event provides a compact, Linux-native readiness event loop for Perl that uses kernel primitives like epoll, timerfd, signalfd, eventfd, and pidfd to handle timers, signals, wakeups, and child-process exit notifications. It intentionally stays at the loop-and-primitives layer, exposing a simple Loop object with a built-in epoll backend by default and relying on companion modules for higher-level socket, stream, and process helpers. The recent release simplifies the distribution into a single readiness loop, removes the experimental io_uring/proactor machinery and the older operation API, and standardizes the backend abstraction to make the API smaller and easier to use. Choose this module if you need a lightweight, native event loop on Linux for building asynchronous I/O or process integrations in Perl and prefer to assemble higher-level behavior from focused companion modules.
Perl logo

ioqwerty

Release | 13 Jun 2026 09:30 PM | Author: IOQWERTY | Version: v0.0.1
CPAN Testers: Pass 98.4%N/A 1.6%
Name reservation for ioqwerty
ioqwerty is a tiny placeholder module on CPAN that exists solely to reserve the distribution name "ioqwerty". It provides no runtime features and simply holds the namespace for the author. The package is released under the MIT license and the author lists contact as ping@ioqwerty.com. Installers should not expect functionality from this module; it is useful only for claiming the name or preventing others from taking it.
Perl logo

Dist-Setup

Release | 13 Jun 2026 08:27 PM | Author: MATHIAS | Version: 0.17
Upvotes: 1 | CPAN Testers
Simple opinionated tool to set up a Perl distribution directory
Dist::Setup is the internal library that powers the perl_dist_setup command and provides a ready-made framework for creating and maintaining Perl distribution skeletons. It generates Makefile targets and CI configuration, wires up testing helpers such as Test::CPANfile, and adds tooling for style checks, spellchecking, perltidy, perlcritic, packaging and uploading so authors can focus on code instead of build plumbing. The module is mainly useful to module authors and to the perl_dist_setup tool rather than for direct use in applications, and full user-facing documentation lives on the perl_dist_setup page. Recent updates improved GitHub CI dependency installation to avoid dependency loops when installing suggested modules and added perltidy processing of test (.pm) files, along with support for newer Perl releases.
Perl logo

App-PTP

Release | 13 Jun 2026 08:15 PM | Author: MATHIAS | Version: 1.19
An expressive Pipelining Text Processor
I don't see any module POD text to summarize; what I received was only a small JSON mapping that references App::PTP::Cheat_Sheet and a script named ptp but no actual documentation content. I can't create the concise descriptive paragraph you asked for without the module's POD or a link to its CPAN page or README, so please paste the POD or provide the module name or URL and I will produce a clear, one‑paragraph summary tailored to a technically literate audience.
Perl logo

Params-Validate-Strict

Release | 13 Jun 2026 07:59 PM | Author: NHORNE | Version: 0.34
Upvotes: 2 | CPAN Testers: Pass 75.9%Fail 24.1%
Validates a set of parameters against a schema
Params::Validate::Strict is a Perl parameter validation library that checks and coerces input against a declarative schema so your code gets well-formed, typed data back. You describe each parameter with types like string, integer, number, arrayref, hashref, coderef or object and add constraints such as min/max, regexes, enums, optional/default values, transforms, callbacks and nested schemas, and the module supports custom reusable types, positional arguments, cross-field validations and relationship rules for common patterns like mutual exclusivity or conditional requirements. It returns a new hash or positional array with coerced values and is useful for input sanitization, building simple WAF rules, generating black‑box tests or improving API documentation. The recent 0.34 release added a stringref type and more robust integer handling including acceptance of valid scientific notation while rejecting infinities and NaNs and fixed a few edge-case bugs around stringref transforms and optional callbacks. If you need a feature-rich, declarative way to validate and normalize incoming parameters in Perl, this module is likely a good fit.
Perl logo

Dist-Zilla-PluginBundle-Codeberg

Release | 13 Jun 2026 06:25 PM | Author: GEEKRUTH | Version: 2.0000
CPAN Testers: Pass 100.0%
Access Codeberg functionality to maintain distros from Dist::Zilla
Dist::Zilla::PluginBundle::Codeberg makes it easy to publish and maintain Perl distributions on Codeberg by wiring in two Dist::Zilla plugins that set up Codeberg metadata and updates for your release. It reads your Codeberg repo from a git remote or an explicit repo setting and can pull credentials from git config or a Config::Identity file; you must create a personal access token with the "api" scope. The bundle sets meta fields such as the bug tracker, homepage and wiki and offers options to prefer the dist meta, MetaCPAN or p3rl links, to follow forked repositories, and to choose the git remote name. If you already use Dist::Zilla and host code on Codeberg this bundle automates the bookkeeping and release integration. Note that the 2.0 release is a major update that adapts a GitLab-based bundle for Codeberg and includes API changes and bug fixes.
Perl logo

Mojolicious-Plugin-Fondation

Release | 13 Jun 2026 06:18 PM | Author: DAB | Version: 0.01
CPAN Testers: Pass 69.2%Fail 9.2%N/A 21.5%
Hierarchical plugin loader with configuration priority and resource sharing
Mojolicious::Plugin::Fondation is a plugin loader for Mojolicious that helps you build modular web applications from reusable bricks by loading plugins recursively according to declared dependencies and merging their configurations with a clear priority: direct overrides, then application config, then plugin defaults. It automatically shares plugin resources like templates and public files with the application, runs configurable post-load actions to register templates, controllers and static assets, and provides a deferred fondation_finalyze hook so plugins can complete initialization after everything else is loaded. The plugin also supplies convenient helpers and a zone system for assembling HTML or JavaScript fragments from multiple plugins into layout zones. To fully participate in finalization a plugin must return $self from its register method. This initial release introduces hierarchical plugin loading, resource sharing, and a predictable configuration cascade to make composing Mojolicious apps from many small plugins easier.
Perl logo

Type-Guess

Release | 13 Jun 2026 05:10 PM | Author: SCESANO | Version: 0.006
Upvotes: 1 | CPAN Testers: Pass 27.1%Fail 72.9%
Guess data types
Type::Guess examines a list of scalar values and infers the most appropriate data type (Str, Int, Num or DateTime when a date role is enabled) while tracking field width, precision and sign and producing an sprintf-style format string you can use to print the original values consistently. The object stringifies to that format and can be invoked like a function to format individual values, which makes it handy in formatting pipelines. Pluggable roles add features such as DateTime parsing, a dependency-free DateTime::Naive detector, Unicode-aware display widths, Type::Tiny integration, and SQL column type generation for dialects like SQLite and Postgres. You can adjust global settings such as tolerance for outliers and whether to skip empty strings, override the generated format, or export the detected attributes as a hash for reuse. Use Type::Guess when you need quick, automated type detection for display formatting or for helping generate sensible database column definitions.
Perl logo

Statistics-Krippendorff

Release | 13 Jun 2026 04:54 PM | Author: CHOROBA | Version: 0.05
CPAN Testers: Pass 73.8%N/A 26.2%
Calculate Krippendorff's alpha
Statistics::Krippendorff computes Krippendorff's alpha, a robust measure of inter‑rater reliability that handles any number of coders, missing values and varying coder participation per item. You provide units as either hashrefs mapping coder identifiers to values or arrayrefs using positions for coders and then call alpha to get the agreement coefficient. The module includes ready-made distance (delta) functions for nominal, ordinal, interval, ratio, Jaccard and MASI comparisons and also accepts a custom code reference so you can define how disagreements are measured for your data. Small helper methods let you validate inputs, inspect value frequencies and count pairable observations, making this a practical, flexible Perl tool for researchers and developers who need to quantify coder agreement.
Perl logo

Dist-Zilla-Plugin-SigStore-SignRelease

Release | 13 Jun 2026 03:56 PM | Author: TIMLEGGE | Version: 0.06
CPAN Testers: Pass 86.1%Fail 4.2%N/A 9.7%
Sign Release with SigStore
Dist::Zilla::Plugin::SigStore::SignRelease is a Dist::Zilla plugin that automates signing your CPAN distribution archives with SigStore using the external cosign tool and can upload the resulting signature bundle alongside the release. It integrates into the Dist::Zilla release flow and is intended to replace the usual UploadToCPAN step, offering simple configuration for whether to upload the sigstore bundle, what file extension to use for that bundle, and an option to auto-accept cosign prompts. You do need cosign installed and current PAUSE/CPAN tooling does not yet perform sigstore verification for you, so the module provides guidance and example scripts for manual verification. Recent updates simplified the dist.ini settings and added support for older sigstore JSON bundle formats.
Perl logo

Net-Statsd-Lite

Release | 13 Jun 2026 02:51 PM | Author: RRWO | Version: v0.11.2
Upvotes: 1 | CPAN Testers: Pass 89.0%N/A 11.0%
A StatsD client that supports multimetric packets
Net::Statsd::Lite is a simple Perl client for sending StatsD metrics that implements the StatsD Metrics Export Specification and can pack multiple metric lines into a single UDP packet. It offers convenient methods for counters, meters, gauges, timings/histograms and sets, supports buffered sending with optional autoflush and manual flush, and provides secure_set_add to HMAC-hash sensitive values before sending so you can record identifiers without exposing them. The API is easy to subclass to add tagging or other extensions, you can configure the socket directly and the module now uses IO::Socket::IP by default, and it performs validation on metric names and values to reduce the risk of metric-injection attacks. It requires Perl 5.20 or later. Recent releases focused on hardening and usability by switching secure hashing to the core Digest::SHA, tightening input validation to address CVEs, and making the socket explicitly configurable.
Perl logo

Dist-Zilla-Plugin-UsefulReadme

Release | 13 Jun 2026 02:26 PM | Author: RRWO | Version: v0.6.0
Upvotes: 2 | CPAN Testers: Pass 90.5%N/A 9.5%
Generate a README file with the useful bits
Dist::Zilla::Plugin::UsefulReadme is a Dist::Zilla plugin that builds a README for your distribution by extracting and combining selected =head1 POD sections from your main module, letting you include only the useful bits rather than dumping all module documentation. You pick which headings to include and the output format, with support for plain text, POD, Markdown, GitHub-flavored Markdown or a custom parser, and you can control filename, encoding, phase and output location from dist.ini. The plugin understands Pod::Weaver readme regions, can generate sensible fallback content for version, requirements, installation and recent changes when those sections are missing, supports appending or prepending snippets to generated sections, and can register needed developer prereqs for the chosen output type. Written as a successor to Pod::Readme and designed to sit well in Pod::Weaver-based workflows, it makes README generation configurable and repeatable for modern Dist::Zilla users. Note that v0.6.0 bumps the minimum Perl requirement to v5.24 and updates the code and build toolchain accordingly.
Perl logo

Net-CIDR-Set

Release | 13 Jun 2026 02:08 PM | Author: RRWO | Version: 0.22
Upvotes: 5 | CPAN Testers: Pass 97.5%N/A 2.5%
Manipulate sets of IP addresses
Net::CIDR::Set is a Perl module for representing and manipulating sets of IP addresses in a natural, set-oriented way. It accepts CIDR blocks, arbitrary start-end ranges, or individual addresses and will merge overlapping ranges for you, and it supports the usual set operations such as membership tests, union, intersection, xor, difference, complement and inversion. You can iterate over addresses, compact CIDR blocks or raw ranges and export results as arrays or formatted strings, and it handles both IPv4 and IPv6 (but not mixed in the same set unless you explicitly choose a coder). The module is handy for access control, network inventory, address summarization and related tasks, but be careful when expanding whole ranges into address arrays because those can be very large, especially for IPv6. It requires Perl 5.14 or later and the project is maintained on GitHub.
Perl logo

Perl-Critic-Policy-BuiltinFunctions-ProhibitForeach

Release | 13 Jun 2026 01:57 PM | Author: DJZORT | Version: 0.02
CPAN Testers: Pass 100.0%
Prohibit foreach keyword
Perl::Critic::Policy::BuiltinFunctions::ProhibitForeach is a tiny, opinionated Perl::Critic rule that flags any use of the 'foreach' keyword and enforces the use of 'for' instead to keep loop style consistent across a codebase. It has no special configuration beyond the usual Perl::Critic options, so you add it when you want a single, consistent loop keyword enforced automatically. The 0.02 release modernized the test suite to the standard .run format and added explicit pass and fail cases for the prohibition.