

Upgrading a Python or PIP component that is also used in the upgrading of a Python or PIP component can be a potential cause of a deadlock or package database corruption. # Perform the upgrade using just the valid package name # Indicate what package is being processed

# Separate the output of package upgrades with a blank line # (c) Immediately follow the package name with an equal sign # (b) Follow the rule of no white space in the package names # (a) Do not start with invalid characters # package name to the replacement string in group 1. # that meet the following three criteria and pass the To see the anatomy of the command more clearly, this is the exact equivalent of the above pip3 command with comments: # Match lines from pip's local package list output It also runs on Cygwin64 installed on Windows 10. Tested and regularly used in a Linux 4.8.86_64 cluster and tested on five other Linux/Unix flavors. Details of the sed operation can be scrutinized with the commented version 2. The above command uses the simplest and most portable pip syntax in combination with sed and sh to overcome these issues completely.

For pip3, use this: pip3 freeze -local |sed -rn 's/^(*)=.*/echo echo Processing \1.
