Re: Replacement client for pep381client

Christian Theune <[email protected]> Mon, 25 Mar 2013 18:45:26 +0100
Newsgroups gmane.comp.python.catalog
Message-ID <[email protected]>
--===============1246427162==
Content-Type: multipart/signed; boundary="Apple-Mail=_9BB11BDE-1135-4322-92CF-9A6F20F57C5C"; protocol="application/pkcs7-signature"; micalg=sha1


--Apple-Mail=_9BB11BDE-1135-4322-92CF-9A6F20F57C5C
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=iso-8859-1

Hi,

On Mar 22, 2013, at 5:44 AM, Andreas Jung <[email protected]> wrote:

>=20
> I don't know much about filesystem encodings but if a FS encoding like
>=20
>>>> sys.getfilesystemencoding()
> 'ANSI_X3.4-1968'
>=20
> is a system-wide setting then it is unlikely that you make an encoding
> change a mandatory requirement. 'ANSI_X3.4-1968' is at least returned
> on my CentOS and Ubuntu box.

Reading up on the VFS unicode handling it appears that we just need to =
treat everything as bytestrings and encode it ourselves. The locale =
setting is really just an environment variable influencing library =
behaviour (like glib) - the kernel doesn't seem to care except for '/' =
and '\0'.

However, you may also need to make sure that your web server treats the =
unicode URLs correctly and uses UTF-8 as the encoding for looking up the =
filenames.

I have applied a fix forcing the filenames to always be encoded as =
UTF-8.

Christian

--=20
Christian Theune =B7 [email protected]
gocept gmbh & co. kg =B7 Forsterstra=DFe 29 =B7 06112 Halle (Saale) =B7 =
Germany
http://gocept.com =B7 Tel +49 345 1229889-7
Python, Pyramid, Plone, Zope =B7 consulting, development, hosting, =
operations


--Apple-Mail=_9BB11BDE-1135-4322-92CF-9A6F20F57C5C
Content-Disposition: attachment;
	filename=smime.p7s
Content-Type: application/pkcs7-signature;
	name=smime.p7s
Content-Transfer-Encoding: base64

MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIINQTCCBjQw
ggQcoAMCAQICAR4wDQYJKoZIhvcNAQEFBQAwfTELMAkGA1UEBhMCSUwxFjAUBgNVBAoTDVN0YXJ0
Q29tIEx0ZC4xKzApBgNVBAsTIlNlY3VyZSBEaWdpdGFsIENlcnRpZmljYXRlIFNpZ25pbmcxKTAn
BgNVBAMTIFN0YXJ0Q29tIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA3MTAyNDIxMDE1NVoX
DTE3MTAyNDIxMDE1NVowgYwxCzAJBgNVBAYTAklMMRYwFAYDVQQKEw1TdGFydENvbSBMdGQuMSsw
KQYDVQQLEyJTZWN1cmUgRGlnaXRhbCBDZXJ0aWZpY2F0ZSBTaWduaW5nMTgwNgYDVQQDEy9TdGFy
dENvbSBDbGFzcyAxIFByaW1hcnkgSW50ZXJtZWRpYXRlIENsaWVudCBDQTCCASIwDQYJKoZIhvcN
AQEBBQADggEPADCCAQoCggEBAMcJg8zOLdgasSmkLhOrlr6KMoOMpohBllVHrdRvEg/q6r8jR+EK
75xCGhR8ToREoqe7zM9/UnC6TS2y9UKTpT1v7RSMzR0t6ndl0TWBuUr/UXBhPk+Kmy7bI4yW4urC
+y7P3/1/X7U8ocb8VpH/Clt+4iq7nirMcNh6qJR+xjOhV+VHzQMALuGYn5KZmc1NbJQYclsGkDxD
z2UbFqE2+6vIZoL+jb9x4Pa5gNf1TwSDkOkikZB1xtB4ZqtXThaABSONdfmv/Z1pua3FYxnCFmdr
/+N2JLKutIxMYqQOJebr/f/h5t95m4JgrM3Y/w7YX9d7YAL9jvN4SydHsU6n65cCAwEAAaOCAa0w
ggGpMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBRTcu2SnODaywFc
fH6WNU7y1LhRgjAfBgNVHSMEGDAWgBROC+8apEBbpRdphzDKNGhD0EGu8jBmBggrBgEFBQcBAQRa
MFgwJwYIKwYBBQUHMAGGG2h0dHA6Ly9vY3NwLnN0YXJ0c3NsLmNvbS9jYTAtBggrBgEFBQcwAoYh
aHR0cDovL3d3dy5zdGFydHNzbC5jb20vc2ZzY2EuY3J0MFsGA1UdHwRUMFIwJ6AloCOGIWh0dHA6
Ly93d3cuc3RhcnRzc2wuY29tL3Nmc2NhLmNybDAnoCWgI4YhaHR0cDovL2NybC5zdGFydHNzbC5j
b20vc2ZzY2EuY3JsMIGABgNVHSAEeTB3MHUGCysGAQQBgbU3AQIBMGYwLgYIKwYBBQUHAgEWImh0
dHA6Ly93d3cuc3RhcnRzc2wuY29tL3BvbGljeS5wZGYwNAYIKwYBBQUHAgEWKGh0dHA6Ly93d3cu
c3RhcnRzc2wuY29tL2ludGVybWVkaWF0ZS5wZGYwDQYJKoZIhvcNAQEFBQADggIBAAqDCH14qywG
XLhjjF6uHLkjd02hcdh9hrw+VUsv+q1eeQWB21jWj3kJ96AUlPCoEGZ/ynJNScWy6QMVQjbbMXlt
UfO4n4bGGdKo3awPWp61tjAFgraLJgDk+DsSvUD6EowjMTNx25GQgyYJ5RPIzKKR9tQW8gGK+2+R
HxkUCTbYFnL6kl8Ch507rUdPPipJ9CgJFws3kDS3gOS5WFMxcjO5DwKfKSETEPrHh7p5shuuNktv
sv6hxHTLhiMKX893gxdT3XLS9OKmCv87vkINQcNEcIIoFWbP9HORz9v3vQwR4e3ksLc2JZOAFK+s
sS5XMEoznzpihEP0PLc4dCBYjbvSD7kxgDwZ+Aj8Q9PkbvE9sIPP7ON0fz095HdThKjiVJe6vofq
+n6b1NBc8XdrQvBmunwxD5nvtTW4vtN6VY7mUCmxsCieuoBJ9OlqmsVWQvifIYf40dJPZkk9YgGT
zWLpXDSfLSplbY2LL9C9U0ptvjcDjefLTvqSFc7tw1sEhF0n/qpA2r0GpvkLRDmcSwVyPvmjFBGq
Up/pNy8ZuPGQmHwFi2/14+xeSUDG2bwnsYJQG2EdJCB6luQ57GEnTA/yKZSTKI8dDQa8Sd3zfXb1
9mOgSF0bBdXbuKhEpuP9wirslFe6fQ1t5j5R0xi72MZ8ikMu1RQZKCyDbMwazlHiMIIHBTCCBe2g
AwIBAgIDBSF9MA0GCSqGSIb3DQEBBQUAMIGMMQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRD
b20gTHRkLjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmluZzE4MDYG
A1UEAxMvU3RhcnRDb20gQ2xhc3MgMSBQcmltYXJ5IEludGVybWVkaWF0ZSBDbGllbnQgQ0EwHhcN
MTIxMDE3MjI0NDM1WhcNMTMxMDE5MTIzOTEwWjBRMRkwFwYDVQQNExA2d1hhMGJLTExpRHFFZGFR
MRYwFAYDVQQDDA1jdEBnb2NlcHQuY29tMRwwGgYJKoZIhvcNAQkBFg1jdEBnb2NlcHQuY29tMIIB
IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4W6z3Qgwg9heOctVlzGscU+Vno3tf8C4sIFD
I1tUbjoQbMgCXO1JQNnLUHneNfCsgorCuiuXAN/ZyPdhFBhEe0ZDAwI6Afm7KIz7xF0+zRelHeg6
x5dgCykDaHHa3Blryh/Ldu7TBe5CwJrcZF3FE69o44OmqtoBbd6anUY3dcOyzZ22U38aF6uZyfyb
uB80OJ/nR5zVgfeTresXAK+00QBoqSLtOB+yfbwC90inGg+vTxwj4N4cXnMZdQlZTUaOgMWpcxkn
VzXY8+sh3mXXI0xdYTRaX57GgohOZ529QHo/ARNPKPwSAfvPLw9iz/fRG2mbKAI0S8KyR+DXPD0L
GwIDAQABo4IDqDCCA6QwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAwHQYDVR0lBBYwFAYIKwYBBQUH
AwIGCCsGAQUFBwMEMB0GA1UdDgQWBBSSjUKirA6VVThFmxVP9sy/2axLrzAfBgNVHSMEGDAWgBRT
cu2SnODaywFcfH6WNU7y1LhRgjAYBgNVHREEETAPgQ1jdEBnb2NlcHQuY29tMIICIQYDVR0gBIIC
GDCCAhQwggIQBgsrBgEEAYG1NwECAjCCAf8wLgYIKwYBBQUHAgEWImh0dHA6Ly93d3cuc3RhcnRz
c2wuY29tL3BvbGljeS5wZGYwNAYIKwYBBQUHAgEWKGh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL2lu
dGVybWVkaWF0ZS5wZGYwgfcGCCsGAQUFBwICMIHqMCcWIFN0YXJ0Q29tIENlcnRpZmljYXRpb24g
QXV0aG9yaXR5MAMCAQEagb5UaGlzIGNlcnRpZmljYXRlIHdhcyBpc3N1ZWQgYWNjb3JkaW5nIHRv
IHRoZSBDbGFzcyAxIFZhbGlkYXRpb24gcmVxdWlyZW1lbnRzIG9mIHRoZSBTdGFydENvbSBDQSBw
b2xpY3ksIHJlbGlhbmNlIG9ubHkgZm9yIHRoZSBpbnRlbmRlZCBwdXJwb3NlIGluIGNvbXBsaWFu
Y2Ugb2YgdGhlIHJlbHlpbmcgcGFydHkgb2JsaWdhdGlvbnMuMIGcBggrBgEFBQcCAjCBjzAnFiBT
dGFydENvbSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTADAgECGmRMaWFiaWxpdHkgYW5kIHdhcnJh
bnRpZXMgYXJlIGxpbWl0ZWQhIFNlZSBzZWN0aW9uICJMZWdhbCBhbmQgTGltaXRhdGlvbnMiIG9m
IHRoZSBTdGFydENvbSBDQSBwb2xpY3kuMDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9jcmwuc3Rh
cnRzc2wuY29tL2NydHUxLWNybC5jcmwwgY4GCCsGAQUFBwEBBIGBMH8wOQYIKwYBBQUHMAGGLWh0
dHA6Ly9vY3NwLnN0YXJ0c3NsLmNvbS9zdWIvY2xhc3MxL2NsaWVudC9jYTBCBggrBgEFBQcwAoY2
aHR0cDovL2FpYS5zdGFydHNzbC5jb20vY2VydHMvc3ViLmNsYXNzMS5jbGllbnQuY2EuY3J0MCMG
A1UdEgQcMBqGGGh0dHA6Ly93d3cuc3RhcnRzc2wuY29tLzANBgkqhkiG9w0BAQUFAAOCAQEAtnio
tMvWiyAMhSt40RW6jPQJP++Yy4TTOphK5MWktsNCvb1whiWJOjlCPyhrMD+fScKmRlpJ/87qeTp/
hdnGx1NtOv5KyYwAg+3VSoxjr3s5w+1GqtYUJvBN9R5ROH373W+bvEojxuxrDs0QqjOmPGZ4Jr/E
QTD7cBHiWnXqH1P3BHba7MwhxFlRwtR7rLugKgy3xWPq2GNp2PC4dESOvN+eB8n07hbbr5IzWuxM
7vUWDMTY3OI3qczvtT/24SrsQsn7oPICT9haVA4DZ8DNgWM/QtAGNuIZ7okoGbO5lqxBBtvWx7nz
u5/JdmibsSYZlMorBzyqXBTfE1XS1lmHijGCA28wggNrAgEBMIGUMIGMMQswCQYDVQQGEwJJTDEW
MBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNh
dGUgU2lnbmluZzE4MDYGA1UEAxMvU3RhcnRDb20gQ2xhc3MgMSBQcmltYXJ5IEludGVybWVkaWF0
ZSBDbGllbnQgQ0ECAwUhfTAJBgUrDgMCGgUAoIIBrzAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcB
MBwGCSqGSIb3DQEJBTEPFw0xMzAzMjUxNzQ1MjdaMCMGCSqGSIb3DQEJBDEWBBQztzLdPbouUTkm
+81sOSq0BWa0rDCBpQYJKwYBBAGCNxAEMYGXMIGUMIGMMQswCQYDVQQGEwJJTDEWMBQGA1UEChMN
U3RhcnRDb20gTHRkLjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmlu
ZzE4MDYGA1UEAxMvU3RhcnRDb20gQ2xhc3MgMSBQcmltYXJ5IEludGVybWVkaWF0ZSBDbGllbnQg
Q0ECAwUhfTCBpwYLKoZIhvcNAQkQAgsxgZeggZQwgYwxCzAJBgNVBAYTAklMMRYwFAYDVQQKEw1T
dGFydENvbSBMdGQuMSswKQYDVQQLEyJTZWN1cmUgRGlnaXRhbCBDZXJ0aWZpY2F0ZSBTaWduaW5n
MTgwNgYDVQQDEy9TdGFydENvbSBDbGFzcyAxIFByaW1hcnkgSW50ZXJtZWRpYXRlIENsaWVudCBD
QQIDBSF9MA0GCSqGSIb3DQEBAQUABIIBADJFBIagrMGnCmQuEzrbRW1HnjlXBum2HbsyOrKwQwOB
OBHWgIcqvD7KWXt8Ev5hNo7J4tKl9Pb+OQfMMPqSBXQbPbAgCl5aBz4jXTWWScE/IVutUTaBJncT
y2FI/Mo9pjyB4hM5uJi2EDbKMvn45SwA8TACrYL71o8DvHSp90Ov4a52+a5BN9RwMm7Zz8x8lGme
GiF00JsgYkeh6v5kOTAF+RfLYO3XS5YoDEeUFqLdhr0pM3Kyyn1j6aX/ijypmUdy2aLQVfHWd++A
IJ6gjIUpp2ITPiioXq8rMGtUtVmuFYdjyNJ0/3mj+vkrUarA1YRqNiX4JOQ+HPcA77Y92CkAAAAA
AAA=

--Apple-Mail=_9BB11BDE-1135-4322-92CF-9A6F20F57C5C--

--===============1246427162==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Catalog-SIG mailing list
[email protected]
http://mail.python.org/mailman/listinfo/catalog-sig

--===============1246427162==--