Note: There are a few cases of duplicates in user autocompletion which are being worked on.

Old versions of CPAN don't install DateTime properly

VERIFIED FIXED in Bugzilla 3.6

Status

()

Bugzilla
Installation & Upgrading
VERIFIED FIXED
7 years ago
5 years ago

People

(Reporter: Max Kanat-Alexander, Assigned: Max Kanat-Alexander)

Tracking

Bugzilla 3.6
Bug Flags:
approval +
approval3.6 +

Details

Attachments

(1 attachment)

v1
6.25 KB, patch
Max Kanat-Alexander
: review+
Details | Diff | Splinter Review
(Assignee)

Description

7 years ago
DateTime requires Params::Validate. Installing Params::Validate via CPAN dies if Module::Build isn't installed. So, install-module.pl should make sure that Module::Build is installed whenever it does an installation (that will protect us against any future similar situations).
(Assignee)

Comment 1

7 years ago
This is actually worse than I thought. It turns out that the version of CPAN that ships with Perl 5.8.8 doesn't install DateTime and Params::Validate properly at all--it ignores the Build.PL file, because it doesn't support Module::Build. So the XS components of both those modules never get installed, and so things will be much slower than they otherwise would.
Summary: Installing DateTime with install-module.pl fails if Module::Build isn't installed → Old versions of CPAN don't install DateTime properly

Comment 2

7 years ago
What are our alternatives?
(Assignee)

Comment 3

7 years ago
We need at least CPAN 1.81 for things to work right. Once we have that, we can also install the YAML module, and then CPAN will use the YAML module to read the prerequisites of DateTime, and install Module::Build properly, fixing all these bugs in one swoop.
(Assignee)

Comment 4

7 years ago
So probably what I'm going to do here is check the version of CPAN installed. Then, if it's too old, I'll have install-module.pl do nothing but upgrade CPAN and install YAML, and then quit with a red message saying to run the command again.
(Assignee)

Comment 5

7 years ago
Okay, I've filed the following bug against DateTime:

  https://rt.cpan.org/Ticket/Display.html?id=56732
(Assignee)

Comment 6

7 years ago
And this bug against Params::Validate:

  https://rt.cpan.org/Ticket/Display.html?id=56733
(Assignee)

Updated

7 years ago
Blocks: 557769
(Assignee)

Comment 7

7 years ago
  Okay, I think that this bug may actually affect several modules, and who knows what modules it will affect in the future.

  Here's what I'm going to do:

  If the required modules are missing or too old, I'm going to install them, and then re-run the original command using exec().
(Assignee)

Comment 8

7 years ago
Created attachment 440347 [details] [diff] [review]
v1

Okay, this updates the CPAN module if it's too old, and the YAML module if it's not there. It also updates the CPAN setting defaults for newer versions of CPAN. Also, I removed perl.secsup.org from the urllist because it seems to frequently have problems and hang when we try to download stuff from it.

The colorize_ stuff is only going onto HEAD, but the rest of the patch is going to 3.6 also.
Assignee: installation → mkanat
Status: NEW → ASSIGNED
Attachment #440347 - Flags: review+
(Assignee)

Comment 9

7 years ago
For 3.6, I removed the colorize_ lines on checkin.

Committing to: bzr+ssh://bzr.mozilla.org/bugzilla/trunk/
modified install-module.pl
modified Bugzilla/Install/CPAN.pm
modified Bugzilla/Install/Requirements.pm
Committed revision 7133.

Committing to: bzr+ssh://bzr.mozilla.org/bugzilla/3.6/
modified install-module.pl
modified Bugzilla/Install/CPAN.pm
modified Bugzilla/Install/Requirements.pm
Committed revision 7087.
Status: ASSIGNED → RESOLVED
Last Resolved: 7 years ago
Resolution: --- → FIXED
(Assignee)

Updated

7 years ago
No longer blocks: 557769
Duplicate of this bug: 557769
(Assignee)

Updated

7 years ago
Flags: approval3.6+
Flags: approval+

Comment 11

7 years ago
bugzilla-3.6: confirmed the message "Cannot determine local time zone" while opening the new bug

Which release this will be fixed in?
(Assignee)

Comment 12

7 years ago
  This will be fixed in 3.6.1.

Comment 13

7 years ago
This worked correctly for me in 3.6.1
(Assignee)

Comment 14

7 years ago
Cool, good to know. :-)
Status: RESOLVED → VERIFIED

Comment 15

7 years ago
I am still getting this error in bugzilla-3.6.1 on FreeBSD-8.1. I know it is supposed to be fixed, but ...


--- message ---
Software error:

Cannot determine local time zone
(Assignee)

Comment 16

7 years ago
@Yuri At this point, your problem is a support issue. Ask the support-bugzilla mailing list about it. The mailing list is described here:

  http://www.bugzilla.org/support/

Comment 17

7 years ago
Why?

This PR is supposed to be fixed and I don;t find it fixed. This is exactly the same issue this PR is about.

Comment 18

5 years ago
I am facing same problem while installing perlmodule DateTime.. Installing on CentOS 5.5,Bugzilla Version 3.6.1..

[root@dev1 bugzilla]# /usr/bin/perl install-module.pl DateTime
 Error is " Failed 43/95 test scripts, 54.74% okay. 1/1 subtests failed, 0.00% okay.
make: *** [test_dynamic] Error 255
  /usr/bin/make test -- NOT OK
Running make install
Appending installation info to /var/www/html/bugzilla/lib/i386-linux-thread-multi/perllocal.pod
  /usr/bin/make install  -- OK
"

and i have tried 

"[root@dev1 bugzilla]# yum install DateTime
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.iitm.ac.in
 * epel: mirror.nus.edu.sg
 * extras: ftp.iitm.ac.in
 * updates: ftp.iitm.ac.in
Setting up Install Process
No package DateTime available.
Nothing to do "

 while checking "yum list perl" it showing DateTime is installed
You need to log in before you can comment on or make changes to this bug.