This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author Laurent.Mazuel
Recipients Laurent.Mazuel
Date 2014-02-27.14:43:50
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1393512231.07.0.576439646525.issue20797@psf.upfronthosting.co.za>
In-reply-to
Content
Many methods which use path in Python now accept string or bytes in parameter (e.g. all methods in "os.path", the "open" method, etc.).

Actually, sometimes it is not possible to handle a file without using bytes path. For example, path coded in another encoding system than the current locale system (e.g. a Windows filename encoded in "cp1252" against a Linux "utf-8" system).

Since "zipfile.extractall" uses path, it should accept bytes as path. Currently it leads to an error:
  File "/usr/local/lib/python3.3/zipfile.py", line 1262, in _extract_member
    targetpath = os.path.join(targetpath, arcname)
  File "/usr/local/lib/python3.3/posixpath.py", line 92, in join
    "components.") from None
TypeError: Can't mix strings and bytes in path components.

This bug is closely related to bug 20329 but is not the same (but maybe this enhancement will create a good debate around bytes support in zipfile module :-) )
History
Date User Action Args
2014-02-27 14:43:51Laurent.Mazuelsetrecipients: + Laurent.Mazuel
2014-02-27 14:43:51Laurent.Mazuelsetmessageid: <1393512231.07.0.576439646525.issue20797@psf.upfronthosting.co.za>
2014-02-27 14:43:51Laurent.Mazuellinkissue20797 messages
2014-02-27 14:43:50Laurent.Mazuelcreate