Před pár dny jsem aktualizoval svůj MacOS na Catalinu a ihned poté začaly všechny skripty Snowflake, které jsem napsal v #Pythonu, vracet chybu Abort trap: 6. Moje původní myšlenka byla, že něco musí být problém s kompatibilitou buď s pythonovským konektorem, nebo s novým výchozím terminálovým shellem zsh. Naštěstí jsem se mýlil, ale tady je to, co jsem našel a jak jsem byl schopen udělat, aby mé skripty Python opět běží. -Oh Happy Days.
Proč se to děje
Chybička zřejmě souvisí s tím, že Catalina nedovoluje volat dyliby bez verze. Zkrátíme to tím, že propojíme soubory dylib bez verzí se soubory s verzemi. Zde je oprava, která u mě fungovala.
Oprava
Vyhledávání na Googlu mě přivedlo sem: https://forums.developer.apple.com/thread/119429
;tldr
Ze svého terminálu musíme spustit několik aktualizací pomocí brew.
brew update && brew upgrade && brew install openssl
Po dokončení aktualizací proveďte následující kroky
cd /usr/local/Cellar/openssl/1.0.2t/lib
sudo cp libssl.1.0.0.dylib libcrypto.1.0.0.dylib /usr/local/lib/
cd /usr/local/lib
sudo ln -s libssl.1.0.0.dylib libssl.dylib
sudo ln -s libcrypto.1.0.0.dylib libcrypto.dylib
Můj konkrétnější problém
Přesněji pro mě bylo zajištění správného fungování Snowflake Python Connectoru, takže jsem provedl i jeho aktualizaci pomocí pip3:
pip3 install --upgrade snowflake-connector-python
Po přeskočení několika modulů, které žádné aktualizace nepotřebovaly, jsme se dostali k několika aktualizacím některých souborů, které souvisejí s crypto:
„Successfully installed asn1crypto-1.2.0 oscrypto-1.1.0 snowflake-connector-python-2.0.3“
Po tomto je zatím vše v pořádku …. 😉
Snad to pomůže!