Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
October 21, 2022 03:32 pm GMT

The astonishing logic behind pip update

Hey there everyone 1!

To all the Python out there, we've all used pip in out life, right?

History

pip is the de facto and recommended package-management system written in Python and is used to install and manage software packages. It connects to an online repository of public packages, called the Python Package Index.
It was released on 4 April 2011 with the MIT license.

Over the years pip was changed rapidly! A lot of ground-breaking changes were introduced in the recent few years.

Updating pip

We all know how to update pip a package in pip, right? We just do

pip install -U <package_name>

But, pip too itself is an package, but it cannot be updated with the same command -

pip install -U pip

NO! It's wrong!

Explanation

Consider you are running an app. Now if I delete the app and reinstall a new version of the same app while the app is running, is it possible? NO! If I delete the source while it is running it will no longer exists to work, so abnormally quit itself. Thus, pip added this safety check to run itself under python as a module. Quite amazing and next-level thinking right?

I too recently realised this while fix a bug in the docs of tenserflow.

GitHub logo Comment for #2141

It is a well know fact that pip cannot update itself while running itself

Is this for Windows? It's fine on other platforms. Apologies if this is obvious to everyone running Windows, but could you provide a link for context?

I use windows so I haven't tested it on other platforms, but yeah, on windows, the command returns an error.Just for the demonstration, I downgraded my pip version to 22.1 and then tried to update pip with the command pip install -U pip...imageNow, as you see, for upgrading pip it has to be run under python as a module. I strongly believe it has to be the same case under other OS's.

Explanation

Consider you are running an app. Now if I delete the app and reinstall a new version of the same app while the app is running, is it possible? NO! If I delete the source while it is running it will no longer exists to work, so abnormally quit itself. Thus, pip added this safety check to run itself under python as a module. Quite amazing and next-level thinking right?

My only suggestion is that python3 is used as the binary elsewhere in the instructions, so we should be consistent, otherwise users with multiple installations may end up being surprised.

By default, python3 is not an executable on windows. If someone installs python from the official website, the default command becomes python itself. Now, if someone on windows enters the command python3 in the pwsh, it open microsoft store and opens the python3 installation page.

image

Please lemme know if I should change everything to python or python3.

Connect with me


Original Link: https://dev.to/akashpattnaik/the-astonishing-logic-behind-pip-update-1da9

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To