CPANscan logo

CPANscan

Recent Perl modules, releases and favorites.
Last updated 12 December 2025 04:31 AM
Perl logo

Module-Release

Release | 12 Dec 2025 04:23 AM | Author: BRIANDFOY | Version: 2.137
Upvotes: 5 | CPAN Testers
Automate software releases
The Perl module Module::Release is designed to automate the software release process, streamlining tasks such as version control, testing, and uploading to repositories like PAUSE (CPAN) and SourceForge. Originally developed as a script, it has evolved into a comprehensive tool that integrates with various build systems, including Makefile.PL and Module::Build, and supports multiple version control systems like CVS, SVN, and Git through mixins. The module provides a series of methods that check conditions (e.g., ensuring all tests pass) before proceeding with the release, ensuring that errors are caught early in the process. Recent updates include enhancements to the handling of GitHub metadata and improvements in the release process, making it easier for developers to manage their distributions effectively. With its flexible configuration options and robust functionality, Module::Release is an essential tool for Perl developers looking to streamline their release workflows.
Perl logo

Daje-Workflow

Release | 12 Dec 2025 03:41 AM | Author: JANESKIL | Version: 0.24
It's a simple workflow engine
Daje::Workflow is a straightforward workflow engine designed to manage processes as a series of states and transitions triggered by events. It allows developers to define workflows with various activities, each leading to a resulting state, making it easy to model complex processes in a clear and organized manner. The module requires several components, including database models and error handling, to function effectively. Recent updates in version 0.24 include bug fixes, the merging of the Daje::Workflow::Loader and Daje::Workflow::Config modules, and the addition of pre and post activity checks, enhancing its robustness and usability for developers looking to implement workflow management in their applications.
Perl logo

Daje-Plugin-workflow

Release | 12 Dec 2025 03:41 AM | Author: JANESKIL | Version: 0.15
Plugin to use Daje::Wrokflow
Daje::Plugin::Workflow is a Mojolicious plugin designed to integrate with Daje::Workflow, enabling developers to manage and execute workflows within their applications seamlessly. By utilizing this plugin, users can easily configure workflow loaders, specifying paths and types for their workflow files, thus streamlining the process of workflow management. It requires several components, including Daje::Workflow and its associated loaders and database modules, ensuring a robust framework for workflow operations. This plugin is ideal for developers looking to enhance their Mojolicious applications with powerful workflow capabilities.
Perl logo

SPVM-Regex

Release | 12 Dec 2025 01:40 AM | Author: KIMOTO | Version: 0.255
CPAN Testers: Pass 100.0%
Regular Expressions
The SPVM::Regex module provides a powerful interface for working with regular expressions in Perl, leveraging the Google RE2 engine for efficient pattern matching and string manipulation. It offers methods for matching patterns, replacing substrings, and splitting strings based on regex patterns, all while supporting UTF-8 and various regex features. Users can create Regex objects with custom patterns and flags, perform matches with optional offsets and lengths, and utilize both simple and callback-based replacements. Recent updates include bug fixes that enhance pattern matching capabilities, particularly for edge cases involving anchors like `\A` and `\z`, ensuring more reliable behavior in string processing tasks. This module is ideal for developers looking to integrate robust regex functionality into their SPVM applications.
Perl logo

Schema-Validator

Release | 12 Dec 2025 12:44 AM | Author: NHORNE | Version: 0.01
CPAN Testers: Pass 100.0%
Tools for validating and loading Schema.org vocabulary definitions
Schema::Validator is a Perl module designed to facilitate the validation and loading of Schema.org vocabulary definitions, enabling developers to work effectively with structured data. It provides functions for validating datetime formats and dynamically loading Schema.org class and property definitions from the official JSON-LD vocabulary file. The module includes a command-line tool that scans HTML files for embedded JSON-LD and validates them against local schema definitions, offering detailed diagnostics and integration with GitHub Code Scanning through SARIF output. Additionally, it supports dynamic validation by downloading the latest Schema.org vocabulary, caching it for improved performance. This module is particularly useful for ensuring compliance with structured data standards in web applications.
Perl logo

Bitcoin-Crypto

Release | 11 Dec 2025 10:00 PM | Author: BRTASTIC | Version: 4.003
Upvotes: 8 | CPAN Testers: Pass 92.5%N/A 7.5%
Bitcoin cryptography in Perl
Bitcoin::Crypto is a Perl module designed for cryptographic operations related to Bitcoin, facilitating the manipulation of keys, transactions, and encodings. It provides essential functions for generating mnemonics, deriving keys using BIP44 standards, and handling both private and public keys for signatures and addresses. With its straightforward interface, users can easily perform common Bitcoin tasks such as creating wallets and managing transactions. The module also offers shortcut functions for loading various key and transaction-related packages, making it a versatile tool for developers working with Bitcoin in Perl.
Perl logo

Data-Dumper-Interp

Release | 11 Dec 2025 06:45 PM | Author: JIMAVERA | Version: 7.022
CPAN Testers: Pass 78.3%Fail 13.3%N/A 8.3%
Interpolate Data::Dumper output into strings for human consumption
Data::Dumper::Interp is a Perl module designed to enhance the output of Data::Dumper for better readability and human consumption. It allows for the interpolation of variable values into strings, making it easier to visualize complex data structures. The module provides various functions to format scalars, arrays, and hashes, while also offering options to control the display of objects and references. Notably, it can handle Unicode characters gracefully and avoids common pitfalls associated with debugging. Recent updates include the reversion of a change related to the $Carp::RefArgFormatter setting, ensuring that the module maintains its intended functionality without unintended side effects. This makes Data::Dumper::Interp a valuable tool for developers looking to debug and present data in a clear and concise manner.
Perl logo

File-HomeDir

Favorite | 11 Dec 2025 04:01 PM | Author: REHSACK | Version: 1.006
Upvotes: 35 | CPAN Testers: Pass 99.1%Fail 0.7%Unknown 0.2%
Find your home and other directories on any platform
File::HomeDir is a versatile Perl module designed to locate user-specific directories across various platforms, ensuring consistent access to essential folders like home, desktop, documents, music, pictures, and videos. By providing a unified API, it simplifies the development of cross-platform Perl applications that require user directory information. The module features methods for retrieving paths for both the current user and other users, while also handling cases where directories may not exist. Recent updates have improved compatibility with modern toolchains and addressed specific issues reported by users, enhancing its reliability and functionality.
Perl logo

Mail-Transport

Release | 11 Dec 2025 03:50 PM | Author: MARKOV | Version: 4.00
CPAN Testers: Pass 96.6%N/A 3.4%
Email message exchange
The Mail::Transport Perl module provides a framework for interacting with various Mail Transfer Agents (MTAs) to facilitate the sending and receiving of email messages using different protocols. It serves as a base class that can be extended by other modules, such as Mail::Transport::Send for sending emails via protocols like SMTP, and Mail::Transport::Receive for receiving emails through protocols like POP3. With configurable options for executable paths, hostnames, authentication, and connection parameters, Mail::Transport allows developers to easily implement email functionality in their applications while managing error handling and connection retries. This module is particularly useful for those looking to integrate email capabilities into Perl applications with flexibility and ease.
Perl logo

Mail-Box-Parser-C

Release | 11 Dec 2025 03:50 PM | Author: MARKOV | Version: 4.00
CPAN Testers: Pass 94.1%N/A 5.9%
Parse mbox files with XS
Mail::Box::Parser::C is a Perl module designed for efficient parsing of email messages using ANSI C routines through Perl's XS extension facility. It serves as an optional parser for the MailBox framework, automatically utilized when messages are provided via file handles, while defaulting to the Perl-based parser in other scenarios. This module enhances performance and introduces a new attribute, `boxnr`, for better management of mail folder access. Notably, version 4.00 has transitioned to using the Mail::Box 4 exception model with Log::Report, marking a significant update in error handling. Users upgrading from earlier versions should be aware of compatibility changes, particularly in exception handling.
Perl logo

Mail-Box-POP3

Release | 11 Dec 2025 03:50 PM | Author: MARKOV | Version: 4.000
CPAN Testers: N/A 21.1%Unknown 78.9%
Mail::Box connector via POP3
The Mail::Box::POP3 module provides a robust interface for managing email folders stored on a remote server using the POP3 protocol. It allows Perl applications to interact with POP3 email accounts, enabling users to retrieve and handle messages efficiently. This module abstracts the complexities of the underlying POP3 communication through the Mail::Transport::POP3 class, focusing on message management within a POP3 folder. Users can authenticate using various methods, including LOGIN and APOP, and can specify options such as server details and message types. However, it's important to note that due to the limitations of the POP3 protocol, users cannot create sub-folders or write messages back to the server, making this module primarily suitable for reading and organizing emails. With its comprehensive error handling and support for SSL connections, Mail::Box::POP3 is an essential tool for developers looking to integrate POP3 email functionality into their Perl applications.
Perl logo

Mail-Box-IMAP4

Release | 11 Dec 2025 03:49 PM | Author: MARKOV | Version: 4.000
CPAN Testers: Pass 94.1%N/A 5.9%
Mail::Box connector via IMAP4
The `Mail::Box::IMAP4` Perl module provides a robust interface for managing IMAP4 email folders, allowing users to interact with messages stored on remote servers using the IMAP4 protocol. It simplifies the process of opening, reading, and manipulating email folders by encapsulating the complexities of network communication and message handling. With support for multiple folders over a single connection, this module enables efficient email management, including features like caching options for message bodies and headers, as well as customizable access modes. Designed for flexibility, it allows developers to specify various options during folder creation and supports both read and write operations, making it an essential tool for applications that require email functionality.
Perl logo

Mail-Box

Release | 11 Dec 2025 03:49 PM | Author: MARKOV | Version: 4.00
Upvotes: 16 | CPAN Testers: Pass 95.6%N/A 4.4%
Complete E-mail handling suite
The Mail::Box module provides a robust framework for managing mailboxes, allowing users to interact with various types of mail folders in a consistent manner. It serves as a base class for different folder types, such as Mail::Box::Dir, Mail::Box::File, and Mail::Box::Net, each of which handles message storage differently—either in a single file or across multiple files in a directory. With Mail::Box, users can easily open, read, and manipulate messages, including adding, deleting, and iterating through them, all while benefiting from a unified API that abstracts the underlying complexities of different mailbox formats. The module also supports advanced features like message filtering, lazy loading of message bodies, and folder locking, making it a powerful tool for email management in Perl applications.
Perl logo

HTML-FromMail

Release | 11 Dec 2025 03:48 PM | Author: MARKOV | Version: 4.00
CPAN Testers: Pass 97.4%N/A 2.6%
Convert E-mail into HTML
The HTML::FromMail module serves as a base class for generating HTML representations of email data, making it particularly useful for creating web-based email clients. By leveraging the Mail::Message framework, it allows developers to read email messages and export them as HTML, with extensive customization options for formatting headers, bodies, and attachments. The module supports pluggable data inliners and preview generators, enabling inline display of message content and previews of attachments. While it offers a powerful and configurable way to produce HTML output, users should be aware of compatibility changes in version 4.0 and above, and the documentation may require further enhancement. Overall, HTML::FromMail is a versatile tool for transforming email data into web-friendly formats.
Perl logo

Bio-Phylo

Release | 11 Dec 2025 02:16 PM | Author: RVOSA | Version: v2.0.2
Upvotes: 8 | CPAN Testers: Pass 100.0%
An object-oriented Perl toolkit for analyzing and manipulating phyloinformatic data
Bio::Phylo is a foundational Perl module designed for phylogenetic analysis, serving as the base class for a suite of related modules within the Bio::Phylo package. While it is not typically used directly, it provides essential methods and functionalities that are inherited by other objects in the package, facilitating object-oriented programming in the context of phylogenetics. Users can set global verbosity levels for logging, instantiate Bio::Phylo objects with various attributes, and manage identifiers, descriptions, and scores through a series of mutator and accessor methods. Additionally, the module includes utilities for object retrieval and JSON serialization, making it a versatile tool for researchers engaged in bioinformatics and evolutionary biology. For comprehensive usage guidelines, users are encouraged to refer to the accompanying manual.
Perl logo

OptArgs2

Release | 11 Dec 2025 10:47 AM | Author: MLAWREN | Version: v2.0.17
Upvotes: 8 | CPAN Testers: Pass 98.4%N/A 1.6%
CLI argument and option processing
OptArgs2 is a powerful Perl module designed for processing command-line arguments, options, and subcommands, making it ideal for both simple scripts and complex multi-command applications. With its intuitive API, users can define commands and their associated arguments and options using the `optargs()`, `cmd()`, and `subcmd()` functions. This module enhances usability by automatically generating usage messages and validating input, thus helping developers avoid common errors. Recent updates in version 2.0.17 include minor documentation improvements and the indexing of previously hidden packages, ensuring better accessibility and clarity for users. OptArgs2 is particularly useful for applications that require structured command-line interfaces, allowing for a seamless user experience.
Perl logo

File-Sticker

Release | 11 Dec 2025 06:22 AM | Author: RUBYKAT | Version: 4.301
CPAN Testers: Pass 96.6%N/A 3.4%
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 looking to streamline file management and enhance data organization through effective meta-data handling.
Perl logo

Time-OlsonTZ-Data

Release | 11 Dec 2025 04:13 AM | Author: DBOOK | Version: 0.202503
CPAN Testers: Pass 100.0%
Olson timezone data
The `Time::OlsonTZ::Data` Perl module provides a comprehensive interface to the Olson timezone database, encapsulating its binary tzfiles and related metadata. It allows users to access essential timezone information, including canonical names, link names, and country-specific timezone selections, making it easier to work with timezones in applications. The module includes functions to retrieve the current version of the database, obtain timezone file paths, and explore the relationships between timezones and countries. Regular updates ensure that the module remains accurate and reflects the latest changes in timezone rules, making it a vital tool for developers needing reliable timezone data in their Perl applications.
Perl logo

App-Greple

Release | 11 Dec 2025 03:24 AM | Author: UTASHIRO | Version: 10.00
Upvotes: 4 | CPAN Testers: Pass 71.0%N/A 29.0%
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.00, released on December 11, 2025, `greple` introduces several significant improvements, including a new `--block-number` option for displaying block numbers, enhanced support for nested DEFINE patterns, and comprehensive documentation updates. This version also raises the minimum Perl version requirement from 5.14 to 5.24, ensuring compatibility with more recent Perl features. `greple` is particularly useful for developers and system administrators who require sophisticated text searching and manipulation capabilities, making it a powerful addition to any Perl toolkit.
Perl logo

DateTime-TimeZone

Release | 11 Dec 2025 01:52 AM | Author: DROLSKY | Version: 2.66
Upvotes: 22 | CPAN Testers: Pass 100.0%
Time zone object base class and factory
The `DateTime::TimeZone` module serves as a foundational class for creating and managing time zone objects in Perl, primarily used in conjunction with the `DateTime` module. It allows developers to instantiate time zones by name, such as 'America/Chicago', and provides methods to retrieve time offsets, determine daylight saving time status, and handle various time zone representations, including UTC and floating time zones. The module also includes functionality for validating time zone names, retrieving lists of available time zones by category or country, and managing time zone links from the Olson database. With its robust interface, `DateTime::TimeZone` is essential for applications that require accurate date and time handling across different geographical regions.
Perl logo

JQ-Lite

Favorite | 10 Dec 2025 07:48 PM | Author: SHINGO | Version: 1.44
Upvotes: 7 | CPAN Testers: Pass 27.0%Fail 0.9%N/A 72.2%
A lightweight jq-like JSON query engine in Perl
JQ::Lite is a lightweight, pure-Perl JSON query engine that provides a jq-like syntax for extracting, traversing, and filtering JSON data without the need for external binaries or XS modules. With features such as dot-notation traversal, optional key access, boolean filters, and a variety of built-in functions for data manipulation, JQ::Lite allows users to perform complex queries on JSON structures easily. The module also includes an interactive REPL mode and a command-line interface for executing queries directly from JSON files or standard input. Notably, version 1.44 introduces the jq-compatible `rest` filter, enhancing its functionality for users familiar with jq syntax.
Perl logo

Test2-Plugin-SubtestFilter

Favorite | 10 Dec 2025 05:45 PM | Author: KFLY | Version: 0.06
Upvotes: 3 | CPAN Testers: Pass 97.6%N/A 2.4%
Filter subtests by name
Test2::Plugin::SubtestFilter is a Perl module designed to enhance the Test2 framework by allowing developers to filter subtests based on their names using environment variables. This functionality is particularly useful during development and debugging, enabling users to run only specific subtests or their nested children by setting the `SUBTEST_FILTER` variable. The module supports both substring and regex pattern matching, making it flexible for various testing scenarios. Recent updates include improved support for evaluating contexts by guessing file paths from the caller stack, optimizing performance by avoiding unnecessary parsing when no filter is set, and enhancing the parsing of deeply nested subtests. This module is a valuable tool for developers looking to streamline their testing process in Perl.
Perl logo

Number-Phone

Release | 10 Dec 2025 03:47 PM | Author: DCANTRELL | Version: 4.0009
Upvotes: 21 | CPAN Testers: Pass 99.3%N/A 0.7%
Base class for Number::Phone::* modules
The `Number::Phone` Perl module serves as a foundational class for managing and validating phone numbers across various countries. By utilizing country-specific subclasses, it allows developers to create and manipulate phone number objects that can automatically adapt to the appropriate formatting and validation rules based on the provided country code. The module supports a range of functionalities, including checking if a number is valid, determining its type (e.g., mobile, fixed line, toll-free), and formatting it according to international standards. Additionally, it integrates with Google's `libphonenumber` project for enhanced data accuracy and can handle cases where specific country modules are unavailable by falling back on stub classes. This makes `Number::Phone` a versatile tool for applications that require robust phone number handling and validation.
Perl logo

Business-NAB

Release | 10 Dec 2025 02:43 PM | Author: LEEJO | Version: 0.02
CPAN Testers: Pass 59.2%Fail 40.8%
Top level namespace for the various NAB file formats
Business::NAB is a Perl module that serves as a top-level namespace for various submodules designed to facilitate the parsing and creation of file formats used for transactions with the National Australia Bank (NAB). While the main module itself does not perform any operations, it provides a structured way to access specific functionalities through its submodules, such as handling BPAY payments and remittances, Australian Direct Entry payments and returns, account information files, and XML acknowledgements. This module is particularly useful for developers working with NAB's financial data interchange formats, streamlining the integration process. The initial release, version 0.01, was made on December 1, 2025, marking the module's debut in the Perl ecosystem.
Perl logo

Neo4j-Bolt

Release | 10 Dec 2025 11:58 AM | Author: AJNN | Version: 0.5001
Upvotes: 2 | CPAN Testers: Pass 92.2%N/A 7.8%
Neo4j server agent using Bolt protocol
The `Neo4j::Bolt` Perl module provides a convenient interface for querying Neo4j databases using the Bolt protocol, leveraging the underlying `libneo4j-client` library. It allows developers to establish connections to Neo4j servers, execute Cypher queries, and retrieve results in a structured format that maps Neo4j data types to Perl representations. With features such as support for SSL/TLS connections, customizable logging levels, and a variety of data types including nodes, relationships, and paths, `Neo4j::Bolt` simplifies the integration of Neo4j into Perl applications. Notably, the recent update (version 0.5000) enhances compatibility with Neo4j v5.0+, introduces new data types for date/time and duration, and resolves several memory leaks, ensuring improved performance and reliability.
Perl logo

Data-Validate-Sanctions

