1Metadata-Version: 2.1 2Name: pipenv 3Version: 2021.5.29 4Summary: Python Development Workflow for Humans. 5Home-page: https://github.com/pypa/pipenv 6Author: Pipenv maintainer team 7Author-email: distutils-sig@python.org 8License: MIT 9Platform: UNKNOWN 10Classifier: License :: OSI Approved :: MIT License 11Classifier: Programming Language :: Python 12Classifier: Programming Language :: Python :: 2.7 13Classifier: Programming Language :: Python :: 3 14Classifier: Programming Language :: Python :: 3.4 15Classifier: Programming Language :: Python :: 3.5 16Classifier: Programming Language :: Python :: 3.6 17Classifier: Programming Language :: Python :: 3.7 18Classifier: Programming Language :: Python :: Implementation :: CPython 19Classifier: Programming Language :: Python :: Implementation :: PyPy 20Requires-Python: >=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.* 21Description-Content-Type: text/markdown 22Provides-Extra: dev 23Provides-Extra: tests 24License-File: LICENSE 25 26 27Pipenv: Python Development Workflow for Humans 28============================================== 29 30[![image](https://img.shields.io/pypi/v/pipenv.svg)](https://python.org/pypi/pipenv) 31[![image](https://img.shields.io/pypi/l/pipenv.svg)](https://python.org/pypi/pipenv) 32[![Azure Pipelines Build Status](https://dev.azure.com/pypa/pipenv/_apis/build/status/Pipenv%20CI?branchName=master)](https://dev.azure.com/pypa/pipenv/_build/latest?definitionId=16&branchName=master) 33[![image](https://img.shields.io/pypi/pyversions/pipenv.svg)](https://python.org/pypi/pipenv) 34 35 36------------------------------------------------------------------------ 37[[ ~ Dependency Scanning by PyUp.io ~ ]](https://pyup.io) 38 39**Pipenv** is a tool that aims to bring the best of all packaging worlds 40(bundler, composer, npm, cargo, yarn, etc.) to the Python world. 41*Windows is a first-class citizen, in our world.* 42 43It automatically creates and manages a virtualenv for your projects, as 44well as adds/removes packages from your `Pipfile` as you 45install/uninstall packages. It also generates the ever-important 46`Pipfile.lock`, which is used to produce deterministic builds. 47 48![GIF demonstrating Pipenv's usage](https://gist.githubusercontent.com/jlusk/855d611bbcfa2b159839db73d07f6ce9/raw/7f5743401809f7e630ee8ff458faa980e19924a0/pipenv.gif) 49 50The problems that Pipenv seeks to solve are multi-faceted: 51 52- You no longer need to use `pip` and `virtualenv` separately. They 53 work together. 54- Managing a `requirements.txt` file [can be 55 problematic](https://kennethreitz.org/essays/2016/02/25/a-better-pip-workflow), 56 so Pipenv uses the upcoming `Pipfile` and `Pipfile.lock` instead, 57 which is superior for basic use cases. 58- Hashes are used everywhere, always. Security. Automatically expose 59 security vulnerabilities. 60- Give you insight into your dependency graph (e.g. `$ pipenv graph`). 61- Streamline development workflow by loading `.env` files. 62 63You can quickly play with Pipenv right in your browser: 64 65[![Try in browser](https://cdn.rawgit.com/rootnroll/library/assets/try.svg)](https://rootnroll.com/d/pipenv/) 66 67Installation 68------------ 69 70If you\'re using Debian Buster+: 71 72 $ sudo apt install pipenv 73 74Or, if you\'re using Fedora: 75 76 $ sudo dnf install pipenv 77 78Or, if you\'re using FreeBSD: 79 80 # pkg install py36-pipenv 81 82Or, if you\'re using Windows: 83 84 # pip install --user pipenv 85 86When none of the above is an option, it is recommended to use [Pipx](https://pypi.org/p/pipx): 87 88 $ pipx install pipenv 89 90Otherwise, refer to the [documentation](https://pipenv.pypa.io/en/latest/#install-pipenv-today) for instructions. 91 92✨✨ 93 94☤ User Testimonials 95------------------- 96 97**David Gang**--- 98 99: *This package manager is really awesome. For the first time I know 100 exactly what my dependencies are which I installed and what the 101 transitive dependencies are. Combined with the fact that installs 102 are deterministic, makes this package manager first class, like 103 cargo*. 104 105**Justin Myles Holmes**--- 106 107: *Pipenv is finally an abstraction meant to engage the mind instead 108 of merely the filesystem.* 109 110☤ Features 111---------- 112 113- Enables truly *deterministic builds*, while easily specifying *only 114 what you want*. 115- Generates and checks file hashes for locked dependencies. 116- Automatically install required Pythons, if `pyenv` is available. 117- Automatically finds your project home, recursively, by looking for a 118 `Pipfile`. 119- Automatically generates a `Pipfile`, if one doesn\'t exist. 120- Automatically creates a virtualenv in a standard location. 121- Automatically adds/removes packages to a `Pipfile` when they are 122 un/installed. 123- Automatically loads `.env` files, if they exist. 124 125The main commands are `install`, `uninstall`, and `lock`, which 126generates a `Pipfile.lock`. These are intended to replace 127`$ pip install` usage, as well as manual virtualenv management (to 128activate a virtualenv, run `$ pipenv shell`). 129 130### Basic Concepts 131 132- A virtualenv will automatically be created, when one doesn\'t exist. 133- When no parameters are passed to `install`, all packages 134 `[packages]` specified will be installed. 135- To initialize a Python 3 virtual environment, run 136 `$ pipenv --three`. 137- To initialize a Python 2 virtual environment, run `$ pipenv --two`. 138- Otherwise, whatever virtualenv defaults to will be the default. 139 140### Other Commands 141 142- `shell` will spawn a shell with the virtualenv activated. 143- `run` will run a given command from the virtualenv, with any 144 arguments forwarded (e.g. `$ pipenv run python`). 145- `check` asserts that PEP 508 requirements are being met by the 146 current environment. 147- `graph` will print a pretty graph of all your installed 148 dependencies. 149 150### Shell Completion 151 152For example, with fish, put this in your 153`~/.config/fish/completions/pipenv.fish`: 154 155 eval (pipenv --completion) 156 157Alternatively, with bash, put this in your `.bashrc` or `.bash_profile`: 158 159 eval "$(pipenv --completion)" 160 161Magic shell completions are now enabled! There is also a [fish 162plugin](https://github.com/fisherman/pipenv), which will automatically 163activate your subshells for you! 164 165Fish is the best shell. You should use it. 166 167☤ Usage 168------- 169 170 $ pipenv 171 Usage: pipenv [OPTIONS] COMMAND [ARGS]... 172 173 Options: 174 --where Output project home information. 175 --venv Output virtualenv information. 176 --py Output Python interpreter information. 177 --envs Output Environment Variable options. 178 --rm Remove the virtualenv. 179 --bare Minimal output. 180 --completion Output completion (to be eval'd). 181 --man Display manpage. 182 --three / --two Use Python 3/2 when creating virtualenv. 183 --python TEXT Specify which version of Python virtualenv should use. 184 --site-packages Enable site-packages for the virtualenv. 185 --version Show the version and exit. 186 -h, --help Show this message and exit. 187 188 189 Usage Examples: 190 Create a new project using Python 3.7, specifically: 191 $ pipenv --python 3.7 192 193 Remove project virtualenv (inferred from current directory): 194 $ pipenv --rm 195 196 Install all dependencies for a project (including dev): 197 $ pipenv install --dev 198 199 Create a lockfile containing pre-releases: 200 $ pipenv lock --pre 201 202 Show a graph of your installed dependencies: 203 $ pipenv graph 204 205 Check your installed dependencies for security vulnerabilities: 206 $ pipenv check 207 208 Install a local setup.py into your virtual environment/Pipfile: 209 $ pipenv install -e . 210 211 Use a lower-level pip command: 212 $ pipenv run pip freeze 213 214 Commands: 215 check Checks for security vulnerabilities and against PEP 508 markers 216 provided in Pipfile. 217 clean Uninstalls all packages not specified in Pipfile.lock. 218 graph Displays currently–installed dependency graph information. 219 install Installs provided packages and adds them to Pipfile, or (if no 220 packages are given), installs all packages from Pipfile. 221 lock Generates Pipfile.lock. 222 open View a given module in your editor. 223 run Spawns a command installed into the virtualenv. 224 scripts Displays the shortcuts in the (optional) [scripts] section of 225 Pipfile. 226 shell Spawns a shell within the virtualenv. 227 sync Installs all packages specified in Pipfile.lock. 228 uninstall Un-installs a provided package and removes it from Pipfile. 229 230Locate the project: 231 232 $ pipenv --where 233 /Users/kennethreitz/Library/Mobile Documents/com~apple~CloudDocs/repos/kr/pipenv/test 234 235Locate the virtualenv: 236 237 $ pipenv --venv 238 /Users/kennethreitz/.local/share/virtualenvs/test-Skyy4vre 239 240Locate the Python interpreter: 241 242 $ pipenv --py 243 /Users/kennethreitz/.local/share/virtualenvs/test-Skyy4vre/bin/python 244 245Install packages: 246 247 $ pipenv install 248 Creating a virtualenv for this project... 249 ... 250 No package provided, installing all dependencies. 251 Virtualenv location: /Users/kennethreitz/.local/share/virtualenvs/test-EJkjoYts 252 Installing dependencies from Pipfile.lock... 253 ... 254 255 To activate this project's virtualenv, run the following: 256 $ pipenv shell 257 258Installing from git: 259 260You can install packages with pipenv from git and other version control systems using URLs formatted according to the following rule: 261 262 <vcs_type>+<scheme>://<location>/<user_or_organization>/<repository>@<branch_or_tag>#<package_name> 263 264The only optional section is the `@<branch_or_tag>` section. When using git over SSH, you may use the shorthand vcs and scheme alias `git+git@<location>:<user_or_organization>/<repository>@<branch_or_tag>#<package_name>`. Note that this is translated to `git+ssh://git@<location>` when parsed. 265 266Valid values for `<vcs_type>` include `git`, `bzr`, `svn`, and `hg`. Valid values for `<scheme>` include `http,`, `https`, `ssh`, and `file`. In specific cases you also have access to other schemes: `svn` may be combined with `svn` as a scheme, and `bzr` can be combined with `sftp` and `lp`. 267 268Note that it is **strongly recommended** that you install any version-controlled dependencies in editable mode, using `pipenv install -e`, in order to ensure that dependency resolution can be performed with an up to date copy of the repository each time it is performed, and that it includes all known dependencies. 269 270Below is an example usage which installs the git repository located at `https://github.com/requests/requests.git` from tag `v2.19.1` as package name `requests`: 271 272 $ pipenv install -e git+https://github.com/requests/requests.git@v2.19#egg=requests 273 Creating a Pipfile for this project... 274 Installing -e git+https://github.com/requests/requests.git@v2.19.1#egg=requests... 275 [...snipped...] 276 Adding -e git+https://github.com/requests/requests.git@v2.19.1#egg=requests to Pipfile's [packages]... 277 [...] 278 279You can read more about [pip's implementation of vcs support here](https://pip.pypa.io/en/stable/reference/pip_install/#vcs-support). 280 281Install a dev dependency: 282 283 $ pipenv install pytest --dev 284 Installing pytest... 285 ... 286 Adding pytest to Pipfile's [dev-packages]... 287 288Show a dependency graph: 289 290 $ pipenv graph 291 requests==2.18.4 292 - certifi [required: >=2017.4.17, installed: 2017.7.27.1] 293 - chardet [required: >=3.0.2,<3.1.0, installed: 3.0.4] 294 - idna [required: >=2.5,<2.7, installed: 2.6] 295 - urllib3 [required: <1.23,>=1.21.1, installed: 1.22] 296 297Generate a lockfile: 298 299 $ pipenv lock 300 Assuring all dependencies from Pipfile are installed... 301 Locking [dev-packages] dependencies... 302 Locking [packages] dependencies... 303 Note: your project now has only default [packages] installed. 304 To install [dev-packages], run: $ pipenv install --dev 305 306Install all dev dependencies: 307 308 $ pipenv install --dev 309 Pipfile found at /Users/kennethreitz/repos/kr/pip2/test/Pipfile. Considering this to be the project home. 310 Pipfile.lock out of date, updating... 311 Assuring all dependencies from Pipfile are installed... 312 Locking [dev-packages] dependencies... 313 Locking [packages] dependencies... 314 315Uninstall everything: 316 317 $ pipenv uninstall --all 318 No package provided, un-installing all dependencies. 319 Found 25 installed package(s), purging... 320 ... 321 Environment now purged and fresh! 322 323Use the shell: 324 325 $ pipenv shell 326 Loading .env environment variables... 327 Launching subshell in virtual environment. Type 'exit' or 'Ctrl+D' to return. 328 $ ▯ 329 330☤ Documentation 331--------------- 332 333Documentation resides over at [pipenv.pypa.io](https://pipenv.pypa.io/en/latest/). 334 335 336