Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

UnicodeDecodeError with PIP?

Tags:

python

pip

pypi

I am attempting to distribute my open-source project, Melopy, but package management has been giving me problems since I started. Today, I registered for PyPI, but upon running python setup.py sdist upload I am faced with the following error.

running sdist
running check
reading manifest template 'MANIFEST.in'
not writing to manually maintained manifest file 'MANIFEST'
making hard links in Melopy-0.1.0...
Creating tar archive
Traceback (most recent call last):
  File "setup.py", line 19, in <module>
    setup(**config)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/core.py", line 152, in setup
    dist.run_commands()
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/command/sdist.py", line 168, in run
    self.make_distribution()
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/command/sdist.py", line 448, in make_distribution
    owner=self.owner, group=self.group)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/cmd.py", line 392, in make_archive
    owner=owner, group=group)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/archive_util.py", line 237, in make_archive
    filename = func(base_name, base_dir, **kwargs)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/archive_util.py", line 101, in make_tarball
    tar = tarfile.open(archive_name, 'w|%s' % tar_compression[compress])
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/tarfile.py", line 1687, in open
    _Stream(name, filemode, comptype, fileobj, bufsize),
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/tarfile.py", line 431, in __init__
    self._init_write_gz()
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/tarfile.py", line 459, in _init_write_gz
    self.__write(self.name + NUL)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/tarfile.py", line 475, in __write
    self.buf += s
UnicodeDecodeError: 'ascii' codec can't decode byte 0x8b in position 1: ordinal not in range(128)

The contents of setup.py are as follows.

#!/usr/bin/env python
# -*- coding: utf-8 -*-

from distutils.core import setup

config = {
    'name': u'Melopy',
    'author': u'Jordan Scales',
    'author_email': u'[email protected]',
    'description': u'Python music library',
    'long_description': open(u'README.txt').read(),
    'packages': ['melopy'],
    'version': u'0.1.0',
    'url': u'https://github.com/prezjordan/Melopy',
    'license': 'LICENSE.txt',
    'classifiers': []
}

setup(**config)

# Licensed under The MIT License (MIT)
# See LICENSE file for more
like image 292
Jordan Scales Avatar asked Sep 17 '12 17:09

Jordan Scales


1 Answers

It seems you are being hit by this bug. In theory the problem should be fixed by passing the version as a regular string.

like image 190
Vicent Avatar answered Sep 29 '22 12:09

Vicent