Virtualenv: Ningún módulo llamado 'virtualenv.seed.via_app_data'

Creado en 24 jun. 2020  ·  27Comentarios  ·  Fuente: pypa/virtualenv

Asunto

Al llamar a virtualenv test espero que cree una carpeta llamada prueba con todos los archivos del entorno virtual allí. El comportamiento observado es solo el siguiente mensaje sin que se haya creado una prueba de carpeta:
ModuleNotFoundError: No module named 'virtualenv.seed.via_app_data'

Medio ambiente

Proporcione al menos:

  • SO: Ubuntu 20.04
  • pip list del host python donde virtualenv está instalado:
Package                Version
---------------------- -------------
appdirs                1.4.4
apturl                 0.5.2
awscli                 1.17.14
blinker                1.4
botocore               1.14.14
Brlapi                 0.7.0
certifi                2019.11.28
chardet                3.0.4
chrome-gnome-shell     0.0.0
colorama               0.4.3
command-not-found      0.3
cryptography           2.8
cupshelpers            1.0
dbus-python            1.2.16
defer                  1.0.6
distlib                0.3.0
distro                 1.4.0
distro-info            0.23ubuntu1
docutils               0.16
entrypoints            0.3
filelock               3.0.12
httpie                 1.0.3
httplib2               0.14.0
idna                   2.8
importlib-metadata     1.5.0
jmespath               0.9.4
keyring                18.0.1
language-selector      0.1
launchpadlib           1.10.13
lazr.restfulclient     0.14.2
lazr.uri               1.0.3
louis                  3.12.0
macaroonbakery         1.3.1
more-itertools         4.2.0
netifaces              0.10.4
oauthlib               3.1.0
olefile                0.46
pexpect                4.6.0
Pillow                 7.0.0
pip                    20.1.1
protobuf               3.6.1
pyasn1                 0.4.2
pycairo                1.16.2
pycups                 1.9.73
Pygments               2.6.1
PyGObject              3.36.0
PyJWT                  1.7.1
pymacaroons            0.13.0
PyNaCl                 1.3.0
pyRFC3339              1.1
python-apt             2.0.0
python-dateutil        2.7.3
python-debian          0.1.36ubuntu1
pytz                   2019.3
pyxdg                  0.26
PyYAML                 5.3.1
reportlab              3.5.34
requests               2.22.0
requests-unixsocket    0.2.0
roman                  2.0.0
rsa                    4.0
s3transfer             0.3.3
SecretStorage          2.3.1
setuptools             45.2.0
simplejson             3.16.0
six                    1.14.0
systemd-python         234
ubuntu-advantage-tools 20.3
ubuntu-drivers-common  0.0.0
ufw                    0.36
unattended-upgrades    0.1
urllib3                1.25.8
virtualenv             20.0.24
wadllib                1.3.3
wheel                  0.34.2
xkit                   0.0.0
zipp                   1.0.0
  ```

**Output of the virtual environment creation**

```console
71 setup logging to NOTSET [DEBUG report:42]
88 find interpreter for spec PythonSpec(path=/usr/bin/python3) [INFO builtin:44]
88 proposed PythonInfo(spec=CPython3.8.2.final.0-64, exe=/usr/bin/python3, platform=linux, version='3.8.2 (default, Apr 27 2020, 15:53:34) \n[GCC 9.3.0]', encoding_fs_io=utf-8-utf-8) [INFO builtin:50]
88 accepted PythonInfo(spec=CPython3.8.2.final.0-64, exe=/usr/bin/python3, platform=linux, version='3.8.2 (default, Apr 27 2020, 15:53:34) \n[GCC 9.3.0]', encoding_fs_io=utf-8-utf-8) [DEBUG builtin:52]
89 filesystem is case-sensitive [DEBUG info:28]
Traceback (most recent call last):
  File "/home/florian/.local/bin/virtualenv", line 8, in <module>
    sys.exit(run_with_catch())
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/__main__.py", line 63, in run_with_catch
    run(args, options)
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/__main__.py", line 17, in run
    session = cli_run(args, options)
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/run/__init__.py", line 24, in cli_run
    session = session_via_cli(args, options)
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/run/__init__.py", line 32, in session_via_cli
    parser, elements = build_parser(args, options)
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/run/__init__.py", line 60, in build_parser
    SeederSelector(interpreter, parser),
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/run/plugin/seeders.py", line 8, in __init__
    possible = self.options("virtualenv.seed")
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/run/plugin/base.py", line 39, in options
    cls._OPTIONS = cls.entry_points_for(key)
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/run/plugin/base.py", line 18, in entry_points_for
    return OrderedDict((e.name, e.load()) for e in cls.entry_points().get(key, {}))
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/run/plugin/base.py", line 18, in <genexpr>
    return OrderedDict((e.name, e.load()) for e in cls.entry_points().get(key, {}))
  File "/usr/lib/python3.8/importlib/metadata.py", line 77, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 961, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 973, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'virtualenv.seed.via_app_data'
question

Comentario más útil

Nuestras cajas parecían tener instaladas versiones debian y pip ... pero incluso después de eliminar la versión debian no pude hacer que esto funcionara con la última versión pip (20.0.25). Todo funciona con ...

sudo pip3 install virtualenv==20.0.23

Todos 27 comentarios

¿Cómo instalaste virtualenv?

sudo apt install python3-virtualenv

Ya lo eliminé y lo reinstalé varias veces sin éxito.

En este caso, el problema no es con virtualenv el proyecto, sino con el reempaquetado de Debian, así que informe su problema en http://bugs.debian.org/cgi-bin/pkgreport.cgi?package=python3-virtualenv

