Recent Perl modules, releases and favorites.
Last updated 23 February 2026 08:31 PM
Last updated 23 February 2026 08:31 PM
Travel-Routing-DE-DBRIS
Release | 23 Feb 2026 06:24 PM | Author: DERF | Version: 0.09
Interface to the bahn.de itinerary service
Travel::Routing::DE::DBRIS is a Perl module that provides an interface to the bahn.de itinerary service, allowing users to request and retrieve train connections between specified locations in Germany. By utilizing instances of Travel::Status::DE::DBRIS::Location for origin and destination, users can create a new Travel::Routing::DE::DBRIS object that encapsulates the itinerary details. The module supports various options, including specifying stopovers, caching requests, and customizing the request language and transit modes. Notably, version 0.09 has increased the default timeout to 20 seconds to accommodate delays from bahn.de's web application firewall, enhancing the module's reliability in fetching itinerary data. This module is particularly useful for developers looking to integrate train routing capabilities into their applications.
Zabbix7-API
Release | 23 Feb 2026 05:03 PM | Author: SCOTTH | Version: 1.2
Access the JSON-RPC API of a Zabbix server
The Zabbix7::API module provides a convenient interface for accessing the JSON-RPC API of a Zabbix server, specifically tailored for version 7.x. Built on the Moo object system, it simplifies interactions with the Zabbix API, allowing users to easily authenticate, fetch data, and manage objects through methods like `fetch`, `fetch_single`, and `login`. This module is particularly useful for developers looking to automate monitoring tasks or integrate Zabbix functionalities into their applications. Recent updates have focused on improving the module's clarity and performance, including the removal of less useful features and the adoption of Log::Any for logging, enhancing the overall user experience.
Readonly-Values-Boolean
Release | 23 Feb 2026 03:50 PM | Author: NHORNE | Version: 0.01
CPAN Testers: Pass 100.0%
Boolean Constants
The Readonly::Values::Boolean module provides a simple way to define and use boolean constants in Perl, allowing developers to work with true and false values in a clear and consistent manner. By utilizing this module, users can access predefined boolean constants through a hash, enhancing code readability and maintainability. This module is particularly useful for projects that require strict adherence to boolean logic, ensuring that values are immutable once set. Released in February 2026, this initial version lays the groundwork for future enhancements and features.
Compress-Raw-Zlib
Release | 23 Feb 2026 03:24 PM | Author: PMQS | Version: 2.219
Upvotes: 3 | CPAN Testers: Pass 100.0%
Perl interface to zlib/zlib-ng compression libraries
The Compress::Raw::Zlib module provides a low-level Perl interface to the zlib and zlib-ng compression libraries, enabling developers to perform in-memory compression and decompression using the deflate and inflate methods. With this module, users can create deflation and inflation objects, customize various parameters such as compression level and buffer size, and handle checksums for data integrity. It supports a range of options for fine-tuning compression strategies and allows for efficient processing of compressed data streams. This module is particularly useful for applications requiring direct control over compression processes, making it a powerful tool for developers working with compressed data in Perl.
App-DBBrowser
Release | 23 Feb 2026 03:24 PM | Author: KUERBIS | Version: 2.439
Browse SQLite/MySQL/PostgreSQL databases and their tables interactively
App::DBBrowser is a Perl module designed for interactive browsing of SQLite, MySQL, and PostgreSQL databases and their tables. With version 2.439, it provides users with a straightforward interface to explore database structures and data, making it an essential tool for developers and database administrators who need to manage and analyze their databases efficiently. Authored by Matthäus Kiem, this module is released under a free software license, allowing for redistribution and modification in accordance with Perl's licensing terms.
App-ansicolumn
Release | 23 Feb 2026 03:13 PM | Author: UTASHIRO | Version: 1.53
ANSI sequence aware column command
The `ansicolumn` Perl module is designed to format and display text in a columnar format while being aware of ANSI escape sequences, making it particularly useful for terminal applications that utilize color and formatting. This module allows users to create visually appealing tables and align text effectively, accommodating various options for borders, margins, and alignment. Recent updates include the addition of the `--table-center` option in version 1.53, enhancing the module's functionality by allowing users to center tables easily. With its flexible configuration and support for multiple border styles, `ansicolumn` is an essential tool for developers looking to improve the presentation of text output in their Perl applications.
LaTeX-Replicase
Favorite | 23 Feb 2026 02:32 PM | Author: DONANGEL | Version: 0.593
Upvotes: 1 | CPAN Testers
Perl extension implementing a minimalistic engine for filling real TeX-LaTeX files that act as templates
LaTeX::Replicase is a Perl module designed to facilitate the dynamic generation of TeX-LaTeX documents by filling templates with data. It allows users to define variables and control structures within TeX files, enabling the creation of customizable documents such as reports or academic papers. The module employs a minimalistic syntax for variable substitution and supports complex data structures like arrays and hashes, making it versatile for various templating needs. Recent updates have expanded its capabilities, including the addition of a new `tex_escape()` function for handling special TeX characters and improved error messaging, enhancing the overall user experience. With LaTeX::Replicase, users can efficiently generate consistent and tailored TeX documents directly from their Perl scripts.
Encode-Simple
Favorite | 23 Feb 2026 01:02 PM | Author: DBOOK | Version: 1.003
Upvotes: 6 | CPAN Testers: Pass 100.0%
Encode and decode text, simply
The Encode::Simple Perl module provides a straightforward interface for encoding and decoding text, simplifying the complexities often associated with character encoding. It wraps around the core Encode module, offering functions like `encode`, `decode`, and their lax counterparts, which handle invalid characters gracefully by substituting them when necessary. This module supports various encodings, including UTF-8, and is designed to throw exceptions for invalid inputs, ensuring robust error handling. Notably, recent updates have removed restrictions on noncharacters in UTF-8, reflecting changes in the encoding standards, and introduced a new module, Decode::ARGV, enhancing usability for Perl scripts. With its user-friendly approach, Encode::Simple is an essential tool for developers dealing with text encoding in Perl applications.
SVG
Release | 23 Feb 2026 12:41 PM | Author: MANWAR | Version: 2.88
Upvotes: 18 | CPAN Testers: Pass 100.0%
Perl extension for generating Scalable Vector Graphics (SVG) documents
The SVG Perl module is a powerful extension designed for generating Scalable Vector Graphics (SVG) documents directly from Perl code. It allows users to create complex SVG images through a straightforward object-oriented interface, enabling the construction of various SVG elements such as circles, rectangles, and paths, as well as grouping elements and applying styles. The module supports both standalone and inline SVG document generation, providing flexibility in how SVG content is rendered. Recent updates, including version 2.88, have improved the module by ensuring that element methods are available even when the module is imported with an empty list, enhancing usability and functionality. This makes SVG a robust choice for developers looking to integrate vector graphics into their Perl applications.
Version-Semantic
Release | 23 Feb 2026 12:20 PM | Author: SVW | Version: v1.1.0
CPAN Testers: Pass 100.0%
Immutable SemVer scheme based version class
Version::Semantic is a Perl module that provides an immutable class for handling semantic versioning (SemVer) in a structured manner. It allows developers to create version objects from semantic version strings, including pre-release and build extensions, using the `parse` method. The module supports comparison of version objects according to SemVer precedence rules, enabling intuitive version management in applications. Recent updates in version 1.0.2 include improvements to the Makefile.PL setup and documentation enhancements, ensuring better usability and clarity for users. This module is particularly useful for projects that adhere to the Semantic Versioning specification, facilitating effective version control and dependency management.
DeyeCloud-Client
Release | 23 Feb 2026 09:31 AM | Author: KORNIX | Version: v0.0.1
Perl interface to Deye Cloud API
The DeyeCloud::Client Perl module serves as a comprehensive client for interacting with the Deye Cloud API, enabling users to perform various operations as outlined in the Deye Cloud developer guide. Designed for Perl versions 5.10 and above, this module allows for easy configuration of API requests, including setting the base URL, HTTP method, and authorization token. Users can retrieve device and station data, handle errors, and utilize wrapper methods for streamlined access to device statuses. A notable recent enhancement in version 0.0.2 is the introduction of more intuitive aliases for device parameter names, improving code readability and usability. This module is essential for developers looking to integrate Deye Cloud functionalities into their Perl applications.
A MySQL driver for the Perl5 Database Interface (DBI)
DBD::mysql is a Perl5 Database Interface (DBI) driver specifically designed for MySQL databases, providing a seamless connection between Perl applications and MySQL's relational database management system. This module allows developers to execute SQL queries, manage database connections, and handle results using an object-oriented interface. With support for various MySQL features, including prepared statements, transactions, and multiple result sets, DBD::mysql simplifies database interactions in Perl. Recent updates, such as the fixes for auto-reconnect functionality and SSL/TLS version checks with MariaDB Connector/C, enhance its reliability and security, making it a robust choice for developers working with MySQL databases in Perl.
Linux-Event
Release | 23 Feb 2026 05:09 AM | Author: HAX | Version: 0.007
Front door for the Linux::Event ecosystem
Linux::Event is a specialized event loop framework designed for Linux environments, providing a robust and efficient way to handle asynchronous events. It leverages Linux-specific primitives such as epoll for I/O readiness, timerfd for timers, signalfd for signal handling, eventfd for wakeups, and pidfd for process exit notifications. The module offers a stable public API, allowing developers to create and manage event loops with features like timers and signal subscriptions. Recent updates in version 0.007 include a fix that ensures the loop's waker reliably drains the wakeup file descriptor, enhancing the reliability of blocking backend waits. This makes Linux::Event an essential tool for developers looking to implement high-performance event-driven applications on Linux systems.
Unicode-UTF8
Release | 23 Feb 2026 03:44 AM | Author: CHANSEN | Version: 0.64
Upvotes: 20 | CPAN Testers: Pass 100.0%
Encoding and decoding of UTF-8 encoding form
The `Unicode::UTF8` Perl module provides essential functions for encoding and decoding UTF-8, adhering to the Unicode and ISO/IEC 10646:2011 standards. It offers two primary functions: `decode_utf8`, which converts octet sequences into UTF-8 character strings, and `encode_utf8`, which transforms character strings into UTF-8 octet sequences. Both functions support customizable error handling through optional fallback mechanisms, allowing developers to manage ill-formed sequences and code points that cannot be represented in UTF-8. Additionally, the module includes a `valid_utf8` function to check the integrity of UTF-8 sequences. A noteworthy recent change in version 0.64 allows the handling of noncharacters without special treatment, aligning with Unicode's Corrigendum #9, which states that these values should be permitted in data interchange. This module is particularly valued for its performance improvements and better diagnostics compared to other UTF-8 implementations in Perl.
Linux-Event-Listen
Favorite | 23 Feb 2026 02:55 AM | Author: HAX | Version: 0.014
Listening sockets for Linux::Event
The `Linux::Event::Listen` module provides a streamlined way to create and manage listening sockets within a `Linux::Event` loop, enabling non-blocking network communication. It allows developers to specify a host and port or a UNIX domain socket path for listening, and it invokes a user-defined callback (`on_accept`) for each accepted connection, providing the necessary file handle for further interaction. This module is designed to handle edge-triggered notifications correctly, ensuring that the accept queue is drained efficiently while maintaining fairness through configurable limits on accepted connections per event. Recent updates have improved documentation clarity and added convenience methods for socket family identification, enhancing usability for both TCP and UNIX socket implementations.
CPAN-Uploader
Release | 23 Feb 2026 02:45 AM | Author: RJBS | Version: 0.103019
Upvotes: 25 | CPAN Testers: Pass 100.0%
Upload things to the CPAN
The CPAN::Uploader module is designed to facilitate the uploading of files to the Comprehensive Perl Archive Network (CPAN), making it easier for developers to share their Perl modules. With methods like `upload_file`, users can specify their CPAN credentials, upload directory, and other options such as HTTP proxy settings and retry mechanisms for failed uploads. The module also includes functionality to read configuration files, log messages, and operate in debug mode. Recent updates include a minor documentation fix in version 0.103019, ensuring that users have clear guidance on using the module effectively. Overall, CPAN::Uploader streamlines the process of contributing to CPAN, catering to both seasoned and new Perl developers.
Sub-Exporter-Lexical
Release | 23 Feb 2026 02:39 AM | Author: RJBS | Version: 1.001
Upvotes: 1 | CPAN Testers: Pass 100.0%
To export lexically-available subs with Sub::Exporter
Sub::Exporter::Lexical is a Perl module that enhances the Sub::Exporter functionality by providing a lexical installer, allowing for the import of subroutines into a limited scope that automatically cleans up when the scope ends. This feature is particularly useful for managing the visibility of imported routines, ensuring that they are only accessible within a specific block of code and are removed immediately after that block is executed. By using Sub::Exporter::Lexical, developers can maintain cleaner namespaces and avoid potential conflicts, making it an ideal choice for modular programming in Perl. The module is easy to integrate into both exporting and importing packages, streamlining the process of managing subroutine visibility in complex applications.
Objects representing things found in the Kubernetes API
The `IO::K8s` Perl module provides a comprehensive interface for interacting with Kubernetes API objects, enabling users to load, validate, and manipulate Kubernetes resources programmatically. With features such as loading manifests in both a custom Perl DSL and YAML format, creating new Kubernetes objects, and serializing them back to YAML or JSON, `IO::K8s` simplifies the management of Kubernetes resources. The module supports automatic class generation for Custom Resource Definitions (CRDs) based on the OpenAPI specification from a Kubernetes cluster, allowing for seamless integration of custom types. Recent updates in version 1.002 have expanded the default resource map to include Authorization and Authentication API types, enhancing its functionality for managing access control and authentication within Kubernetes environments.
Params-Validate-Strict
Release | 23 Feb 2026 02:10 AM | Author: NHORNE | Version: 0.30
Upvotes: 2 | CPAN Testers: Pass 100.0%
Validates a set of parameters against a schema
Params::Validate::Strict is a robust Perl module designed for validating a set of parameters against a defined schema, ensuring that input data adheres to specified types and constraints. It allows developers to define complex validation rules, including type checks, minimum and maximum values, regex matching, and custom transformations, making it ideal for scenarios such as black-box testing and web application firewalls. The module supports nested structures and offers features like cross-field validation and custom types for enhanced maintainability. Notably, version 0.30 introduced support for `carp_on_warn`, improved error messaging, and the ability to handle objects that understand the `as_string()` method, further enhancing its usability in object-oriented programming contexts.
A tiny HTTP/1.0 server for Perl 5.5.3+
HTTP::Handy is a lightweight, single-file HTTP/1.0 server designed for Perl 5.5.3 and later, ideal for personal use, local tools, and rapid development. It implements a subset of the PSGI specification, allowing developers to create simple web applications with minimal setup—just copy the file into your project directory. The server supports GET and POST methods, serves static files with MIME type detection, and includes utility functions for URL decoding and query parsing. Notably, it features an access log in LTSV format and allows configuration of the maximum POST body size. With no external dependencies, HTTP::Handy is perfect for quick prototyping and local development environments. The first release on CPAN was on February 23, 2026, marking its availability for broader use.
Data-Difference
Release | 23 Feb 2026 12:08 AM | Author: RJBS | Version: 0.113002
Compare simple hierarchical data
Data::Difference is a Perl module designed to compare simple hierarchical data structures, such as SCALARs, HASH references, and ARRAY references, and return a detailed list of changes, including what has been added, removed, or modified. The module provides a clear output format, where each change is represented as a hash containing the hierarchical path to the value and the corresponding values from both data structures being compared. Recent updates in version 0.113002 have improved the module's handling of cyclical data structures, preventing infinite recursion, and ensured that top-level undefined values are no longer ignored, enhancing its robustness and accuracy in data comparison tasks.
Dist-Zilla-PluginBundle-RJBS
Release | 23 Feb 2026 12:01 AM | Author: RJBS | Version: 5.036
BeLike::RJBS when you build your dists
Dist::Zilla::PluginBundle::RJBS is a comprehensive plugin bundle designed to streamline the process of building Perl distributions, reflecting the preferences of its author, RJBS. It incorporates essential plugins for managing versioning, prerequisites, metadata, and testing, while also providing customization options through roles that allow users to modify its configuration. The bundle includes features such as automatic prerequisite detection, Git integration for version control, and support for both Pod and Task Weaving, making it a versatile choice for developers looking to enhance their distribution workflow. Additionally, it offers flexibility with arguments to tailor its functionality, ensuring it meets the specific needs of various projects.
Crypt-NaCl-Sodium
Release | 22 Feb 2026 11:28 PM | Author: TIMLEGGE | Version: 2.002
Upvotes: 1 | CPAN Testers: Pass 100.0%
NaCl compatible modern, easy-to-use library for encryption, decryption, signatures, password hashing and more
Crypt::NaCl::Sodium is a Perl module that provides a modern, easy-to-use interface to the libsodium library, enabling secure cryptographic operations such as encryption, decryption, digital signatures, and password hashing. It supports a variety of cryptographic primitives, including secret-key authenticated encryption (XSalsa20/Poly1305), public-key encryption (Curve25519/XSalsa20/Poly1305), and hashing algorithms (Blake2b, SHA-2). The module emphasizes security and performance, offering a comprehensive set of utilities for tasks like random number generation and constant-time comparisons. Recent updates include a fix for an integer overflow flaw on 32-bit systems (CVE-2026-2588) and the removal of deprecated functions, enhancing both security and usability.
SPVM-Errno
Release | 22 Feb 2026 11:19 PM | Author: KIMOTO | Version: 0.096
CPAN Testers: Pass 100.0%
Error Numbers
The SPVM::Errno module provides a comprehensive interface for handling error numbers in Perl, mirroring the functionality found in the C programming language's errno system. This module allows developers to retrieve the current value of errno, set it to a specific value, and obtain descriptive error messages corresponding to various error codes. It includes static methods for accessing standard error numbers such as EAGAIN, EACCES, and many others, along with their Windows Sockets equivalents. Recent updates have improved the module's portability by changing the C language standard from GNU99 to C99, enhancing compatibility across different systems. With its robust error handling capabilities, SPVM::Errno is an essential tool for Perl developers working with system-level programming and error management.
SPVM-Digest-SHA
Release | 22 Feb 2026 10:55 PM | Author: KIMOTO | Version: 0.069
CPAN Testers: Pass 100.0%
SHA-1/224/256/384/512
The SPVM::Digest::SHA module provides a comprehensive implementation of SHA hashing algorithms, including SHA-1, SHA-224, SHA-256, SHA-384, and SHA-512, along with their HMAC variants. This module allows users to generate secure hash digests in various formats such as binary, hexadecimal, and Base64, making it suitable for cryptographic applications and data integrity verification. Users can utilize both class methods for direct hashing and object-oriented methods for managing stateful digest calculations, enabling flexibility in how data is processed. With its straightforward interface, SPVM::Digest::SHA is an essential tool for developers needing robust hashing capabilities in their Perl applications.
SPVM-Compress-Raw-Zlib
Release | 22 Feb 2026 10:42 PM | Author: KIMOTO | Version: 0.007
CPAN Testers: Pass 100.0%
Low-Level Interface to zlib compression library
The SPVM::Compress::Raw::Zlib module provides a low-level interface to the zlib compression library, enabling Perl developers to efficiently compress and decompress data using the powerful zlib algorithms. It includes classes for both deflation and inflation processes, allowing users to easily compress data with the `gzip` method and uncompress it with the `gunzip` method, while also offering customizable options such as "AppendOutput" and "WindowBits". This module is ideal for applications that require high-performance data compression and decompression, making it a valuable tool for developers looking to optimize data handling in their Perl applications.
A lightweight jq-like JSON query engine in Perl
JQ::Lite is a pure Perl module that serves as a lightweight, jq-compatible JSON query engine, ideal for environments where the jq binary cannot be installed, such as minimal Linux distributions, legacy systems, or air-gapped environments. With a familiar jq-like syntax, it allows users to extract, traverse, and filter JSON data without the need for external binaries or compilation steps. The module can be utilized as both a library and a command-line tool, offering features like optional key access, boolean filtering, and a variety of built-in functions for data manipulation. Notably, the recent version 2.40 enhances test coverage for boundary conditions in the replace() function, ensuring more robust handling of regex metacharacters and empty replacements.
SPVM-Resource-Libpng
Release | 22 Feb 2026 10:17 PM | Author: KIMOTO | Version: 0.014
CPAN Testers: Pass 100.0%
The Resource of The libpng Library
The SPVM::Resource::Libpng module serves as a resource class for integrating the libpng library within the SPVM (Simple Perl Virtual Machine) environment, enabling developers to leverage the capabilities of libpng for handling PNG image files. By including this module in their configuration, users can access essential functionalities related to PNG image processing, such as reading and writing PNG files, while also requiring the SPVM::Resource::Zlib module for compression support. This module facilitates the seamless incorporation of libpng's C library into SPVM applications, allowing for efficient image manipulation and processing in a Perl-like syntax.