pip, pip, pip, ide gyere kiscsirkém!

 ( NevemTeve | 2018. október 2., kedd - 10:32 )

Ha semmi más nem, de a pip aztán végképp arra való, hogy megkönnyítse az életemet. Rögtön itt az első megkönnyítés:

# pip          
Traceback (most recent call last):
  File "/usr/local/bin/pip", line 7, in 
    from pip import main
  File "/usr/local/lib/python2.7/site-packages/pip/__init__.py", line 21, in 
    from pip._vendor.requests.packages.urllib3.exceptions import DependencyWarning
  File "/usr/local/lib/python2.7/site-packages/pip/_vendor/requests/__init__.py", line 62, in 
    from .packages.urllib3.exceptions import DependencyWarning
  File "/usr/local/lib/python2.7/site-packages/pip/_vendor/requests/packages/__init__.py", line 27, in 
    from . import urllib3
  File "/usr/local/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/__init__.py", line 8, in 
    from .connectionpool import (
  File "/usr/local/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/connectionpool.py", line 33, in 
    from .packages.ssl_match_hostname import CertificateError
  File "/usr/local/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/packages/__init__.py", line 3, in 
    from . import ssl_match_hostname
  File "/usr/local/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/packages/ssl_match_hostname/__init__.py", line 3, in 
    from ssl import CertificateError, match_hostname
  File "/usr/local/lib/python2.7/ssl.py", line 133, in 
    PROTOCOL_SSLv23 = PROTOCOL_TLS
NameError: name 'PROTOCOL_TLS' is not defined

Meg is lehet csodálni a kérdéses sort:

   130  _PROTOCOL_NAMES = {value: name for name, value in globals().items()
   131                     if name.startswith('PROTOCOL_')
   132                         and name != 'PROTOCOL_SSLv23'}
   133  PROTOCOL_SSLv23 = PROTOCOL_TLS

Amit az interneten találtam, abból megtudtam, hogy nekem egy virtuális environment kellene, azon belül bizonyára jól működne a pip. Hát, nyilván.

2018.10.02. 11:36 Hiszti off, 2.7.15-re frissítve legalább elindul a pip:)

2018.10.02. 11:40 Természetesen nem tud nekem Flaskot telepíteni, de már az is szép tőle, hogy ennyit fáradt vele.

pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Collecting Flask (from -r requirements.txt (line 1))
  Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.",)': /simple/flask/
  Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.",)': /simple/flask/
  Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.",)': /simple/flask/
  Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.",)': /simple/flask/
  Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError("Can't connect to HTTPS URL because the SSL module is not available.",)': /simple/flask/
  Could not fetch URL https://pypi.python.org/simple/flask/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.python.org', port=443): Max retries exceeded with url: /simple/flask/ (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.",)) - skipping
  Could not find a version that satisfies the requirement Flask (from -r requirements.txt (line 1)) (from versions: )
No matching distribution found for Flask (from -r requirements.txt (line 1))

2018.10.02. 12:04 Miután elrendeztem a /usr/local/lib/python2.7 és a /usr/local/lib64/python2.7 közötti konfliktust (vagyis mindkettőt töröltem, aztán a kettő egyike szimlink lett a másikra, és megismételtem a fordítást+telepítést), megjavult a derék pip!
Most már csak arra kéne emlékezni, hogy mire is kellett volna ez.
Ja megvan, ezt akartam kipróbálni: https://docs.docker.com/get-started/part2/

2018.10.04 12:12
Másik számítógép:

