NotOpenSSLWarning: urllib3 v2 only supports OpenSSL 1.1.1+, currently the ‘ssl’ module is compiled with ‘LibreSSL 2.8.3’. See: Problemi ve çözümü


python3.9/site-packages/urllib3/__init__.py:35: NotOpenSSLWarning: urllib3 v2 only supports OpenSSL 1.1.1+, currently the ‘ssl’ module is compiled with ‘LibreSSL 2.8.3’. See: https://github.com/urllib3/urllib3/issues/3020

problemi ve çözümü aşağıdaki gibidir.

Bu hata mesajı, urllib3 kütüphanesinin versiyon 2’sinin OpenSSL 1.1.1 veya daha üst bir sürümünü desteklediğini, ancak sisteminizde ssl modülünün LibreSSL 2.8.3 ile derlendiğini belirtiyor. Yani, urllib3 kütüphanesi için yeterli olmayan bir SSL kütüphanesi sürümü kullanıyorsunuz. Bu durum, Python uygulamalarınızda HTTPS gibi güvenli bağlantılar kurmaya çalışırken sorunlara yol açabilir.

Bu sorunu çözmek için aşağıdaki adımları deneyebilirsiniz:

1. Python Ortamını Yeniden Yapılandırma

Python’un OpenSSL kütüphanesini kullanmasını sağlamak, genellikle LibreSSL yerine OpenSSL’in daha yeni bir sürümünü yüklemekle çözülür:

macOS Kullanıcıları için:

  • Homebrew kullanarak en son OpenSSL sürümünü yükleyin ve Python’un bu sürümü kullanmasını sağlayın:
  brew install openssl
  • Daha sonra Python’u yeniden yüklerken OpenSSL yolunu belirtin:
  export LDFLAGS="-L/usr/local/opt/openssl/lib"
  export CPPFLAGS="-I/usr/local/opt/openssl/include"

Bu çevre değişkenlerini ayarladıktan sonra Python’unuzu yeniden yükleyin veya mevcut ortamda OpenSSL yolunu ekleyin.

2. Alternatif olarak, urllib3‘ü Daha Eski Bir Sürümle Değiştirmek

Eğer OpenSSL’i yükseltmek istemiyorsanız, urllib3‘ü 2.0 öncesi bir sürüme çekebilirsiniz:

pip install urllib3<2

Bu, urllib3 kütüphanesinin eski sürümünü yükleyerek uyumsuzluk sorununu geçici olarak çözebilir.

3. Python Sanal Ortamını Yeniden Yaratma

Belirli bir proje için sanal ortam kullanıyorsanız, bu sanal ortamı silip yeniden oluşturmayı deneyebilirsiniz. Böylece, yeni sanal ortam oluşturulduğunda OpenSSL bağlantısı düzgün bir şekilde ayarlanabilir:

deactivate  # Mevcut sanal ortamdan çık
rm -rf .venv  # Eski sanal ortamı sil
python -m venv .venv  # Yeni sanal ortam oluştur
source .venv/bin/activate  # Sanal ortamı aktif et
pip install -r requirements.txt  # Gereksinimleri yükle

4. urllib3‘ün Güncel Belgelerini Kontrol Etmek

Bu sorunun en güncel çözümleri için urllib3‘ün GitHub sayfasındaki ilgili konuya göz atabilirsiniz. Orada, kullanıcılar tarafından önerilen çeşitli çözümler ve güncellemeler bulunabilir.

Bu adımlar, hatayı çözmenize yardımcı olmalıdır. OpenSSL veya kütüphanelerle ilgili herhangi bir değişiklik yaptığınızda, projenizi yeniden test etmeyi unutmayın.

Yorum yapın