diff options
| author | Marc Abramowitz <marc@marc-abramowitz.com> | 2012-06-26 15:15:27 -0700 |
|---|---|---|
| committer | Marc Abramowitz <marc@marc-abramowitz.com> | 2012-06-26 15:15:27 -0700 |
| commit | 311fb781f87f8885d9a94343b4b7e9731bc0c9e7 (patch) | |
| tree | ae00aff75d63f708deb60b57dbd885b233d24482 | |
| parent | d169177b19658f115db80d62c91593ca19bb5ee6 (diff) | |
| download | python-setuptools-git-311fb781f87f8885d9a94343b4b7e9731bc0c9e7.tar.gz | |
Add tests and fix for marshal.load of pyc files on Python 3.3
Fixes
https://bitbucket.org/tarek/distribute/issue/283/bdist_egg-issues-with-python-330ax
--HG--
branch : distribute
extra : rebase_source : ec6f2611d3f8a54b7e11cfadf9d03fdcdef39639
| -rw-r--r-- | setuptools/command/bdist_egg.py | 6 | ||||
| -rw-r--r-- | tests/python3.3_bdist_egg_test/module.py | 0 | ||||
| -rw-r--r-- | tests/python3.3_bdist_egg_test/setup.py | 13 |
3 files changed, 18 insertions, 1 deletions
diff --git a/setuptools/command/bdist_egg.py b/setuptools/command/bdist_egg.py index 68ca15c7..0ee9c55b 100644 --- a/setuptools/command/bdist_egg.py +++ b/setuptools/command/bdist_egg.py @@ -426,7 +426,11 @@ def scan_module(egg_dir, base, name, stubs): pkg = base[len(egg_dir)+1:].replace(os.sep,'.') module = pkg+(pkg and '.' or '')+os.path.splitext(name)[0] f = open(filename,'rb'); f.read(8) # skip magic & date - code = marshal.load(f); f.close() + try: + code = marshal.load(f); f.close() + except ValueError: + f.seek(0); f.read(12) # skip magic & date & file size; file size added in Python 3.3 + code = marshal.load(f); f.close() safe = True symbols = dict.fromkeys(iter_symbols(code)) for bad in ['__file__', '__path__']: diff --git a/tests/python3.3_bdist_egg_test/module.py b/tests/python3.3_bdist_egg_test/module.py new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/tests/python3.3_bdist_egg_test/module.py diff --git a/tests/python3.3_bdist_egg_test/setup.py b/tests/python3.3_bdist_egg_test/setup.py new file mode 100644 index 00000000..04caea74 --- /dev/null +++ b/tests/python3.3_bdist_egg_test/setup.py @@ -0,0 +1,13 @@ +from setuptools import setup + +setup( + name='python3.3_bdist_egg_test', + version='0.0.0', + description='Test', + license='BSD', + py_modules=['module'], + author='Marc Abramowitz', + author_email='marc@marc-abramowitz.com', + url='https://bitbucket.org/msabramo/python3.3_bdist_egg_test', + # zip_safe=False, +) |
