“ERROR: raíz: no se encontró el código para hash md5” al usar cualquier comando hg mercurial

9 minutos de lectura

avatar de usuario
poca

Al tratar de usar cualquier hg Comandos de Mercurial en la consola, sigo recibiendo este error. Instalé Python usando Homebrew y estoy ejecutando Mac OS Catalina v. 10.15.1.

Cualquier referencia sería apreciada. Aquí está el error que estoy recibiendo:

hg commit --amend
ERROR:root:code for hash md5 was not found.
Traceback (most recent call last):
  File "/usr/local/Cellar/[email protected]/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/usr/local/Cellar/[email protected]/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type md5
ERROR:root:code for hash sha1 was not found.
Traceback (most recent call last):
  File "/usr/local/Cellar/[email protected]/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/usr/local/Cellar/[email protected]/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type sha1
ERROR:root:code for hash sha224 was not found.
Traceback (most recent call last):
  File "/usr/local/Cellar/[email protected]/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/usr/local/Cellar/[email protected]/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type sha224
ERROR:root:code for hash sha256 was not found.
Traceback (most recent call last):
  File "/usr/local/Cellar/[email protected]/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/usr/local/Cellar/[email protected]/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type sha256
ERROR:root:code for hash sha384 was not found.
Traceback (most recent call last):
  File "/usr/local/Cellar/[email protected]/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/usr/local/Cellar/[email protected]/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type sha384
ERROR:root:code for hash sha512 was not found.
Traceback (most recent call last):
  File "/usr/local/Cellar/[email protected]/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 147, in <module>
    globals()[__func_name] = __get_hash(__func_name)
  File "/usr/local/Cellar/[email protected]/2.7.15_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/hashlib.py", line 97, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type sha512
Traceback (most recent call last):
  File "/usr/local/bin/hg", line 43, in <module>
    dispatch.run()
  File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/hgdemandimport/demandimportpy2.py", line 150, in __getattr__
    self._load()
  File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/hgdemandimport/demandimportpy2.py", line 94, in _load
    _origimport, head, globals, locals, None, level)
  File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/hgdemandimport/demandimportpy2.py", line 43, in _hgextimport
    return importfunc(name, globals, *args, **kwargs)
  File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/mercurial/dispatch.py", line 625, in <module>
    class lazyaliasentry(object):
  File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/mercurial/dispatch.py", line 636, in lazyaliasentry
    @util.propertycache
  File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/hgdemandimport/demandimportpy2.py", line 150, in __getattr__
    self._load()
  File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/hgdemandimport/demandimportpy2.py", line 94, in _load
    _origimport, head, globals, locals, None, level)
  File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/hgdemandimport/demandimportpy2.py", line 43, in _hgextimport
    return importfunc(name, globals, *args, **kwargs)
  File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/mercurial/util.py", line 180, in <module>
    'md5': hashlib.md5,
  File "/usr/local/Cellar/mercurial/4.9/lib/python2.7/site-packages/hgdemandimport/demandimportpy2.py", line 151, in __getattr__
    return getattr(self._module, attr)
AttributeError: 'module' object has no attribute 'md5'

También intenté seguir las instrucciones sobre este problema, pero ninguna de las soluciones parece funcionar.

brew link openssl --force
Warning: Refusing to link macOS-provided software: [email protected]
If you need to have [email protected] first in your PATH run:
  echo 'export PATH="/usr/local/opt/[email protected]/bin:$PATH"' >> ~/.zshrc

For compilers to find [email protected] you may need to set:
  export LDFLAGS="-L/usr/local/opt/[email protected]/lib"
  export CPPFLAGS="-I/usr/local/opt/[email protected]/include"