# pip
Traceback (most recent call last):
  File "/usr/local/bin/pip", line 7, in 
    from pip import main
  File "/usr/local/lib/python2.7/site-packages/pip/__init__.py", line 5, in 
    import logging
  File "/usr/local/lib/python2.7/logging/__init__.py", line 26, in 
    import sys, os, time, cStringIO, traceback, warnings, weakref, collections
  File "/usr/local/lib/python2.7/weakref.py", line 14, in 
    from _weakref import (
ImportError: cannot import name _remove_dead_weakref

2018.10.04. 17:51
Ezen a gépen is ugyanaz volt a gond. Most éppen egy kernel-komponenst akartam fordítani (wireless-regdb), természetesen Python kell hozzá (kicsit furcsállom, hogy nem Comenius Logo vagy MIT Scratch), már adtam neki 'future'-t, meg 'attr'-t, de még van panasza:

Traceback (most recent call last):
  File "./db2bin.py", line 6, in 
    from dbparse import DBParser
  File "/usr/local/src/wireless-regdb/dbparse.py", line 35, in 
    @attr.s(frozen=True, cmp=False)
AttributeError: 'module' object has no attribute 's'
Makefile:59: recipe for target 'regulatory.bin' failed

2018.10.04 18:11 Igazából 'attrs' kell neki, azzal eljut a 'm2crypto'-ig, az viszont még nem OpenSSL-1.1.1-kompatibilis.
Ezt most egyelőre ennyiben hagyom.

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Én egy ilyenbe futottam bele egy évvel (?) ezelőtt:

zolk3ri@arch kerl $ python3 py3kerl.py 
Traceback (most recent call last):
  File "py3kerl.py", line 4, in 
    import sha3
ModuleNotFoundError: No module named 'sha3'
zolk3ri@arch kerl $ pip install --user sha3
Collecting sha3
  Using cached sha3-0.2.1.tar.gz
Installing collected packages: sha3
  Running setup.py install for sha3 ... done
Successfully installed sha3-0.2.1
zolk3ri@arch kerl $ python3 py3kerl.py 
Traceback (most recent call last):
  File "py3kerl.py", line 72, in 
    kerl = Kerl()
  File "py3kerl.py", line 12, in __init__
    self.k = sha3.keccak_384()
AttributeError: module 'sha3' has no attribute 'keccak_384'
zolk3ri@arch kerl $ pip install --user pysha3
Collecting pysha3
  Downloading pysha3-1.0.2-cp36-cp36m-manylinux1_x86_64.whl (127kB)
    100% |████████████████████████████████| 133kB 2.0MB/s 
Installing collected packages: pysha3
Successfully installed pysha3-1.0.2
zolk3ri@arch kerl $ python3 py3kerl.py 
Traceback (most recent call last):
  File "py3kerl.py", line 72, in 
    kerl = Kerl()
  File "py3kerl.py", line 12, in __init__
    self.k = sha3.keccak_384()
AttributeError: module 'sha3' has no attribute 'keccak_384'
zolk3ri@arch kerl $ 
zolk3ri@arch kerl $ pip uninstall sha3
Uninstalling sha3-0.2.1:
  /home/zolk3ri/.local/lib/python3.6/site-packages/_sha3.cpython-36m-x86_64-linux-gnu.so
  /home/zolk3ri/.local/lib/python3.6/site-packages/sha3-0.2.1-py3.6.egg-info
  /home/zolk3ri/.local/lib/python3.6/site-packages/sha3/__init__.py
  /home/zolk3ri/.local/lib/python3.6/site-packages/sha3/__pycache__/__init__.cpython-36.pyc
Proceed (y/n)? y
  Successfully uninstalled sha3-0.2.1
zolk3ri@arch kerl $ pip install --user pysha3
Requirement already satisfied: pysha3 in /home/zolk3ri/.local/lib/python3.6/site-packages
zolk3ri@arch kerl $ python3 py3kerl.py 
Out: LUCKQVACOGBFYSPPVSSOXJEKNSQQRQKPZC9NXFSMQNRQCGGUL9OHVVKBDSKEQEBKXRNUJSRXYVHJTXBPDWQGNSCDCBAIRHAQCOWZEBSNHIJIGPZQITIBJQ9LNTDIBTCQ9EUWKHFLGFUVGGUWJONK9GBCDUIMAYMMQX

1. install sha3
2. code fails
3. install pysha3
4. code fails
5. uninstall sha3
6. code runs

Hát körülbelül. És vajon a python3 mintájára van pip3 is, vagy ez már vakszerencse és install-sorrend kérdése?

És ezt a káoszt istenítik oly sokan...?

... vagy ugyanezek az emberek szidjak a php-t? :)

:-D

"Jegyezze fel a vádhoz - utasította Metcalf őrnagy a tizedest, aki tudott gyorsírni. - Tiszteletlenül beszélt a feljebbvalójával, amikor nem pofázott közbe."

virtualenv vagy pipenv nelkul mar inkabb nem is nyulok pythonhoz :>