Bug 9469 - Can't locate object method "progress" via package "gurpm::RPMProgressDialog"
Summary: Can't locate object method "progress" via package "gurpm::RPMProgressDialog"
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: Cauldron
Hardware: x86_64 Linux
Priority: Normal normal
Target Milestone: ---
Assignee: Thierry Vignaud
QA Contact:
URL:
Whiteboard:
Keywords:
: 9470 9471 9526 9574 (view as bug list)
Depends on:
Blocks:
 
Reported: 2013-03-20 23:24 CET by Laurent Boivin
Modified: 2013-03-31 15:08 CEST (History)
5 users (show)

See Also:
Source RPM: rpmdrake
CVE:
Status comment:


Attachments

Description Laurent Boivin 2013-03-20 23:24:38 CET
Hi,

I've installed Mageia 3 beta 3 from the KDE DVD.
I've got notifications that updates are available.
I can open the selection windows, can select the packages to update (all of them are selected by default, as expected).
I can confirm.
When it starts downloading the 1st package (out of 8), I face the error:
récupération des fichiers rpm à partir de « Core Release2 »...
Error: ... échec de la récupération : Can't locate object method "progress" via package "gurpm::RPMProgressDialog" at /usr/lib/perl5/vendor_perl/5.16.3/Rpmdrake/pkg.pm line 216, <$rsync> chunk 74.

I have the same behaviour and error when I tried to install packages from rpmdrake.

Installation of packages via urpmi (CLI) works fine.

Addtl info:

$ rpm -qa |grep rpm
urpmi-7.20-1.mga3
rpm-mageia-setup-1.168-1.mga3
lib64rpmbuild3-4.11.0.1-1.mga3
rpm-helper-0.24.11-3.mga3
lib64rpm3-4.11.0.1-1.mga3
rpm-4.11.0.1-1.mga3
gurpmi-7.20-1.mga3
rpmdrake-5.42-2.mga3
Comment 1 Laurent Boivin 2013-03-20 23:46:17 CET
After investigations /usr/lib/perl5/vendor_perl/5.16.3/Rpmdrake/pkg.pm calls gurpm::RPMProgressDialog::progess() instead of gurpm::RPMProgressDialog::set_progressbar()

Quick and dirty fix:
adding a sub gurpm::RPMProgressDialog::progess() thats just call  gurpm::RPMProgressDialog::set_progressbar() workaround the issue.

Clean patch would probably imply changing all the calls to gurpm::RPMProgressDialog::progess() to gurpm::RPMProgressDialog::set_progressbar()

HTH.

Kind Regards
Laurent

Source RPM: (none) => gurpmi-7.20-1.mga3
Severity: major => normal

Comment 2 Barry Jackson 2013-03-20 23:50:01 CET
See also thread in ML
https://www.mageia.org/pipermail/mageia-dev/2013-March/023649.html

CC: (none) => zen25000

Manuel Hiebel 2013-03-21 00:00:36 CET

Assignee: bugsquad => thierry.vignaud
Source RPM: gurpmi-7.20-1.mga3 => rpmdrake

Comment 3 Manuel Hiebel 2013-03-21 00:01:07 CET
*** Bug 9470 has been marked as a duplicate of this bug. ***

CC: (none) => jdbeard

Comment 4 Laurent Boivin 2013-03-21 00:19:49 CET
[Patch suggestion... WARNING: not fully tested! ]


gurpm::RPMProgressDialog looks use-d only in Rpmdrake::pkg, so less dirty patch:

diff pkg.pm.original pkg.pm
216c216
<         $gurpm->progress($percent/100);
---
>         $gurpm->set_progressbar($percent/100);
218c218
<         $gurpm->progress(1);
---
>         $gurpm->set_progressbar(1);
817c817
<                              check_sig => sub { $gurpm->progress(++$progress/$total) },
---
>                              check_sig => sub { $gurpm->set_progressbar(++$progress/$total) },
945c945
<         $gurpm->progress(min(0.99, scalar($progress/@toremove)));
---
>         $gurpm->set_progressbar(min(0.99, scalar($progress/@toremove)));


With that :
MageiaUpdate works
rpmdrake (GUI) works

Limited tests only.


Cheers
Laurent
Comment 5 Manuel Hiebel 2013-03-21 00:28:34 CET
*** Bug 9471 has been marked as a duplicate of this bug. ***

CC: (none) => junk_no_spam

Comment 6 Thierry Vignaud 2013-03-21 08:06:06 CET
Fixed in git

Status: NEW => RESOLVED
Resolution: (none) => FIXED

Comment 7 Manuel Hiebel 2013-03-24 21:13:45 CET
*** Bug 9526 has been marked as a duplicate of this bug. ***

CC: (none) => djmarian4u

Comment 8 Jani Välimaa 2013-03-31 09:38:37 CEST
*** Bug 9574 has been marked as a duplicate of this bug. ***

CC: (none) => brtians1

Comment 9 Thierry Vignaud 2013-03-31 15:08:32 CEST
For those stuck with rpmdrake error, just run "urpmi --auto-update" as root in a terminal
Or "urpmi.update -a; gurpmi --auto-select" if you prefer to have a GUI

Note You need to log in before you can comment on or make changes to this bug.