Author serhiy.storchaka
Recipients paul.moore, serhiy.storchaka, steve.dower, tim.golden, zach.ware
Date 2020-06-27.15:01:55
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1593270116.07.0.608480331512.issue41142@roundup.psfhosted.org>
In-reply-to
Content
There are several problems with _msi.FCICreate() used to create the CAB file. It encodes the CAB names and added file names to UTF-8 and then use them as encoded with the local encoding. So you cannot create a CAB file in a directory with non-ASCII name or add files from a directory with non-ASCII name. This is a Python 3 regression.

Two possible solutions:

1. Encode paths with the locale encoding. It will add support for paths encodable with the locale encoding.

2. Encode them to UTF-8, but use a wrapper for opening file which converts the path from UTF-8 to UTF-16 and uses the Unicode variant of _open(). It will support arbitrary names.
History
Date User Action Args
2020-06-27 15:01:56serhiy.storchakasetrecipients: + serhiy.storchaka, paul.moore, tim.golden, zach.ware, steve.dower
2020-06-27 15:01:56serhiy.storchakasetmessageid: <1593270116.07.0.608480331512.issue41142@roundup.psfhosted.org>
2020-06-27 15:01:56serhiy.storchakalinkissue41142 messages
2020-06-27 15:01:55serhiy.storchakacreate