Skip to content

Cell-level caching #89

Open
Open
@JanPalasek

Description

@JanPalasek

Context

I work with notebooks that are hard to compute.
If I change one code cell at the end of the notebook, I do not expect that its entire cache will be invalidated and the notebook will be needed to be recomputed.
I want only the dependent cells to be changed.

Proposal

Assumption: Notebooks are executed from top to bottom (I come from Quarto). If we work directly with Jupyter notebooks, imho we don't need caching like this. Jupyter does it pretty well on its own. I don't know if this package attempts to cover this case as well.
I'd propose a cell-level cache.
We would remember each cell individually.
If its source code or output of that cell changes, we would only recompute the changed cell and all cells that came after.
This would greatly improve performance when prototyping a notebook because we would only recompute dependent cells.
I assume there is like 100 problems that I don't see. If you see any, please fill me in. It's also possible that this is a problem of Quarto and I missjudgedmisjudged the scope of this project.

Tasks and updates

Later if the proposed solution is viable.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions