Fails to download from channel w/ query args in the url.

Bug #244022 reported by Rehan Khan
2
Affects Status Importance Assigned to Milestone
Smart Package Manager
In Progress
Medium
netmask

Bug Description

Imported: http://tracker.labix.org/issue348
Reason for Import: Issue Review . Smart should work with these types of url

further details: https://blueprints.launchpad.net/smart/+spec/bug-reporting-migration

Revision history for this message
Rehan Khan (rasker) wrote :
Download full text (5.9 KiB)

msg1268 (view) Author: urkle Date: 2007-12-31.17:14:29

Fetching packages...

-> http://linux.dell.com/repo/software/.../libsmbios-bin-0.13.13-2.el4.i386.rpm

libsmbios-bin-0.13.13-2.el4.i386.rpm
########################################################################### [ 25%]
-> http://linux.dell.com/repo/software/.../libsmbios-2.0.0_BETA_1-1.el4.i386.rpm

libsmbios-2.0.0_BETA_1-1.el4.i386.rpm
########################################################################### [ 50%]
->
http://linux.dell.com/repo/software/.../smbios-utils-2.0.0_BETA_1-1.el4.i386.rpm

-> http://linux.dell.com/repo/software/.../libsmbios-libs-0.13.13-2.el4.i386.rpm

libsmbios-libs-0.13.13-2.el4.i386.rpm
########################################################################### [ 75%]
smbios-utils-2.0.0_BETA_1-1.el4.i386.rpm
########################################################################### [100%]
Traceback (most recent call last):
  File "/usr/bin/smart", line 194, in ?
    main(sys.argv[1:])
  File "/usr/bin/smart", line 167, in main
    exitcode = iface.run(opts.command, opts.argv)
  File "/usr/lib/python2.3/site-packages/smart/interface.py", line 53, in run
    result = _command.main(self._ctrl, opts)
  File "/usr/lib/python2.3/site-packages/smart/commands/upgrade.py", line 187,
in main
    ctrl.commitTransaction(trans, confirm=confirm)
  File "/usr/lib/python2.3/site-packages/smart/control.py", line 500, in
commitTransaction
    return self.commitChangeSet(trans.getChangeSet(), caching, confirm)
  File "/usr/lib/python2.3/site-packages/smart/control.py", line 545, in
commitChangeSet
    caching)
  File "/usr/lib/python2.3/site-packages/smart/control.py", line 658, in
fetchPackages
    fetcher.run(what=_("packages"))
  File "/usr/lib/python2.3/site-packages/smart/fetcher.py", line 243, in run
    if not handler.tick():
  File "/usr/lib/python2.3/site-packages/smart/fetcher.py", line 1514, in tick
    os.rename(localpath+".part", localpath)
OSError: [Errno 2] No such file or directory

msg1267 (view) Author: netmask Date: 2007-12-28.16:59:59

Please paste the trace you get with pycurl.

msg1266 (view) Author: urkle Date: 2007-12-28.16:50:56

if I *patch* smart's fetcher.py to use the value of 0 instead of the missing
constant (which is defined as 0 in curl 7.16.4), smart tries to download the
file AS mirrors.pl still. and ends up removing the file when done downloading
and then a new trace gets thrown stating "No such file or directory"

msg1265 (view) Author: urkle Date: 2007-12-28.16:44:23

if I install pycurl 7.12.1 smart crashes when downloading the first package
with this backtrace

Traceback (most recent call last):pm

  File "/usr/b...

Read more...

Changed in smart:
importance: Undecided → High
Revision history for this message
netmask (netmask) wrote :

Revision 824 in trunk got a fix which makes Smart not crash when not using pycurl.

=== modified file 'smart/commands/channel.py'
--- smart/commands/channel.py 2008-07-05 20:02:42 +0000
+++ smart/commands/channel.py 2008-07-10 22:34:30 +0000
@@ -193,7 +193,7 @@
             for arg in opts.add:
                 if "=" not in arg:
                     raise Error, _("Argument '%s' has no '='") % arg
- key, value = arg.split("=")
+ key, value = arg.split("=", 1)
                 channel[key.strip()] = value.strip()
             channel = parseChannelData(channel)
             channel["alias"] = alias

I will check again later for a proper fix when pycurl is installed.

Changed in smart:
assignee: nobody → netmask
importance: High → Medium
status: New → In Progress
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.