Search code examples
pythonpython-2.7piprhel

pip download + why pip not download the latest version


we want to download the latest version of cffi pkg

we do the following

pip download  cffi
Collecting cffi
  Using cached https://files.pythonhosted.org/packages/08/29/8001b940ef40e7a25ffe8f3188bc9b118934b513d64f769dbf461e46f4ed/cffi-1.14.0-cp27-cp27mu-manylinux1_x86_64.whl
  Saved ./cffi-1.14.0-cp27-cp27mu-manylinux1_x86_64.whl
Collecting pycparser (from cffi)
  Using cached https://files.pythonhosted.org/packages/ae/e7/d9c3a176ca4b02024debf82342dab36efadfc5776f9c8db077e8f6e71821/pycparser-2.20-py2.py3-none-any.whl
  Saved ./pycparser-2.20-py2.py3-none-any.whl
Successfully downloaded cffi pycparser

but we get - version - cffi-1.14.0 , and not the latest that is v1.8.3 ( https://cffi.readthedocs.io/en/release-1.8/whatsnew.html#v1-8-3 )

ls -ltr
total 492
-rw-r--r-- 1 root root 387834 Jun  4 08:04 cffi-1.14.0-cp27-cp27mu-manylinux1_x86_64.whl
-rw-r--r-- 1 root root 112041 Jun  4 08:04 pycparser-2.20-py2.py3-none-any.whl

so is it possible some way to download by pip the latest version of - cffi?

from - https://cffi.readthedocs.io/en/release-1.8/whatsnew.html#v1-8-3

What’s New
v1.8.3
When passing a void * argument to a function with a different pointer type, or vice-versa, the cast occurs automatically, like in C. The same occurs for initialization with ffi.new() and a few other places. However, I thought that char * had the same property—but I was mistaken. In C you get the usual warning if you try to give a char * to a char ** argument, for example. Sorry about the confusion. This has been fixed in CFFI by giving for now a warning, too. It will turn into an error in a future version.

Solution

  • 1.14.0 (first published 2020-02-07) is a newer version than 1.8.3 (first published 2016-09-17).


    If you indeed want version 1.8.3, then you can instruct pip to do so:

    path/to/pythonX.Y -m pip install 'cffi==1.8.3'