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.4.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 990c0e2eb91275ba3a6e3547bc6daa980731829f1f615b8d9ab19b8c5f93bcca |
|
MD5 | ccbe1a3a5f7ffc595786e2c1c477708e |
|
BLAKE2b-256 | bf300310d3fa08abbe292204b70b010c4dee586d083d6fd885ec96b9ac011f15 |
Hashes for pants_jupyter_plugin-0.0.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aa97b23cba67d611201378ed263e047cceab8f8017aae4cb791d1be55c7aa38f |
|
MD5 | 8404a8af6c5c4a708b3b4d94e210c44d |
|
BLAKE2b-256 | f4eb1341724a3032c21b5b6a675f87c2a3472a30a0d6a450b243c9b3ca200a3c |