John Ralls jralls at
Fri Mar 2 12:05:21 EST 2012

On Mar 1, 2012, at 8:59 PM, Mike Alexander wrote:

> --On March 1, 2012 9:09:38 AM -0800 John Ralls <jralls at> wrote:
>> F::Q hasn't published an update to CPAN since October 2009. Paul
>> Fenwick has moved the repo to github [1], but hasn't pushed anything
>> in a year.
>> I propose that we fork Fenwick's repo to our Gnucash Github account,
>> apply the outstanding patches, and adjust update-finance-quote to
>> pull tarballs from there.
>> Mike, you seem conversant with the F::Q code, are you up for
>> maintaining the GC fork?
>> As an aside, longer term it would be good to come up with a quote
>> retrieval mechanism that doesn't pull in an extra scripting
>> dependency and has something a bit more robust than screen scraping
>> for data retrieval.
> Sure, I can maintain F::Q, but I don't have a Windows machine so I can't do much with packaging it for Windows.  I also can't put the new version up on CPAN, of course, which means that the installer script for MacOSX and other Unix variants will have to be changed.  If we install it ourselves where do we put it?  I suspect that adding packages to CPAN's directories behind its back isn't consider entirely kosher.  I see that the Windows install script uses ppm to install it which would have to be changed too.  I'm not really up on Perl all that much, how hard is it to install private packages into an arbitrary Perl installation?
> Rewriting it would be non-trivial.  The whole package is about 11,000 lines of Perl code (including comments).  This includes modules for nearly 50 quote sources, some of which could probably be skipped, but it's still a fair amount of code.  I also don't think you could entirely avoid screen scraping.  Many of the quote sources don't provide a way to get the data otherwise.  They probably don't encourage that since they want you to see their ads.
> I agree that the current situation is not really tenable, but forking it isn't quite as easy as it seems at first glance.  I don't know what the right answer is.

Oh. Sorry, I thought since you were submitting patches you were conversant with Perl.

It's trivial to add modules to Perl, and CPAN "owns" only the ~/.cpan directory used for building modules downloaded from CPAN. All of the actual work is done by a Perl module called MakeMaker [1], and installation can either go to a standard location for modules (/usr/local/share/perl/VERSION on my Debian system, /Library/Perl/VERSION on Macs, where  VERSION expands to e.g. 5.10.0) or somewhere else and somewhere else gets added to @INC.

The M$Win is tied to ActiveState; I don't know how they do things or how to make a ppm,.

John Ralls

More information about the gnucash-devel mailing list