Skip to main content

Jupyter support for Pants projects and PEX files.

Project description

Overview

PyPI Version License Supported Pythons CI

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

pants-jupyter-plugin-0.0.5.tar.gz (21.7 kB view details)

Uploaded Source

Built Distribution

pants_jupyter_plugin-0.0.5-py3-none-any.whl (17.1 kB view details)

Uploaded Python 3

File details

Details for the file pants-jupyter-plugin-0.0.5.tar.gz.

File metadata

  • Download URL: pants-jupyter-plugin-0.0.5.tar.gz
  • Upload date:
  • Size: 21.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.27.1

File hashes

Hashes for pants-jupyter-plugin-0.0.5.tar.gz
Algorithm Hash digest
SHA256 eaa885e9cdac237ef0d5353cbb27cf223959641b7ee3b10dfb67769d804d9a44
MD5 9da07b913a9418fe5ff6602bd5ddc078
BLAKE2b-256 fc5dc84616b5426a0f7ed354b08318ef0af5b657a657723f6b866a959dd4e787

See more details on using hashes here.

File details

Details for the file pants_jupyter_plugin-0.0.5-py3-none-any.whl.

File metadata

File hashes

Hashes for pants_jupyter_plugin-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 8d0e066bcbf518d0ef877919d5ffc136672e5367bf58900e20f717015c9d818e
MD5 0da44956d5a2a07e029ab7ea27054dd0
BLAKE2b-256 68566e6cb741ebd919bcb46b09eb8694da7c319822a2dfeca791c8917ca6a147

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page