What's new on CPAN - March 2024
Welcome to “What’s new on CPAN”, a curated look at last month’s new CPAN uploads for your reading and programming pleasure. Enjoy!
APIs & Apps
- App::BPOMUtils::RPO::Ingredients (PERLANCAR) collects CLI utilities related to formatting ingredient data for Indonesian Processed Food Registration
- App::CSVUtils::csv_mix_formulas (PERLANCAR) provides a CSV-related CLI for mixing ingredients
- Explore Comparer subroutines from the command-line with App::ComparerUtils (PERLANCAR)
- Sort DWG files by version with App::DWG::Sort (SKIM)
- App::SortExampleUtils (PERLANCAR) provides CLIs related to SortExample
- App::SortKeyUtils (PERLANCAR) provides CLIs related to SortKey
- App::SortSpecUtils (PERLANCAR) provides CLIs related to SortSpec
- App::SorterUtils (PERLANCAR) provides CLIs related to Sorter
- App::SpreadsheetOpenUtils (PERLANCAR) provides CLIs related to Spreadsheet::Open
- Show non-printing characters with App::cat::v (UTASHIRO)
- Net::MailChimp (ARTHAS) provides a minimal interface to the Mailchimp API
- Net::PaccoFacile (ARTHAS) provides a minimal interface to the PaccoFacile API
- AI::Chat (BOD) provides a simple interface for interacting with AI Chat APIs, currently supporting OpenAI
- Generate images using OpenAI’s DALL-E with AI::Image (BOD)
- Intellexer::API (HAX) provides access to the Intellexer API
Data
- Data::Dump::HTML::Collapsible (PERLANCAR) converts data structures into an HTML document with collapsible nodes
- Data::Dump::HTML::PopUp (PERLANCAR) converts data structures into an HTML document with nested pop-ups
- Use Data::Dump::IfSmall (PERLANCAR) to dump data structures so that references larger than a certain size are indicated as in “LARGE:ARRAY(0x5636145ea5e8)”
- Dump data structures so that some patterns are dumped tersely with Data::Dump::SkipObjects (PERLANCAR)
- Data::Navigation::Item (SKIM) encapsulates a navigation item
- Many Sah-based schemas:
- for ArrayData with Sah::SchemaBundle::ArrayData (PERLANCAR)
- for array data type with Sah::SchemaBundle::Array (PERLANCAR)
- for binary data with Sah::SchemaBundle::Binary (PERLANCAR)
- for bool data type with Sah::SchemaBundle::Bool (PERLANCAR)
- for BorderStyle with Sah::SchemaBundle::BorderStyle (PERLANCAR)
- Amazon::Sites (DAVECROSS) encapsulates information about Amazon sites
- Modules categorizing modules:
- Acme::CPANModules::LoremIpsum (PERLANCAR) for modules related to “Lorem Ipsum” placeholder text
- Acme::CPANModules::OpeningFileInApp (PERLANCAR) for modules that open a file with appropriate application
- Acme::CPANModules::RandomText (PERLANCAR) for modules generating random placeholder text
- Module::Features::PluginSystem (PERLANCAR) collects features of plugin systems. These features are associated with individual plugin modules in:
- Module::Pluggable::_ModuleFeatures (PERLANCAR) for Module::Pluggable
- Plugin::System::_ModuleFeatures (PERLANCAR) for Plugin::System
Development & Version Control
- Extend Module::Patch with:
- Devel::Confess::Patch::UseDataDumpIfSmall (PERLANCAR) to make use of Data::Dump::IfSmall (see above)
- Devel::Confess::Patch::UseDataDumpSkipObjects (PERLANCAR) to make use of Data::Dump::SkipObjects (see above)
- Some Dist::Zilla plugins:
- Dist::Zilla::Plugin::Sah::SchemaBundle (PERLANCAR) for building Sah-SchemaBundle-* distributions
- Dist::Zilla::Role::GetDistFileURL (PERLANCAR) for getting the URL of a file inside a distribution
- Regexp::IntInequality (HAUKEX) can generate generates regular expressions that match integers fulfilling a specified inequality (greater than, less than, etc.)
- lib::root (HERNAN) looks for a .libroot file in parent directories and pushes ./*/lib to @INC
- Scenarios for the Bencher benchmarking framework:
- Bencher::Scenario::ListFlattenModules (PERLANCAR) for benchmarking various List::Flatten implementations
- Bencher::Scenarios::Text::Table::Sprintf (PERLANCAR) for benchmarking Text::Table::Sprintf
- Invoke a callback on every element at every level of a data structure with CXC::Data::Visitor (DJERIUS)
- Exclude some packages from a stack trace with Carp::Patch::ExcludePackage (PERLANCAR)
- OpenAPI::PerlGenerator (CORION) creates Perl client SDKs from OpenAPI specs
- Compare keys generated by a SortKey:: module using Comparer::from_sortkey (PERLANCAR)
Science & Mathematics
- Aligning and pseudo-align biological sequences with Bio::SeqAlignment (CHRISARG)
- Interface to the qhull library with Qhull (DJERIUS)
- Find and build the following bio-related dependencies via Alien:
- mmseqs2 tools using Alien::SeqAlignment::MMseqs2 (CHRISARG)
- bowtie2 tools using Alien::SeqAlignment::bowtie2 (CHRISARG)
- cutadapt utility using Alien::SeqAlignment::cutadapt (CHRISARG)
- hmmer3 tools using Alien::SeqAlignment::hmmer3 (CHRISARG)
- last tools using Alien::SeqAlignment::last (CHRISARG)
- minimap2 binary executables using Alien::SeqAlignment::minimap2 (CHRISARG)
Web
- Put a CPAN::Changes object online with Tags::HTML::CPAN::Changes (SKIM) and Plack::App::CPAN::Changes (SKIM)
Tags
Feedback
Something wrong with this article? Help us out by opening an issue or pull request on GitHub