Date: Sat, 30 Apr 2016 12:19:52 +0930 From: Shane Ambler <FreeBSD@ShaneWare.Biz> To: Bartlomiej Mika <bart@mikasoftware.com>, python@FreeBSD.org Subject: Re: django-tenants Message-ID: <57241D50.1050106@ShaneWare.Biz> In-Reply-To: <CAG3c_Esg%2BMBgHt%2BBdnzJbEYu2kyYN4T-GR8n8yx28OGXB0M2uQ@mail.gmail.com> References: <CAG3c_Esg%2BMBgHt%2BBdnzJbEYu2kyYN4T-GR8n8yx28OGXB0M2uQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format. --------------040203090204000609050907 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 29/04/2016 23:39, Bartlomiej Mika wrote: > Salutations! > > I have the following python installed: python34-3.4.4_2 > > I am also using *pip 8.1.1* > > I am trying to install *django-tenants* using these two things and python > gives me this error: > > % pip install django-tenants > > > Collecting django-tenants > > Using cached django-tenants-1.1.5.zip > > Complete output from command python setup.py egg_info: > > Traceback (most recent call last): > > File "<string>", line 1, in <module> > > File "/tmp/pip-build-814hp86j/django-tenants/setup.py", line 31, in > <module> > > long_description=open('README.rst').read() if exists("README.rst") > else "", > > File > "/usr/home/django/py-bizmula/env/lib/python3.4/encodings/ascii.py", line > 26, in decode > > return codecs.ascii_decode(input, self.errors)[0] > > UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position > 604: ordinal not in range(128) The file README.rst has non-ascii characters in it but python is trying to read it as an ascii file Specifically it uses the "right single quotation mark" instead of a "modifier letter apostrophe" or a simple ascii apostrophe https://tedclancy.wordpress.com/2015/06/03/which-unicode-character-should-represent-the-english-apostrophe-and-why-the-unicode-committee-is-very-wrong/ This would be an automatic thing from the text editor used. One solution is to patch django-tenants - that could be done in a port not(?) when using pip directly. You could patch README.rst to have only ascii chars or patch setup.py to use - long_description=open('README.rst', encoding='utf-8').read() if exists("README.rst") else "", A quick solution for you is to set your locale Currently you would see the following - % python3.4 ... >>> import locale >>> locale.getpreferredencoding() 'US-ASCII' >>> t = open('README.rst').read() Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/local/lib/python3.5/encodings/ascii.py", line 26, in decode return codecs.ascii_decode(input, self.errors)[0] UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 604: ordinal not in range(128) If you set your locale to use utf-8 then you won't get this error. using tcsh - % setenv LC_ALL en_US.UTF-8 using sh - % LC_ALL=en_US.UTF-8;export LC_ALL % python3.4 ... >>> import locale >>> locale.getpreferredencoding() 'UTF-8' >>> t = open('README.rst').read() >>> Oddly python2.7 recognises that the file is utf-8 even when the locale is ascii but python 3.4 and 3.5 don't. I don't expect to use django-tenants but it is a simple port - if you want to add yourself as the maintainer you could submit the following as a new port to https://bugs.freebsd.org -- FreeBSD - the place to B...Software Developing Shane Ambler --------------040203090204000609050907 Content-Type: text/plain; charset=UTF-8; name="py-django-tenants.shar.txt" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="py-django-tenants.shar.txt" IyBUaGlzIGlzIGEgc2hlbGwgYXJjaGl2ZS4gIFNhdmUgaXQgaW4gYSBmaWxlLCByZW1vdmUg YW55dGhpbmcgYmVmb3JlCiMgdGhpcyBsaW5lLCBhbmQgdGhlbiB1bnBhY2sgaXQgYnkgZW50 ZXJpbmcgInNoIGZpbGUiLiAgTm90ZSwgaXQgbWF5CiMgY3JlYXRlIGRpcmVjdG9yaWVzOyBm aWxlcyBhbmQgZGlyZWN0b3JpZXMgd2lsbCBiZSBvd25lZCBieSB5b3UgYW5kCiMgaGF2ZSBk ZWZhdWx0IHBlcm1pc3Npb25zLgojCiMgVGhpcyBhcmNoaXZlIGNvbnRhaW5zOgojCiMJcHkt ZGphbmdvLXRlbmFudHMKIwlweS1kamFuZ28tdGVuYW50cy9maWxlcwojCXB5LWRqYW5nby10 ZW5hbnRzL2ZpbGVzL3BhdGNoLXNldHVwLnB5CiMJcHktZGphbmdvLXRlbmFudHMvcGtnLWRl c2NyCiMJcHktZGphbmdvLXRlbmFudHMvZGlzdGluZm8KIwlweS1kamFuZ28tdGVuYW50cy9N YWtlZmlsZQojCmVjaG8gYyAtIHB5LWRqYW5nby10ZW5hbnRzCm1rZGlyIC1wIHB5LWRqYW5n by10ZW5hbnRzID4gL2Rldi9udWxsIDI+JjEKZWNobyBjIC0gcHktZGphbmdvLXRlbmFudHMv ZmlsZXMKbWtkaXIgLXAgcHktZGphbmdvLXRlbmFudHMvZmlsZXMgPiAvZGV2L251bGwgMj4m MQplY2hvIHggLSBweS1kamFuZ28tdGVuYW50cy9maWxlcy9wYXRjaC1zZXR1cC5weQpzZWQg J3MvXlgvLycgPnB5LWRqYW5nby10ZW5hbnRzL2ZpbGVzL3BhdGNoLXNldHVwLnB5IDw8ICdi NWE5MzI4ZWM1MmVkOTUzZWMzZDRjYjhkOTEyYzc4NCcKWC0tLSBzZXR1cC5weS5vcmlnCTIw MTYtMDQtMzAgMDI6Mzc6MjEgVVRDClgrKysgc2V0dXAucHkKWEBAIC0yOCw3ICsyOCw3IEBA IHNldHVwKA0KWCAgICAgdXJsPSdodHRwczovL2dpdGh1Yi5jb20vdG9tdHVybmVyL2RqYW5n by10ZW5hbnRzJywNClggICAgIGxpY2Vuc2U9J01JVCcsDQpYICAgICBkZXNjcmlwdGlvbj0n VGVuYW50IHN1cHBvcnQgZm9yIERqYW5nbyB1c2luZyBQb3N0Z3JlU1FMIHNjaGVtYXMuJywN ClgtICAgIGxvbmdfZGVzY3JpcHRpb249b3BlbignUkVBRE1FLnJzdCcpLnJlYWQoKSBpZiBl eGlzdHMoIlJFQURNRS5yc3QiKSBlbHNlICIiLA0KWCsgICAgbG9uZ19kZXNjcmlwdGlvbj1v cGVuKCdSRUFETUUucnN0JywgZW5jb2Rpbmc9J3V0Zi04JykucmVhZCgpIGlmIGV4aXN0cygi UkVBRE1FLnJzdCIpIGVsc2UgIiIsDQpYICAgICBjbGFzc2lmaWVycz1bDQpYICAgICAgICAg J0RldmVsb3BtZW50IFN0YXR1cyA6OiA1IC0gUHJvZHVjdGlvbi9TdGFibGUnLA0KWCAgICAg ICAgICdFbnZpcm9ubWVudCA6OiBXZWIgRW52aXJvbm1lbnQnLA0KYjVhOTMyOGVjNTJlZDk1 M2VjM2Q0Y2I4ZDkxMmM3ODQKZWNobyB4IC0gcHktZGphbmdvLXRlbmFudHMvcGtnLWRlc2Ny CnNlZCAncy9eWC8vJyA+cHktZGphbmdvLXRlbmFudHMvcGtnLWRlc2NyIDw8ICcxZTM4MmNk NTlhZmQwZGQ3ZjRlNjIxOTVkNjY1ODczOScKWHB5LWRqYW5nby10ZW5hbnRzIGVuYWJsZXMg ZGphbmdvIHBvd2VyZWQgd2Vic2l0ZXMgdG8gaGF2ZSBtdWx0aXBsZQpYdGVuYW50cyBieSB1 c2luZyBQb3N0Z3JlU1FMIHNjaGVtYXMuClgKWFdXVzogaHR0cHM6Ly9naXRodWIuY29tL3Rv bXR1cm5lci9kamFuZ28tdGVuYW50cwoxZTM4MmNkNTlhZmQwZGQ3ZjRlNjIxOTVkNjY1ODcz OQplY2hvIHggLSBweS1kamFuZ28tdGVuYW50cy9kaXN0aW5mbwpzZWQgJ3MvXlgvLycgPnB5 LWRqYW5nby10ZW5hbnRzL2Rpc3RpbmZvIDw8ICc2NGZlYmY5ZmRjMGRhNTE3OWE4ZjhmYjhh YzRlYjdiMycKWFNIQTI1NiAoZGphbmdvLXRlbmFudHMtMS4xLjUuemlwKSA9IDVjMmYzNWYx MzMxZGIyYmZkODBmMDQyNGE1YWQxNGVmYzE4ODg1Y2E0ZTY1MTZlZjJiZWMyY2M2ZGVjOWIw NTMKWFNJWkUgKGRqYW5nby10ZW5hbnRzLTEuMS41LnppcCkgPSA4NzU3OQo2NGZlYmY5ZmRj MGRhNTE3OWE4ZjhmYjhhYzRlYjdiMwplY2hvIHggLSBweS1kamFuZ28tdGVuYW50cy9NYWtl ZmlsZQpzZWQgJ3MvXlgvLycgPnB5LWRqYW5nby10ZW5hbnRzL01ha2VmaWxlIDw8ICdjOTcw MzM5YTMzMzA4N2RlNzFkZDU0ZTMwYTU5MzJlNScKWCMgQ3JlYXRlZCBieTogbWUKWCMgJEZy ZWVCU0QkClgKWFBPUlROQU1FPQlkamFuZ28tdGVuYW50cwpYUE9SVFZFUlNJT049CTEuMS41 ClhDQVRFR09SSUVTPQl3d3cgcHl0aG9uClhNQVNURVJfU0lURVM9CUNIRUVTRVNIT1AKWFBL R05BTUVQUkVGSVg9CSR7UFlUSE9OX1BLR05BTUVQUkVGSVh9ClgKWE1BSU5UQUlORVI9CXNv bWVvbmVAc29tZWRvbWFpbi5jb20KWENPTU1FTlQ9CVRlbmFudCBzdXBwb3J0IGZvciBEamFu Z28gdXNpbmcgUG9zdGdyZVNRTCBzY2hlbWFzClgKWFJVTl9ERVBFTkRTPQkke1BZVEhPTl9Q S0dOQU1FUFJFRklYfWRqYW5nbzE4PjA6d3d3L3B5LWRqYW5nbzE4IFwKWAkJJHtQWVRIT05f UEtHTkFNRVBSRUZJWH1wc3ljb3BnMj49Mi4wLjg6ZGF0YWJhc2VzL3B5LXBzeWNvcGcyClgK WFVTRVM9CQlweXRob24gemlwClhVU0VfUFlUSE9OPQlkaXN0dXRpbHMgYXV0b3BsaXN0ClhO T19BUkNIPQl5ZXMKWApYLmluY2x1ZGUgPGJzZC5wb3J0Lm1rPgpjOTcwMzM5YTMzMzA4N2Rl NzFkZDU0ZTMwYTU5MzJlNQpleGl0Cgo= --------------040203090204000609050907--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?57241D50.1050106>