2 votos

Otro problema con una actualización de homebrew => actualización de python => "No se encuentra el módulo llamado 'praw'" (falta en site-packages)

Disculpe por la repetición, si es que la hay, pero esto me está volviendo loco. Pasé por algunas actualizaciones de Homebrew en el pasado y todos los scripts de Python que solía usar funcionaban bien después de las actualizaciones de Python, lo que significa que las actualizaciones tenían correctamente en cuenta todos los paquetes del sitio necesarios.

Hoy actualicé (mismo mecanismo: brew update && brew upgrade && brew cleanup --prune=all), y veo que mi nueva versión de Python es la 3.12.2, que reemplazó a la anterior 3.11, pero faltan un montón de cosas en /usr/local/lib/python3.12/site-packages (en comparación con la 3.11). Algunas de ellas son las de praw, por lo tanto aparece el mensaje de error "No se encuentra el módulo 'praw'" al intentar ejecutar un script de Python que depende de él.

Recuerdo haber tenido un problema similar hace un tiempo, que creí haber solucionado con un simple pip install --upgrade praw o python -m pip install --upgrade praw, pero ahora me aparece el mensaje de error "error: entorno gestionado externamente".

¿Alguna idea de cómo podría solucionar esto?

1voto

Marc Wilson Puntos 146

Este es un resultado de PEP 668, que Homebrew ha seguido. Ahora está documentado aquí.

Esta PEP propone un mecanismo para que una instalación de Python comunique a herramientas como pip que su contexto de instalación global de paquetes está gestionado por algún medio externo a Python, como un gestor de paquetes de SO. Especifica que las herramientas de gestión de paquetes específicas de Python no deben instalar ni eliminar paquetes en el contexto global del intérprete, por defecto, y en su lugar deben guiar al usuario final hacia el uso de un entorno virtual.

Así que. A partir de Python 3.12, Homebrew está siguiendo PEP 668. No está roto. Tus opciones son:

  • Instalar copias empacadas por Homebrew de los módulos que desees. Si Homebrew no los empaca, entonces puedes trabajar para agregarlos a Homebrew.

  • Crear un venv, y usar pip para instalar los módulos que desees dentro del venv. Activa el venv cuando quieras usarlo.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X