[Python-bugs-list] [ python-Bugs-520645 ] unpickable basic types => confusing err

noreply@sourceforge.net noreply@sourceforge.net
Wed, 20 Feb 2002 13:00:56 -0800


Bugs item #520645, was opened at 2002-02-20 13:00
You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=520645&group_id=5470

Category: Type/class unification
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Samuele Pedroni (pedronis)
Assigned to: Nobody/Anonymous (nobody)
Summary: unpickable basic types => confusing err

Initial Comment:
E.g.

Python 2.2
>>> f=open('c:/autoexec.bat','r')
>>> w=open('c:/transit/p','w')
>>> import pickle as pic
>>> pic.dump(f,w)
Traceback (most recent call last):
<<snip>>
TypeError: coercing to Unicode: need string or buffer, 
file found
>>> import cPickle as cpic
>>> cpic.dump(f,w)
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
  File "C:\USR\PYTHON22\lib\copy_reg.py", line 56, in 
_reduce
    state = base(self)
TypeError: coercing to Unicode: need string or buffer, 
file found

VS.

Python 2.1 
>>> f=open('c:/autoexec.bat','r')
>>> w=open('c:/transit/p','w')
>>> import pickle as pic
>>> pic.dump(f,w)
Traceback (most recent call last):
<<snip>>
pickle.PicklingError: can't pickle 'file' object: 
<open file 'c:/autoexec.bat',
mode 'r' at 00795290>
>>> import cPickle as cpic
>>> cpic.dump(f,w)
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
cPickle.UnpickleableError: Cannot pickle <type 'file'> 
objects
>>>



----------------------------------------------------------------------

You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=520645&group_id=5470