FS#25825 - [perl-www-mechanize] packages from the AUR which depend on it don't work

Attached to Project: Community Packages
Opened by Uli (Army) - Tuesday, 30 August 2011, 11:36 GMT
Last edited by Sergej Pupykin (sergej) - Thursday, 01 September 2011, 21:35 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Francois Charette (Firmicus)
Sergej Pupykin (sergej)
Justin Davis (juster)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Summary and Info:

I discovered this problem with two applications, both depend on perl-www-mechanize only. I'm talking about xkcd-git and get-flash-videos-git from the AUR. Both used to work before. Here's the output.

% xkcd
Can't locate HTML/Form.pm in @INC (@INC contains: /usr/lib/perl5/site_perl /usr/share/perl5/site_perl /usr/lib/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib/perl5/core_perl /usr/share/perl5/core_perl .) at /usr/share/perl5/vendor_perl/WWW/Mechanize.pm line 133.
BEGIN failed--compilation aborted at /usr/share/perl5/vendor_perl/WWW/Mechanize.pm line 133.
Compilation failed in require at /usr/bin/vendor_perl/xkcd line 10.
BEGIN failed--compilation aborted at /usr/bin/vendor_perl/xkcd line 10.

% get_flash_videos http://www.*secret*.de/***
Can't locate HTML/Form.pm in @INC (@INC contains: /usr/bin/site_perl/lib /usr/lib/perl5/site_perl /usr/share/perl5/site_perl /usr/lib/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib/perl5/core_perl /usr/share/perl5/core_perl .) at /usr/share/perl5/vendor_perl/WWW/Mechanize.pm line 133.
BEGIN failed--compilation aborted at /usr/share/perl5/vendor_perl/WWW/Mechanize.pm line 133.
Compilation failed in require at /usr/lib/perl5/site_perl/FlashVideo/Mechanize.pm line 3.
BEGIN failed--compilation aborted at /usr/lib/perl5/site_perl/FlashVideo/Mechanize.pm line 3.
Compilation failed in require at /usr/lib/perl5/site_perl/FlashVideo/URLFinder.pm line 5.
BEGIN failed--compilation aborted at /usr/lib/perl5/site_perl/FlashVideo/URLFinder.pm line 5.
Compilation failed in require at /usr/bin/site_perl/get_flash_videos line 45.
BEGIN failed--compilation aborted at /usr/bin/site_perl/get_flash_videos line 45.


Additional info:
* package version(s)

My pacman log shows this

[2011-08-05 08:37] upgraded perl-www-mechanize (1.64-1 -> 1.68-1)

This must have been about the time when the errors started.

* config and/or log files etc.

none

Steps to reproduce:

Install either xkcd-git or get-flash-videos-git from the AUR and execute them. I also tested gpsdrive, which is the only package in the repos which depends on perl-www-mechanize. This one works, maybe that's the reason why this problem wasn't discovered.
This task depends upon

Closed by  Sergej Pupykin (sergej)
Thursday, 01 September 2011, 21:35 GMT
Reason for closing:  Fixed
Comment by Sergej Pupykin (sergej) - Tuesday, 30 August 2011, 12:08 GMT
It is strange. HTML::Form is a part of perl-libwww and perl-www-mechanize depends on it.

Btw, I upgraded package to 1.70-1. Please try it.
Comment by Uli (Army) - Tuesday, 30 August 2011, 13:20 GMT
Unfortunately nothing changed with the update, I still get the same error messages. Could there be something wrong on my installation? I really don't do any changes when it comes to perl packages, since I don't understand perl. Why can't this HTML::Form not be found here? A PATH problem?

% echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/opt/java/bin:/opt/java/db/bin:/opt/java/jre/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/lib/perl5/vendor_perl/bin:/usr/bin/core_perl:/home/army/.bin

Anything else I can provide? I also reinstalled perl-libwww just in case, didn't change anything.
Comment by Sergej Pupykin (sergej) - Tuesday, 30 August 2011, 13:32 GMT
Check /usr/share/perl5/vendor_perl/HTML/Form.pm existence, reinstall perl-libwww if it is absent.
Comment by Uli (Army) - Tuesday, 30 August 2011, 14:23 GMT
Oh I see, this might be because I use [testing]. With perl-libwww from [extra] everything's fine, but the package in [testing] caused a lot of trouble as far as I can see. On the mailing list there was a thread about broken perl packages, I also posted a bugreport about one problem. Unfortunately I can't find it anymore.

Should I open a new bugreport? Because this one is simply wrong, since perl-libwww is the problem, not perl-www-mechanize.
Comment by Sergej Pupykin (sergej) - Tuesday, 30 August 2011, 14:32 GMT
Francois, Justin: what are your plans about libwww? It looks like upstream was splitted. Do you plan to move all parts into extra/testing?
Comment by Justin Davis (juster) - Tuesday, 30 August 2011, 17:05 GMT
Sergej, Yes that would be the plan. Being a junior developer, I do not have access to move perl-libwww, and all the packages it split up into, from [testing] to [extra]. When perl-libwww ("libwww-perl" on CPAN) split up into separate distributions it seems it also moved perl-html-form ("HTML-Form" on CPAN) into a separate package ("distribution" on CPAN).

The solution is simple, we make a new perl-html-form package and we add perl-html-form as a dependency of perl-www-mechanize. The perl-html-form dependency is missing in perl-www-mechanize. This did not used to matter when perl-html-form was bundled with perl-libwww but it does now. I will push a package for perl-html-form to the SVN and I will ask to have it moved to [testing]. perl-html-form should be moved to [extra] when all the other package perl-libwww was split up into are moved to [extra].

PS I am using a generator due to hurricane Irene in america so if I flake out the generator has probably run out of gas :P
Comment by Uli (Army) - Tuesday, 30 August 2011, 21:19 GMT
Ok, hang in there Justin, I know it's difficult for guys of the western world to live without electricity :P I always enjoy such moments, life calms down :) Hope you guys are ok over there!!!
Comment by Michael Kogan (Photon) - Thursday, 01 September 2011, 09:23 GMT
Same here with Shutter, is there a [testing] package which includes HTML/Form.pm?
Comment by Justin Davis (juster) - Thursday, 01 September 2011, 19:18 GMT
I released perl-html-form to [community-testing] since I cannot release to [testing] on my own. The perl-html-form package might as well go to [community] since it seems only perl-www-mechanize depends on it. After I released it I remembered to add a conflict against old versions of perl-libwww (<6). You will need to have the perl-libwww installed from [testing] in order to use the perl-html-form from [community-testing]. That is also why perl-html-form has a release number of 2.
Comment by Sergej Pupykin (sergej) - Thursday, 01 September 2011, 21:29 GMT
I updated community-testing/perl-www-mechanize adding perl-html-form to deps and adopt perl-html-form.
Hope this bug is fixed now.

Loading...