Jupyter support for Pants projects and PEX files.
Project description
Overview
This repo contains a set of Jupyter Notebook plugins that enable interop with pex and pants.
Installation
To install this plugin, simply invoke pip install
like so:
pip install pants-jupyter-plugin
Plugin Loading
To load the plugin in your Jupyter Notebook environment, use the %load_ext
command in a Notebook cell like so:
%load_ext pants_jupyter_plugin
Magics
This package provides 3 primary magics for python environment loading from pex and/or pants targets. All of these will scrub and replace the existing sys.path/environment so it's best to do this before you import any modules to avoid cached imports.
%pex_load
This magic allows you to load an existing pex file that exists on disk into the python environment.
Usage:
%pex_load <path to pex file>
%requirements_load
This magic allows you to load a transitive closure of arbitrary requirements into the environment using pex(1).
Usage:
%requirements_load <requirements>
%pants_load
This magic allows you to build and load a pants python_binary
target into the environment. It works in conjunction with the %pants_repo
magic, which is how you point the plugin to a given pants-compatible repo.
%pants_repo <path to pants repo>
...
%pants_load <pants target>
Development
This repo uses tox for testing and project automation. To test your changes before sending them off for review just invoke tox:
$ tox
This will auto-format code and run tests. Tests accept passthough args and pytest-xdist
is installed, so you could run the full test suite with maximum parallelism via:
$ tox -p -epy3{6,7,8,9} -- -n auto
Here you run tests against all interpreters the project supports (assuming you have these all installed on your machine and on the $PATH
) in parallel (the tox -p
flag) and for each parallel run of tox you run the individual test methods in parallel (via passthrough args to pytest-xdist: -- -n auto
).
To find out all available tox environments use tox -a
or inspect tox.ini
.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for pants-jupyter-plugin-0.0.5.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | eaa885e9cdac237ef0d5353cbb27cf223959641b7ee3b10dfb67769d804d9a44 |
|
MD5 | 9da07b913a9418fe5ff6602bd5ddc078 |
|
BLAKE2b-256 | fc5dc84616b5426a0f7ed354b08318ef0af5b657a657723f6b866a959dd4e787 |
Hashes for pants_jupyter_plugin-0.0.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8d0e066bcbf518d0ef877919d5ffc136672e5367bf58900e20f717015c9d818e |
|
MD5 | 0da44956d5a2a07e029ab7ea27054dd0 |
|
BLAKE2b-256 | 68566e6cb741ebd919bcb46b09eb8694da7c319822a2dfeca791c8917ca6a147 |