Closed Bug 236664 Opened 20 years ago Closed 20 years ago

on Win32 checksetup.pl prints wrong install instructions for Perl modules

Categories

(Bugzilla :: Installation & Upgrading, defect)

x86
Windows XP
defect
Not set
normal

Tracking

()

RESOLVED FIXED
Bugzilla 2.18

People

(Reporter: abenea, Assigned: abenea)

Details

(Whiteboard: [needed for Win32bz])

Attachments

(1 file, 3 obsolete files)

User-Agent:       Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) Opera 7.50  [en]
Build Identifier:  

On Windows, checksetup.pl prints commands like
perl -MCPAN -e'install "Date::Format"'
instead of
ppm install TimeDate
 

Reproducible: Always
Steps to Reproduce:
Status: UNCONFIRMED → NEW
Ever confirmed: true
Whiteboard: [needed for Win32bz]
Assignee: justdave → zach
Component: bugzilla.org → Installation & Upgrading
Andrei: bugzilla.org is used for bugs related to the bugzilla.org website. :)
Assignee: zach → abenea
Attached patch v1 (obsolete) — Splinter Review
Attachment #143177 - Flags: review?(vlad)
Comment on attachment 143177 [details] [diff] [review]
v1

+my %ppm_modules = (

Well I guess that works too, although we could have added them in the $modules
variable.

+	 return "ppm install " . $module;
+    } else {

Do we need the "else" here? The "if" branch already exited until now. 

+    if ($^O !~ /MSWin32/i) {
...
+    } else {
+	 print "If you want to see pretty HTML views of patches, you should ";
+	 print "install the \nPatchReader module:\n";
+	 print "PatchReader: " . install_command("PatchReader") . "\n";
+    }

Why do we use the install_command in a Win32-only block? Shouldn't
install_command be platform-independent by design? Couldn't we use PatchReader
to display the install instructions for the Linux branch as well?

r=vlad with those questions answered or addressed in version 2.
Attachment #143177 - Flags: review?(vlad) → review+
s/PatchReader/install_command/ (in the previous comment)
(In reply to comment #3)
> (From update of attachment 143177 [details] [diff] [review])
> +my %ppm_modules = (
> 
> Well I guess that works too, although we could have added them in the $modules
> variable.

The $modules variable is for required packages, but we need to translate the 
optional packages also.

> +	 return "ppm install " . $module;
> +    } else {
> 
> Do we need the "else" here? The "if" branch already exited until now. 

Well, I thought it is more clear this way.

> +    if ($^O !~ /MSWin32/i) {
> ...
> +    } else {
> +	 print "If you want to see pretty HTML views of patches, you should ";
> +	 print "install the \nPatchReader module:\n";
> +	 print "PatchReader: " . install_command("PatchReader") . "\n";
> +    }
> 
> Why do we use the install_command in a Win32-only block? Shouldn't
> install_command be platform-independent by design? Couldn't we use PatchReader
> to display the install instructions for the Linux branch as well?

I'll switch to linux to see if perl -MCPAN works for PatchReader, and if it does 
I'll make another patch.
 
> r=vlad with those questions answered or addressed in version 2.
> 

Status: NEW → ASSIGNED
(In reply to comment #5)
> (In reply to comment #3)
> > (From update of attachment 143177 [details] [diff] [review])
> I'll switch to linux to see if perl -MCPAN works for PatchReader, and if it 
does 
> I'll make another patch.

I tried installing like this, but it doesn't work. I think I have answered all 
the questions.
Flags: approval?
Target Milestone: --- → Bugzilla 2.18
Comment on attachment 143177 [details] [diff] [review]
v1

>+    print "Most ActivePerl modules are available at Apache ppm repository.\n";

This should be "at the Apache ppm repository" or "at Apache's ppm repository"

>+    print "located at http://www.apache.org/dyn/closer.cgi/perl/win32-bin/ppms/\n";
>+    print "You can add the repository with the following command:\n";
>+    print "    ppm rep add apache http://apache.roweboat.net/perl/win32-bin/ppms/\n\n";
>+}

I hadn't seen this one mentioned anywhere before...  Can we post this to
developers and get comments on whether this should be an officially recommended
repository to use?

>+    if ($^O !~ /MSWin32/i) {
>+        print "If you want to see pretty HTML views of patches, you should ";
>+        print "install the \nPatchReader module, which can be downloaded at:\n";
>+        print "http://search.cpan.org/CPAN/authors/id/J/JK/JKEISER/PatchReader-0.9.2.tar.gz\n";
>+        print "When you get it, do the following to install:\n";
>+        print "tar xzvf PatchReader-0.9.2.tar.gz\n";
>+        print "cd PatchReader-0.9.2\n";
>+        print "perl Makefile.PL\n";
>+        print "make install\n\n";

PatchReader is available via CPAN now.	We should fix this to use
install_command like everything else.
Attachment #143177 - Flags: review-
Flags: approval?
(In reply to comment #7)
> (From update of attachment 143177 [details] [diff] [review])
> >+    print "Most ActivePerl modules are available at Apache ppm repository.
\n";
> 
> This should be "at the Apache ppm repository" or "at Apache's ppm repository"
> 
> >+    print "located at http://www.apache.org/dyn/closer.
cgi/perl/win32-bin/ppms/\n";
> >+    print "You can add the repository with the following command:\n";
> >+    print "    ppm rep add apache http://apache.roweboat.
net/perl/win32-bin/ppms/\n\n";
> >+}
> 
> I hadn't seen this one mentioned anywhere before...  Can we post this to
> developers and get comments on whether this should be an officially 
recommended
> repository to use?

I had a hard time finding the maintainer these modules. (I found the repository 
on google). It seems to be related to their Perl subproject.

> 
> >+    if ($^O !~ /MSWin32/i) {
> >+        print "If you want to see pretty HTML views of patches, you should 
";
> >+        print "install the \nPatchReader module, which can be downloaded at:
\n";
> >+        print "http://search.cpan.
org/CPAN/authors/id/J/JK/JKEISER/PatchReader-0.9.2.tar.gz\n";
> >+        print "When you get it, do the following to install:\n";
> >+        print "tar xzvf PatchReader-0.9.2.tar.gz\n";
> >+        print "cd PatchReader-0.9.2\n";
> >+        print "perl Makefile.PL\n";
> >+        print "make install\n\n";
> 
> PatchReader is available via CPAN now.	We should fix this to use
> install_command like everything else.
> 

I tried 
perl -MCPAN -e'install "PatchReader"'
but on my Mandrake 10 it says
Going to read /root/.cpan/Metadata
  Database was generated on Thu, 02 Jan 2003 10:16:18 GMT
Warning: Cannot install PatchReader, don't know what it is.
Try the command

    i /PatchReader/

to find objects with matching identifiers.
(In reply to comment #8)
> > I hadn't seen this one mentioned anywhere before...  Can we post this to
> > developers and get comments on whether this should be an officially 
> > recommended repository to use?
> 
> I had a hard time finding the maintainer these modules. (I found the
> repository on google). It seems to be related to their Perl subproject.

Sorry, I wasn't clear enough.  I meant the developers@bugzilla.org mailing list.
 This PPM repository isn't officially supported by ActiveState, thus we need
some discussion on it before just blinding starting to recommend that people use it.

> > PatchReader is available via CPAN now.	We should fix this to use
> > install_command like everything else.
> 
> I tried 
> perl -MCPAN -e'install "PatchReader"'
> but on my Mandrake 10 it says
> Going to read /root/.cpan/Metadata
>   Database was generated on Thu, 02 Jan 2003 10:16:18 GMT
                              ^^^^^^^^^^^^^^^^
Your CPAN database is WAY out of date.  It's supposed to download a new one
automatically if the current one is more than 24 hours old.  I think your CPAN
is broken.
Attached patch v2 (obsolete) — Splinter Review
Unix: PatchReader is handled through CPAN now.
Windows: Changed the message explaining how to add a ppm repository.
Attachment #143177 - Attachment is obsolete: true
Attachment #143783 - Flags: review?(vlad)
Comment on attachment 143783 [details] [diff] [review]
v2

r=vlad assuming you got the green-light from justdave regarding the repository.
Attachment #143783 - Flags: review?(vlad) → review+
Target Milestone: Bugzilla 2.18 → Bugzilla 2.20
(In reply to comment #7)
> I hadn't seen this one mentioned anywhere before...  Can we post this to
> developers and get comments on whether this should be an officially 
recommended
> repository to use?

The suggested repository requires ActivePerl 5.8. So until someone finds a 
better repository or Bugzilla requires 5.8, the patch will sit here waiting to 
bitrot...
Attached patch v3 (obsolete) — Splinter Review
The recommended repository now dependends on the ActivePerl version.
Attachment #143783 - Attachment is obsolete: true
Attachment #143813 - Flags: review?(vlad)
Comment on attachment 143813 [details] [diff] [review]
v3

+	 print "The required ActivePerl modules are available OpenInteract's
ppm repository.\n";

That doesn't make much sense in English. You could make that "are available at
OpenInteract's".

Probably you can make "The required" --> "Most" for consistency's sake as well,
since you're at it.

+	 print "    ppm rep add oi
http://openinteract.sourceforge.net/ppmpackages\n\n";

That URL returns a HTTP redirect code. Probably adding a slash at the end, like
in Apache's case, will solve the issue.

The patch looks good (except the English text mentioned at the beginning of
this comment). You'll need justdave to approve the repository URLs.
Attachment #143813 - Flags: review?(vlad) → review-
Attached patch v4Splinter Review
Attachment #143813 - Attachment is obsolete: true
Attachment #143822 - Flags: review?(vlad)
Attachment #143822 - Flags: review?(vlad) → review+
Target Milestone: Bugzilla 2.20 → Bugzilla 2.18
Looks good to me. :)  People can feel free to complain later if the PPM repo is
bad ;)
Flags: approval+
Checking in checksetup.pl;
/cvsroot/mozilla/webtools/bugzilla/checksetup.pl,v  <--  checksetup.pl
new revision: 1.266; previous revision: 1.265
done
Status: ASSIGNED → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
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

Creator:
Created:
Updated:
Size: