A defined interface for working with a cache of executed jupyter notebooks
MIT License
A defined interface for working with a cache of jupyter notebooks.
If you have a number of notebooks whose execution outputs you want to ensure are kept up to date, without having to re-execute them every time (particularly for long running code, or text-based formats that do not store the outputs).
The notebooks must have deterministic execution outputs:
For example, it is utilised by jupyter-book, to allow for fast document re-builds.
pip install jupyter-cache
For development:
git clone https://github.com/executablebooks/jupyter-cache
cd jupyter-cache
git checkout develop
pip install -e .[cli,code_style,testing]
See the documentation for usage.
Some desired requirements (not yet all implemented):
jupyter-cache follows the Executable Book Contribution Guide. We'd love your help!
Code style is tested using flake8,
with the configuration set in .flake8
,
and code formatted with black.
Installing with jupyter-cache[code_style]
makes the pre-commit
package available, which will ensure this style is met before commits are submitted, by reformatting the code
and testing for lint errors.
It can be setup by:
>> cd jupyter-cache
>> pre-commit install
Optionally you can run black
and flake8
separately:
>> black .
>> flake8 .
Editors like VS Code also have automatic code reformat utilities, which can adhere to this standard.