GitHubじゃ!Pythonじゃ!

GitHubからPython関係の優良リポジトリを探したかったのじゃー、でも英語は出来ないから日本語で読むのじゃー、英語社会世知辛いのじゃー

pypa

pipenv – 人間のためのPython開発ワークフロー

投稿日:

人間のためのPython開発ワークフロー。 https://docs.pipenv.org/

Pipenv:人間のためのPython開発ワークフロー


Pipenv – 公式に推奨されているPython.orgの Pythonパッケージングツールです。自由です(自由のように)。

Pipenvは、すべてのパッケージングの世界(バンドル、作曲家、npm、貨物、糸など)の最高のものをPython世界にもたらすことを目指すツールです。 Windowsは、世界で一流の市民です。

パッケージのインストール/アンインストール時に、プロジェクトのvirtualenvを自動的に作成および管理したり、Pipfileからパッケージを追加/削除したりします。 これは、決定的なビルドを生成するために使用される重要なPipfile.lockも生成します。

Pipenvが解決しようとする問題は多面的です。

  • あなたはもはやpipvirtualenv別々に使う必要はありません。 彼らは一緒に働く。
  • requirements.txtファイルを管理することは問題がある可能性があるため、Pipenvは今後のPipfilePipfile.lock代わりに使用します。これは基本的な使用例よりも優れています。
  • ハッシュはいつでもどこでも使用されます。 セキュリティ。 セキュリティ上の脆弱性を自動的に公開します。
  • あなたの依存グラフ(例えば、 $ pipenv graph )を洞察してください。
  • .envファイルをロードして開発ワークフローを合理化します。

インストール

MacOSを使用しているなら、Homebrewで簡単にPipenvをインストールできます:

$ brew install pipenv

Ubuntu 17.10を使用している場合、

$ sudo apt install software-properties-common python-software-properties
$ sudo add-apt-repository ppa:pypa/ppa
$ sudo apt update
$ sudo apt install pipenv

それ以外の場合は、pipを使用してください:

$ pip install pipenv

🍰

☤ユーザーの声

Jannis Leidel 、元pipメンテナー –
Pipenvは私がいつもpipのために作りたかった磁器です。 それは私の脳に合っていて、ほとんど私の代わりにvirtualenvwrapperと手作りピップを呼び出します。 これを使って。
デビッド・ギャング
このパッケージマネージャーは本当に素晴らしいです。 初めて自分の依存関係がインストールされていることと推移的な依存関係が何であるかを正確に把握しています。 インストールが確定的であるという事実と相まって、このパッケージマネージャは貨物のようにファーストクラスになります。
ジャスティン・マイズ・ホームズ
Pipenvはついにファイルシステムではなく心に関わる抽象である。

☤特長

  • 真に確定的なビルド可能にし必要なものだけを簡単に指定できます
  • ロックされた依存関係のファイルハッシュを生成してチェックします。
  • pyenvが利用可能であれば、必要なPythonを自動的にインストールします。
  • Pipfile検索することで、プロジェクトを自動的に再帰的に検索します。
  • 存在しない場合、 Pipfile自動的に生成します。
  • 標準的な場所にvirtualenvを自動的に作成します。
  • Pipfileがun / Pipfileれているときにパッケージを自動的に追加/削除します。
  • 存在する場合、 .envファイルを自動的にロードします。

主なコマンドはinstalluninstalllockで、 Pipfile.lockを生成しPipfile.lock これらは、 $ pip install使い方や、手動による仮想管理(virtualenvを有効にするため、 $ pipenv shell実行する)の$ pipenv shell

基本概念

  • virtualenvは、存在しないときに自動的に作成されます。
  • installパラメータが渡されない場合、指定されたすべてのパッケージ[packages]がインストールされます。
  • Python 3仮想環境を初期化するには、 $ pipenv --three実行します。
  • Python 2仮想環境を初期化するには、 $ pipenv --two実行します。
  • それ以外の場合、virtualenvのデフォルト値はデフォルトです。

その他のコマンド

  • shellはvirtualenvが有効になっているshellを生成します。
  • runは引数が転送された状態でvirtualenvから与えられたコマンドを実行します(例えば$ pipenv run python )。
  • PEP 508の要件が現在の環境で満たされていることをcheckます。
  • graphは、インストールされているすべての依存関係のグラフが表示されます。

シェル完了

例えば、魚の場合は~/.config/fish/completions/pipenv.fishます:

eval (pipenv --completion)

代わりに、bashを使用して、これを.bashrcまたは.bash_profile入れます:

