Skip to content

enhancement to help kernel provisioners introspect notebooks for their dependencies #1055

Open
@itcarroll

Description

@itcarroll

Multiple communities are interested in embedding environment data within a Jupyter notebook's metadata (1, 2, 3, 4, 5). The goal being to have tools that prepare an environment equipped to execute a given notebook. One recent thread identified the new kernel provisioning abstraction as a key part of achieving this goal. I am a data scientist, not a developer, but it looks to me like achieving this goal requires something not present in the kernel provisioning concept.

Do you envision any standard way that the kernel provisioner should get metadata from a notebook to which it's attached? The kernel.json has metadata.kernel_provisioner.config but there's no specified field in the notebook metadata:

{
    "cells": [...],
    "metadata": {
        "kernelspec": {
            "display_name": "Python 3 (ipykernel)",
            "language": "python",
            "name": "python3",
            # Standardize a keyword in here that kernel provisioners would check for data?
        }
    }
}

There are not many kernel provisioners in the wild, but I don't see anything stopping them from introspecting notebook metadata. I think providing a standard place to do that would foster synergies towards achieving the long-standing goal of self-contained, reproducible notebooks. Thank you for considering!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions