Pipenv: AttributeError: el objeto 'NoneType' no tiene el atributo 'version_sort'

Creado en 30 may. 2020  ·  16Comentarios  ·  Fuente: pypa/pipenv

Descripcion del problema

Error al ejecutar pipenv install --verbose.

Resultado Esperado

Se esperaba que se configurara un entorno virtual, se creara un archivo pip y no aparecieran errores.

Resultado actual


Traceback (most recent call last):
  File "c:\python38\lib\runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "c:\python38\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "C:\Python38\Scripts\pipenv.exe\__main__.py", line 7, in <module>
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 782, in main
    rv = self.invoke(ctx)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\decorators.py", line 73, in new_func
    return ctx.invoke(f, obj, *args, **kwargs)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\decorators.py", line 21, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "c:\python38\lib\site-packages\pipenv\cli\command.py", line 231, in install
    retcode = do_install(
  File "c:\python38\lib\site-packages\pipenv\core.py", line 1924, in do_install
    ensure_project(
  File "c:\python38\lib\site-packages\pipenv\core.py", line 581, in ensure_project
    ensure_virtualenv(
  File "c:\python38\lib\site-packages\pipenv\core.py", line 495, in ensure_virtualenv
    python = ensure_python(three=three, python=python)
  File "c:\python38\lib\site-packages\pipenv\core.py", line 385, in ensure_python
    path_to_python = find_a_system_python(python)
  File "c:\python38\lib\site-packages\pipenv\core.py", line 347, in find_a_system_python
    return next(iter(finder.find_all_python_versions()), None)
  File "c:\python38\lib\site-packages\pipenv\vendor\pythonfinder\pythonfinder.py", line 328, in find_all_python_versions
    path_list = sorted(versions, key=version_sort, reverse=True)
AttributeError: 'NoneType' object has no attribute 'version_sort'

Pasos para replicar

Proporcione los pasos para replicar (que generalmente al menos incluye los comandos y el Pipfile).

pipenv install --verbose en la máquina win10.

$ pipenv --support

Versión de Pipenv: '2020.5.28'

Ubicación de Pipenv: 'c:\\python38\\lib\\site-packages\\pipenv'

Ubicación de Python: 'c:\\python38\\python.exe'

Instalaciones de Python encontradas:

Traceback (most recent call last):
  File "c:\python38\lib\runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "c:\python38\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "C:\Python38\Scripts\pipenv.exe\__main__.py", line 7, in <module>
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 782, in main
    rv = self.invoke(ctx)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 1236, in invoke
    return Command.invoke(self, ctx)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\decorators.py", line 73, in new_func    
    return ctx.invoke(f, obj, *args, **kwargs)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "C:\Python38\Lib\site-packages\pipenv\vendor\click\decorators.py", line 21, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "c:\python38\lib\site-packages\pipenv\cli\command.py", line 138, in cli
    get_pipenv_diagnostics()
  File "c:\python38\lib\site-packages\pipenv\help.py", line 33, in get_pipenv_diagnostics
    python_paths = finder.find_all_python_versions()
  File "c:\python38\lib\site-packages\pipenv\vendor\pythonfinder\pythonfinder.py", line 328, in find_all_python_versions
    path_list = sorted(versions, key=version_sort, reverse=True)
AttributeError: 'NoneType' object has no attribute 'version_sort'
Type Vendored Dependencies

Comentario más útil

este problema aún persiste en win10 con python 3.8.3 y pipenv 2020.6.2

DVCL643<strong i="6">@10NB03610</strong>:~/workspace/python/mailswitch_security$ pipenv shell
Traceback (most recent call last):
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Scripts\pipenv.exe\__main__.py", line 9, in <module>
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 782, in main
    rv = self.invoke(ctx)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\decorators.py", line 73, in new_func
    return ctx.invoke(f, obj, *args, **kwargs)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\cli\command.py", line 428, in shell
    do_shell(
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\core.py", line 2363, in do_shell
    ensure_project(
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\core.py", line 576, in ensure_project
    ensure_virtualenv(
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\core.py", line 498, in ensure_virtualenv
    python = ensure_python(three=three, python=python)
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\core.py", line 388, in ensure_python
    path_to_python = find_a_system_python(python)
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\core.py", line 350, in find_a_system_python
    return next(iter(finder.find_all_python_versions()), None)
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\vendor\pythonfinder\pythonfinder.py", line 328, in find_all_python_ve
rsions
    path_list = sorted(versions, key=version_sort, reverse=True)
AttributeError: 'NoneType' object has no attribute 'version_sort'

He resuelto esto volviendo a

pip install pipenv==2018.11.26

Todos 16 comentarios

Recibo el mismo error. Espero que alguien más inteligente encuentre una solución

Encontré una solución alternativa, pero no soy lo suficientemente bueno con las computadoras / python / entornos virtuales para saber por qué funciona.
Desde la Terminal:

  1. Descargue virtualenv (si su instalación pip de pipenv aún no lo hizo)
  2. Cree un entorno virtual en virtualenv -> busque instrucciones en línea
  3. una vez dentro del virtualenv ve a la carpeta donde quieres tu pipfile
  4. instalación de pipenv [python_package]
  5. Debería crear los archivos pipfile y bloquear. Luego salga del entorno virtual
  6. Navegue a la carpeta de su proyecto con archivos pipenv
  7. tipo pipenv shell. Esto debería crear un entorno virtual dentro de la construcción pipenv.

tengo el mismo error, ¿algo para resolverlo?
Aunque la instalación de pipenv en un virtaulenv creado funciona sin problemas como el mencionado jasoncammarata.
¿Porqué es eso?

este problema aún persiste en win10 con python 3.8.3 y pipenv 2020.6.2

DVCL643<strong i="6">@10NB03610</strong>:~/workspace/python/mailswitch_security$ pipenv shell
Traceback (most recent call last):
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Scripts\pipenv.exe\__main__.py", line 9, in <module>
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 782, in main
    rv = self.invoke(ctx)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\decorators.py", line 73, in new_func
    return ctx.invoke(f, obj, *args, **kwargs)
  File "C:\Users\dvcl643\AppData\Local\Programs\Python\Python38\Lib\site-packages\pipenv\vendor\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\cli\command.py", line 428, in shell
    do_shell(
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\core.py", line 2363, in do_shell
    ensure_project(
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\core.py", line 576, in ensure_project
    ensure_virtualenv(
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\core.py", line 498, in ensure_virtualenv
    python = ensure_python(three=three, python=python)
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\core.py", line 388, in ensure_python
    path_to_python = find_a_system_python(python)
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\core.py", line 350, in find_a_system_python
    return next(iter(finder.find_all_python_versions()), None)
  File "c:\users\dvcl643\appdata\local\programs\python\python38\lib\site-packages\pipenv\vendor\pythonfinder\pythonfinder.py", line 328, in find_all_python_ve
rsions
    path_list = sorted(versions, key=version_sort, reverse=True)
AttributeError: 'NoneType' object has no attribute 'version_sort'

He resuelto esto volviendo a

pip install pipenv==2018.11.26

Windows 10, Python 3.8.3, pipenv 2020.6.2

Logré resolver esto escribiendo la ruta completa al python.exe:

pipenv install --python = "C: \ Users \ my_name \ AppData \ Local \ Programs \ Python \ Python38python.exe"

¡Viola! Entorno virtual creado.

Sigo recibiendo el mismo error con la ruta completa a python.exe .

Windows 10, compilación 20161
Miniconda Python 3.7.4
pipenv 2020.6.2

pipenv install --python="C:\Users\Han\Miniconda3\python.exe"

Pipfile:

[[source]]
name = "pypi"
url = "https://pypi.org/simple"
verify_ssl = true

[dev-packages]
pytest = "*"
v = {editable = true,version = "*"}

[packages]
numpy = "==1.19"
tensorflow = "==2.2"
pillow = "*"
requests = "*"
nltk = "*"
matplotlib = "*"

[requires]
python_version = "3.7"

Terminé teniendo que especificar la versión de Python en pipfile para trabajar con 3.8

[requires]
python_version = "3.8"

¿Dónde se encuentra pipfile?

¿Dónde se encuentra pipfile?

@vincentclaes gracias problemas se ha resuelto ..

También veo este error en OSX 10.14.6, con pipenv 2020.8.13:

Pipfile:

[requires]
python_version = "3.7.6"

pipenv install --dev --python $(pyenv root)/versions/3.7.6/bin/python

Finalmente,
AttributeError: 'NoneType' object has no attribute 'url'

¿Alguna vez encontraste una solución para esto @mracette ?

Editar: Tenía exactamente el mismo mensaje de error de mracette, pero pude resolverlo volviendo a pipenv==2018.11.26 . Apareció en la versión pipenv==2020.4.1b1 que es el primer lanzamiento después del 2018.

@sigtot también tuve que volver a 2018.11.26

@sigtot pip-tools y ordinario pip-tools venv ? :sonreír:

Yo también estoy recibiendo esto. ¿Existe alguna razón específica de por qué está sucediendo esto? ¿Utiliza la variable env PATH / PYTHONPATH?

Tenía varias versiones de Python instaladas, además de probar chocolatey y este error apareció un día. Probablemente después de que lo actualicé. Pasé, desinstalé todas las versiones enumeradas de Python, reinstalé 3.8.6 a nivel de sistema y aún recibí este error. Desinstalado y que a chocolate utilizado para instalar 3.8.6 y, una vez más, todavía apareció.

No estoy seguro si de alguna manera mis variables de entorno se estropearon con las múltiples versiones y chocolate, pero pensé que se habría solucionado con una desinstalación / reinstalación.

¡También recibí ese error! El entorno de Centos tampoco tiene sentido ... he probado 2 computadoras con pipenv y pyenv, el mismo mensaje

como han dicho otros, se resolvió la degradación a pipenv 2018.11.26_4

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

ipmb picture ipmb  ·  3Comentarios

leileigong picture leileigong  ·  3Comentarios

jakul picture jakul  ·  3Comentarios

AkiraSama picture AkiraSama  ·  3Comentarios

erinxocon picture erinxocon  ·  3Comentarios