Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Re^3: Update these modules if installed?

by stevieb (Canon)
on Mar 08, 2020 at 15:12 UTC ( [id://11113977]=note: print w/replies, xml ) Need Help??


in reply to Re^2: Update these modules if installed?
in thread Update dependants if installed (was: Update these modules if installed?)

Why not just introduce some code in your distribution that can catch the plugins doing things the old, broken way, and gracefully throw a notice to the user and exit, with the notice advising them to upgrade the broken plugin (caller() could potentially be used to get the plugin name)?

Not ideal, but significantly better than forcing an upgrade of user installed distributions.

Replies are listed 'Best First'.
Re^4: Update these modules if installed?
by perlancar (Hermit) on Mar 08, 2020 at 16:03 UTC
    Yes, I did this to some extent, but there are still some scenarios where things could break. Your post reminds me that in other frameworks that I wrote, I do introduce API/metadata versioning and throw an exception whenever a plugin follows an older version which I no longer want to support. I might apply that to Log::ger too, thanks.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11113977]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others exploiting the Monastery: (3)
As of 2024-04-25 19:24 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found