Home

Awesome

p

Python Version Management, Simplified.

introduction

p is powerful and feature-packed, yet simple; both in setup and use. There are no tricky settings, options, or crazy dependencies. p is just a helpful ~600 line Bash script that gets the job done.

p let's you quickly switch between Python versions whenever you need to, removing the barrier between Python 2.x.x and 3.x.x.

p was heavily inspired by n, a version manager for Node.js.

p is also great for getting started using Python development versions. Use p latest to get up and running with the latest development version of Python!

Getting Started

After the super painless drag-and-drop installation, you can start using p right away.

Usage

Usage: 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 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

Options:

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

Installation

After downloading the Bash script, simply copy it over to your $PATH and p will take care of the rest.

$ wget https://github.com/qw3rtman/p/releases/download/v0.1.0/p
$ chmod +x p
$ mv p /usr/local/bin

If you don't have wget on your system, you can download the p binary from the releases page and follow the above steps from the second one onward.

Alternatively, you can install p via npm:

npm install -g pyvm

So far, p has only been tested in Bash. If you can make p work on another shell, please send in a pull request!

Updating

Simply follow the above steps and swap out the old Bash script with the new one!

Contributing

Contributions 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: avoid code smells and abide by the syntax-formatting of the existing code.

TODO

FAQs

Core Team

Nimit Kalra

License

The below license was included in n and is included below. p's license (also MIT) can be found in the 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.