Skip to content

Pre-Proposal: Transmit Cell Metadata #68

@jflam

Description

@jflam

Transmit Cell Metadata

Hello!

We (@willingc and @MSeal) would like to propose a new JEP that describes transmitting cell metadata to kernels. Below is a summary and a link to the full proposal as well.

Thx!
-John, Carol, Matt

Summary

This proposal discusses the transmission of cell metadata with execute message requests and would modify the Jupyter Messaging Protocol. Individual kernels would interpret or ignore this metadata. This enables flexibility in different usage scenarios implemented in various front-end clients.

Motivation

By transmitting cell metadata inline with the execute message request, Jupyter implementations will have a reliable channel to transmit additional metadata to the kernel in a standard way.

Notebook extensions can also use this channel to transmit additional information that was often transmitted using magic commands.

Some use cases which motivated this proposal are:

  • Route requests automatically to an appropriate kernel via libraries like [allthekernels]https://github.com/minrk/allthekernels) without need for additional metadata within the cell itself
  • Create or find a conda environment without needing to use magics, like pick
  • Support polyglot (more than one language/kernel within a single notebook) scenarios, like [sos]https://vatlab.github.io/sos-docs/)
  • Provide hints to the kernel for localization purposes, like how the ACCEPT_LANGUAGE HTTP header works
  • Provide hints to the kernel about client capabilities, similar to how hints of a web browser client's capabilities work

A link to the full proposal can be found here

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