Release | 10 Dec 2025 11:25 AM | Author: DERIV | Version: 0.20
CPAN Testers: Pass 48.6%Fail 37.1%N/A 14.3%
Validate a name against sanctions lists
Data::Validate::Sanctions is a Perl module designed to validate names against various sanctions lists, ensuring compliance with regulatory requirements. It provides functions such as `is_sanctioned`, which checks if a given name matches any entry in the sanctions database, and `get_sanctioned_info`, which returns detailed information about any matches found. The module supports both a new API using hash references for input and a backward-compatible older API. Users can set the path to the sanctions file, which can be updated using the `update_data` method. Recent updates include the addition of MOHA sanctions lists and improvements to the XML parser for these lists, enhancing the module's functionality and data accuracy.
Perl logo

App-SpreadRevolutionaryDate

Release | 10 Dec 2025 09:58 AM | Author: GIBUS | Version: 0.53
Upvotes: 1 | CPAN Testers
Spread date and time from Revolutionary (Republican) Calendar on Bluesky, Twitter, Mastodon, Freenode and Liberachat
The App::SpreadRevolutionaryDate Perl module is designed to facilitate the dissemination of dates and times from the Revolutionary (Republican) Calendar across various social media platforms, including Bluesky, Twitter, Mastodon, Freenode, and Liberachat. With a straightforward constructor that allows for optional configuration file input, this module initializes an object that manages authentication and communication with the specified targets. The primary method, `spread`, enables users to easily share calendar dates to all configured platforms without requiring additional arguments, making it a convenient tool for those looking to promote revolutionary dates in a digital context.
Perl logo

SPVM-JSON

Release | 10 Dec 2025 06:00 AM | Author: KIMOTO | Version: 1.003
CPAN Testers: Pass 98.9%Unknown 1.1%
JSON
The SPVM::JSON module provides a robust interface for manipulating JSON data within the SPVM (Simple Perl Virtual Machine) environment. It allows users to easily encode SPVM data structures into JSON format and decode JSON data back into SPVM objects. The module features methods for creating new JSON objects, encoding various SPVM data types—including strings, numbers, lists, and hashes—into JSON, and decoding JSON strings into their corresponding SPVM representations. Recent updates include significant changes in version 1.003, which altered the decoding output for JSON lists from the List class to object arrays, and introduced support for options input, enhancing the module's flexibility and usability. With its comprehensive exception handling and adherence to JSON standards, SPVM::JSON is an essential tool for developers working with JSON in SPVM applications.
Perl logo

SPVM-IO-Socket-SSL

Release | 10 Dec 2025 05:30 AM | Author: KIMOTO | Version: 0.014
CPAN Testers: Pass 65.9%Fail 34.1%
Sockets for SSL Communication
The `SPVM::IO::Socket::SSL` module provides a robust interface for creating and managing SSL sockets in Perl, enabling secure communication over networks. It extends the `IO::Socket::IP` class, allowing users to easily establish SSL connections as either clients or servers. With features such as customizable SSL context, support for various SSL options (like certificate verification and ALPN protocols), and methods for reading and writing data securely, this module is essential for developers looking to implement secure socket communication. Recent updates include a significant change in version 0.014, where the `write` and `read` methods were renamed to `syswrite` and `sysread`, respectively, enhancing clarity and consistency in method naming.
Perl logo

Term-ANSIEncode

Release | 10 Dec 2025 05:28 AM | Author: RKELSCH | Version: 1.49
CPAN Testers: Pass 86.7%N/A 13.3%
Markup Language for ANSI Encoding
The Term::ANSIEncode Perl module provides a markup language for generating ANSI text, enabling developers to create visually rich terminal outputs with various formatting options such as colors, cursor movements, and text attributes. It requires a UTF-8 compatible terminal for optimal use of special characters and offers a wide range of tokens for controlling text appearance, including bold, italic, underlined, and various background and foreground colors. Recent updates have significantly improved token handling and expanded the symbol set, enhancing the module's functionality and documentation. Notably, version 1.49 introduced the "UNDERLINE COLOR" token, allowing for even more customization in terminal displays.