thaljef / Pinto

Curate your own repository of Perl modules
https://metacpan.org/module/Pinto::Manual
66 stars 49 forks source link

weird 'Mouse' error when pulling some modules onto a stack #229

Open chexmix opened 7 years ago

chexmix commented 7 years ago

Hi Jeff,

I use Pinto more and more, so this issue has started to bug me enough to open an issue.

More often than I'd like, when I pull a module onto a stack, pinto chugs along for a while, laying down quite a row or three of dots, and then finally exits with something like

Unable to extract packages from /tmp/M53OkzPIIS/Mouse-v2.4.5.tar.gz: Failed to open file '/tmp/FyyEhNxKWB/Mouse-v2.4.5/lib/Mouse/Tiny.pm': No such file or directory at /home/arcops_dev/opt/local/pinto/lib/perl5/Pinto/PackageExtractor.pm line 73.

The subdirectories of /tmp are always different, of course.

The thing is, I swear I saw a discussion of this somewhere, but now I can't find that discussion. My memory says it has more to do with the target modules than it does with pinto itself, but ... is there a workaround/fix for this? the modules that suffer from it never really get onto the stack and I just install them straight with cpanm.

Thanks,

Glenn Becker

thaljef commented 7 years ago

According to the metadata that release of Mouse contains a file at lib/Mouse/Tiny.pm but no such file exists. However, there is a file at lib/Mouse/Tiny.pod.

The metadata was generated by Minilla, so that may be the root cause. I vaguely remember talking to @xdg once about whether CPAN::Meta::Spec would consider it an error if the metadata pointed to a bogus file, but I don't remember the outcome.

Distro metadata is broken a lot of the time, and PAUSE is so (overly) forgiving about it, so Pinto should probably do the same. I'm not doing much development these days, so I can't give you a timeline right now.

thaljef commented 7 years ago

Interestingly, I can't reproduce that with the latest Pinto (0.12).

Which version do you have?

xdg commented 7 years ago

The spec is silent, as spec files are often used independently of the tarball. However, personally I would consider it an error to list a file not included in the distribution.

chexmix commented 7 years ago

This was with 0.11.

I haven't been able to install 0.12 -- but I'll put that in another thread, if it continues to be an issue.