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.6.tar.gz (21.9 kB view details)

Uploaded Source

Built Distribution

pants_jupyter_plugin-0.0.6-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pants-jupyter-plugin-0.0.6.tar.gz
Algorithm Hash digest
SHA256 69434cbc96f5f04409640fec3d7021e45e62b3746cfb5c77b625b551e5914550
MD5 b2f1130361fe89c9f809a6ce2e136384
BLAKE2b-256 66124763943e1a2b0f8b1693835ad6a32b8b7d22b57bbb285014a26c064e3b93

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for pants_jupyter_plugin-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 ada912b8b5c6bb854c14d471a010dc38d76672fd093025d791a93adad4ab8144
MD5 64f1d4bb2fa8c27119ee748c6c77988f
BLAKE2b-256 463ccecad096b6ccbf54f5fe29b27e92e721dcc630d6cf980ba5f94183b4307a

See more details on using hashes here.

Provenance

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