Mientras tanto, puede utilizar nuestros métodos de instalación alternativos para obtener la versión no debian https://virtualenv.pypa.io/en/latest/installation.html#installation

@kitterma FYI

Muchas gracias por la respuesta tan rápida ... intentaré el método de instalación alternativo.

ACTUALIZAR:
Lo eliminé con apt remove y probé el método de instalación con pip que decía que ya estaba instalado. Después de intentar reinstalar con --force-reinstall todo funciona bien.

Gracias. La última versión de Ubuntu ocurrió en un punto en el que todavía estaba trabajando en algunos problemas en Debian. No trabajo en Ubuntu directamente, así que no estoy seguro de los detalles.

Me alegra que la reinstalación resolviera su problema.

@kitterma tenga en cuenta que lo reinstaló con pip, tenga en cuenta apt-get ... así que per se todavía está roto en el nivel de Debian.

Gracias. Me perdí eso. No he probado en Ubuntu. Sin embargo, funciona en Debian.

¿Cuál es tu versión virtualenv? Tenga en cuenta que virtualenv 20.0.24 refactorizó la semilla del módulo de detalles de implementación interna ... por lo que es probable que el parche de Debian esté roto a menos que lo haya arreglado desde entonces.

Lo comprobaré y me aseguraré una vez que esté frente a una computadora nuevamente.

Tenga en cuenta que virtualenv 20.0.24 refactorizó la semilla del módulo de detalles de implementación interna ... por lo que es probable que el parche de Debian esté roto a menos que lo haya arreglado desde entonces.

Ubuntu 20.04 tiene la versión 20.0.17.

El rastreo en el problema apunta a /home/florian/.local/lib/python3.8/site-packages/virtualenv/ así que supongo que @ make-ing había instalado 2.0.24 a través de pip, y esa instalación de alguna manera estaba rota. Esto sería antes del módulo Ubuntu virtualenv en sys.path .

Nuestras cajas parecían tener instaladas versiones debian y pip ... pero incluso después de eliminar la versión debian no pude hacer que esto funcionara con la última versión pip (20.0.25). Todo funciona con ...

sudo pip3 install virtualenv==20.0.23

@gaborbernat No he empaquetado 2.0.24 todavía, por lo que cualquier cosa 2.0.24 en Debian o Ubuntu no está relacionado con el empaquetado de la distribución.

Entonces, como se detalla anteriormente, solo los usuarios instalan virtualenv tanto a través de pip como a través de apt al mismo tiempo y el conflicto entre los repositorios desencadena esto. ¿De alguna manera Debian puede generar algún error en tales casos?

También encontré este problema en ubuntu bionic al instalar virtualenv con pip (no apt-get). La degradación a 20.0.23 también lo resolvió en mi caso.

También puedo confirmar que la degradación de la versión a 20.0.23 resuelve el problema de la fosa focal.

Tengo el mismo problema. ¿Cómo hacer la rebaja?

@ruannyury pip uninstall virtualenv luego pip install virtualenv==20.0.23

En todos estos casos, la degradación no es la solución real. Puede que solucione el problema por ahora, pero obtendrá una versión desactualizada del software. Será mejor que averigüe por qué tiene dos versiones instaladas en paralelo y elimine ambas, y luego instale la nueva.

¿Cómo averiguarlo? perdon por las molestias

Mi sistema operativo es Manjaro 20.0.3

pip desinstalar virtualenv, pip desinstalar virtualenv? (Hazlo dos veces)

En la segunda vez:
`ERROR: Excepción:
Rastreo (llamadas recientes más última):
Archivo "/usr/lib/python3.8/shutil.py", línea 788, en movimiento
os.rename (src, real_dst)
OSError: [Errno 18] Enlace entre dispositivos inválido: '/ usr / bin / virtualenv' -> '/ tmp / pip-uninstall-mpsr19ya / virtualenv'

Durante el manejo de la excepción anterior, se produjo otra excepción:

Rastreo (llamadas recientes más última):
Archivo "/usr/lib/python3.8/site-packages/pip/_internal/cli/base_command.py", línea 186, en _main
status = self.run (opciones, argumentos)
Archivo "/usr/lib/python3.8/site-packages/pip/_internal/commands/uninstall.py", línea 78, en ejecución
uninstall_pathset = req.uninstall (
Archivo "/usr/lib/python3.8/site-packages/pip/_internal/req/req_install.py", línea 687, en desinstalación
uninstalled_pathset.remove (auto_confirm, detallado)
Archivo "/usr/lib/python3.8/site-packages/pip/_internal/req/req_uninstall.py", línea 394, en eliminar
moved.stash (ruta)
Archivo "/usr/lib/python3.8/site-packages/pip/_internal/req/req_uninstall.py", línea 283, en alijo
renombra (ruta, nueva_ruta)
Archivo "/usr/lib/python3.8/site-packages/pip/_internal/utils/misc.py", línea 334, en cambios de nombre
shutil.move (antiguo, nuevo)
Archivo "/usr/lib/python3.8/shutil.py", línea 803, en movimiento
os.unlink (src)
PermissionError: [Errno 13] Permissão negada: '/ usr / bin / virtualenv'
'
¿Debería usar el sudo?

Tal vez lo instaló con el instalador de su sistema operativo, ¿intenta desinstalarlo también?

¿Con el superusuario?
actualización: lo tengo.
Entonces, ¿lo instalo de nuevo?

Lubuntu 20.04 Tuve el mismo problema. Resuelto volviendo a virtualenv == 20.0.23

En todos estos casos, la degradación no es la solución real. Puede que solucione el problema por ahora, pero obtendrá una versión desactualizada del software. Será mejor que averigüe por qué tiene dos versiones instaladas en paralelo y elimine ambas, y luego instale la nueva.

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