Skip Menu |

This queue is for tickets about the Module-ScanDeps CPAN distribution.

Report information
The Basics
Id: 24323
Status: rejected
Priority: 0/
Queue: Module-ScanDeps

People
Owner: Nobody in particular
Requestors: m.nooning [...] comcast.net
Cc:
AdminCc:

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



Subject: Cannot open : No such file or directory at C:/perl/site/lib/Module/ScanDeps.pm line 477.
Date: Thu, 11 Jan 2007 11:39:00 -0500
To: bug-Module-ScanDeps [...] rt.cpan.org
From: Malcolm Nooning <m.nooning [...] comcast.net>
Hello, I installed the newest ScanDeps.pm, 0.71 today. One of my scripts that work pp - Perl Packager now breaks. I get the line Cannot open : No such file or directory at C:/perl/site/lib/Module/ScanDeps.pm line 477. This was also the case of 0.70, so, too long ago to remember, I put in the "next if ($file eq ""); " line shown in the paste below. If fixes 0.71 for me, too. ---------paste foreach my $file (@{$files}) { next if ($file eq ""); #xxxxxxxx mhn Line 471 my $key = shift @{$keys}; -------------end paste If you also put in the line "print ("file is :$file:\n");" just after the foreach, you will see that there are a number of null values for $file. I mean, you would see them if you were running one of my old scripts. I used the -M switch quite a bit in some of my old scripts because it used to be that pp needed it. I am guessing that is somehow the origins of the problem. I do not want to change legacy code that works. I would rather just add the "next if ($file eq ""); ".
Subject: please change the calling code instead
On Thu Jan 11 11:39:18 2007, m.nooning@comcast.net wrote: Show quoted text
> I installed the newest ScanDeps.pm, 0.71 today. One of my scripts that > work pp - Perl Packager now breaks. I get the line > > Cannot open : No such file or directory at > C:/perl/site/lib/Module/ScanDeps.pm line 477. > > This was also the case of 0.70, so, too long ago to remember, I put in > the "next if ($file eq ""); " line shown in the paste below. If fixes > 0.71 for me, too. > > ---------paste > foreach my $file (@{$files}) { > next if ($file eq ""); #xxxxxxxx mhn Line 471 > my $key = shift @{$keys}; > -------------end paste > ... > of the problem. I do not want to change legacy code that works. I > would rather just add the "next if ($file eq ""); ".
If anything, I believe M::SD should croak() here rather than die(). However, it should certainly be fatal that the caller has requested it scan a file which does not exist. If you must leave your legacy code unchanged, please get a similarly legacy Module::ScanDeps from backpan. Thanks, Eric
Hi Malcolm, On Thu Jan 11 11:39:18 2007, m.nooning@comcast.net wrote: Show quoted text
> I installed the newest ScanDeps.pm, 0.71 today. One of my scripts that > work pp - Perl Packager now breaks. I get the line > > Cannot open : No such file or directory at > C:/perl/site/lib/Module/ScanDeps.pm line 477. > > This was also the case of 0.70, so, too long ago to remember, I put in > the "next if ($file eq ""); " line shown in the paste below. If fixes > 0.71 for me, too.
If Eric's and my understanding of what you are saying is correct, then you are using your own code which in turn is using pp which, naturally, uses M::SD. Now, if I understand you correctly, the names of nonexistant files are passed in by your script? In that case, I'd say you have to fix your code. But I might be misunderstanding you! I'll reject this ticket now on the assumption that I haven't misunderstood you. If that is wrong, please clarify. The ticket *should* be auto-vivified. (If not, I'll reopen it.) Steffen
Hi Malcolm, On Thu Jan 11 11:39:18 2007, m.nooning@comcast.net wrote: Show quoted text
> I installed the newest ScanDeps.pm, 0.71 today. One of my scripts that > work pp - Perl Packager now breaks. I get the line > > Cannot open : No such file or directory at > C:/perl/site/lib/Module/ScanDeps.pm line 477. > > This was also the case of 0.70, so, too long ago to remember, I put in > the "next if ($file eq ""); " line shown in the paste below. If fixes > 0.71 for me, too.
If Eric's and my understanding of what you are saying is correct, then you are using your own code which in turn is using pp which, naturally, uses M::SD. Now, if I understand you correctly, the names of nonexistant files are passed in by your script? In that case, I'd say you have to fix your code. But I might be misunderstanding you! I'll reject this ticket now on the assumption that I haven't misunderstood you. If that is wrong, please clarify. The ticket *should* be auto-vivified. (If not, I'll reopen it.) Steffen
Subject: Re: [rt.cpan.org #24323] Cannot open : No such file or directory at C:/perl/site/lib/Module/ScanDeps.pm line 477.
Date: Tue, 16 Jan 2007 10:50:25 -0500
To: bug-Module-ScanDeps [...] rt.cpan.org
From: Malcolm Nooning <m.nooning [...] comcast.net>
You are correct. Please close this ticket out. The problem was traced to a script that had "-M Tk:xxx" strings in the build up of a command line. The corresponding three Tk modules that are no longer there. It used to be that PAR did not pick up all of the Tk dependencies so I had done a brute force with a long string of " -M Tk::xxx " in the automated command line. For unrelated reasons, I recently cleaned off perl in it's entirety and did a reinstall. The three Tk packages were tk::WinPhoto tk::Mwm Tk::InputO and again are not on my machine anymore. I am of course fixing the legacy code. Since PAR now picks up the Tk dependencies I no longer need any of the " -M Tk::XXX " strings. Thanks Steffen Müller via RT wrote: Show quoted text
> <URL: http://rt.cpan.org/Ticket/Display.html?id=24323 > > > Hi Malcolm, > > On Thu Jan 11 11:39:18 2007, m.nooning@comcast.net wrote: >
>> I installed the newest ScanDeps.pm, 0.71 today. One of my scripts that >> work pp - Perl Packager now breaks. I get the line >> >> Cannot open : No such file or directory at >> C:/perl/site/lib/Module/ScanDeps.pm line 477. >> >> This was also the case of 0.70, so, too long ago to remember, I put in >> the "next if ($file eq ""); " line shown in the paste below. If fixes >> 0.71 for me, too. >>
> > If Eric's and my understanding of what you are saying is correct, then > you are using your own code which in turn is using pp which, naturally, > uses M::SD. Now, if I understand you correctly, the names of nonexistant > files are passed in by your script? In that case, I'd say you have to > fix your code. But I might be misunderstanding you! > > I'll reject this ticket now on the assumption that I haven't > misunderstood you. If that is wrong, please clarify. The ticket *should* > be auto-vivified. (If not, I'll reopen it.) > > Steffen > >