Closed Bug 140664 Opened 22 years ago Closed 22 years ago

checksetup.pl fails on perl 5.005

Categories

(Bugzilla :: Installation & Upgrading, defect)

2.15
x86
Linux
defect
Not set
blocker

Tracking

()

RESOLVED FIXED
Bugzilla 2.16

People

(Reporter: afranke, Assigned: bbaetz)

References

Details

Attachments

(2 files)

Running checksetup.pl after upgrading to the latest CVS sources of bugzilla
(which require TT 2.07 and include template precompilation) I get the following
error:

Not a subroutine reference at /home/bugzilla/perl5/lib/File/Find.pm line 197
(#1)

    (F) Perl was trying to evaluate a reference to a code value (that is, a
    subroutine), but found a reference to something else instead.  You can
    use the ref() function to find out what kind of ref it really was.
    See also perlref.

Uncaught exception from user code:
        Not a subroutine reference at /home/bugzilla/perl5/lib/File/Find.pm line
197.
        File::Find::wrap_wanted('HASH(0x55d4d4)') called at
/home/bugzilla/perl5/lib/File/Find.pm line 202
        File::Find::find('HASH(0x55d4d4)', 'template/en/default') called at
./checksetup.pl line 845

This is perl, version 5.005_02 built for sun4-solaris-thread
on SunOS leibniz 5.6 Generic_105181-16 sun4u sparc SUNW,Ultra-2
This is how I got around this scary error.
(Well, the above "fix" was found with a lot of help on irc.)

After applying the patch, checksetup.pl gets further along, but then errors out
with the following message:

 Checking user setup ...
Could not compile confirm.html.tmpl:Uncaught exception from user code:
        file error - confirm.html.tmpl: not found at
/home/bugzilla/perl5/lib/site/sun4-solaris-thread/Template/Context.pm line 460
        Template::Context::throw('Template::Context=HASH(0x5aee78)', 'file',
'confirm.html.tmpl: not found') called at
/home/bugzilla/perl5/lib/site/sun4-solaris-thread/Template/Context.pm line 134
        Template::Context::template('Template::Context=HASH(0x5aee78)',
'confirm.html.tmpl') called at
/home/bugzilla/perl5/lib/site/sun4-solaris-thread/Template/Service.pm line 67
        eval {...} called at
/home/bugzilla/perl5/lib/site/sun4-solaris-thread/Template/Service.pm line 67
        Template::Service::process('Template::Service=HASH(0x5aee48)',
'confirm.html.tmpl', 'HASH(0x5c2388)') called at
/home/bugzilla/perl5/lib/site/sun4-solaris-thread/Template.pm line 59
        Template::process('Template=HASH(0x5aebd0)', 'confirm.html.tmpl',
'HASH(0x5c2388)') called at ./checksetup.pl line 826
        main::compile() called at /home/bugzilla/perl5/lib/File/Find.pm line 166
        File::Find::finddir('HASH(0x55c4e0)',
'template/en/default/account/email', 3, undef) called at
/home/bugzilla/perl5/lib/File/Find.pm line 182
        File::Find::finddir('HASH(0x55c4e0)', 'template/en/default/account', 6,
undef) called at /home/bugzilla/perl5/lib/File/Find.pm line 182
        File::Find::finddir('HASH(0x55c4e0)', 'template/en/default', 12, undef)
called at /home/bugzilla/perl5/lib/File/Find.pm line 109
        File::Find::find_opt('HASH(0x55c4e0)', 'template/en/default') called at
/home/bugzilla/perl5/lib/File/Find.pm line 202
        File::Find::find('HASH(0x55c4e0)', 'template/en/default') called at
./checksetup.pl line 845 (#1)
Uncaught exception from user code:
        Could not compile confirm.html.tmpl:Uncaught exception from user code:
        file error - confirm.html.tmpl: not found at
/home/bugzilla/perl5/lib/site/sun4-solaris-thread/Template/Context.pm line 460
        Template::Context::throw('Template::Context=HASH(0x5aee78)', 'file',
'confirm.html.tmpl: not found') called at
/home/bugzilla/perl5/lib/site/sun4-solaris-thread/Template/Context.pm line 134
        Template::Context::template('Template::Context=HASH(0x5aee78)',
'confirm.html.tmpl') called at
/home/bugzilla/perl5/lib/site/sun4-solaris-thread/Template/Service.pm line 67
        eval {...} called at
/home/bugzilla/perl5/lib/site/sun4-solaris-thread/Template/Service.pm line 67
        Template::Service::process('Template::Service=HASH(0x5aee48)',
'confirm.html.tmpl', 'HASH(0x5c2388)') called at
/home/bugzilla/perl5/lib/site/sun4-solaris-thread/Template.pm line 59
        Template::process('Template=HASH(0x5aebd0)', 'confirm.html.tmpl',
'HASH(0x5c2388)') called at ./checksetup.pl line 826
        main::compile() called at /home/bugzilla/perl5/lib/File/Find.pm line 166
        File::Find::finddir('HASH(0x55c4e0)',
'template/en/default/account/email', 3, undef) called at
/home/bugzilla/perl5/lib/File/Find.pm line 182
        File::Find::finddir('HASH(0x55c4e0)', 'template/en/default/account', 6,
undef) called at /home/bugzilla/perl5/lib/File/Find.pm line 182
        File::Find::finddir('HASH(0x55c4e0)', 'template/en/default', 12, undef)
called at /home/bugzilla/perl5/lib/File/Find.pm line 109
        File::Find::find_opt('HASH(0x55c4e0)', 'template/en/default') called at
/home/bugzilla/perl5/lib/File/Find.pm line 202
        File::Find::find('HASH(0x55c4e0)', 'template/en/default') called at
./checksetup.pl line 845

        main::compile() called at /home/bugzilla/perl5/lib/File/Find.pm line 166
        File::Find::finddir('HASH(0x55c4e0)',
'template/en/default/account/email', 3, undef) called at
/home/bugzilla/perl5/lib/File/Find.pm line 182
        File::Find::finddir('HASH(0x55c4e0)', 'template/en/default/account', 6,
undef) called at /home/bugzilla/perl5/lib/File/Find.pm line 182
        File::Find::finddir('HASH(0x55c4e0)', 'template/en/default', 12, undef)
called at /home/bugzilla/perl5/lib/File/Find.pm line 109
        File::Find::find_opt('HASH(0x55c4e0)', 'template/en/default') called at
/home/bugzilla/perl5/lib/File/Find.pm line 202
        File::Find::find('HASH(0x55c4e0)', 'template/en/default') called at
./checksetup.pl line 845
Attached patch avoid no_chdirSplinter Review
no_chdir isn't available with 5.005, it appears. This patch passes for me on
landfill's perl 5.00503, and on 5.6.1 locally.

I also fixed the checksetup part of bug 140633.

Andreas, with this patch, do you still need your File::Find patch?
Severity: critical → blocker
Status: NEW → ASSIGNED
Keywords: patch, review
Target Milestone: --- → Bugzilla 2.16
Comment on attachment 81350 [details] [diff] [review]
avoid no_chdir

Worksforme. t(ested)=afranke.
Attachment #81350 - Flags: review+
Comment on attachment 81343 [details] [diff] [review]
Patch for perl5/lib/File/Find.pm

It seems like this patch for lib/File/Find.pm is not needed any more, if the
second patch is applied.
Comment on attachment 81350 [details] [diff] [review]
avoid no_chdir

this also fixes perl 5.005_03 on fbsd - 

WFM with patch
Yeah - I checked that File::Find existed on 5.005 before writing this, but
landfill was down so I couldn't check that it actually worked...

The older File::Find doesn't let you do lots of stuff - obviously it was
rewritten for 5.6
Summary: checksetup.pl fails on perl 5.005_02 → checksetup.pl fails on perl 5.005
Comment on attachment 81350 [details] [diff] [review]
avoid no_chdir

Based on two successful tests and reports it fixes the problem, r=gerv. Unless
someone else with 5.005 wants to test this :-)

Gerv
Attachment #81350 - Flags: review+
Fixed.

Checking in checksetup.pl;
/cvsroot/mozilla/webtools/bugzilla/checksetup.pl,v  <--  checksetup.pl
new revision: 1.141; previous revision: 1.140
done

Gerv
Status: ASSIGNED → RESOLVED
Closed: 22 years ago
Resolution: --- → FIXED
*** Bug 141003 has been marked as a duplicate of this bug. ***
QA Contact: matty_is_a_geek → default-qa
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: