I've found that Module::Pluggable works with .exe PAR files, but not
with .par PAR files.
The reason for this misbehavior is that when running PAR as an exe, I
get temp folders with .pm files with their original names. When I
run a Perl program pulling in an archive via "use PAR 'foo.par'", I
get temp folders with .pm files named like fe2f85f3.pm. Because
Module::Pluggable is seeking files by globbing through @INC and
searching by name prefix, it fails to find the latter.
I'd like to find a way to get the original-name behavior with .par
files so that Module::Pluggable will start working. Any ideas?
<speculation>
I've been looking over the source code, and I believe the difference
is that .exe files use _extract_inc() while .par files are extracted
incrementally via unpar(). I haven't found documentation explaining
the reason for that difference, but I suspect it's because the .exe
loads just one PAR collection while multiple .par files could be
loaded at once. Perhaps there are other reasons?
Perhaps we could introduce a syntax like the following?
use PAR {file => 'foo.par', extract => 1};
Then that version could call _extract_inc. Might that be feasible?
If so, I'd be willing to try a first cut at implementation.
</speculation>
Chris
--
Chris Dolan, Software Developer, Clotho Advanced Media Inc.
608-294-7900, fax 294-7025, 1435 E Main St, Madison WI 53703
vCard: http://www.chrisdolan.net/ChrisDolan.vcf
Clotho Advanced Media, Inc. - Creators of MediaLandscape Software
(http://www.media-landscape.com/) and partners in the revolutionary
Croquet project (http://www.opencroquet.org/)