Package: pym3
pPython Version Management, Simplified. WrappipxandpoetryToolspispowerfulandfeature-packed, yetsimple; both in setup and use. There are no tricky settings, options, or crazy dependencies.pis just a helpful ~600 line Bash script that gets the job done.plet's you quickly switch between Python versions whenever you need to, removing the barrier between Python 2.x.x and 3.x.x.pwas heavily inspired byn, a version manager for Node.js.pis also great for getting started using Python development versions. Usep latestto get up and running with the latest development version of Python!Getting StartedAfter thesuper painless drag-and-drop installation, you canstart usingpright away.UsageUsage: p [COMMAND] [args]

Commands:

p                              Output versions installed
p status                       Output current status
p <version>                    Activate to Python <version>
	p latest                     Activate to the latest Python release
	p stable                     Activate to the latest stable Python release
p use <version> [args ...]     Execute Python <version> with [args ...]
p bin <version>                Output bin path for <version>
p rm <version ...>             Remove the given version(s)
p prev                         Revert to the previously activated version
p default                      Revert to the system default python version
p ensurepath                   Add python path to your search path
p unpkg <pkg ...>              Remove the given name(s) pip packages and unused dependencies
p shell                        Add python bin path to a new bash shell
p p                            Wrap pip command
p px                           Wrap pipx command
p py                           Wrap poetry command
p up                           Update all pipx libs,Wrap pipdate command,update all pip packages
p migrate <ver1> <ver2>        Migrate pip package from a Python version to another
p ls                           Output the versions of Python available
	p ls latest                  Output the latest Python version available
	p ls stable                  Output the latest stable Python version available
p i <version>                  Install Python <version> from prebuilt binaries

Options:

-V, --version   Output current version of p
-h, --help      Display help information

Environment variables:

P_PREFIX        Python versions installation dir ,default: ~/.local
PY_INSTALL_FLAG Python installation configure flags, eg: --enable-optimizationsInstallation Python dependencies(Option)Ubuntu/Debian:sudoapt-getinstall-yzstdcurlbuild-essentialzlib1g-devlibffi-devlibsqlite3-devCentos/Rocky/Alma/Fedora:sudoyuminstall-yzstdcurlwhichdiffutilsperlgccgcc-c++zlib-develxz-develsqlite-devellibffi-develInstallationAfter downloading the Bash script, simply copy it over to your$PATHandpwill take care of the rest.$curl-ophttps://raw.githubusercontent.com/tomasky/pym3/master/bin/p
$chmod+xp
$mvp/usr/local/binAlternatively, you can installpvianpm:npminstall-gpym3So far,phas only been tested in Bash. If you can makepwork on another shell, please send in a pull request!Setpythonversions installation dir:# default is `~/.local`# add this to .bashrcexportP_PREFIX=/usr/localSetpythondownload mirror:# add this to .bashrcexportPYTHON_MIRROR=https://mirrors.huaweicloud.com/python/UpdatingSimply follow the above steps and swap out the old Bash script with the new one!ContributingContributions are always welcome.Find something interesting in the TODO below, fork our code, create a new branch, and send us a pull request.There are only two rules: avoidcode smellsand abide by the syntax-formatting of the existing code.TODOgreater abstraction between Python 2.x.x and 3.x.xper-directory/project Python versionalso manage PyPyFAQsHow doespdiffer frompyenv?pis designed for the average Python user. You can get up and running with the latest development build of Python with one simple command:p latest. No configuration is necessary;pmanages everything for you.On the other hand,pyenvis for the more advanced user who is comfortable configuring their Python environment to all their needs.pprovides the basics in one easy to use aesthetically-pleasing command.Additionally,pis easier to use. To switch your Python version, simply runpand you'll be presented with a list of installed Python versions to select from that you can scroll through with your arrow keys and select with the return key.pis great at dealing with any version of Python. If it's not installed, runningp <version>will download the source, configure it for your system, and compile it, all in one simple command.How doespwork?pstores each Python version installed in/usr/local/p/versions/python. When a Python version is activated,pcreates a symbolic link to the Python binary located at/usr/local/p/versions/python/python. Sincepprefixes the $PATH with/usr/local/p/versions/python, this version ofpythonis found first; hence, it is used over the default version of Python installed on your system.How do I revert back to my default Python version?Simply runp defaultandpwill remove the symbolic link described above; therefore reverting back to your default Python version.Doespdownload the source each time I activate or install a version?Nope.pstores the source for each of the versions installed, allowing for quick activations between already-installed versions.How do I get this working on Windows?Unfortunately,pis not supported on Windows at the time. If you know of a workaround, send in a pull request!LicenseThe below license was included innand is included below.p's license (also MIT) can be found inthe LICENSE file.(The MIT License)Copyright (c) 2014 TJ Holowaychuk <tj@vision-media.ca>Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
'Software'), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.