Dataflow Python Kernel for Jupyter
Project description
Dataflow Kernel for Jupyter/Python
This package is part of the Dataflow Notebooks project and provides the Dataflow Python kernel for Jupyter, and is intended to be used with JupyerLab in concert with the dfnotebook-extension. This kernel seeks to elevate outputs as memorable waypoints during exploratory computation. To that end,
- Cell identifiers are persistent across sessions and are random UUIDs to signal they do not depend on top-down order.
- As with standard IPython, outputs are designated by being written as expressions or assignments on the last line of a cell.
- Each output is identified by its variable name if one is specified (e.g.
a
,c,d = 4,5
), and the cell identifier if not (e.g.4 + c
) - Variable names can be reused across cells.
- Cells are executed as closures so only the outputs are accessible from other cells.
- An output can then be referenced in three ways:
- unscoped:
foo
refers to the most recent execution output namedfoo
- persistent:
foo$ba012345
refers to outputfoo
from cellba012345
- tagged:
foo$bar
refers to outputfoo
from the cell tagged asbar
- unscoped:
- All output references are transformed to persistent names upon execution.
- Output references implicitly define a dataflow in a directed acyclic graph, and the kernel automatically executes dependencies.
Example Notebook
Installation
These instructions only install the kernel. Please see the dfnotebook-extension instructions for full instructions.
PyPI
pip install dfkernel
From source
git clone https://github.com/dataflownb/dfkernel
cd dfkernel
pip install -e .
python -m dfkernel install [--user|--sys-prefix]
Note that --sys-prefix
works best for conda environments.
Dependencies
- IPython >= 7.0
- JupyterLab >= 2.0
- ipykernel >= 4.8.2
Previous Versions
dfkernel 1.0 worked with Jupyter Notebook, but we have decided to support JupyterLab in the future. Documentation and tutorials for v1.0 are below, but still need to be updated for v2.0.
v1.0 Documentation
General
Advanced Usage
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file dfkernel-4.0.0a2.tar.gz
.
File metadata
- Download URL: dfkernel-4.0.0a2.tar.gz
- Upload date:
- Size: 1.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 94966215310c151b0ff247bb923ed16c673196e7fcc3f49c35ecfbaf2224255a |
|
MD5 | f9a665a817776c715af492aedba1f438 |
|
BLAKE2b-256 | 7680121c8da8043bb8ebc2d164efa219d72d8202647704b31c20c3034736e84d |
File details
Details for the file dfkernel-4.0.0a2-py3-none-any.whl
.
File metadata
- Download URL: dfkernel-4.0.0a2-py3-none-any.whl
- Upload date:
- Size: 1.7 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 814f33a8c68c34051ee711c173f1d0d0e1cd1ed678b96357dbeb1d8e72ffdccb |
|
MD5 | 47fe07bfa0e91913e0067c25fdb8bf7c |
|
BLAKE2b-256 | 56463a4d520e8a38e8bb55daa34efb4a9810da7c22f7b3fc57d18274e5dde1a2 |