Skip to content

Extend wheel ABI support for pypy. #222

Description

@guoshimin

pypy version:

$ pypy
Python 2.7.10 (246c9cf22037b11dc0e8c29ce3f291d3b8c5935a, Mar 10 2016, 18:28:19)
[PyPy 5.0.0 with GCC 4.2.1 Compatible Apple LLVM 7.0.2 (clang-700.1.81)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>>

The following command fails:

$ pex --python=pypy psutil
**** Failed to install psutil-4.1.0. stdout:
running bdist_wheel
running build
running build_py
creating build
creating build/lib.macosx-10.10-x86_64-2.7
creating build/lib.macosx-10.10-x86_64-2.7/psutil
copying psutil/__init__.py -> build/lib.macosx-10.10-x86_64-2.7/psutil
copying psutil/_common.py -> build/lib.macosx-10.10-x86_64-2.7/psutil
copying psutil/_compat.py -> build/lib.macosx-10.10-x86_64-2.7/psutil
copying psutil/_psbsd.py -> build/lib.macosx-10.10-x86_64-2.7/psutil
copying psutil/_pslinux.py -> build/lib.macosx-10.10-x86_64-2.7/psutil
copying psutil/_psosx.py -> build/lib.macosx-10.10-x86_64-2.7/psutil
copying psutil/_psposix.py -> build/lib.macosx-10.10-x86_64-2.7/psutil
copying psutil/_pssunos.py -> build/lib.macosx-10.10-x86_64-2.7/psutil
copying psutil/_pswindows.py -> build/lib.macosx-10.10-x86_64-2.7/psutil
creating build/lib.macosx-10.10-x86_64-2.7/psutil/tests
copying psutil/tests/__init__.py -> build/lib.macosx-10.10-x86_64-2.7/psutil/tests
copying psutil/tests/runner.py -> build/lib.macosx-10.10-x86_64-2.7/psutil/tests
copying psutil/tests/test_bsd.py -> build/lib.macosx-10.10-x86_64-2.7/psutil/tests
copying psutil/tests/test_linux.py -> build/lib.macosx-10.10-x86_64-2.7/psutil/tests
copying psutil/tests/test_memory_leaks.py -> build/lib.macosx-10.10-x86_64-2.7/psutil/tests
copying psutil/tests/test_misc.py -> build/lib.macosx-10.10-x86_64-2.7/psutil/tests
copying psutil/tests/test_osx.py -> build/lib.macosx-10.10-x86_64-2.7/psutil/tests
copying psutil/tests/test_posix.py -> build/lib.macosx-10.10-x86_64-2.7/psutil/tests
copying psutil/tests/test_process.py -> build/lib.macosx-10.10-x86_64-2.7/psutil/tests
copying psutil/tests/test_sunos.py -> build/lib.macosx-10.10-x86_64-2.7/psutil/tests
copying psutil/tests/test_system.py -> build/lib.macosx-10.10-x86_64-2.7/psutil/tests
copying psutil/tests/test_windows.py -> build/lib.macosx-10.10-x86_64-2.7/psutil/tests
running build_ext
building 'psutil._psutil_osx' extension
creating build/temp.macosx-10.10-x86_64-2.7
creating build/temp.macosx-10.10-x86_64-2.7/psutil
creating build/temp.macosx-10.10-x86_64-2.7/psutil/arch
creating build/temp.macosx-10.10-x86_64-2.7/psutil/arch/osx
cc -arch x86_64 -O2 -fPIC -Wimplicit -DPSUTIL_VERSION=410 -I/usr/local/Cellar/pypy/5.0.0/libexec/include -c psutil/_psutil_osx.c -o build/temp.macosx-10.10-x86_64-2.7/psutil/_psutil_osx.o
cc -arch x86_64 -O2 -fPIC -Wimplicit -DPSUTIL_VERSION=410 -I/usr/local/Cellar/pypy/5.0.0/libexec/include -c psutil/_psutil_common.c -o build/temp.macosx-10.10-x86_64-2.7/psutil/_psutil_common.o
cc -arch x86_64 -O2 -fPIC -Wimplicit -DPSUTIL_VERSION=410 -I/usr/local/Cellar/pypy/5.0.0/libexec/include -c psutil/arch/osx/process_info.c -o build/temp.macosx-10.10-x86_64-2.7/psutil/arch/osx/process_info.o
cc -shared -undefined dynamic_lookup -arch x86_64 build/temp.macosx-10.10-x86_64-2.7/psutil/_psutil_osx.o build/temp.macosx-10.10-x86_64-2.7/psutil/_psutil_common.o build/temp.macosx-10.10-x86_64-2.7/psutil/arch/osx/process_info.o -o build/lib.macosx-10.10-x86_64-2.7/psutil/_psutil_osx.pypy-41.so -framework CoreFoundation -framework IOKit
building 'psutil._psutil_posix' extension
cc -arch x86_64 -O2 -fPIC -Wimplicit -I/usr/local/Cellar/pypy/5.0.0/libexec/include -c psutil/_psutil_posix.c -o build/temp.macosx-10.10-x86_64-2.7/psutil/_psutil_posix.o
cc -shared -undefined dynamic_lookup -arch x86_64 build/temp.macosx-10.10-x86_64-2.7/psutil/_psutil_posix.o -o build/lib.macosx-10.10-x86_64-2.7/psutil/_psutil_posix.pypy-41.so
installing to build/bdist.macosx-10.10-x86_64/wheel
running install
running install_lib
creating build/bdist.macosx-10.10-x86_64
creating build/bdist.macosx-10.10-x86_64/wheel
creating build/bdist.macosx-10.10-x86_64/wheel/psutil
copying build/lib.macosx-10.10-x86_64-2.7/psutil/__init__.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil
copying build/lib.macosx-10.10-x86_64-2.7/psutil/_common.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil
copying build/lib.macosx-10.10-x86_64-2.7/psutil/_compat.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil
copying build/lib.macosx-10.10-x86_64-2.7/psutil/_psbsd.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil
copying build/lib.macosx-10.10-x86_64-2.7/psutil/_pslinux.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil
copying build/lib.macosx-10.10-x86_64-2.7/psutil/_psosx.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil
copying build/lib.macosx-10.10-x86_64-2.7/psutil/_psposix.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil
copying build/lib.macosx-10.10-x86_64-2.7/psutil/_pssunos.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil
copying build/lib.macosx-10.10-x86_64-2.7/psutil/_psutil_osx.pypy-41.so -> build/bdist.macosx-10.10-x86_64/wheel/psutil
copying build/lib.macosx-10.10-x86_64-2.7/psutil/_psutil_posix.pypy-41.so -> build/bdist.macosx-10.10-x86_64/wheel/psutil
copying build/lib.macosx-10.10-x86_64-2.7/psutil/_pswindows.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil
creating build/bdist.macosx-10.10-x86_64/wheel/psutil/tests
copying build/lib.macosx-10.10-x86_64-2.7/psutil/tests/__init__.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil/tests
copying build/lib.macosx-10.10-x86_64-2.7/psutil/tests/runner.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil/tests
copying build/lib.macosx-10.10-x86_64-2.7/psutil/tests/test_bsd.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil/tests
copying build/lib.macosx-10.10-x86_64-2.7/psutil/tests/test_linux.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil/tests
copying build/lib.macosx-10.10-x86_64-2.7/psutil/tests/test_memory_leaks.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil/tests
copying build/lib.macosx-10.10-x86_64-2.7/psutil/tests/test_misc.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil/tests
copying build/lib.macosx-10.10-x86_64-2.7/psutil/tests/test_osx.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil/tests
copying build/lib.macosx-10.10-x86_64-2.7/psutil/tests/test_posix.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil/tests
copying build/lib.macosx-10.10-x86_64-2.7/psutil/tests/test_process.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil/tests
copying build/lib.macosx-10.10-x86_64-2.7/psutil/tests/test_sunos.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil/tests
copying build/lib.macosx-10.10-x86_64-2.7/psutil/tests/test_system.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil/tests
copying build/lib.macosx-10.10-x86_64-2.7/psutil/tests/test_windows.py -> build/bdist.macosx-10.10-x86_64/wheel/psutil/tests
running install_egg_info
running egg_info
writing psutil.egg-info/PKG-INFO
writing dependency_links to psutil.egg-info/dependency_links.txt
writing top-level names to psutil.egg-info/top_level.txt
reading manifest file 'psutil.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'psutil.egg-info/SOURCES.txt'
Copying psutil.egg-info to build/bdist.macosx-10.10-x86_64/wheel/psutil-4.1.0-py2.7.egg-info
running install_scripts

**** Failed to install psutil-4.1.0. stderr:
warning: no previously-included files matching '*' found under directory 'docs/_build'
Traceback (most recent call last):
  File "<stdin>", line 7, in <module>
  File "setup.py", line 284, in <module>
    main()
  File "setup.py", line 281, in main
    setup(**setup_args)
  File "/usr/local/Cellar/pypy/5.0.0/libexec/lib-python/2.7/distutils/core.py", line 151, in setup
    dist.run_commands()
  File "/usr/local/Cellar/pypy/5.0.0/libexec/lib-python/2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/usr/local/Cellar/pypy/5.0.0/libexec/lib-python/2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "build/bdist.macosx-10.10-x86_64/egg/wheel/bdist_wheel.py", line 213, in run
    archive_basename = self.get_archive_basename()
  File "build/bdist.macosx-10.10-x86_64/egg/wheel/bdist_wheel.py", line 161, in get_archive_basename
    impl_tag, abi_tag, plat_tag = self.get_tag()
  File "build/bdist.macosx-10.10-x86_64/egg/wheel/bdist_wheel.py", line 155, in get_tag
    assert tag == supported_tags[0]
AssertionError

Traceback (most recent call last):
  File ".bootstrap/_pex/pex.py", line 315, in execute
  File ".bootstrap/_pex/pex.py", line 250, in _wrap_coverage
  File ".bootstrap/_pex/pex.py", line 282, in _wrap_profiling
  File ".bootstrap/_pex/pex.py", line 358, in _execute
  File ".bootstrap/_pex/pex.py", line 416, in execute_entry
  File ".bootstrap/_pex/pex.py", line 434, in execute_pkg_resources
  File "/Users/shimin/.pex/install/pex-1.0.3-py2.py3-none-any.whl.9b479c2967fcb9866cb8b019740e265c9bc00da2/pex-1.0.3-py2.py3-none-any.whl/pex/bin/pex.py", line 509, in main
    pex_builder = build_pex(reqs, options, resolver_options_builder)
  File "/Users/shimin/.pex/install/pex-1.0.3-py2.py3-none-any.whl.9b479c2967fcb9866cb8b019740e265c9bc00da2/pex-1.0.3-py2.py3-none-any.whl/pex/bin/pex.py", line 471, in build_pex
    resolveds = resolver.resolve(resolvables)
  File "/Users/shimin/.pex/install/pex-1.0.3-py2.py3-none-any.whl.9b479c2967fcb9866cb8b019740e265c9bc00da2/pex-1.0.3-py2.py3-none-any.whl/pex/resolver.py", line 191, in resolve
    dist = self.build(package, resolvable.options)
  File "/Users/shimin/.pex/install/pex-1.0.3-py2.py3-none-any.whl.9b479c2967fcb9866cb8b019740e265c9bc00da2/pex-1.0.3-py2.py3-none-any.whl/pex/resolver.py", line 248, in build
    dist = super(CachingResolver, self).build(package, options)
  File "/Users/shimin/.pex/install/pex-1.0.3-py2.py3-none-any.whl.9b479c2967fcb9866cb8b019740e265c9bc00da2/pex-1.0.3-py2.py3-none-any.whl/pex/resolver.py", line 160, in build
    raise Untranslateable('Package %s is not translateable by %s' % (package, translator))
pex.resolver.Untranslateable: Package SourcePackage(u'file:///Users/shimin/.pex/build/psutil-4.1.0.tar.gz') is not translateable by ChainedTranslator(WheelTranslator, EggTranslator, SourceTranslator)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions