Re: [GNC] Finance::Quote on a Mac with a foreign perl

2024-04-27 Thread Bruce Schuck

On Sat Apr 27, 2024 at 21:13:22 Mr. Ralls wrote:

I just remembered a third case that's probably the same problem: 
https://bugs.gnucash.org/show_bug.cgi?id=799195 complained that it 
took 15 minutes to install the F::Q dependencies and the attempt 
ultimately failed because SSLeay failed its unit tests.


I concur. I also have some agreement with Mr. Williams who opened that 
bug. While I understand doing the quote retrieval natively in GnuCash 
would be problematic for how much they need to be changed (especially 
recently), I am at least slightly surprised there hasn't been an effort 
to replace F::Q with something written in Python or another language.



macOS is macOS. They don't change anything for the hardware, not
even the build: Everything in the OS is universal binaries with
x86_64 snd arm64. It's possible that Xcode/command-line tools adds
stuff to /System/Library/Perl/Extras, but the user said he has both 
installed. I've asked him about what year MBA and what version of 
macOS. Perhaps there's a clue there.


I get the macOS is macOS thing. But I've ended up down too many rabbit 
holes because of assumptions that turned out wrong. I would find it odd 
that XCode would know to add stuff for Perl, but again, I don't want to 
assume it doesn't.


As for XCode command line tools being installed, I would think if they 
were, then wouldn't the libssl header files that the user's cpan output 
indicated were missing *not* be missing? It's been a while since I 
installed Xcode and the extra XCode bits on either of the Macs in my 
possession.


Take care sir. I think it's time for my scotch nightcap.
___
gnucash-user mailing list
gnucash-user@gnucash.org
To update your subscription preferences or to unsubscribe:
https://lists.gnucash.org/mailman/listinfo/gnucash-user
-
Please remember to CC this list on all your replies.
You can do this by using Reply-To-List or Reply-All.


Re: [GNC] Finance::Quote on a Mac with a foreign perl

2024-04-27 Thread John Ralls



