CPANscan logo

CPANscan

Recent Perl modules, releases and favorites.
Last updated 15 September 2025 04:30 AM
Perl logo

Schedule-Easing

Release | 15 Sep 2025 01:44 AM | Author: BBLACKM | Version: 0.1.4
CPAN Testers: Pass 96.6%Fail 0.5%N/A 2.9%
Stateless, stable selection of events with increased frequency during a schedule
The Schedule::Easing Perl module provides a robust framework for the stateless and stable filtering of events, allowing for a gradual ramp-up in the frequency of event emissions over a specified time period. This module is particularly useful for managing the output of alerts or notifications in systems where events may occur infrequently or in high volumes, ensuring that the transition from silence to full alerting is smooth and manageable. By defining a schedule with various easing configurations, users can categorize events based on specific patterns and control the rate at which they are emitted, avoiding sudden spikes in notifications. The module supports multiple easing types, including linear and MD5-based filtering, and allows for precise control over the timing and thresholds for event inclusion, making it ideal for applications such as alerting systems and staged deployments.
Perl logo

Circle-Miner

Release | 15 Sep 2025 01:12 AM | Author: CHENGYU | Version: 0.03
The miner module for circle chain sdk
The Circle::Miner Perl module serves as a mining utility for the Circle chain SDK, enabling users to efficiently mine blocks and interact with the blockchain. With a straightforward interface, it allows developers to create a miner instance, fetch blocks for mining using a specified wallet address, and mine those blocks with multi-threading support for enhanced performance. Once a block is mined, users can post it back to the network, ensuring compliance with required parameters such as address format and channel ID. This module is particularly useful for developers looking to integrate mining capabilities into their applications while leveraging Perl's robust features.
Perl logo

Task-MemManager-View-PDL

Release | 14 Sep 2025 09:36 PM | Author: CHRISARG | Version: 0.01
CPAN Testers: Pass 100.0%
Extends Task:MemManager with methods that provide PDL ndarray views
The `Task::MemManager::View::PDL` Perl module provides a powerful interface for creating PDL (Perl Data Language) views of buffers managed by the `Task::MemManager`. By leveraging Inline::C to interface with the PDL C API, this module allows users to create views that share memory with the underlying buffers, enabling efficient data manipulation and transformation. Users can create views of various PDL types and dimensions, and any modifications made through the view can reflect back on the original buffer, although PDL may occasionally copy data to a new location during transformations. This module is particularly useful for applications that require high-performance data processing and memory management. The initial release, version 0.01, was made on September 14, 2025, marking the beginning of its development.
Perl logo

Task-MemManager-View

Release | 14 Sep 2025 07:56 PM | Author: CHRISARG | Version: 0.01
CPAN Testers: Pass 100.0%
Provides access to alternative views (e.g. as PDL ndarrays) of Task::MemManager buffers
Task::MemManager is a Perl module designed for low-level memory management, providing a robust framework for allocating, managing, and manipulating memory buffers. It allows developers to create buffers using various allocators, with the default being PerlAlloc, which utilizes Perl's string functions. The module offers a range of methods to interact with memory, including buffer allocation, extraction of buffer regions, and retrieval of buffer properties such as size and element count. Additionally, it supports delayed garbage collection, enabling finer control over memory management in complex applications. Recent updates have focused on enhancing functionality and ensuring compatibility with various allocators, making it a versatile tool for developers needing efficient memory handling in Perl.
Perl logo

Data-Login

Release | 14 Sep 2025 06:05 PM | Author: SKIM | Version: 0.05
Upvotes: 1 | CPAN Testers: Pass 100.0%
Data objects for login
The `Data::Login` Perl module is designed to manage user login information, encapsulating details such as login names, password hashes, roles, and validity periods. It allows developers to create instances that represent user logins, which can be active only within specified time frames, making it suitable for applications that require time-sensitive access control. The module provides methods to retrieve various attributes, including the hash type used for password storage, the user's roles, and the validity dates. Recent updates in version 0.05 include improvements to the documentation examples and enhancements to the validation checks for parameters, ensuring better reliability and usability.
Perl logo

