Skip to main content

Clean Jupyter notebooks for versioning

Project description

nb-clean

nb-clean cleans Jupyter notebooks of cell execution counts, metadata, and outputs, preparing them for committing to version control. It provides a Git filter to automatically clean notebooks before they are staged, and can also be used as a standalone tool outside Git or with other version control systems. It can determine if a notebook is clean or not, which can be used as a check in your continuous integration pipelines.

Installation

To install the latest release from PyPI, use pip:

python -m pip install nb-clean

Alternately, in Python projects using Poetry or Pipenv for dependency management, add nb-clean as a development dependency with poetry add --dev nb-clean or pipenv install --dev nb-clean. nb-clean requires Python 3.6 or later.

Usage

Cleaning

To install a filter in an existing Git repository to automatically clean notebooks before they are staged, run the following from the working tree:

nb-clean configure-git

nb-clean will configure a filter in the Git repository in which it is run, and will not mutate your global or system Git configuration. To remove the filter, run:

nb-clean unconfigure-git

Aside from usage from a filter in a Git repository, you can also clean up a Jupyter notebook manually with:

nb-clean clean -i original.ipynb -o cleaned.ipynb

or by passing the notebook contents on stdin:

nb-clean clean < original.ipynb > cleaned.ipynb

Checking

You can check if a notebook is clean with:

nb-clean check -i notebook.ipynb

or by passing the notebook contents on stdin:

nb-clean check < notebook.ipynb

nb-clean will exit with status code 0 if the notebook is clean, and status code 1 if it is not. nb-clean will also print details of cell execution counts, metadata, and outputs it finds.

Copyright

Copyright © 2017-2020 Scott Stevenson.

nb-clean is distributed under the terms of the ISC licence.

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

nb-clean-1.4.2.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nb_clean-1.4.2-py3-none-any.whl (4.7 kB view details)

Uploaded Python 3

File details

Details for the file nb-clean-1.4.2.tar.gz.

File metadata

  • Download URL: nb-clean-1.4.2.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.5 CPython/3.8.2 Darwin/19.4.0

File hashes

Hashes for nb-clean-1.4.2.tar.gz
Algorithm Hash digest
SHA256 35db04f5be52852627a469af73c3d98fb19b7bd9efbf01ae48700235bb2cb1bf
MD5 ef4c5c2ff6b90aae1ab75077adee67ba
BLAKE2b-256 8bb16b2c944a3c8543804026c110a5e8aeec59320213de4d40d5daa1812cc9c1

See more details on using hashes here.

File details

Details for the file nb_clean-1.4.2-py3-none-any.whl.

File metadata

  • Download URL: nb_clean-1.4.2-py3-none-any.whl
  • Upload date:
  • Size: 4.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.5 CPython/3.8.2 Darwin/19.4.0

File hashes

Hashes for nb_clean-1.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 da3cf6bd93d94ace66dfbf52abbd8f7897b3df3130fc6cae8c8e181602b12a49
MD5 22e9d873bba0c881370f8a5d345b3aeb
BLAKE2b-256 8465c7dc0ae9c54282ed224feb6c5962e42723ebd0783faa10d7c91d564d7b07

See more details on using hashes here.

Supported by

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