![]() |
|
good chemistry is complicated, and a little bit messy -LW |
|
PerlMonks |
Dealing with package version numbers when monkey-punchingby MikeTaylor (Acolyte) |
on Sep 17, 2020 at 17:20 UTC ( #11121879=perlquestion: print w/replies, xml ) | Need Help?? |
MikeTaylor has asked for the wisdom of the Perl Monks concerning the following question:
I maintain two Perl modules, Net::Z3950::SimpleServer and Net::Z3950::FOLIO.
The former defines classes for a bunch of node-types which together represent a parsed query — things like Net::Z3950::RPN::Term, Net::Z3950::RPN::And, and so on. The latter enhances the functionality of these classes by adding extra methods — a technique I have seen referred to as "monkey-punching", though if there is a more Perlish name for it I would like to be enlightened. My problem: SimpleServer is at version 1.21. When I try to publish the newer FOLIO module on CPAN, which is at version 1.0, it is rejected with error messages like: module : Net::Z3950::RPN::And version: 1.0 in file: Net-Z3950-FOLIO-1.0/lib/Net/Z3950/FOLIO.pm status : Not indexed because Net-Z3950-SimpleServer-1.21/SimpleServer.pm in M/MI/MIRK/Net-Z3950-SimpleServer-1.21.tar.gz has a higher version number (1.21)How can I specify in the FOLIO module that I am not trying to define these classes, only add new methods? And so tell CPAN that I am not trying to provide alternative definitions. Thank you!
Back to
Seekers of Perl Wisdom
|
|