For pkg-config to find [email protected] you may need to set:
  export PKG_CONFIG_PATH="/usr/local/opt/[email protected]/lib/pkgconfig"

  • Falta el enlace al número 1.

    – Mantenerse en el objetivo

    12 de diciembre de 2019 a las 17:18

  • Esto suena como un problema de Python: stackoverflow.com/questions/20399331/… o stackoverflow.com/questions/41798118/…

    – Mantenerse en el objetivo

    12 de diciembre de 2019 a las 17:19

  • ¿Alguna solución para MacOS? Probé estas soluciones, pero ninguna funciona. Sigo recibiendo el mismo error. Cuando intento vincular openssl cuando pegué mi pregunta, aparece el error pegado allí. También intenté ejecutar estos 4 comandos pero no pasó nada: echo ‘export PATH=”/usr/local/opt/[email protected]/bin:$PATH”‘ >> ~/.zshrc export LDFLAGS=”-L/usr/local /opt/[email protected]/lib” export CPPFLAGS=”-I/usr/local/opt/[email protected]/include” export PKG_CONFIG_PATH=”/usr/local/opt/[email protected]/lib/pkgconfig”

    – poca

    14 de diciembre de 2019 a las 14:25

  • Por extraño que parezca, tuve el mismo problema con YCM en Macvim y esta respuesta resolvió mi problema.

    – cónico

    7 julio 2020 a las 21:41

avatar de usuario
Rockalita

Correr brew reinstall [email protected] no funcionó para mis entornos virtuales Python 2.7 existentes. Dentro de ellos todavía había ERROR:root:code for hash sha1 was not found errores

Encontré este problema después de ejecutar brew upgrade openssl. Y aquí está la solución:

$ ls /usr/local/Cellar/openssl

…que muestra

1.0.2t

De acuerdo con la versión existente, ejecute:

$ brew switch openssl 1.0.2t

…que muestra

Cleaning /usr/local/Cellar/openssl/1.0.2t
Opt link created for /usr/local/Cellar/openssl/1.0.2t

Después de eso, ejecute el siguiente comando en un virtualenv de Python 2.7:

(my-venv) $ python -c "import hashlib;m=hashlib.md5();print(m.hexdigest())"

…que muestra

d41d8cd98f00b204e9800998ecf8427e

No más errores.

  • Esto me ayudó en una actualización de mac catalina o tal vez bash -> zsh donde se rompieron toneladas de cosas como esta.

    – NathanQ

    28 de febrero de 2020 a las 16:52

  • No tenía 1.0.2q pero hacer lo mismo con 1.0.2r también funcionó

    – Matt Coady

    4 de marzo de 2020 a las 18:31

  • Sí. Esto funciona para mí. Pasé días en esto y con miedo de tener que volver a crear una imagen de mi máquina. Intenté reinstalar [email protected] varias veces, pero aún no pude solucionar el problema. Este definitivamente funciona. Mac OS Mojave 10.14.6.

    – hb5fa

    12 de marzo de 2020 a las 20:16

  • @FlorentRoques eso es porque habrías tenido la misma versión que el ejemplo. En mi caso ls /usr/local/Cellar/openssl devuelto 1.0.2s así que necesitaba correr brew switch openssl 1.0.2s

    – Jaybeecave

    13 de abril de 2020 a las 5:08


  • brew switch fue removido github.com/Homebrew/discusiones/discusiones/339

    – fijo

    23 de enero de 2021 a las 1:17

Logré arreglar esto desvinculando primero openssl

brew unlink openssl

Y entonces reinstalando python

brew reinstall [email protected]

También noté que al ejecutar ‘brew doctor’ había una advertencia relacionada con una carpeta de openssl que se encuentra en /usr/local/include/node/. Eliminé esta carpeta antes de ejecutar los comandos anteriores (no estoy seguro si está relacionado)

  • No tenía Openssl vinculado, pero la reinstalación de Python lo hizo por mí. ¡Gracias!

    – crisillo

    22 de diciembre de 2019 a las 16:17

  • Tuve que volver a vincular azure-cli con brew

    – gurú del caos

    12 de marzo de 2020 a las 11:32

  • A partir del 10 de febrero de 2020, [email protected] se elimina de homebrew y esta respuesta no funcionará. Vea la respuesta anterior de @Rockallite, que funcionó perfectamente para mí.

    – Pablo

    20 de abril de 2020 a las 5:42

  • Gracias por la actualización @Paul, marqué la respuesta anterior como la correcta

    – poca

    20 de abril de 2020 a las 7:43