eval "$(pipenv --completion)"

マジックシェルの補完機能が有効になりました! また、自動的にあなたのサブシェルを有効にする魚のプラグインがあります!

魚は最高の貝です。 あなたはそれを使うべきです。

☤使用法

$ pipenv
Usage: pipenv [OPTIONS] COMMAND [ARGS]...

Options:
  --where          Output project home information.
  --venv           Output virtualenv information.
  --py             Output Python interpreter information.
  --envs           Output Environment Variable options.
  --rm             Remove the virtualenv.
  --bare           Minimal output.
  --completion     Output completion (to be eval'd).
  --man            Display manpage.
  --three / --two  Use Python 3/2 when creating virtualenv.
  --python TEXT    Specify which version of Python virtualenv should use.
  --site-packages  Enable site-packages for the virtualenv.
  --version        Show the version and exit.
  -h, --help       Show this message and exit.


Usage Examples:
   Create a new project using Python 3.6, specifically:
   $ pipenv --python 3.6

   Install all dependencies for a project (including dev):
   $ pipenv install --dev

   Create a lockfile containing pre-releases:
   $ pipenv lock --pre

   Show a graph of your installed dependencies:
   $ pipenv graph

   Check your installed dependencies for security vulnerabilities:
   $ pipenv check

   Install a local setup.py into your virtual environment/Pipfile:
   $ pipenv install -e .

   Use a lower-level pip command:
   $ pipenv run pip freeze

Commands:
  check      Checks for security vulnerabilities and against PEP 508 markers
             provided in Pipfile.
  clean      Uninstalls all packages not specified in Pipfile.lock.
  graph      Displays currently–installed dependency graph information.
  install    Installs provided packages and adds them to Pipfile, or (if none
             is given), installs all packages.
  lock       Generates Pipfile.lock.
  open       View a given module in your editor.
  run        Spawns a command installed into the virtualenv.
  shell      Spawns a shell within the virtualenv.
  sync       Installs all packages specified in Pipfile.lock.
  uninstall  Un-installs a provided package and removes it from Pipfile.

プロジェクトを見つける:

$ pipenv --where
/Users/kennethreitz/Library/Mobile Documents/com~apple~CloudDocs/repos/kr/pipenv/test

virtualenvを探します:

$ pipenv --venv
/Users/kennethreitz/.local/share/virtualenvs/test-Skyy4vre

Pythonインタプリタを探します:

$ pipenv --py
/Users/kennethreitz/.local/share/virtualenvs/test-Skyy4vre/bin/python

パッケージをインストールする:

$ pipenv install
Creating a virtualenv for this project...
...
No package provided, installing all dependencies.
Virtualenv location: /Users/kennethreitz/.local/share/virtualenvs/test-EJkjoYts
Installing dependencies from Pipfile.lock...
...

To activate this project's virtualenv, run the following:
$ pipenv shell

dev依存関係をインストールする:

$ pipenv install pytest --dev
Installing pytest...
...
Adding pytest to Pipfile's [dev-packages]...

依存グラフを表示する:

$ pipenv graph
requests==2.18.4
  - certifi [required: >=2017.4.17, installed: 2017.7.27.1]
  - chardet [required: >=3.0.2,<3.1.0, installed: 3.0.4]
  - idna [required: >=2.5,<2.7, installed: 2.6]
  - urllib3 [required: <1.23,>=1.21.1, installed: 1.22]

ロックファイルを生成する:

$ pipenv lock
Assuring all dependencies from Pipfile are installed...
Locking [dev-packages] dependencies...
Locking [packages] dependencies...
Note: your project now has only default [packages] installed.
To install [dev-packages], run: $ pipenv install --dev

すべてのdev依存関係をインストールする:

$ pipenv install --dev
Pipfile found at /Users/kennethreitz/repos/kr/pip2/test/Pipfile. Considering this to be the project home.
Pipfile.lock out of date, updating...
Assuring all dependencies from Pipfile are installed...
Locking [dev-packages] dependencies...
Locking [packages] dependencies...

すべてをアンインストールする:

$ pipenv uninstall --all
No package provided, un-installing all dependencies.
Found 25 installed package(s), purging...
...
Environment now purged and fresh!

シェルを使用する:

$ pipenv shell
Loading .env environment variables…
Launching subshell in virtual environment. Type 'exit' or 'Ctrl+D' to return.
$ ▯

☤ドキュメンテーション

ドキュメントはpipenv.orgにあります。







-pypa
-, , , , ,

執筆者: