From 9fb3b7c795421c39819d8b836a9020a449e6db3e Mon Sep 17 00:00:00 2001 From: Pradyun Gedam Date: Fri, 21 May 2021 16:13:19 +0100 Subject: [PATCH 01/10] Add new installation document --- docs/html/installation.md | 73 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 docs/html/installation.md diff --git a/docs/html/installation.md b/docs/html/installation.md new file mode 100644 index 00000000000..1e483ce7866 --- /dev/null +++ b/docs/html/installation.md @@ -0,0 +1,73 @@ +# Installation + +pip is already installed if you are: + +- working in a + [virtual environment](pypug:Creating\ and\ using\ Virtual\ Environments) + created by [venv](pypug:venv) or [virtualenv](pypug:virtualenv). +- using Python, downloaded from [python.org](https://www.python.org). +- using Python, that has not been patched by a redistributor to remove + `ensurepip`. + +## Compatibility + +The current version of pip works on: + +- Windows, Linux/Unix and MacOS. +- CPython 3.6, 3.7, 3.8, 3.9 and latest PyPy3. + +pip is tested to work on the latest patch version of the Python interpreter, +for each of the minor versions listed above. Previous patch versions are +supported on a best effort approach. + +```{note} +If you're using an older version of pip or Python, it is possible that +the instructions on this page will not work for you. + +pip's maintainers would not be able to provide support for users on such +older versions, and these users are advised to reach out to the +providers of those older versions of pip/Python (eg: your vendor or +Linux distribution) for support. +``` + +### Using {mod}`ensurepip` + +Python >= 3.4 can self-bootstrap pip with the built-in {mod}`ensurepip` module. +To install pip using {mod}`ensurepip`, run: + +```{pip-cli} +$ python -m ensurepip --upgrade +``` + +```{note} +It is strongly recommended to upgrade to the current version of pip using +`--upgrade` when calling ensurepip. It is possible to skip this flag, which +also means that the process would not access the internet. +``` + +More details about how {mod}`ensurepip` works and can be used, is available in +the standard library documentation. + +### Using get-pip.py + +`get-pip.py` is a bootstrapper script, that is capable of installing pip in an +environment. To install pip using `get-pip.py`, you'll want to: + +- Download the `get-pip.py` script, from . + + On most Linux/MacOS machines, this can be done using the command: + + ``` + $ curl -sSL https://bootstrap.pypa.io/get-pip.py -o get-pip.py + ``` + +- Open the terminal/command prompt on your OS, in the folder containing the + `get-pip.py` file and run: + + ```{pip-cli} + $ python get-pip.py + ``` + +More details about this script can be found in [pypa/get-pip]'s README. + +[pypa/get-pip]: https://github.com/pypa/get-pip From 86c79441e9204c37991a69f7a324cb3b880ffda7 Mon Sep 17 00:00:00 2001 From: Pradyun Gedam Date: Fri, 21 May 2021 16:13:40 +0100 Subject: [PATCH 02/10] Add initial getting-started scaffold --- docs/html/getting-started.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 docs/html/getting-started.md diff --git a/docs/html/getting-started.md b/docs/html/getting-started.md new file mode 100644 index 00000000000..a2bd810508b --- /dev/null +++ b/docs/html/getting-started.md @@ -0,0 +1,25 @@ +# Getting Started + +To get started with using pip, you should install Python on your system. + +## Checking if you have a working pip + +The best way to check if you have a working pip installation is to run: + +```{pip-cli} +$ pip --version +pip X.Y.Z from ... (python X.Y) +``` + +If that worked, congratulations! You have a working pip in your environment. + +If you got output that does not look like the sample above, read on -- the rest +of this page has information about how to install pip within a Python +environment that doesn't have it. + +## Next Steps + +As a next step, you'll want to read the +["Installing Packages"](pypug:tutorials/installing-packages) tutorial on +packaging.python.org. That tutorial will guide you through the basics of using +pip for installing packages. From afcefa908861c082c14869dcbfca8c538af0f9a8 Mon Sep 17 00:00:00 2001 From: Pradyun Gedam Date: Fri, 21 May 2021 18:11:47 +0100 Subject: [PATCH 03/10] Rewrite substantial portions of installation docs --- docs/html/installation.md | 80 +++++++++++++++++++++++++-------------- 1 file changed, 51 insertions(+), 29 deletions(-) diff --git a/docs/html/installation.md b/docs/html/installation.md index 1e483ce7866..9bb0cfd33a4 100644 --- a/docs/html/installation.md +++ b/docs/html/installation.md @@ -3,37 +3,25 @@ pip is already installed if you are: - working in a - [virtual environment](pypug:Creating\ and\ using\ Virtual\ Environments) - created by [venv](pypug:venv) or [virtualenv](pypug:virtualenv). -- using Python, downloaded from [python.org](https://www.python.org). -- using Python, that has not been patched by a redistributor to remove - `ensurepip`. + {ref}`virtual environment ` +- using Python downloaded from [python.org](https://www.python.org) +- using Python that has not been modified by a redistributor to remove + {mod}`ensurepip` -## Compatibility - -The current version of pip works on: +## Supported Methods -- Windows, Linux/Unix and MacOS. -- CPython 3.6, 3.7, 3.8, 3.9 and latest PyPy3. +If your Python environment does not have pip installed, there are 2 mechanisms +to install pip supported directly by pip's maintainers: -pip is tested to work on the latest patch version of the Python interpreter, -for each of the minor versions listed above. Previous patch versions are -supported on a best effort approach. - -```{note} -If you're using an older version of pip or Python, it is possible that -the instructions on this page will not work for you. - -pip's maintainers would not be able to provide support for users on such -older versions, and these users are advised to reach out to the -providers of those older versions of pip/Python (eg: your vendor or -Linux distribution) for support. -``` +- [Using ensurepip](#using-ensurepip) +- [Using get-pip.py](#using-get-pip-py) ### Using {mod}`ensurepip` -Python >= 3.4 can self-bootstrap pip with the built-in {mod}`ensurepip` module. -To install pip using {mod}`ensurepip`, run: +Python comes with an {mod}`ensurepip` module, which can install pip in a +Python environment. + +To install pip using `ensurepip`, run: ```{pip-cli} $ python -m ensurepip --upgrade @@ -45,13 +33,15 @@ It is strongly recommended to upgrade to the current version of pip using also means that the process would not access the internet. ``` -More details about how {mod}`ensurepip` works and can be used, is available in -the standard library documentation. +More details about how {mod}`ensurepip` works and how it can be used, is +available in the standard library documentation. ### Using get-pip.py -`get-pip.py` is a bootstrapper script, that is capable of installing pip in an -environment. To install pip using `get-pip.py`, you'll want to: +`get-pip.py` is a Python script for installing pip in an environment. It uses +a bundled copy of pip to install pip. + +To use `get-pip.py`, you'll want to: - Download the `get-pip.py` script, from . @@ -71,3 +61,35 @@ environment. To install pip using `get-pip.py`, you'll want to: More details about this script can be found in [pypa/get-pip]'s README. [pypa/get-pip]: https://github.com/pypa/get-pip + +## Alternative Methods + +Depending on how you installed Python, there might be other mechanisms +available to you for installing pip such as +{ref}`using Linux package managers `. + +These mechanisms are provided by redistributors of pip, who may have modified +pip to change its behaviour. This has been a frequent source of user confusion, +since it causes a mismatch between documented behaviour in this documentation +and how pip works after those modifications. + +If you face issues when using Python installed using these mechanisms, it is +recommended to request for support from the relevant provider (eg: linux distro +community, cloud provider's support channels, etc). + +## Compatibility + +The current version of pip works on: + +- Windows, Linux and MacOS. +- CPython 3.6, 3.7, 3.8, 3.9 and latest PyPy3. + +pip is tested to work on the latest patch version of the Python interpreter, +for each of the minor versions listed above. Previous patch versions are +supported on a best effort approach. + +pip's maintainers do not provide support for users on older versions of Python, +and these users should request for support from the relevant provider +(eg: linux distro community, cloud provider's support channels, etc). + +[^python]: The `ensurepip` module was added to the Python standard library in Python 3.4. From cbade4e657b59cb2e43ab53f3d1f99933a502c4f Mon Sep 17 00:00:00 2001 From: Pradyun Gedam Date: Fri, 21 May 2021 18:45:07 +0100 Subject: [PATCH 04/10] Further tweak the installation page --- docs/html/installation.md | 43 ++++++++++++--------------------------- 1 file changed, 13 insertions(+), 30 deletions(-) diff --git a/docs/html/installation.md b/docs/html/installation.md index 9bb0cfd33a4..5f78572d037 100644 --- a/docs/html/installation.md +++ b/docs/html/installation.md @@ -1,6 +1,6 @@ # Installation -pip is already installed if you are: +Usually, pip is automatically installed if you are: - working in a {ref}`virtual environment ` @@ -13,45 +13,28 @@ pip is already installed if you are: If your Python environment does not have pip installed, there are 2 mechanisms to install pip supported directly by pip's maintainers: -- [Using ensurepip](#using-ensurepip) -- [Using get-pip.py](#using-get-pip-py) +- [`ensurepip`](#using-ensurepip) +- [`get-pip.py`](#using-get-pip-py) -### Using {mod}`ensurepip` +### `ensurepip` Python comes with an {mod}`ensurepip` module, which can install pip in a Python environment. -To install pip using `ensurepip`, run: - ```{pip-cli} $ python -m ensurepip --upgrade ``` -```{note} -It is strongly recommended to upgrade to the current version of pip using -`--upgrade` when calling ensurepip. It is possible to skip this flag, which -also means that the process would not access the internet. -``` - More details about how {mod}`ensurepip` works and how it can be used, is available in the standard library documentation. -### Using get-pip.py - -`get-pip.py` is a Python script for installing pip in an environment. It uses -a bundled copy of pip to install pip. - -To use `get-pip.py`, you'll want to: +### `get-pip.py` -- Download the `get-pip.py` script, from . - - On most Linux/MacOS machines, this can be done using the command: - - ``` - $ curl -sSL https://bootstrap.pypa.io/get-pip.py -o get-pip.py - ``` +This is a Python script that uses some bootstrapping logic to install +pip. -- Open the terminal/command prompt on your OS, in the folder containing the +- Download the script, from . +- Open a terminal/command prompt, `cd` to the folder containing the `get-pip.py` file and run: ```{pip-cli} @@ -73,9 +56,9 @@ pip to change its behaviour. This has been a frequent source of user confusion, since it causes a mismatch between documented behaviour in this documentation and how pip works after those modifications. -If you face issues when using Python installed using these mechanisms, it is -recommended to request for support from the relevant provider (eg: linux distro -community, cloud provider's support channels, etc). +If you face issues when using Python and pip installed using these mechanisms, +it is recommended to request for support from the relevant provider (eg: Linux +distro community, cloud provider support channels, etc). ## Compatibility @@ -90,6 +73,6 @@ supported on a best effort approach. pip's maintainers do not provide support for users on older versions of Python, and these users should request for support from the relevant provider -(eg: linux distro community, cloud provider's support channels, etc). +(eg: Linux distro community, cloud provider support channels, etc). [^python]: The `ensurepip` module was added to the Python standard library in Python 3.4. From 0139009eb0454fb448ab25dafcffcdcdfcb8b71b Mon Sep 17 00:00:00 2001 From: Pradyun Gedam Date: Fri, 21 May 2021 18:45:27 +0100 Subject: [PATCH 05/10] Flesh out the Getting Started page --- docs/html/getting-started.md | 99 ++++++++++++++++++++++++++++++++---- 1 file changed, 89 insertions(+), 10 deletions(-) diff --git a/docs/html/getting-started.md b/docs/html/getting-started.md index a2bd810508b..3434a30ad5a 100644 --- a/docs/html/getting-started.md +++ b/docs/html/getting-started.md @@ -1,25 +1,104 @@ # Getting Started -To get started with using pip, you should install Python on your system. +To get started with using pip, you should [install Python] on your system. + +[install Python]: https://realpython.com/installing-python/ ## Checking if you have a working pip -The best way to check if you have a working pip installation is to run: +As a first step, you should check that you have a working Python with pip +installed. This can be done by running the following commands and making +sure that the output looks similar. ```{pip-cli} +$ python --version +Python 3.N.N $ pip --version -pip X.Y.Z from ... (python X.Y) +pip X.Y.Z from ... (python 3.N.N) ``` If that worked, congratulations! You have a working pip in your environment. -If you got output that does not look like the sample above, read on -- the rest -of this page has information about how to install pip within a Python -environment that doesn't have it. +If you got output that does not look like the sample above, please read +the {doc}`installation` page. It provides guidance on how to install pip +within a Python environment that doesn't have it. + +## Common tasks + +### Install a package + +```{pip-cli} +$ pip install sampleproject +[...] +Successfully installed sampleproject +``` + +By default, pip will fetch packages from [Python Package Index][PyPI], a +repository of software for the Python programming language where anyone can +upload packages. + +[PyPI]: https://pypi.org/ + +### Install a package from GitHub + +```{pip-cli} +$ pip install git+https://github.com/pypa/sampleproject.git@main +[...] +Successfully installed sampleproject +``` + +See {ref}`VCS Support` for more information about this syntax. + +### Install a package from a distribution file + +pip can install directly from distribution files as well. They come in 2 forms: + +- {term}`source distribution ` (usually shortened to "sdist") +- {term}`wheel distribution ` (usually shortened to "wheel") + +```{pip-cli} +$ pip install sampleproject-1.0.tar.gz +[...] +Successfully installed sampleproject +$ pip install sampleproject-1.0-py3-none-any.whl +[...] +Successfully installed sampleproject +``` + +### Install multiple packages using a requirements file + +Many Python projects use {file}`requirements.txt` files, to specify the +list of packages that need to be installed for the project to run. To install +the packages listed in that file, you can run: + +```{pip-cli} +$ pip install -r requirements.txt +[...] +Successfully installed sampleproject +``` + +### Upgrade a package + +```{pip-cli} +$ pip install --upgrade sampleproject +Uninstalling sampleproject: + [...] +Proceed (y/n)? y +Successfully uninstalled sampleproject +``` + +### Uninstall a package + +```{pip-cli} +$ pip uninstall sampleproject +Uninstalling sampleproject: + [...] +Proceed (y/n)? y +Successfully uninstalled sampleproject +``` ## Next Steps -As a next step, you'll want to read the -["Installing Packages"](pypug:tutorials/installing-packages) tutorial on -packaging.python.org. That tutorial will guide you through the basics of using -pip for installing packages. +It is recommended to learn about what virtual environments are and how to use +them. This is covered in the ["Installing Packages"](pypug:tutorials/installing-packages) +tutorial on packaging.python.org. From f99ccb15c36b476034ef27749920ea7e2ce76dc4 Mon Sep 17 00:00:00 2001 From: Pradyun Gedam Date: Fri, 21 May 2021 18:45:47 +0100 Subject: [PATCH 06/10] Update copyright in conf.py, to match copyright.rst --- docs/html/conf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/html/conf.py b/docs/html/conf.py index 2a4387a352a..9e210539e89 100644 --- a/docs/html/conf.py +++ b/docs/html/conf.py @@ -30,7 +30,7 @@ # General information about the project. project = "pip" -copyright = "2008-2020, PyPA" +copyright = "The pip developers" # Find the version and release information. # We have a single source of truth for our version number: pip's __init__.py file. From 5734d32546a9b8faa07d11ba0ddc9307e9824897 Mon Sep 17 00:00:00 2001 From: Pradyun Gedam Date: Fri, 21 May 2021 18:48:36 +0100 Subject: [PATCH 07/10] Change first title in getting-started --- docs/html/getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/html/getting-started.md b/docs/html/getting-started.md index 3434a30ad5a..42ac2c93400 100644 --- a/docs/html/getting-started.md +++ b/docs/html/getting-started.md @@ -4,7 +4,7 @@ To get started with using pip, you should [install Python] on your system. [install Python]: https://realpython.com/installing-python/ -## Checking if you have a working pip +## Ensure you have a working pip As a first step, you should check that you have a working Python with pip installed. This can be done by running the following commands and making From 34d181a5d6213d70f36a385a567b65daf288a21e Mon Sep 17 00:00:00 2001 From: Pradyun Gedam Date: Fri, 21 May 2021 18:49:08 +0100 Subject: [PATCH 08/10] quickstart.rst -> getting-started.md --- docs/html/index.md | 4 +- docs/html/quickstart.rst | 139 ++------------------------------------- 2 files changed, 9 insertions(+), 134 deletions(-) diff --git a/docs/html/index.md b/docs/html/index.md index a84c2665d0e..26b8db4a4bd 100644 --- a/docs/html/index.md +++ b/docs/html/index.md @@ -10,7 +10,7 @@ install packages from the [Python Package Index][pypi] and other indexes. ```{toctree} :hidden: -quickstart +getting-started installing user_guide cli/index @@ -29,7 +29,7 @@ GitHub If you want to learn about how to use pip, check out the following resources: -- [Quickstart](quickstart) +- [Getting Started](getting-started) - [Python Packaging User Guide](https://packaging.python.org) If you find bugs, need help, or want to talk to the developers, use our mailing diff --git a/docs/html/quickstart.rst b/docs/html/quickstart.rst index 96602a7b316..4385f4a7394 100644 --- a/docs/html/quickstart.rst +++ b/docs/html/quickstart.rst @@ -1,136 +1,11 @@ -========== -Quickstart -========== +:orphan: -First, :doc:`install pip `. +.. meta:: -Install a package from `PyPI`_: + :http-equiv=refresh: 3; url=../getting-started/ -.. tab:: Unix/macOS +This page has moved +=================== - .. code-block:: console - - $ python -m pip install SomePackage - [...] - Successfully installed SomePackage - -.. tab:: Windows - - .. code-block:: console - - C:\> py -m pip install SomePackage - [...] - Successfully installed SomePackage - - -Install a package that's already been downloaded from `PyPI`_ or -obtained from elsewhere. This is useful if the target machine does not have a -network connection: - -.. tab:: Unix/macOS - - .. code-block:: console - - $ python -m pip install SomePackage-1.0-py2.py3-none-any.whl - [...] - Successfully installed SomePackage - -.. tab:: Windows - - .. code-block:: console - - C:\> py -m pip install SomePackage-1.0-py2.py3-none-any.whl - [...] - Successfully installed SomePackage - -Show what files were installed: - -.. tab:: Unix/macOS - - .. code-block:: console - - $ python -m pip show --files SomePackage - Name: SomePackage - Version: 1.0 - Location: /my/env/lib/pythonx.x/site-packages - Files: - ../somepackage/__init__.py - [...] - -.. tab:: Windows - - .. code-block:: console - - C:\> py -m pip show --files SomePackage - Name: SomePackage - Version: 1.0 - Location: /my/env/lib/pythonx.x/site-packages - Files: - ../somepackage/__init__.py - [...] - -List what packages are outdated: - -.. tab:: Unix/macOS - - .. code-block:: console - - $ python -m pip list --outdated - SomePackage (Current: 1.0 Latest: 2.0) - -.. tab:: Windows - - .. code-block:: console - - C:\> py -m pip list --outdated - SomePackage (Current: 1.0 Latest: 2.0) - -Upgrade a package: - -.. tab:: Unix/macOS - - .. code-block:: console - - $ python -m pip install --upgrade SomePackage - [...] - Found existing installation: SomePackage 1.0 - Uninstalling SomePackage: - Successfully uninstalled SomePackage - Running setup.py install for SomePackage - Successfully installed SomePackage - -.. tab:: Windows - - .. code-block:: console - - C:\> py -m pip install --upgrade SomePackage - [...] - Found existing installation: SomePackage 1.0 - Uninstalling SomePackage: - Successfully uninstalled SomePackage - Running setup.py install for SomePackage - Successfully installed SomePackage - -Uninstall a package: - -.. tab:: Unix/macOS - - .. code-block:: console - - $ python -m pip uninstall SomePackage - Uninstalling SomePackage: - /my/env/lib/pythonx.x/site-packages/somepackage - Proceed (y/n)? y - Successfully uninstalled SomePackage - -.. tab:: Windows - - .. code-block:: console - - C:\> py -m pip uninstall SomePackage - Uninstalling SomePackage: - /my/env/lib/pythonx.x/site-packages/somepackage - Proceed (y/n)? y - Successfully uninstalled SomePackage - -.. _PyPI: https://pypi.org/ +You should be redirected automatically in 3 seconds. If that didn't +work, here's a link: :doc:`getting-started` From 1b386366a37bf7cbc83fa5b9dc638385c39c3cde Mon Sep 17 00:00:00 2001 From: Pradyun Gedam Date: Fri, 21 May 2021 18:51:38 +0100 Subject: [PATCH 09/10] installing.rst -> installation.md --- docs/html/index.md | 2 +- docs/html/installing.rst | 233 ++------------------------------------- 2 files changed, 8 insertions(+), 227 deletions(-) diff --git a/docs/html/index.md b/docs/html/index.md index 26b8db4a4bd..7cf130c4bb6 100644 --- a/docs/html/index.md +++ b/docs/html/index.md @@ -11,7 +11,7 @@ install packages from the [Python Package Index][pypi] and other indexes. :hidden: getting-started -installing +installation user_guide cli/index ``` diff --git a/docs/html/installing.rst b/docs/html/installing.rst index 95b21899dc6..e8d86f3441c 100644 --- a/docs/html/installing.rst +++ b/docs/html/installing.rst @@ -1,230 +1,11 @@ -.. _`Installation`: +:orphan: -============ -Installation -============ +.. meta:: -Do I need to install pip? -========================= + :http-equiv=refresh: 3; url=../installation/ -pip is already installed if you are using Python 2 >=2.7.9 or Python 3 >=3.4 -downloaded from `python.org `_ or if you are working -in a :ref:`Virtual Environment ` -created by :ref:`pypug:virtualenv` or :ref:`venv `. Just make sure -to :ref:`upgrade pip `. +This page has moved +=================== -Use the following command to check whether pip is installed: - -.. tab:: Unix/macOS - - .. code-block:: console - - $ python -m pip --version - pip X.Y.Z from .../site-packages/pip (python X.Y) - -.. tab:: Windows - - .. code-block:: console - - C:\> py -m pip --version - pip X.Y.Z from ...\site-packages\pip (python X.Y) - -Using Linux Package Managers -============================ - -.. warning:: - - If you installed Python from a package manager on Linux, you should always - install pip for that Python installation using the same source. - -See `pypug:Installing pip/setuptools/wheel with Linux Package Managers `_ -in the Python Packaging User Guide. - -Here are ways to contact a few Linux package maintainers if you run into -problems: - -* `Deadsnakes PPA `_ -* `Debian Python Team `_ (for general - issues related to ``apt``) -* `Red Hat Bugzilla `_ - -pip developers do not have control over how Linux distributions handle pip -installations, and are unable to provide solutions to related issues in -general. - -Using ensurepip -=============== - -Python >=3.4 can self-bootstrap pip with the built-in -:ref:`ensurepip ` module. Refer to the standard library -documentation for more details. Make sure to :ref:`upgrade pip ` -after ``ensurepip`` installs pip. - -See the `Using Linux Package Managers`_ section if your Python reports -``No module named ensurepip`` on Debian and derived systems (e.g. Ubuntu). - - -.. _`get-pip`: - -Installing with get-pip.py -========================== - -.. warning:: - - Be cautious if you are using a Python install that is managed by your operating - system or another package manager. ``get-pip.py`` does not coordinate with - those tools, and may leave your system in an inconsistent state. - -To manually install pip, securely [1]_ download ``get-pip.py`` by following -this link: `get-pip.py -`_. Alternatively, use ``curl``:: - - curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py - -Then run the following command in the folder where you -have downloaded ``get-pip.py``: - -.. tab:: Unix/macOS - - .. code-block:: shell - - python get-pip.py - -.. tab:: Windows - - .. code-block:: shell - - py get-pip.py - -``get-pip.py`` also installs :ref:`pypug:setuptools` [2]_ and :ref:`pypug:wheel` -if they are not already. :ref:`pypug:setuptools` is required to install -:term:`source distributions `. Both are -required in order to build a :ref:`Wheel cache` (which improves installation -speed), although neither are required to install pre-built :term:`wheels -`. - -.. note:: - - The get-pip.py script is supported on the same python version as pip. - For the now unsupported Python 2.6, alternate script is available - `here `__. - - -get-pip.py options ------------------- - -.. option:: --no-setuptools - - If set, do not attempt to install :ref:`pypug:setuptools` - -.. option:: --no-wheel - - If set, do not attempt to install :ref:`pypug:wheel` - - -``get-pip.py`` allows :ref:`pip install options ` and the :ref:`general options `. Below are -some examples: - -Install from local copies of pip and setuptools: - -.. tab:: Unix/macOS - - .. code-block:: shell - - python get-pip.py --no-index --find-links=/local/copies - -.. tab:: Windows - - .. code-block:: shell - - py get-pip.py --no-index --find-links=/local/copies - -Install to the user site [3]_: - -.. tab:: Unix/macOS - - .. code-block:: shell - - python get-pip.py --user - -.. tab:: Windows - - .. code-block:: shell - - py get-pip.py --user - -Install behind a proxy: - -.. tab:: Unix/macOS - - .. code-block:: shell - - python get-pip.py --proxy="http://[user:passwd@]proxy.server:port" - -.. tab:: Windows - - .. code-block:: shell - - py get-pip.py --proxy="http://[user:passwd@]proxy.server:port" - -``get-pip.py`` can also be used to install a specified combination of ``pip``, -``setuptools``, and ``wheel`` using the same requirements syntax as pip: - -.. tab:: Unix/macOS - - .. code-block:: shell - - python get-pip.py pip==9.0.2 wheel==0.30.0 setuptools==28.8.0 - -.. tab:: Windows - - .. code-block:: shell - - py get-pip.py pip==9.0.2 wheel==0.30.0 setuptools==28.8.0 - -.. _`Upgrading pip`: - -Upgrading pip -============= - -.. tab:: Unix/macOS - - .. code-block:: shell - - python -m pip install -U pip - -.. tab:: Windows - - .. code-block:: shell - - py -m pip install -U pip - - -.. _compatibility-requirements: - -Python and OS Compatibility -=========================== - -pip works with CPython versions 3.6, 3.7, 3.8, 3.9 and also PyPy. - -This means pip works on the latest patch version of each of these minor -versions. Previous patch versions are supported on a best effort approach. - -pip works on Unix/Linux, macOS, and Windows. - - ----- - -.. [1] "Secure" in this context means using a modern browser or a - tool like ``curl`` that verifies SSL certificates when downloading from - https URLs. - -.. [2] Beginning with pip v1.5.1, ``get-pip.py`` stopped requiring setuptools to - be installed first. - -.. [3] The pip developers are considering making ``--user`` the default for all - installs, including ``get-pip.py`` installs of pip, but at this time, - ``--user`` installs for pip itself, should not be considered to be fully - tested or endorsed. For discussion, see `Issue 1668 - `_. +You should be redirected automatically in 3 seconds. If that didn't +work, here's a link: :doc:`installation` From f9dc946e68e7ed099c410cd7ae317ff45da9e280 Mon Sep 17 00:00:00 2001 From: Pradyun Gedam Date: Sat, 22 May 2021 12:13:41 +0100 Subject: [PATCH 10/10] Use the footnote in the installation page --- docs/html/installation.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/html/installation.md b/docs/html/installation.md index 5f78572d037..da975727185 100644 --- a/docs/html/installation.md +++ b/docs/html/installation.md @@ -18,8 +18,8 @@ to install pip supported directly by pip's maintainers: ### `ensurepip` -Python comes with an {mod}`ensurepip` module, which can install pip in a -Python environment. +Python comes with an {mod}`ensurepip` module[^python], which can install pip in +a Python environment. ```{pip-cli} $ python -m ensurepip --upgrade