El caso para mí es que cuando instalo dependencias de una aplicación web django, estropea el entorno. cuando escribo cdmuestra el mismo error.

El problema era el openssl biblioteca, no puede encontrar los correctos.

Si está en Macintosh, puede escribir

ls /usr/local/Cellar/openssl

para ver todas las versiones,

brew switch openssl 1.0.XXXX

para elegir la versión openssl disponible.

Entonces el error se ha ido 🙂

  • un trazador de líneasbash ls /usr/local/Cellar/openssl | xargs brew switch openssl

    – Florencio Roques

    10 abr 2020 a las 21:40


  • Funcionó después de usar la respuesta de @poca y luego la respuesta anterior

    – Imsheth

    4 mayo 2020 a las 10:20

  • Muchas gracias, eres un salvavidas. Esto finalmente funcionó después de luchar con él durante más de una hora.

    –Andrew Faulkner

    12 de mayo de 2020 a las 9:33

Simplemente desinstale python2

$ brew uninstall [email protected]

Si hay algún error:

$ brew uninstall --ignore-dependencies [email protected]

mi problema era tener pyenv instalado y apuntando a una versión anterior de python 2

Desinstalar [email protected] (python2 fue EOL desde el 1 de enero de 2020)

$ brew uninstall [email protected]
Uninstalling /usr/local/Cellar/[email protected]/2.7.15_1... (4,169 files, 76.0MB)

después

$ pyenv versions
  system
* 2.7.12 (set by /Users/admin/.python-version)
  3.4.5
  3.7.7

$ pyenv local system
$ pyenv global system

  • Un poco tarde en el juego, pero gracias, ¡su solución funciona perfectamente!

    – Trato Hecho0

    29 de marzo de 2021 a las 14:01

  • ¡Esto funciono muy bien para mi! gracias. Pasé mucho tiempo instalando cosas y esto tomó solo dos segundos 👍

    – Gianni

    6 de mayo de 2021 a las 1:19

avatar de usuario
Carlos Merriam

Tuve este problema recientemente (2020, mayo) con la CLI de GCP de Google. También funciona en el obsoleto Python 2.7.

Este es un problema de instalación de Python 2 borrado. mBrew ya no instala correctamente Python 2 con gracia, ya que a nadie le importa el abondonware.

Conda aún instala Python 2 en un entorno; Yo lo hice.

  • Un poco tarde en el juego, pero gracias, ¡su solución funciona perfectamente!

    – Trato Hecho0

    29 de marzo de 2021 a las 14:01

  • ¡Esto funciono muy bien para mi! gracias. Pasé mucho tiempo instalando cosas y esto tomó solo dos segundos 👍

    – Gianni

    6 de mayo de 2021 a las 1:19

avatar de usuario
sgl0v

La siguiente solución me funcionó en MacOS Catalina:

  1. Desvincular openssl
brew unlink openssl
  1. Vuelva a instalar python 2.7 (eliminado de homebrew y no se puede instalar a través de brew install [email protected])
brew tap-new <user>/homebrew-python2
brew extract [email protected] <user>/homebrew-python2
brew reinstall /usr/local/Homebrew/Library/Taps/<user>/homebrew-python2/Formula/[email protected]

  • Hice lo mismo pero en lugar del paso 2) lo hice brew remove [email protected] 🙂 macOS Catalina incluye Python 2.7 incorporado y parecía menos propenso a tener problemas que confiar en eso directamente. Para mí, el soporte de python a través de brew siempre parecía causar algún problema en algún lugar del pasado xD

    – Chakabam

    27 oct 2020 a las 20:37


¿Ha sido útil esta solución?

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información
Privacidad