Recent Perl modules, releases and favorites.
Last updated 20 February 2026 04:30 PM
Last updated 20 February 2026 04:30 PM
DBIx-Class-Async
Release | 20 Feb 2026 04:05 PM | Author: MANWAR | Version: 0.58
Upvotes: 2 | CPAN Testers: Pass 100.0%
Non-blocking, multi-worker asynchronous wrapper for DBIx::Class
DBIx::Class::Async is an experimental Perl module that provides a non-blocking, multi-worker asynchronous wrapper for the popular DBIx::Class ORM, enabling developers to perform database operations without freezing the main application loop. By utilizing a worker-pool architecture, it allows multiple database queries to be executed in parallel, significantly improving responsiveness in applications that require high concurrency. The module integrates seamlessly with various event loops, including IO::Async and Mojolicious, and supports modern asynchronous programming patterns such as Futures and async/await. Notably, version 0.58 introduced a bug fix that ensures scalar-ref values targeting primary key columns are correctly handled, preventing silent errors during IPC serialization. This module is ideal for developers looking to enhance the performance of their database interactions in Perl applications.
Text-Amuse-Compile
Release | 20 Feb 2026 02:12 PM | Author: MELMOTHX | Version: 1.91
Upvotes: 1 | CPAN Testers: Pass 100.0%
Compiler for Text::Amuse
Text::Amuse::Compile is a Perl module designed to compile documents written in the Muse markup language into various output formats, including PDF, HTML, EPUB, and LaTeX. With a flexible constructor, users can specify options such as font selection, output type, and compilation settings, allowing for tailored document generation. The module supports recursive compilation of directories, making it efficient for processing multiple files while managing auxiliary files and logging errors. Notably, version 1.91 has removed the xeCJK usage to avoid conflicts with babel options, enhancing compatibility for users working with multilingual documents. This module is particularly useful for authors and publishers looking to convert Muse documents into polished, professional formats.
Future-IO-Impl-Uring
Release | 20 Feb 2026 12:17 PM | Author: LEONT | Version: 0.008
CPAN Testers: Pass 100.0%
A Future::IO implementation for IO::Uring
Future::IO::Impl::Uring is a Perl module that provides an implementation of Future::IO utilizing the IO::Uring interface, designed for efficient asynchronous I/O operations on Linux systems with kernel version 6.7 or higher. By simply loading this module alongside Future::IO, users can leverage its asynchronous capabilities without needing to implement additional methods. Recent updates in version 0.007 include the adoption of IO::Uring 0.011 for improved memory management and enhancements to error messaging, making it a robust choice for developers looking to optimize I/O performance in their applications.
Mo-utils-Perl
Release | 20 Feb 2026 12:11 PM | Author: SKIM | Version: 0.01
CPAN Testers: Pass 100.0%
Mo Perl utilities
Mo::utils::Perl is a Perl module designed to provide utilities for verifying Perl-related values, specifically focusing on version checks. With its primary function, `check_version`, users can easily validate that a specified parameter corresponds to the correct Perl version, ensuring that their code adheres to version requirements. If the check fails, the module generates an error message detailing the issue, making it straightforward to identify and rectify version discrepancies. This module is particularly useful for developers who need to enforce version constraints in their applications, enhancing code reliability and maintainability.
Sumi-CSS
Release | 20 Feb 2026 07:23 AM | Author: SCESANO | Version: 0.002
CPAN Testers: Pass 100.0%
Mojo-like access to cascading style sheets
Sumi::CSS is a Perl module that offers a Mojolicious-style object-oriented interface for parsing, manipulating, and reconstructing cascading style sheets (CSS). It allows developers to easily parse CSS text, traverse the rules with a callback function, and serialize the CSS back into string format with options for minification and custom indentation. Additionally, Sumi::CSS supports the creation of localized copies of CSS, enabling developers to prepend prefixes to selectors for namespacing or localization purposes. With its straightforward methods and support for nested at-rules, Sumi::CSS is a powerful tool for managing CSS in Perl applications.
Em·dee, Markdown Easy on the Eyes
The `mdee` module is a terminal-based multi-column Markdown viewer designed to enhance the readability of Markdown documents, particularly those generated by large language models (LLMs). It preserves the original Markdown formatting while providing syntax highlighting, line folding for long list items, and table alignment. Users can customize the output style, color themes, and layout options, allowing for a tailored viewing experience. The module supports various output modes, including paged and filtered views, and integrates with other tools for enhanced functionality. Notably, the recent version 1.00 has integrated the `App::Greple::md` module, streamlining the syntax highlighting and table formatting processes, which enhances the overall performance and usability of the viewer.
The clan of fierce vikings with 🪓 and 🛡️ to AId your rAId
Langertha is a versatile Perl module designed to provide a unified interface for interacting with various Large Language Model (LLM) APIs, including OpenAI, Anthropic, Ollama, and more. By abstracting the differences between these providers, Langertha allows developers to seamlessly integrate AI capabilities into their applications with a consistent API. It supports both synchronous and asynchronous operations, including streaming responses, and offers features such as customizable parameters for temperature and response size. With its role-based architecture, Langertha is easily extensible, making it an ideal choice for developers looking to leverage AI in their projects without getting bogged down by provider-specific intricacies.
Kubernetes-REST
Release | 20 Feb 2026 05:05 AM | Author: GETTY | Version: 1.001
A Perl REST Client for the Kubernetes API
Kubernetes::REST is a Perl module that serves as a REST client for interacting with the Kubernetes API, simplifying the process of managing Kubernetes resources through a straightforward interface. It allows users to perform common operations such as listing, creating, updating, patching, and deleting resources like Pods and Namespaces, while automatically handling the complexities of API endpoint construction and authentication. The module leverages IO::K8s classes to return typed objects, ensuring that users can work with structured data rather than raw hash references. Additionally, it supports dynamic loading of resource maps from the Kubernetes cluster's OpenAPI specification, making it adaptable to different cluster versions. With features like resource watching and pluggable HTTP backends, Kubernetes::REST provides a robust solution for developers looking to integrate Kubernetes management into their Perl applications.
Net-Async-MCP
Release | 20 Feb 2026 03:26 AM | Author: GETTY | Version: 0.001
CPAN Testers: Pass 100.0%
Async MCP (Model Context Protocol) client for IO::Async
Net::Async::MCP is a Perl module designed for asynchronous communication with MCP (Model Context Protocol) servers, leveraging the IO::Async framework. It supports various transport methods, including in-process connections to MCP servers and subprocess communication via standard input/output, making it versatile for different server implementations. The module provides a comprehensive API for initializing connections, listing available tools and prompts, invoking tools with specific arguments, and managing resources, all while utilizing Future objects for asynchronous operations. With its easy-to-use async/await syntax, developers can efficiently interact with MCP servers, ensuring smooth and responsive applications.
IPC-Manager
Release | 20 Feb 2026 02:58 AM | Author: EXODIST | Version: 0.000002
CPAN Testers: Pass 100.0%
Decentralized local IPC through various protocols
IPC::Manager is a versatile Perl module designed for decentralized inter-process communication (IPC) on a single machine, enabling message-based interactions between local processes through various protocols. It allows users to initialize a data store, which can be either temporary or persistent, and facilitates the sending and receiving of messages using a pluggable serialization mechanism. By utilizing the `ipcm_spawn` function, developers can create a new IPC instance, while `ipcm_connect` establishes connections for message exchange. The module supports multiple client protocols, including filesystem-based and database-driven methods, making it adaptable to different environments and requirements. With IPC::Manager, developers can efficiently manage communication between processes, ensuring seamless data transfer and message handling.
Hash-Util-Set
Release | 19 Feb 2026 11:48 PM | Author: CHANSEN | Version: 0.07
Set operations on hash keys
The `Hash::Util::Set` Perl module provides a comprehensive suite of set operations specifically designed for hash keys, allowing developers to treat hash keys as mathematical sets. It includes functions for performing common set operations such as union, intersection, difference, and symmetric difference, as well as predicates to evaluate relationships between sets, like disjointness and subset status. Additionally, the module offers membership tests to check for the existence of specific keys within a hash. With its ability to partition keys into distinct categories, `Hash::Util::Set` simplifies the manipulation and comparison of hash keys, making it an essential tool for Perl developers working with data structures that require set-like behavior.
Perl client for German Federal Government APIs (bund.dev)
The `WWW::Bund` Perl module serves as a client for accessing various APIs provided by the German Federal Government, available at bund.dev. With version 0.002, it supports 19 public APIs encompassing a wide range of data, including traffic, weather, news, and environmental information, through 114 endpoints. The module features both a generic call interface and type-safe API adapters for commonly used services, ensuring ease of use and integration. Notably, the recent update introduced four new fully functional APIs related to air quality, market master data, plant protection products, and waste management, while also removing six non-functional APIs to enhance reliability. Additionally, it includes built-in caching, rate limiting, and support for various output formats, making it a comprehensive tool for developers needing access to government data in Perl applications.
Plack-Middleware-DirIndex-Htaccess
Release | 19 Feb 2026 08:42 PM | Author: JOSERIJO | Version: 1.01
CPAN Testers: Pass 100.0%
Check .htaccess file for DirectoryIndex
Plack::Middleware::DirIndex::Htaccess is a Perl module designed to enhance your Plack applications by mimicking the Apache web server's DirectoryIndex functionality. This middleware reads the DirectoryIndex directive from existing .htaccess files, allowing your application to serve default HTML files for directory URLs, such as automatically displaying "index.html" when a user accesses a directory. If no DirectoryIndex is specified, it defaults to serving a specified file (defaulting to "index.html") if it exists. This module is particularly useful for developers looking to replicate Apache's behavior in a local Plack environment, ensuring consistency between development and production setups. The initial version was released on February 9, 2026.
Write command line apps with less suffering
App::Cmd is a Perl module designed to simplify the creation of complex command-line applications by abstracting away many of the common challenges associated with command-line interface (CLI) development. It allows developers to define commands, options, and help documentation in a structured manner, making it easier to manage and extend applications. With features like command plugins, global options, and built-in help commands, App::Cmd streamlines the process of building robust CLI tools. A noteworthy recent addition in version 0.338 is the experimental `--for-completion` option, which aids in generating shell completions, enhancing user experience and functionality. This module is suitable for any version of Perl released in the last five years, ensuring broad compatibility for developers.
Getopt-Long-Descriptive
Release | 19 Feb 2026 08:25 PM | Author: RJBS | Version: 0.117
Getopt::Long, but simpler and more powerful
Getopt::Long::Descriptive is a Perl module that simplifies command-line option parsing by building on the capabilities of Getopt::Long while enhancing usability and power. It allows developers to define options and their specifications in a straightforward manner, automatically generating usage messages and validating input data. With its easy-to-use `describe_options` function, users can specify required and optional parameters, set defaults, and create help messages without delving into complex configurations. This module is particularly useful for creating user-friendly command-line applications, as it streamlines the process of handling options and improves the overall user experience.
cpan-listchanges
Favorite | 19 Feb 2026 08:06 PM | Author: MIYAGAWA | Version: 0.08
Upvotes: 14 | CPAN Testers: Unknown 100.0%
List changes for CPAN modules
App::cpanlistchanges is a Perl module designed to facilitate the retrieval and comparison of change logs for CPAN modules, allowing developers to easily track updates and modifications. Originally developed by Tokuhiro Matsuno and later enhanced by Tatsuhiko Miyagawa, this tool fetches change information directly from MetaCPAN, streamlining the process of monitoring changes across different module versions. Notably, the recent update in version 0.08, released on August 14, 2018, improved functionality by utilizing MetaCPAN for fetching changes, enhancing the module's reliability and performance. This module is particularly useful for developers who need to stay informed about the evolution of the libraries they depend on.
cpan-outdated
Favorite | 19 Feb 2026 08:05 PM | Author: DOLMEN | Version: 0.32
Upvotes: 36 | CPAN Testers: Pass 100.0%
Detect outdated CPAN modules in your environment
App::cpanoutdated is a Perl module designed to help users identify outdated CPAN modules within their environment, streamlining the process of maintaining up-to-date software dependencies. By leveraging the functionality of the cpan-outdated command, this tool provides a straightforward way to check for module updates, ensuring that developers can easily manage and upgrade their Perl modules as needed. Authored by Tokuhiro Matsuno and released under the same terms as Perl itself, App::cpanoutdated is a valuable resource for anyone looking to keep their Perl environment current and efficient.
URI-Shortener
Release | 19 Feb 2026 07:34 PM | Author: TEODESIAN | Version: 1.006
Shorten URIs so that you don't have to rely on external services
The URI::Shortener Perl module provides a robust solution for creating and managing shortened URIs without relying on external services. It allows users to generate short links that are easy to share and manage, particularly useful in contexts like email where long URLs can be problematic. The module supports persistent storage using SQLite by default, with options for PostgreSQL and MySQL, ensuring that shortened URIs can be retrieved and managed over time. It features methods for shortening and lengthening URIs, as well as pruning old entries to maintain database efficiency. With a focus on security and performance, URI::Shortener employs a cryptographic algorithm to generate unique short links, making it a reliable choice for applications that require user tracking or the need to obscure original URLs.
RSS/Atom feed reader and aggregator
The `WWW::Noss` module serves as a backend for the noss RSS/Atom feed reader and aggregator, enabling users to efficiently manage and interact with their feeds through a command-line interface. By initializing a `WWW::Noss` object with command-line arguments, users can execute various commands such as updating feeds, reading posts, and managing feed groups. Recent updates in version 2.02, released on January 10, 2026, have enhanced the module's functionality by allowing it to read compressed feeds, implementing a default timeout of 45 seconds, and improving HTML stripping capabilities for better content handling. This module is particularly useful for developers looking to integrate feed reading and aggregation features into their applications or for users seeking a robust command-line tool for managing their RSS/Atom feeds.
Mo-utils-Array
Release | 19 Feb 2026 04:18 PM | Author: SKIM | Version: 0.03
CPAN Testers: Pass 100.0%
Mo array utilities
The Mo::utils::Array module provides a set of utility functions designed to facilitate the validation of array data structures within Perl objects. It includes subroutines such as `check_array`, which verifies that a specified key in an object references an array; `check_array_object`, which ensures that the array contains instances of a specified class; `check_array_required`, which checks that the array is not empty; and `check_array_strings`, which validates that the array contains only specific strings. These functions help maintain data integrity by generating errors when the checks fail, making it easier for developers to manage and enforce data structure requirements in their applications.
Perl Memory Analysis Tool
"Devel::MAT" is a powerful Perl Memory Analysis Tool designed to assist developers in diagnosing memory-related issues within Perl programs. By loading heap dump files, it provides a structured environment for analysis through various tools that adhere to the Devel::MAT::Tool API. Users can access a range of functionalities, including loading specific tools, tracing reference graphs, and searching for symbols within the symbol table. While the file format is still evolving, the module aims to maintain compatibility across versions, allowing for extensibility without breaking existing functionality. Ideal for those looking to enhance their memory analysis capabilities, "Devel::MAT" serves as a comprehensive solution for understanding and optimizing memory usage in Perl applications.
App-rdapper
Release | 19 Feb 2026 02:58 PM | Author: GBROWN | Version: 1.24
Upvotes: 1 | CPAN Testers: Pass 100.0%
A command-line RDAP client
App::rdapper is a command-line client for the Registration Data Access Protocol (RDAP), designed to retrieve and display information about internet resources such as domain names, IP addresses, and autonomous systems in a user-friendly format. Users can query various types of objects, including forward and reverse domain names, IP addresses, and registrar details, by providing them as arguments. The module supports a range of options for customizing output, such as displaying registry or registrar records, performing searches, and bypassing local caches. Additionally, it offers internationalization features and can be configured via a user-specific configuration file. With its straightforward command-line interface, App::rdapper simplifies the process of accessing and interpreting RDAP data for developers and network administrators.
Mo-utils-Binary
Release | 19 Feb 2026 09:02 AM | Author: SKIM | Version: 0.01
CPAN Testers: Pass 100.0%
Mo utilities for binary data
Mo::utils::Binary is a Perl module designed to facilitate the handling of binary data by providing utility functions specifically for checking the byte length of parameters. The primary function, `check_bytes_len`, allows developers to verify that a specified key in a data structure meets a defined byte length requirement, generating an error message if the check fails. This module is particularly useful in applications where precise control over binary data is necessary, ensuring that data integrity is maintained. The initial release of this module, version 0.01, was made on February 19, 2026, marking its introduction to the Perl ecosystem.
Mo-utils-Number
Release | 19 Feb 2026 08:59 AM | Author: SKIM | Version: 0.09
CPAN Testers: Pass 100.0%
Mo utilities for numbers
The `Mo::utils::Number` Perl module provides a set of utility functions designed to validate various types of numerical data within data objects. It includes subroutines such as `check_int`, `check_natural`, `check_number`, `check_percent`, `check_positive_decimal`, and `check_positive_natural`, each tailored to ensure that the specified parameter adheres to the expected numerical format, whether it be an integer, natural number, or a positive decimal. This module is particularly useful for developers who need to enforce strict data validation rules in their applications. Notably, the recent version 0.09 introduced aliases for integer and unsigned integer checks, enhancing its functionality and usability.
Read, Write file meta-data
File::Sticker is a Perl module designed for reading and writing file meta-data in a standardized manner, while also facilitating the management of this information within a database. With its comprehensive set of methods, users can create objects to handle various tasks such as reading meta-data from files, adding or deleting specific fields, replacing existing meta-data, and querying the database for file information. Additionally, File::Sticker allows for the identification of missing or overlooked files in the database, as well as the ability to derive new values from existing meta-data. This module is particularly useful for developers and system administrators who need to maintain organized and accessible file meta-data across multiple files and databases.
StreamFinder
Release | 19 Feb 2026 04:14 AM | Author: TURNERJW | Version: 2.62
Upvotes: 7 | CPAN Testers: Pass 100.0%
Fetch actual raw streamable URLs from various radio-station, video & podcast websites
StreamFinder is a versatile Perl module designed to extract actual streamable URLs from a variety of media sources, including radio stations, podcasts, and video platforms. By accepting a webpage URL from supported sites, it retrieves the corresponding stream URLs, titles, and cover art icons, allowing users to bypass the clutter of web browsers and enjoy media through their preferred players. The module supports numerous platforms, including Apple Podcasts, YouTube, and SoundCloud, and features methods for fetching detailed metadata such as artist names, genres, and descriptions. Recent updates have improved functionality, including the addition of new site support and enhancements to existing modules, such as StreamFinder::PodcastAddict, which has regained its ability to fetch episode data after site changes. This module is particularly useful for developers looking to integrate streaming capabilities into their applications or for users wanting a streamlined media experience.
News!
The Bored Perl module, currently at version 0.04, provides a whimsical approach to handling feelings of ennui through a set of playful methods. By using Bored, developers can invoke functions like `pointless`, `waiting`, and `tortured` to express or simulate various states of boredom in their applications. This module is particularly useful for creating lighthearted scripts or for adding a touch of humor to projects. With its straightforward interface, users can easily integrate Bored into their Perl programs. The module is actively maintained, and users are encouraged to report any bugs or feature requests through the provided channels.
App-Greple
Release | 19 Feb 2026 03:55 AM | Author: UTASHIRO | Version: 10.04
Extensible grep with lexical expression and region handling
The `greple` Perl module is an advanced and extensible tool designed to enhance the functionality of the traditional `grep` command by incorporating lexical expression and region handling capabilities. With its latest version, 10.04, released on February 19, 2026, `greple` introduces a new `--filter` option, allowing users to utilize it as a filter in their command-line operations. This module is particularly useful for developers and system administrators who require sophisticated text searching and manipulation features, enabling them to handle complex patterns and regions within text files efficiently. The module is actively maintained, with a history of improvements and bug fixes, ensuring compatibility with newer Perl versions and enhancing user experience through comprehensive documentation and support for various options.
Future-Uring
Release | 18 Feb 2026 10:55 PM | Author: LEONT | Version: 0.002
Future-returning io_uring functions
Future::Uring is a Perl module that provides a user-friendly interface for utilizing the Linux "io_uring" asynchronous I/O framework, allowing developers to perform non-blocking I/O operations efficiently. This experimental module enables users to open files, write data, create directories, and manage sockets using familiar function names that mirror their synchronous counterparts, while also supporting advanced features like submission chaining, timeouts, and error handling. By leveraging the capabilities of io_uring, Future::Uring aims to enhance performance in I/O-bound applications, making it easier to handle multiple asynchronous tasks concurrently.
Net-Async-Kubernetes
Release | 18 Feb 2026 10:54 PM | Author: GETTY | Version: 0.002
Async Kubernetes client for IO::Async
Net::Async::Kubernetes is an asynchronous client for interacting with Kubernetes clusters using the IO::Async framework. This module simplifies non-blocking communication with Kubernetes by providing a set of Future-based CRUD operations, allowing users to list, get, create, update, patch, and delete resources such as Pods and Deployments. It supports automatic loading of kubeconfig for easy configuration and includes a robust watcher feature that enables real-time event streaming with auto-reconnect capabilities. Recent updates have focused on enhancing compatibility and performance, including an update to the minimum requirements, ensuring that users can leverage the latest features and improvements in their Kubernetes interactions.