Skip Menu |
 

This queue is for tickets about the Parse-CPAN-Packages CPAN distribution.

Report information
The Basics
Id: 106510
Status: open
Priority: 0/
Queue: Parse-CPAN-Packages

People
Owner: Nobody in particular
Requestors: BJAKUBSKI [...] cpan.org
Cc: SREZIC [...] cpan.org
AdminCc:

Bug Information
Severity: Wishlist
Broken in: 2.40
Fixed in: (no value)



Subject: Consider removing file access and code parsing features from Package and Distribution modules
Download (untitled) / with headers
text/plain 1.4k
While checking excessive list of packages needed to install OrePAN2 it came to my attention that noticeable amount of those deps were needed because Parse::CPAN::Packages requires them. Main offenders when it comes to number of dependencies seem to be Archive::Peek (pulls Moose etc.) and PPI. Currently on fresh core perl installing Parse::CPAN::Packages will install 80 distributions (at least on 5.10, number may be smaller on recent perls). Without Archive::Peek and PPI dependency that number falls down to 27. I also think those methods do not belong to Parse::CPAN::Packages if this distribution is supposed to be about 02packages.details.txt.gz parsing. I quickly looked through most of CPAN dists using P::C::P and only one of those I checked used any of those methods. Granted, there may be more users of those features outside of CPAN. In case compatibility is a concern maybe Parse::CPAN::Packages should be left intact, but most of it internals should be refactored into separate dist with only one responsibility - parsing and presenting data from 02packages file? I do consider ::Package and ::Distribution to be part of that responsibility, just without all those archive-peeking, file-parsing extras. I hope that at least PPI features may be removed, as they are marked as experimental and even less useful than archive peeking. I realize that this may be noticeable amount of work without big gains. In case you find any of those actions acceptable I may be able to work on that. Thanks for your work!
Download (untitled) / with headers
text/plain 1.6k
On 2015-08-18 10:44:23, BJAKUBSKI wrote: Show quoted text
> While checking excessive list of packages needed to install OrePAN2 it > came to my attention that noticeable amount of those deps were needed > because Parse::CPAN::Packages requires them. > > Main offenders when it comes to number of dependencies seem to be > Archive::Peek (pulls Moose etc.) and PPI. Currently on fresh core perl > installing Parse::CPAN::Packages will install 80 distributions (at > least on 5.10, number may be smaller on recent perls). > Without Archive::Peek and PPI dependency that number falls down to 27. > > I also think those methods do not belong to Parse::CPAN::Packages if > this distribution is supposed to be about 02packages.details.txt.gz > parsing. I quickly looked through most of CPAN dists using P::C::P and > only one of those I checked used any of those methods. Granted, there > may be more users of those features outside of CPAN. > > In case compatibility is a concern maybe Parse::CPAN::Packages should > be left intact, but most of it internals should be refactored into > separate dist with only one responsibility - parsing and presenting > data from 02packages file? > > I do consider ::Package and ::Distribution to be part of that > responsibility, just without all those archive-peeking, file-parsing > extras. > > I hope that at least PPI features may be removed, as they are marked > as experimental and even less useful than archive peeking. > > I realize that this may be noticeable amount of work without big > gains. In case you find any of those actions acceptable I may be able > to work on that. > > Thanks for your work!
Parse::CPAN::Packages::Fast is mostly API-compatible, faster, and has minimal dependencies.
Download (untitled) / with headers
text/plain 445b
On Sat Aug 29 18:43:23 2015, SREZIC wrote: Show quoted text
> > Parse::CPAN::Packages::Fast is mostly API-compatible, faster, and has > minimal dependencies.
Hi Slaven My original problem was with OrePAN2 excessive dependencies (mostly related to Parse::CPAN::Packages dependencies). Please see https://github.com/tokuhirom/OrePAN2/issues/37#issuecomment-125027803 as for why your ::Fast module was not used. If you could help with that it would be great!
Download (untitled) / with headers
text/plain 585b
On 2015-09-04 05:15:58, BJAKUBSKI wrote: Show quoted text
> On Sat Aug 29 18:43:23 2015, SREZIC wrote: >
> > > > Parse::CPAN::Packages::Fast is mostly API-compatible, faster, and has > > minimal dependencies.
> > > Hi Slaven > > My original problem was with OrePAN2 excessive dependencies (mostly > related to Parse::CPAN::Packages dependencies). Please see > https://github.com/tokuhirom/OrePAN2/issues/37#issuecomment-125027803 > as for why your ::Fast module was not used. > If you could help with that it would be great!
I created a 0.08_50 which can read uncompressed 02package.details files.


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.