> On Apr 27, 2024, at 2:32 PM, Bruce Schuck  wrote:
> 
> On Fri Apr 26, 2024, at 12:07:04 EDT Mr Ralls wrote:
> 
>> Here's an example of a failed session with Homebrew interference: 
>> https://paste.jvnv.net/view/CcsOd This comes from an IRC discussion at 
>> https://code.gnucash.org/logs/2024/04/16.html#T06:46:33. There
>> was an earlier exchange with another longer dump that implicated
>> Homebrew in which I told the user to clean it out but gncbot was
>> apparently offline when that occurred and I don't have a link to it.
>> In the dump you can see that the user is invoking gnc-fq-update and
>> that it's running /usr/bin/perl. Later at line 97 you can see that 
>> /System/Library/Perl/Extras/5.34 is missing from @INC. That's where the 
>> pre-built networking modules are.
> 
> John,
> 
> That is indeed odd. I have two Macbook Pros. One Intel based running OSX 
> Catalina (It's a 2016 model), and a fairly new M1 running OSX Ventura. Both 
> have HomeBrew's Perl installed along side the Apple bundled Perl. "Perl -V" 
> does include "/System/Library/Perl/Extras/5.XX" on both (Catalina is 5.18, 
> Ventura is 5.30). "@INC" in Perl is compiled. Installation of the HomeBrew 
> Perl should in no way affect the value of @INC in the OSX bundled Perl. Most 
> people wanting to modify @INC do so by a number of ways. Setting PERL5LIB, 
> adding "-I" when executing Perl, or adding something like "use lib 
> '/home/foobar/code';" to the Perl code are some examples.
> 
> As Vince showed, the HomeBrew Perl typically installs its modules under the 
> $HOME/perl5 path, or as I see on my Ventura Mac, /opt/homebrew/Cellar/.
> 
> From the command line prompt in the session, it appears the user having the 
> issue is on a MacBook Air. I wonder if the included version of Perl is not 
> the same as what gets installed on a MacBook?
> 
> I'd be curious to see the output of this find command from that user's Mac.
> 
> find /Library/Perl /System/Library/Perl -path '*/Net/*' -type f -name 
> 'SSLeay.pm'
> 
> Or more simply, does /System/Library/Perl/Extras exist on the user's MacBook 
> Air?
> 
> That path may not be in the system Perl's @INC, because it's not part of the 
> Apple Perl package.

Bruce,

The user who made the log file is on IRC, handle englishman. I just pinged him 
about it. I have no info at all about the fellow who added the instruction to 
point openssl requests at Homebrew's libopenssl.

I just remembered a third case that's probably the same problem: 
https://bugs.gnucash.org/show_bug.cgi?id=799195 complained that it took 15 
minutes to install the F::Q dependencies and the attempt ultimately failed 
because SSLeay failed its unit tests.

macOS is macOS. They don't change anything for the hardware, not even the 
build: Everything in the OS is universal binaries with x86_64 snd arm64. It's 
possible that Xcode/command-line tools adds stuff to 
/System/Library/Perl/Extras, but the user said he has both installed. I've 
asked him about what year MBA and what version of macOS. Perhaps there's a clue 
there.

Regards,
John Ralls
___
gnucash-user mailing list
gnucash-user@gnucash.org
To update your subscription preferences or to unsubscribe:
https://lists.gnucash.org/mailman/listinfo/gnucash-user
-
Please remember to CC this list on all your replies.
You can do this by using Reply-To-List or Reply-All.


Re: [GNC] Finance::Quote on a Mac with a foreign perl

2024-04-27 Thread Bruce Schuck

On Fri Apr 26, 2024, at 12:07:04 EDT Mr Ralls wrote:

Here's an example of a failed session with Homebrew interference: 
https://paste.jvnv.net/view/CcsOd This comes from an IRC discussion 
at https://code.gnucash.org/logs/2024/04/16.html#T06:46:33. There

was an earlier exchange with another longer dump that implicated
Homebrew in which I told the user to clean it out but gncbot was
apparently offline when that occurred and I don't have a link to it.
In the dump you can see that the user is invoking gnc-fq-update and
that it's running /usr/bin/perl. Later at line 97 you can see that 
/System/Library/Perl/Extras/5.34 is missing from @INC. That's where 
the pre-built networking modules are.


John,

That is indeed odd. I have two Macbook Pros. One Intel based running OSX 
Catalina (It's a 2016 model), and a fairly new M1 running OSX Ventura. 
Both have HomeBrew's Perl installed along side the Apple bundled Perl. 
"Perl -V" does include "/System/Library/Perl/Extras/5.XX" on both 
(Catalina is 5.18, Ventura is 5.30). "@INC" in Perl is compiled. 
Installation of the HomeBrew Perl should in no way affect the value of 
@INC in the OSX bundled Perl. Most people wanting to modify @INC do so 
by a number of ways. Setting PERL5LIB, adding "-I" when 
executing Perl, or adding something like "use lib '/home/foobar/code';" 
to the Perl code are some examples.


As Vince showed, the HomeBrew Perl typically installs its modules under 
the $HOME/perl5 path, or as I see on my Ventura Mac, /opt/homebrew/Cellar/.


From the command line prompt in the session, it appears the user having 
the issue is on a MacBook Air. I wonder if the included version of Perl 
is not the same as what gets installed on a MacBook?


I'd be curious to see the output of this find command from that user's Mac.

find /Library/Perl /System/Library/Perl -path '*/Net/*' -type f -name 
'SSLeay.pm'


Or more simply, does /System/Library/Perl/Extras exist on the user's 
MacBook Air?


That path may not be in the system Perl's @INC, because it's not part of 
the Apple Perl package.


Bruce S

P.S. My older Intel based Mac actually has 3 separate Perls installed. 
The third being one built from source where the paths in @INC are all 
under /usr/local/bpsperl/.

___
gnucash-user mailing list
gnucash-user@gnucash.org
To update your subscription preferences or to unsubscribe:
https://lists.gnucash.org/mailman/listinfo/gnucash-user
-
Please remember to CC this list on all your replies.
You can do this by using Reply-To-List or Reply-All.


Re: [GNC] Finance::Quote on a Mac with a foreign perl

2024-04-26 Thread Peter Lamb via gnucash-user

On 27/4/2024 04:00, Adrien Monteleone wrote:
I'm not familiar with @INC, but happy to learn. 


@INC is a Perl list of directories that are searched to find library 
modules for Perl module 'use' statements (and in other contexts where 
modules are imported).


On Unixoid systems you can find out what's in @INC with the command:
perl -e 'print join("\n", @INC), "\n"'

perl -V
will also print out @INC, as well as a lot of other Perl internal 
variables and settings.


Peter

___
gnucash-user mailing list
gnucash-user@gnucash.org
To update your subscription preferences or to unsubscribe:
https://lists.gnucash.org/mailman/listinfo/gnucash-user
-
Please remember to CC this list on all your replies.
You can do this by using Reply-To-List or Reply-All.


Re: [GNC] Finance::Quote on a Mac with a foreign perl

2024-04-26 Thread john
Adrien,

@INC is the perl internal variable containing the search paths for locating 
included modules. I used that as a proxy for a modicum of expertise with 
managing a perl configuration. I wouldn't suggest that you go learn perl just 
to help with this problem.

Regards,
John Ralls


> On Apr 26, 2024, at 11:00, Adrien Monteleone  
> wrote:
> 
> John,
> 
> I have Homebrew installed.
> 
> I'm not familiar with @INC, but happy to learn.
> 
> I just ran gnc-fq-update without issues.
> 
> I still have the output from that update if you need it, or if you need 
> output from any other commands, just let me know.
> 
> I'm still on GnuCash 5.5, my Perl is 5.30 and it appears to be at 
> /usr/bin/perl.
> 
> Regards,
> Adrien
> 
> Regards,
> Adrien
> 
> On 4/25/24 9:15 PM, john wrote:
>> Are there any Mac users who have Homebrew installed and know what @INC is?
>> At least two users with the first problem but without knowing the second 
>> have gotten themselves cross-threaded trying to install Finance::Quote 
>> because Homebrew' screws up their perl installation so that cpan ignores the 
>> installed modules and since Homebrew doesn't (at least without help) provide 
>> SSLeay, Net::HTTPS, and IO::Sockets::SSL and macOS doesn't put OpenSSL's 
>> headers in /usr/include they have to perform all sorts of unnatural acts to 
>> get gnc-fq-update to work.
>> We need some simple instructions for the wiki for how to work around the 
>> problem so that gnc-fq-update uses the system perl (that's after all the 
>> only one the app bundle can see, it doesn't read the user's shell 
>> environment) and gets the dependencies from /System/Library/Perl instead of 
>> trying to build them.
> 
> ___
> gnucash-user mailing list
> gnucash-user@gnucash.org
> To update your subscription preferences or to unsubscribe:
> https://lists.gnucash.org/mailman/listinfo/gnucash-user
> -
> Please remember to CC this list on all your replies.
> You can do this by using Reply-To-List or Reply-All.

___
gnucash-user mailing list
gnucash-user@gnucash.org
To update your subscription preferences or to unsubscribe:
https://lists.gnucash.org/mailman/listinfo/gnucash-user
-
Please remember to CC this list on all your replies.
You can do this by using Reply-To-List or Reply-All.


Re: [GNC] Finance::Quote on a Mac with a foreign perl

2024-04-26 Thread Adrien Monteleone

John,

I have Homebrew installed.

I'm not familiar with @INC, but happy to learn.

I just ran gnc-fq-update without issues.

I still have the output from that update if you need it, or if you need 
output from any other commands, just let me know.


I'm still on GnuCash 5.5, my Perl is 5.30 and it appears to be at 
/usr/bin/perl.


Regards,
Adrien

Regards,
Adrien

On 4/25/24 9:15 PM, john wrote:

Are there any Mac users who have Homebrew installed and know what @INC is?

At least two users with the first problem but without knowing the second have 
gotten themselves cross-threaded trying to install Finance::Quote because 
Homebrew' screws up their perl installation so that cpan ignores the installed 
modules and since Homebrew doesn't (at least without help) provide SSLeay, 
Net::HTTPS, and IO::Sockets::SSL and macOS doesn't put OpenSSL's headers in 
/usr/include they have to perform all sorts of unnatural acts to get 
gnc-fq-update to work.

We need some simple instructions for the wiki for how to work around the 
problem so that gnc-fq-update uses the system perl (that's after all the only 
one the app bundle can see, it doesn't read the user's shell environment) and 
gets the dependencies from /System/Library/Perl instead of trying to build them.


___
gnucash-user mailing list
gnucash-user@gnucash.org
To update your subscription preferences or to unsubscribe:
https://lists.gnucash.org/mailman/listinfo/gnucash-user
-
Please remember to CC this list on all your replies.
You can do this by using Reply-To-List or Reply-All.


Re: [GNC] Finance::Quote on a Mac with a foreign perl

2024-04-26 Thread john
Vincent,

Here's an example of a failed session with Homebrew interference: 
https://paste.jvnv.net/view/CcsOd This comes from an IRC discussion at 
https://code.gnucash.org/logs/2024/04/16.html#T06:46:33. There was an earlier 
exchange with another longer dump that implicated Homebrew in which I told the 
user to clean it out but gncbot was apparently offline when that occurred and I 
don't have a link to it. In the dump you can see that the user is invoking 
gnc-fq-update and that it's running /usr/bin/perl. Later at line 97 you can see 
that /System/Library/Perl/Extras/5.34 is missing from @INC. That's where the 
pre-built networking modules are.

Another user supplied this ill-considered and reverted edit on the wiki 
pointing at the same problem: 
https://wiki.gnucash.org/wiki/index.php?title=Online_Quotes=22109=21974.

That's pretty much all I've got. 

Regards,
John Ralls

> On Apr 25, 2024, at 20:11, Vincent Lucarelli  
> wrote:
> 
> John,
> 
> I run macOS and use Homebrew. How are the user’s running gnc-fq-update? From 
> a terminal, if you 
> 
>> cd /Applications/Gnucash.app/Contents/Resources/bin
>> sudo ./gnc-fq-update
> 
> it is going to use /usr/bin/perl from the #! line at the top of the script.
> 
> But the script uses the perl CPAN module, so maybe there is something in 
> $HOME/.cpan that is causing trouble?
> 
> To answer your actual question, I have
> 
>> /usr/bin/perl -e 'print(join("\n", @INC));'
> /Library/Perl/5.34/darwin-thread-multi-2level
> /Library/Perl/5.34
> /Network/Library/Perl/5.34/darwin-thread-multi-2level
> /Network/Library/Perl/5.34
> /Library/Perl/Updates/5.34.1
> /System/Library/Perl/5.34/darwin-thread-multi-2level
> /System/Library/Perl/5.34
> /System/Library/Perl/Extras/5.34/darwin-thread-multi-2level
> /System/Library/Perl/Extras/5.34
> 
> vs 
> 
>> which perl
> /Users/acount/perl5/perlbrew/perls/perl-5.32.0/bin/perl
> 
>> perl -e 'print(join("\n", @INC));'
> /Users/acount/perl5/perlbrew/perls/perl-5.32.0/lib/site_perl/5.32.0/darwin-2level
> /Users/acount/perl5/perlbrew/perls/perl-5.32.0/lib/site_perl/5.32.0
> /Users/acount/perl5/perlbrew/perls/perl-5.32.0/lib/5.32.0/darwin-2level
> /Users/acount/perl5/perlbrew/perls/perl-5.32.0/lib/5.32.0
> 
> but - I’m not sure if there are other shell rc file changes that these users 
> might have that could alter this, or if there are brew installs that could 
> alter this as well.
> 
> I’m happy to help sort this out, but need some more information about the 
> users’ issues.
> 
> Best,
> 
> Vince
> 
> 
>> On Apr 25, 2024, at 7:15 PM, john  wrote:
>> 
>> Are there any Mac users who have Homebrew installed and know what @INC is?
>> 
>> At least two users with the first problem but without knowing the second 
>> have gotten themselves cross-threaded trying to install Finance::Quote 
>> because Homebrew' screws up their perl installation so that cpan ignores the 
>> installed modules and since Homebrew doesn't (at least without help) provide 
>> SSLeay, Net::HTTPS, and IO::Sockets::SSL and macOS doesn't put OpenSSL's 
>> headers in /usr/include they have to perform all sorts of unnatural acts to 
>> get gnc-fq-update to work.
>> 
>> We need some simple instructions for the wiki for how to work around the 
>> problem so that gnc-fq-update uses the system perl (that's after all the 
>> only one the app bundle can see, it doesn't read the user's shell 
>> environment) and gets the dependencies from /System/Library/Perl instead of 
>> trying to build them.
>> 
>> Regards,
>> John Ralls
>> 
>> ___
>> gnucash-user mailing list
>> gnucash-user@gnucash.org
>> To update your subscription preferences or to unsubscribe:
>> https://lists.gnucash.org/mailman/listinfo/gnucash-user
>> -
>> Please remember to CC this list on all your replies.
>> You can do this by using Reply-To-List or Reply-All.
> 

___
gnucash-user mailing list
gnucash-user@gnucash.org
To update your subscription preferences or to unsubscribe:
https://lists.gnucash.org/mailman/listinfo/gnucash-user
-
Please remember to CC this list on all your replies.
You can do this by using Reply-To-List or Reply-All.


Re: [GNC] Finance::Quote on a Mac with a foreign perl

2024-04-25 Thread Vincent Lucarelli
John,

I run macOS and use Homebrew. How are the user’s running gnc-fq-update? From a 
terminal, if you 

> cd /Applications/Gnucash.app/Contents/Resources/bin
> sudo ./gnc-fq-update

it is going to use /usr/bin/perl from the #! line at the top of the script.

But the script uses the perl CPAN module, so maybe there is something in 
$HOME/.cpan that is causing trouble?

To answer your actual question, I have

> /usr/bin/perl -e 'print(join("\n", @INC));'
/Library/Perl/5.34/darwin-thread-multi-2level
/Library/Perl/5.34
/Network/Library/Perl/5.34/darwin-thread-multi-2level
/Network/Library/Perl/5.34
/Library/Perl/Updates/5.34.1
/System/Library/Perl/5.34/darwin-thread-multi-2level
/System/Library/Perl/5.34
/System/Library/Perl/Extras/5.34/darwin-thread-multi-2level
/System/Library/Perl/Extras/5.34

vs 

> which perl
/Users/acount/perl5/perlbrew/perls/perl-5.32.0/bin/perl

> perl -e 'print(join("\n", @INC));'
/Users/acount/perl5/perlbrew/perls/perl-5.32.0/lib/site_perl/5.32.0/darwin-2level
/Users/acount/perl5/perlbrew/perls/perl-5.32.0/lib/site_perl/5.32.0
/Users/acount/perl5/perlbrew/perls/perl-5.32.0/lib/5.32.0/darwin-2level
/Users/acount/perl5/perlbrew/perls/perl-5.32.0/lib/5.32.0

but - I’m not sure if there are other shell rc file changes that these users 
might have that could alter this, or if there are brew installs that could 
alter this as well.

I’m happy to help sort this out, but need some more information about the 
users’ issues.

Best,

Vince


> On Apr 25, 2024, at 7:15 PM, john  wrote:
> 
> Are there any Mac users who have Homebrew installed and know what @INC is?
> 
> At least two users with the first problem but without knowing the second have 
> gotten themselves cross-threaded trying to install Finance::Quote because 
> Homebrew' screws up their perl installation so that cpan ignores the 
> installed modules and since Homebrew doesn't (at least without help) provide 
> SSLeay, Net::HTTPS, and IO::Sockets::SSL and macOS doesn't put OpenSSL's 
> headers in /usr/include they have to perform all sorts of unnatural acts to 
> get gnc-fq-update to work.
> 
> We need some simple instructions for the wiki for how to work around the 
> problem so that gnc-fq-update uses the system perl (that's after all the only 
> one the app bundle can see, it doesn't read the user's shell environment) and 
> gets the dependencies from /System/Library/Perl instead of trying to build 
> them.
> 
> Regards,
> John Ralls
> 
> ___
> gnucash-user mailing list
> gnucash-user@gnucash.org
> To update your subscription preferences or to unsubscribe:
> https://lists.gnucash.org/mailman/listinfo/gnucash-user
> -
> Please remember to CC this list on all your replies.
> You can do this by using Reply-To-List or Reply-All.

___
gnucash-user mailing list
gnucash-user@gnucash.org
To update your subscription preferences or to unsubscribe:
https://lists.gnucash.org/mailman/listinfo/gnucash-user
-
Please remember to CC this list on all your replies.
You can do this by using Reply-To-List or Reply-All.