You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by "Wes McKinney (JIRA)" <ji...@apache.org> on 2018/08/07 19:23:00 UTC

[jira] [Commented] (ARROW-3012) [Python] Installation crashes on Python 3.7

    [ https://issues.apache.org/jira/browse/ARROW-3012?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16572188#comment-16572188 ] 

Wes McKinney commented on ARROW-3012:
-------------------------------------

We aren't supporting / testing Python 3.7 yet. I think 0.11 will be the first release to support it and also include wheels on PyPI for 3.7 so that building from source is not necessary. Patches to assist with this would be welcome

> [Python] Installation crashes on Python 3.7
> -------------------------------------------
>
>                 Key: ARROW-3012
>                 URL: https://issues.apache.org/jira/browse/ARROW-3012
>             Project: Apache Arrow
>          Issue Type: Bug
>          Components: Python
>    Affects Versions: 0.10.0
>         Environment: OS: MacOS High Sierra (10.13.5)
> Python: 3.7.0
> Cython: 0.28.5
>            Reporter: Diego Argueta
>            Priority: Major
>             Fix For: 0.11.0
>
>
> To reproduce, on Python 3.7.0: 
> {code:none}
> pip3.7 install pyarrow==0.10.0
> {code}
>  
> The result is a crash:
> {code:none}
> Collecting pyarrow
> Using cached https://files.pythonhosted.org/packages/c0/a0/f7e9dfd8988d94f4952f9b50eb04e14a80fbe39218520725aab53daab57c/pyarrow-0.10.0.tar.gz
> Complete output from command python setup.py egg_info:
> Traceback (most recent call last):
> File "<string>", line 1, in <module>
> File "/private/var/folders/6r/dy0_bd2x2kn735d8kymc4qt00000gn/T/pip-install-w77cbide/pyarrow/setup.py", line 545, in <module>
> url="https://arrow.apache.org/"
> File "/Users/tux/.pyenv/versions/3.7.0/lib/python3.7/site-packages/setuptools/__init__.py", line 131, in setup
> return distutils.core.setup(**attrs)
> File "/Users/tux/.pyenv/versions/3.7.0/lib/python3.7/distutils/core.py", line 108, in setup
> _setup_distribution = dist = klass(attrs)
> File "/Users/tux/.pyenv/versions/3.7.0/lib/python3.7/site-packages/setuptools/dist.py", line 370, in __init__
> k: v for k, v in attrs.items()
> File "/Users/tux/.pyenv/versions/3.7.0/lib/python3.7/distutils/dist.py", line 292, in __init__
> self.finalize_options()
> File "/Users/tux/.pyenv/versions/3.7.0/lib/python3.7/site-packages/setuptools/dist.py", line 529, in finalize_options
> ep.load()(self, ep.name, value)
> File "/private/var/folders/6r/dy0_bd2x2kn735d8kymc4qt00000gn/T/pip-install-w77cbide/pyarrow/.eggs/setuptools_scm-3.0.6-py3.7.egg/setuptools_scm/integration.py", line 23, in version_keyword
> dist.metadata.version = get_version(**value)
> File "/private/var/folders/6r/dy0_bd2x2kn735d8kymc4qt00000gn/T/pip-install-w77cbide/pyarrow/.eggs/setuptools_scm-3.0.6-py3.7.egg/setuptools_scm/__init__.py", line 135, in get_version
> parsed_version = _do_parse(config)
> File "/private/var/folders/6r/dy0_bd2x2kn735d8kymc4qt00000gn/T/pip-install-w77cbide/pyarrow/.eggs/setuptools_scm-3.0.6-py3.7.egg/setuptools_scm/__init__.py", line 77, in _do_parse
> parse_result = _call_entrypoint_fn(config, config.parse)
> File "/private/var/folders/6r/dy0_bd2x2kn735d8kymc4qt00000gn/T/pip-install-w77cbide/pyarrow/.eggs/setuptools_scm-3.0.6-py3.7.egg/setuptools_scm/__init__.py", line 40, in _call_entrypoint_fn
> return fn(config.absolute_root)
> File "/private/var/folders/6r/dy0_bd2x2kn735d8kymc4qt00000gn/T/pip-install-w77cbide/pyarrow/setup.py", line 498, in parse_version
> return version_from_scm(root)
> File "/private/var/folders/6r/dy0_bd2x2kn735d8kymc4qt00000gn/T/pip-install-w77cbide/pyarrow/.eggs/setuptools_scm-3.0.6-py3.7.egg/setuptools_scm/__init__.py", line 28, in version_from_scm
> return _version_from_entrypoint(root, "setuptools_scm.parse_scm")
> File "/private/var/folders/6r/dy0_bd2x2kn735d8kymc4qt00000gn/T/pip-install-w77cbide/pyarrow/.eggs/setuptools_scm-3.0.6-py3.7.egg/setuptools_scm/__init__.py", line 44, in _version_from_entrypoint
> for ep in iter_matching_entrypoints(config.absolute_root, entrypoint):
> AttributeError: 'str' object has no attribute 'absolute_root'
> ----------------------------------------
> Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/6r/dy0_bd2x2kn735d8kymc4qt00000gn/T/pip-install-w77cbide/pyarrow/
> {code}
>  
> I suspect this is because {{setuptools_scm}} isn't being used correctly. The function takes one argument, {{root}}, but judging from the code that uses it, it appears to expect a {{setuptools_scm.config.Configuration}} object rather than a file path.
> All the documentation says to use {{get_version()}} and the package author doesn't seem to be sure that {{version_from_scm()}} should even be a public function (see [here|https://github.com/pypa/setuptools_scm/blob/master/src/setuptools_scm/__init__.py#L27]). Perhaps going with that would be best.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)