Plack-App-Tags-HTML

Release | 14 Sep 2025 02:07 PM | Author: SKIM | Version: 0.19
Upvotes: 1 | CPAN Testers: Pass 100.0%
Plack application for running Tags::HTML objects
Plack::App::Tags::HTML is a Perl module designed to facilitate the creation of web applications using Tags::HTML objects within the Plack framework. By providing a straightforward interface, it allows developers to instantiate Tags::HTML components and convert them into Plack applications seamlessly. The module includes methods for initializing various data structures required for processing HTML, CSS, and other web elements, making it versatile for different web application needs. Recent updates, particularly in version 0.19, have introduced additional tests for constructor parameters and improved error handling, enhancing the module's robustness and reliability for developers.
Perl logo

CGI-Info

Release | 14 Sep 2025 01:18 PM | Author: NHORNE | Version: 1.07
Upvotes: 2 | CPAN Testers: Pass 96.4%Fail 3.6%
Information about the CGI environment
The CGI::Info module is a Perl library that provides essential information about the CGI environment in which scripts operate, aiming to enhance code readability and portability by eliminating hard-coded details. It offers a range of functionalities, including retrieving script names and paths, identifying the host and domain names, and validating CGI parameters with a built-in web application firewall to help mitigate security risks such as SQL injection and XSS attacks. Additionally, CGI::Info supports runtime configuration through environment variables and configuration files, making it adaptable for various deployment scenarios. Notably, in the recent version 1.06, enhancements were made to the web application firewall, including improved handling of SQL injection attempts and the addition of new bot detection capabilities, further strengthening the module's security features.
Perl logo

Daje-Workflow

Release | 14 Sep 2025 10:04 AM | Author: JANESKIL | Version: 0.13
It's a simple workflow engine
Daje::Workflow is a straightforward workflow engine designed to facilitate the management and execution of workflows in Perl applications. It allows developers to define workflows with specific activities and context, enabling the processing of tasks in a structured manner. The module requires several components, including database models and loaders, to function effectively. With its recent update in version 0.13, Daje::Workflow now includes the ability to save the workflow primary key for subsequent activities, enhancing its usability and efficiency in workflow management. This makes it a valuable tool for developers looking to implement robust workflow solutions in their projects.
Perl logo

Regexp-Pattern-Filename-Type-Media

Release | 14 Sep 2025 12:05 AM | Author: PERLANCAR | Version: 0.003
CPAN Testers: Pass 100.0%
Media (image/audio/video) filename
Regexp::Pattern::Filename::Type::Media is a Perl module designed to provide regular expression patterns specifically for matching media filenames, including images, audio, and video files. This module acts as a wrapper for Filename::Type::Media, allowing users to easily integrate media filename validation into their applications using the Regexp::Pattern framework. With version 0.003, released on December 21, 2024, the module underwent a significant renaming to streamline its naming convention, enhancing clarity and usability. The regex patterns are anchored and case-insensitive, ensuring accurate matches for valid media filenames while rejecting non-media formats. For more information, visit the project's homepage on MetaCPAN.
Perl logo

Firefox-Marionette

Release | 13 Sep 2025 11:22 PM | Author: DDICK | Version: 1.68
Upvotes: 16 | CPAN Testers: Pass 92.1%Fail 5.3%Unknown 2.6%
Automate the Firefox browser with the Marionette protocol
The `Firefox::Marionette` Perl module provides a comprehensive interface for automating the Mozilla Firefox browser using the Marionette protocol. With this module, developers can programmatically control Firefox to perform tasks such as navigating to URLs, interacting with web elements, managing cookies and bookmarks, and handling user authentication seamlessly. It supports advanced features like geolocation manipulation, WebAuthn authentication, and the ability to run Firefox in various contexts, including remote automation via SSH. The module also includes utilities for managing browser preferences, capturing screenshots, and executing JavaScript within the browser environment, making it a powerful tool for web testing and automation tasks.
Perl logo

Minima

Release | 13 Sep 2025 05:57 PM | Author: TESSARIN | Version: v0.6.1
Upvotes: 1 | CPAN Testers: Pass 21.8%Fail 5.5%N/A 72.7%
Efficient web framework built with modern core classes
Minima is a lightweight and efficient web framework for PSGI applications in Perl, designed to leverage modern object-oriented features while maintaining simplicity and minimalism. It allows developers to quickly set up functional web applications with a straightforward routing system and MVC architecture, without imposing strict design patterns. Controllers can directly interact with Plack's request and response objects, and Minima facilitates easy HTML rendering using Template Toolkit, though it also supports custom solutions. With its intuitive setup process and project management tools, Minima is ideal for developers looking to create fast and flexible web applications with minimal overhead.
Perl logo

Excel-Writer-XLSX

Release | 13 Sep 2025 05:14 PM | Author: JMCNAMARA | Version: 1.15
Upvotes: 65 | CPAN Testers: Pass 90.7%Fail 9.3%
Create a new file in the Excel 2007+ XLSX format
The `Excel::Writer::XLSX` Perl module is designed for creating Excel files in the modern XLSX format (Excel 2007 and later). It provides a comprehensive interface for generating Excel workbooks, allowing users to add multiple worksheets, write various data types (including strings, numbers, and formulas), and apply extensive formatting options to cells. The module supports features such as charts, images, and data validation, making it suitable for generating complex spreadsheets programmatically. With its object-oriented design, users can easily manage workbook properties, customize cell formats, and implement advanced functionalities like conditional formatting and sparklines. Overall, `Excel::Writer::XLSX` is a powerful tool for developers looking to automate Excel file creation and manipulation in Perl.
Perl logo

Number-Phone

Release | 13 Sep 2025 02:06 PM | Author: DCANTRELL | Version: 4.0008
Upvotes: 19 | CPAN Testers: Pass 97.3%Fail 2.0%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, enabling developers to create country-specific subclasses for enhanced functionality. By utilizing this module, users can easily instantiate phone number objects, automatically loading the appropriate subclass based on the provided country code or phone number format. It offers a comprehensive suite of methods to determine the validity, type, and metadata of phone numbers, such as whether they are mobile or fixed-line, as well as formatting options compliant with international standards. Additionally, it integrates with Google's `libphonenumber` project for data validation and can handle various dialing scenarios, making it a versatile tool for applications that require robust telecommunication features.
Perl logo

Crypt-URandom-MonkeyPatch

Release | 13 Sep 2025 02:04 PM | Author: RRWO | Version: v0.1.2
CPAN Testers: Pass 100.0%
Override core rand function to use system random sources
Crypt::URandom::MonkeyPatch is a Perl module designed to enhance the security of legacy code by globally overriding the built-in `rand` function to utilize the operating system's cryptographic random number source, such as /dev/urandom. This is particularly useful for applications that rely on `rand` for generating secure random values but cannot be updated to use more modern approaches. The module allows developers to verify its functionality through a debug mode, which logs calls to the overridden `rand` function. While it serves a specific purpose in patching older code, it is not recommended for new projects; developers are encouraged to use Crypt::URandom for secure random data generation. The latest version, v0.1.2, includes documentation improvements, updates to the security policy, and enhancements to testing practices.
Perl logo

Vigil-Crypt

Release | 13 Sep 2025 10:02 AM | Author: JMELANSON | Version: v2.1.1
CPAN Testers: Unknown 100.0%
Encryption and Hashing wrapper for ChaCha20-Poly1305 and Argon2
Vigil::Crypt is a Perl module designed to provide robust encryption and hashing capabilities using the ChaCha20-Poly1305 algorithm for encryption and Argon2 for password hashing. It allows developers to securely encrypt and decrypt sensitive information, such as personal identifiers, by utilizing a unique encryption key and user-specific data to enhance security. The module ensures data integrity through authenticated encryption, making it resistant to tampering. Additionally, Vigil::Crypt offers a secure method for hashing passwords, incorporating a pepper for added protection against brute-force attacks. With its straightforward interface, developers can easily implement strong cryptographic practices in their applications, safeguarding user data effectively.
Perl logo

Vigil-Token

Release | 13 Sep 2025 09:56 AM | Author: JMELANSON | Version: v2.0.0
CPAN Testers: Pass 99.1%N/A 0.9%
Cryptographically secure, URL-safe token generator for OTPs, sessions, and custom codes
Vigil::Token is a versatile Perl module designed for generating cryptographically secure, URL-safe tokens suitable for one-time passwords (OTPs), session management, and custom codes. Utilizing the robust randomness provided by Bytes::Random::Secure, it ensures that every token is unpredictable and secure. The module offers a flexible `custom_token()` function that allows users to specify the exact length of the token, balancing readability and security, while also providing an `otp()` method for generating short, digit-only OTPs. With automatic Base64URL encoding, Vigil::Token tokens can be seamlessly integrated into cookies, query strings, or HTML forms without the need for additional escaping. Lightweight and reliable, this module serves as an essential tool for modern web authentication and cryptographic needs.
Perl logo

EMDIS-ECS

Release | 13 Sep 2025 03:32 AM | Author: KVMUSER | Version: 0.46
CPAN Testers: Pass 100.0%
ECS - EMDIS Communication System
The EMDIS::ECS Perl module provides a robust implementation of the EMDIS Communication System (ECS), designed for secure data exchange through encrypted email messages. Originally developed for the European Marrow Donor Information System, this module facilitates the sending and receiving of ECS messages, supports various email protocols (SMTP, IMAP, POP3), and integrates encryption via PGP or GnuPG. Recent enhancements in version 0.45 introduced OAuth 2.0 authentication mechanisms for both SMTP and incoming email connections, significantly improving security and compatibility with modern email services. Additionally, the module includes tools for configuration management, message processing, and even experimental support for AMQP messaging, making it a versatile choice for developers needing secure communication solutions in Perl.
Perl logo

Vigil-Calendar

Release | 12 Sep 2025 11:11 PM | Author: JMELANSON | Version: v2.1.0
CPAN Testers: Fail 99.3%N/A 0.7%
Calendar module for Perl applications
The Vigil::Calendar Perl module offers a robust solution for generating and managing calendar months, making it easy to create HTML calendars or integrate with various web calendar applications. It allows users to instantiate calendar objects based on a specified year and month, or defaults to the current date if none are provided. The module provides a variety of methods to retrieve essential calendar information, such as the number of days in a month, the names of days, and the structure of weeks, while also accommodating leap years. With features like generating links to previous and next months, and rendering the calendar in a visually appealing HTML table format, Vigil::Calendar is an invaluable tool for developers looking to enhance their applications with calendar functionalities.
Perl logo

Business-ISBN-Data

Release | 12 Sep 2025 10:59 PM | Author: BRIANDFOY | Version: 20250912.001
Upvotes: 3 | CPAN Testers: Pass 100.0%
Data pack for Business::ISBN
The `Business::ISBN::Data` Perl module serves as a data pack for the `Business::ISBN` module, providing essential data derived from the ISBN Agency's `RangeMessage.xml` file. Typically, users do not need to load this module directly, as it is automatically loaded by `Business::ISBN` when required. The module ensures compatibility with `Business::ISBN` version 3.005 or later due to structural changes addressing ISBN-13 prefix issues. Users can customize the data source by setting the `ISBN_RANGE_MESSAGE` environment variable to point to an alternate `RangeMessage.xml` file, allowing for the use of the most current or historical data without needing to update the module itself. Recent updates include a series of data refreshes, with the latest update recorded on September 12, 2025, ensuring that users have access to the most accurate and up-to-date ISBN data.
Perl logo

XS-Parse-Sublike

Release | 12 Sep 2025 06:51 PM | Author: PEVANS | Version: 0.39
Upvotes: 7 | CPAN Testers: Pass 89.9%Fail 5.8%N/A 3.1%Unknown 1.2%
XS functions to assist in parsing sub-like syntax
The "XS::Parse::Sublike" Perl module provides a set of XS functions designed to facilitate the parsing of "sub"-like syntax, primarily aimed at developers creating keyword plugins that utilize the "PL_keyword_plugin" hook mechanism. This module is particularly useful for those writing parsers in XS, as it offers functions to handle various stages of parsing, including the initialization of hooks, parsing of attributes, signatures, and code bodies. It also allows for the registration of custom keywords with associated hooks, enabling more automated handling of sub-like syntax. As of version 0.39, recent bug fixes have improved the handling of deparse tests, ensuring better compatibility with the Perl interpreter. However, it is important to note that this module is still experimental, and its design may evolve, potentially breaking ABI compatibility in future releases.
Perl logo

Module-Load

Favorite | 12 Sep 2025 06:01 PM | Author: BINGOS | Version: 0.36
Upvotes: 32 | CPAN Testers: Pass 100.0%
Load modules in a DWIM style
The `Module::Load` Perl module simplifies the process of dynamically loading modules and files at runtime, eliminating the confusion between requiring a module or a file based on the input format. It provides two primary functions: `load`, which loads a specified module without importing its functions, and `autoload`, which loads the module and imports its default functions for immediate use. Additionally, it includes `load_remote` and `autoload_remote` for loading modules into specified packages. This module streamlines the loading process by automatically determining whether the input is a module or a file, thus reducing the overhead typically associated with dynamic loading in Perl. With `Module::Load`, developers can efficiently manage module dependencies and enhance code modularity.
Perl logo

RT-Extension-QuickCalls

Release | 12 Sep 2025 03:10 PM | Author: BPS | Version: 2.00
Upvotes: 3 | CPAN Testers
Quickly create tickets in specific queues with default values
RT::Extension::QuickCalls is a Perl module designed to enhance the ticketing experience in Request Tracker (RT) by allowing users to quickly create tickets in specific queues with pre-defined default values. This extension introduces a customizable QuickCalls portlet that can be added to RT dashboards and user summary pages, enabling users to streamline their ticket creation process. Administrators can configure the portlet to display the same Quick Calls across all dashboards or tailor them for individual dashboards, providing flexibility in ticket management. Recent updates in version 1.04 have introduced support for adding QuickCalls to the User Summary page and the ability to render different options for each dashboard, along with a QuickCreate feature that allows tickets to be created instantly without navigating away from the dashboard. This module is compatible with RT 6.0 and offers a user-friendly way to enhance productivity within the ticketing system.
Perl logo

Perl-Tidy

Release | 12 Sep 2025 01:54 PM | Author: SHANCOCK | Version: 20250912
Upvotes: 143 | CPAN Testers
Indent and reformat perl scripts
Perl::Tidy is a Perl module that provides the functionality of the perltidy utility directly within Perl scripts, allowing developers to parse and beautify Perl source code effortlessly. By using the `perltidy` function, users can specify various input and output parameters, including source code, destination for the formatted output, and error handling streams, among others. The module supports flexible input methods, such as filenames, references, or objects, and offers options for customizing formatting through a configuration file or command-line arguments. Additionally, it includes features for error handling and logging, making it a powerful tool for maintaining clean and readable Perl code.
Perl logo

IO-Prompter

Favorite | 12 Sep 2025 11:17 AM | Author: DCONWAY | Version: 0.005004
Upvotes: 28 | CPAN Testers: Pass 98.9%N/A 1.1%
Prompt for input, read it, clean it, return it
The `IO::Prompter` Perl module provides a versatile and user-friendly way to prompt for user input in terminal applications. It allows developers to display customizable prompts, read user input, and return it in a clean format, all while offering a variety of options for input validation, formatting, and behavior. Users can specify options such as echoing characters (useful for password inputs), setting default values, creating menus for selection, and even implementing input constraints. The module also supports advanced features like input history, autocompletion, and the ability to monitor input character-by-character. A noteworthy recent change in version 0.005004 includes the addition of the `-indent` option, which allows for better formatting of prompts by controlling the indentation of each line, enhancing the user experience in complex input scenarios.
Perl logo

DBIx-RunSQL

Favorite | 12 Sep 2025 11:16 AM | Author: CORION | Version: 0.26
Upvotes: 7 | CPAN Testers: Pass 90.4%Fail 2.8%N/A 6.8%
Run SQL from a file
DBIx::RunSQL is a Perl module designed to facilitate the execution of SQL commands from files, making it particularly useful for database setup and testing. It allows users to run SQL scripts against a database, either by specifying a file or passing SQL statements directly, and provides options for handling errors, verbosity, and output formatting. The module supports various database connection parameters and can be used with in-memory databases, which is ideal for testing scenarios. Recent updates include a significant change in version 0.26, which introduced an iterator API for the `split_sql` method, enabling the processing of large SQL files without loading them entirely into memory, thus improving efficiency.
Perl logo

lib-archive

Release | 12 Sep 2025 08:34 AM | Author: TOMK | Version: 0.94
Upvotes: 1 | CPAN Testers
Load pure-Perl modules directly from TAR archives
The `lib::archive` Perl module allows developers to load pure-Perl modules directly from TAR archives, facilitating the management of module dependencies and versions. By specifying TAR files or URLs, users can easily include modules without needing to extract them to the filesystem, as everything is handled on-the-fly. This module supports wildcard expansion for file paths and can also load modules from the DATA section of a script. Recent updates include the addition of the `PERL_LIB_ARCHIVE_IGNORE` environment variable, which enables temporary exclusion of specific modules from being loaded, enhancing flexibility during development and debugging. Overall, `lib::archive` is a powerful tool for bundling and managing Perl modules efficiently.
Perl logo

Net-eBay

Release | 12 Sep 2025 01:42 AM | Author: ICHUDOV | Version: 0.64
Upvotes: 2 | CPAN Testers: Pass 55.8%Fail 44.2%
XML based communication with eBay API
Net::eBay is a Perl module designed to facilitate interaction with eBay's XML-based API, allowing users to execute various queries and manage listings programmatically. With version 0.64, it provides functionalities such as retrieving the official eBay time, adding items for sale, and utilizing RESTful API calls for category suggestions. The module requires users to supply their eBay API credentials, which can be configured through an .ini file or directly as parameters. Notably, recent updates have introduced support for the eBay finding API, enhancing the module's capabilities for searching and managing listings. This makes Net::eBay a powerful tool for developers looking to integrate eBay functionalities into their Perl applications.
Perl logo

Data-Tools

Release | 11 Sep 2025 11:28 PM | Author: CADE | Version: 1.49
Upvotes: 3 | CPAN Testers: Pass 44.7%Unknown 55.3%
Compact, pure-perl CSV parsing
Data::Tools is a versatile Perl module designed for efficient data manipulation, offering a comprehensive suite of functions for file I/O, hash management, string processing, and more. It allows users to easily set file encoding, save and load data in various formats, and perform operations on hashes, including validation and transformation. The module also includes utilities for handling directories, calculating file metadata, and generating hex digests. Recent updates in version 1.47 introduced new functions such as `file_text_load_first_line`, `str_capitalize`, and `create_random_binary`, enhancing its capabilities for text processing and random data generation. With its straightforward API and extensive functionality, Data::Tools is an essential resource for Perl developers looking to streamline their data handling tasks.