Skip to main content

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 -epy{py3,3{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.2.tar.gz (19.9 kB view details)

Uploaded Source

Built Distribution

pants_jupyter_plugin-0.0.2-py3-none-any.whl (16.8 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pants-jupyter-plugin-0.0.2.tar.gz
Algorithm Hash digest
SHA256 23697a759618958542e4f8a60b893c41df8c67176fd8f95c2771ecd27cac32e3
MD5 c2c3c6452c49009dcd9a9920804f9601
BLAKE2b-256 92425bff7996370f613d32377e97f8dbc74da82744ced3650893926aeaf2c75c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pants_jupyter_plugin-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 011d329df583ccbaac826f4401eb2ce34d65a7eaf14daf70c85d1486011d64ce
MD5 982434b40094082bf590e2748957d7f8
BLAKE2b-256 e048a68cc45987ec36795024c892be9f0fd609f28939b4c0fe984d75878c5a47

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