CPANDEPS-DIFF(1)

πŸ“¦
version 3.13 Β· 2 versions
, in fedora 43

πŸ’– CPANDEPS-DIFF(1) πŸ’–

ok so bestie, this is a page from the User Contributed Perl Documentation collection, and lemme tell you, it's a whole vibe ✨


🌸 NAME 🌸

cpandeps-diff β€” generate reports when modules' dependencies get new releases πŸ¦‹

like. it watches your deps. and when something new drops, it tells you. periodt.


✨ SYNOPSIS ✨

cpandeps-diff add Some::Module --perl 5.30.3 --mirror file:///home/me/cpanmirror

cpandeps-diff list

cpandeps-diff report Some::Module

that's it, that's the whole group chat 🫢


πŸŽ€ COMMANDS πŸŽ€

okay so cpandeps-diff takes at most one of several different commands (not me being greedy, one at a time bestie), and some of those commands take more arguments on top. we love a layered situation πŸ’…

πŸ’œ add $module [@args]

Add the named module to the list of modules we care about πŸ’– (your watchlist, your little roster, your main characters)

πŸ’œ remove $module [@args]

Stop reporting on this module 🚫 (it's giving "we're not friends anymore")

aliases: delete; rm β€” yeah it has three names, iconic behavior

πŸ’œ list

Show which modules we're going to report on πŸ“‹βœ¨

πŸ’œ report $module [@args]

Generate a report for just this one module πŸ‘‘ one singular module. special treatment. deserved.

πŸ’œ [@args]

If you don't provide a command then it will generate a report about all known modules 🌈 (the whole squad, no filter, everyone's invited)

πŸ’œ help

Can you guess what this does? 😭 like. bestie. it helps.


⭐ ARGUMENTS ⭐

πŸ’œ perl $version

Use this version of perl for figuring out what's in core 🧠 Any dependencies that are in core will not be reported on unless a newer version is required.

If not specified it defaults to 5.005.

πŸ“Œ heads up: adding, removing and reporting on modules always depends on the version of perl, so as well as being used to figure out what's in core you can also have different lists of modules for different versions of perl. yes, separate lists per perl version. it's a whole multiverse thing.

πŸ’œ mirror $mirror

Use this CPAN mirror to fetch dependency information from (see CPAN::FindDependencies documentation for details) πŸ” You may provide this argument as many times as you want β€” stack 'em, spam 'em, go off πŸ’…


🌈 FILES 🌈

Data is stored in a directory called .cpandeps-diff, which by default is under your home directory 🏠

If you want to put it somewhere else (you probably don't) then set CPANDEPS_DIFF_DIR in your environment.

That data includes a cache of data fetched from the CPAN which will be automatically cleared out after 23 hours ⏰ (yes, 23. not 24. don't ask.)

This cache helps to generate reports for multiple modules more quickly, and also to prevent you from being rate-limited or even kicked off CPAN mirrors 😭 please, protect yourself, the mirrors have feelings and also limits.


πŸ’€ WARNINGS, BUGS and FEEDBACK πŸ’€

This script has not been thoroughly tested. ngl. that's just the truth of it πŸ™ˆ

I welcome feedback about my code, including constructive criticism πŸ’– Bug reports should be made on Github or by email πŸ“§


Copyright 2007 - 2020 David Cantrell <david@cantrell.org.uk> πŸ’œ

This software is free-as-in-speech software, and may be used, distributed, and modified under the terms of either the GNU General Public Licence version 2 or the Artistic Licence. It's up to you which one you use. The full text of the licences can be found in the files GPL2.txt and ARTISTIC.txt, respectively. πŸ“„βœ¨


🧚 CONSPIRACY 🧚

This software is also free-as-in-mason. πŸ§±πŸ‘οΈ


ok bestie that's the whole page 🫢 this ran on perl v5.42.0, dated 2025-07-25, and honestly? iconic. slay. no cap. πŸ’…πŸŒΈπŸ’–

πŸ“¦ where this page comes from