Setuptools: 38.2.0 Breaks installs of several packages on 2.7 with UnicodeEncodeError parsing package METADATA

Created on 26 Nov 2017  路  9Comments  路  Source: pypa/setuptools

Using setuptools==38.2.0 on Python 2.7.14, this setup.py will fail on any of the packages under install_requires with errors such as UnicodeEncodeError: 'ascii' codec can't encode character u'\u2013' in position 4258: ordinal not in range(128). None of these happened under 38.1.0 for instance. Error is happening on this line: https://github.com/pypa/setuptools/blob/97ff22f31ace57f4eabb6f1e77c9c553de0d1c24/setuptools/wheel.py#L59

from setuptools import setup, find_packages

setup(
    name="test-setuptools-encoding-problem",
    version="1.0.0",
    packages=find_packages(),
    install_requires=[
        "requests==2.18.4",
        "eventbrite==3.3.3",
        "django_mathfilters==0.4.0",
        "django-countries==5.0",
    ]
)

Verified it doesn't happen with Python 3.6.3 for instance.

Most helpful comment

All 9 comments

Thanks for the report, expect a bug fix release soon.

Thanks @benoit-pierre! Let me know if I can help, for instance with testing.

@benoit-pierre Works great for me!

@benoit-pierre not sure if this is the right place but 38.2.0 also broke this:

install_requires = [
    'luma.core>=1.1.1',
    'rpi_ws281x;platform_machine=="armv7l" and platform_system=="Linux"',
    'ws2812;platform_machine=="armv7l" and platform_system=="Linux"'
]

Packages are always installed (not only for ARM) and not skipped.

OK, fix for original issue released in 36.2.1.

Thank you so much for the quick work @benoit-pierre!

@thijstriemstra: can you open a new issue with more info please?

@benoit-pierre will do, opened #1213

Was this page helpful?
0 / 5 - 0 ratings

Related issues

lorilew picture lorilew  路  4Comments

ghost picture ghost  路  3Comments

cjmcdonald00 picture cjmcdonald00  路  4Comments

Tobotimus picture Tobotimus  路  4Comments

jakirkham picture jakirkham  路  6Comments