33

I'm trying to update pip using pip install --upgrade pip, but I get a "requirement satisfied" error and an "outdated version" message at the same time

$ pip install --upgrade pip
Requirement already up-to-date: pip in 
/Users/user/Envs/proj/lib/python2.7/site-packages
You are using pip version 9.0.1, however version 9.0.3 is available.
You should consider upgrading via the 'pip install --upgrade pip' 
command.

How do I update?

nbro
  • 15,395
  • 32
  • 113
  • 196
Soundtemple
  • 641
  • 2
  • 9
  • 8
  • 1
    Do you by any chance have pip 9.0.3 in your global Python, but 9.0.1 in a virtualenv? That _shouldn't_ be a problem, but it seems more likely to go wrong than any other combination I can think of. – abarnert Apr 10 '18 at 01:40

6 Answers6

125

Recently, Python.org sites stopped supporting TLS version 1.0 and 1.1, which could be causing the chicken-and-egg problem you are facing. Try upgrading pip without using pip:

curl https://bootstrap.pypa.io/get-pip.py | python
Anupam
  • 14,950
  • 19
  • 67
  • 94
  • Fails on Windows 7: `'curl' is not recognized as an internal or external command operable program or batch file.` – Stevoisiak Apr 26 '18 at 15:02
  • 1
    @StevenVascellaro perhaps just download it directly from the link above and run `python get-pip.py`? Also later versions of Python seem to be shipped with pip included – Anupam Apr 27 '18 at 04:57
  • 5
    Worked for me on Mac. – Taiwotman Jun 11 '18 at 13:51
  • 6
    For those who want to upgrade pip3, run the same command as above but use `python3` instead of `python`. – ruthless Aug 08 '18 at 11:06
  • No go for me: curl: (35) schannel: next InitializeSecurityContext failed: Unknown error (0x80092012) - The revocation function was unable to check revocation for the certificate. – drgrujic Mar 29 '19 at 14:45
  • 8
    This gave me the same error: Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/pip/ (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.",)) - skipping – Mike Jarvis Nov 27 '19 at 01:37
11

These two commands worked for me:

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

then:

python get-pip.py
zx485
  • 28,498
  • 28
  • 50
  • 59
paul
  • 135
  • 1
  • 10
  • No go for me: curl: (35) schannel: next InitializeSecurityContext failed: Unknown error (0x80092012) - The revocation function was unable to check revocation for the certificate. – drgrujic Mar 29 '19 at 14:45
  • Thank this solution worked best for me by paul (to split Anupam's answer into two steps) because of a permission error running the get-pip.py script after curl downloads it. Changing the last line to sudo python get-pip.py was the trick. FINALLY upgraded pip beyond 9.0.x – AdamE May 15 '19 at 23:54
4

Try:
Right Click Anaconda Prompt (Run as Admin)

>> conda update pip

(It worked for me)

OM Bharatiya
  • 1,840
  • 14
  • 23
2

The curl answer above didn't work for me. This worked for me

sudo python -m pip install --upgrade pip
swb
  • 29
  • 3
1

This worked for me in windows with Anaconda3: Add **\Anaconda3\Library\bin to windows path

set path=anaconda_install_path\Anaconda3\Library\bin to windows path;%path%
alpoza
  • 460
  • 4
  • 7
0

Apparently the issue is with Anaconda. This solution worked for me: https://github.com/conda/conda/issues/9746#issuecomment-616314792

Asma
  • 129
  • 1
  • 2
  • 9
  • While this might answer the question, if possible you should [edit] your answer to include the most important information in the provided link in the answer itself. This can help prevent your answer from becoming invalid if the link stops working or the content significantly changes. – Hoppeduppeanut Oct 26 '20 at 02:13