Class: BaseKernel#

@jupyterlite/kernel.BaseKernel

A base kernel class handling basic kernel messaging.

Implements#

Constructors#

constructor#

new BaseKernel(options)

Construct a new BaseKernel.

Parameters#

Name

Type

Description

options

IOptions

The instantiation options for a BaseKernel.

Defined in#

packages/kernel/src/kernel.ts:16

Properties#

_disposed#

Private _disposed: Signal<BaseKernel, void>

Defined in#

packages/kernel/src/kernel.ts:632

_executionCount#

Private _executionCount: number = 0

Defined in#

packages/kernel/src/kernel.ts:630

_history#

Private _history: [number, number, string][] = []

Defined in#

packages/kernel/src/kernel.ts:629

_id#

Private _id: string

Defined in#

packages/kernel/src/kernel.ts:626

_isDisposed#

Private _isDisposed: boolean = false

Defined in#

packages/kernel/src/kernel.ts:631

_location#

Private _location: string

Defined in#

packages/kernel/src/kernel.ts:628

_name#

Private _name: string

Defined in#

packages/kernel/src/kernel.ts:627

_parent#

Private _parent: undefined | IMessage<MessageType> = undefined

Defined in#

packages/kernel/src/kernel.ts:636

_parentHeader#

Private _parentHeader: undefined | IHeader<MessageType> = undefined

Defined in#

packages/kernel/src/kernel.ts:634

_sendMessage#

Private _sendMessage: SendMessage

Defined in#

packages/kernel/src/kernel.ts:633

Accessors#

disposed#

get disposed(): ISignal<this, void>

A signal emitted when the kernel is disposed.

Returns#

ISignal<this, void>

Implementation of#

IKernel.disposed

Defined in#

packages/kernel/src/kernel.ts:41

executionCount#

get executionCount(): number

The current execution count

Returns#

number

Defined in#

packages/kernel/src/kernel.ts:69

id#

get id(): string

Get the kernel id

Returns#

string

Implementation of#

IKernel.id

Defined in#

packages/kernel/src/kernel.ts:48

isDisposed#

get isDisposed(): boolean

Return whether the kernel is disposed.

Returns#

boolean

Implementation of#

IKernel.isDisposed

Defined in#

packages/kernel/src/kernel.ts:34

location#

get location(): string

The location in the virtual filesystem from which the kernel was started.

Returns#

string

Implementation of#

IKernel.location

Defined in#

packages/kernel/src/kernel.ts:62

name#

get name(): string

Get the name of the kernel

Returns#

string

Implementation of#

IKernel.name

Defined in#

packages/kernel/src/kernel.ts:55

parent#

get parent(): undefined | IMessage<MessageType>

Get the last parent message (mimic ipykernel’s get_parent)

Returns#

undefined | IMessage<MessageType>

Defined in#

packages/kernel/src/kernel.ts:83

parentHeader#

get parentHeader(): undefined | IHeader<MessageType>

Get the last parent header

Returns#

undefined | IHeader<MessageType>

Defined in#

packages/kernel/src/kernel.ts:76

ready#

get ready(): Promise<void>

A promise that is fulfilled when the kernel is ready.

Returns#

Promise<void>

Implementation of#

IKernel.ready

Defined in#

packages/kernel/src/kernel.ts:27

Methods#

_busy#

Private _busy(parent): void

Send a ‘busy’ status message.

Parameters#

Name

Type

Description

parent

IMessage<MessageType>

The parent message.

Returns#

void

Defined in#

packages/kernel/src/kernel.ts:463

_complete#

Private _complete(msg): Promise<void>

Handle an complete_request message

Parameters#

Name

Type

Description

msg

IMessage<MessageType>

The parent message.

Returns#

Promise<void>

Defined in#

packages/kernel/src/kernel.ts:574

_execute#

Private _execute(msg): Promise<void>

Handle an execute_request message.

Parameters#

Name

Type

Description

msg

IMessage<MessageType>

The parent message.

Returns#

Promise<void>

Defined in#

packages/kernel/src/kernel.ts:541

_executeInput#

Private _executeInput(msg): void

Send an execute_input message.

Parameters#

Name

Type

Description

msg

IMessage<MessageType>

The parent message.

Returns#

void

Defined in#

packages/kernel/src/kernel.ts:520

_historyRequest#

Private _historyRequest(msg): Promise<void>

Handle a history_request message

Parameters#

Name

Type

Description

msg

IMessage<MessageType>

The parent message.

Returns#

Promise<void>

Defined in#

packages/kernel/src/kernel.ts:500

_idle#

Private _idle(parent): void

Send an ‘idle’ status message.

Parameters#

Name

Type

Description

parent

IMessage<MessageType>

The parent message

Returns#

void

Defined in#

packages/kernel/src/kernel.ts:445

_inspect#

Private _inspect(msg): Promise<void>

Handle an inspect_request message

Parameters#

Name

Type

Description

msg

IMessage<MessageType>

The parent message.

Returns#

Promise<void>

Defined in#

packages/kernel/src/kernel.ts:593

_isCompleteRequest#

Private _isCompleteRequest(msg): Promise<void>

Handle an is_complete_request message

Parameters#

Name

Type

Description

msg

IMessage<MessageType>

The parent message.

Returns#

Promise<void>

Defined in#

packages/kernel/src/kernel.ts:612

_kernelInfo#

Private _kernelInfo(parent): Promise<void>

Handle a kernel_info_request message

Parameters#

Name

Type

Description

parent

IMessage<MessageType>

The parent message.

Returns#

Promise<void>

Defined in#

packages/kernel/src/kernel.ts:481

clearOutput#

Protected clearOutput(content, parentHeader?): void

Send a clear_output message to the client.

Parameters#

Name

Type

Default value

Description

content

Object

undefined

The clear_output content.

content.wait

boolean

undefined

-

parentHeader

undefined | IHeader<MessageType>

undefined

The parent header.

Returns#

void

Defined in#

packages/kernel/src/kernel.ts:392

commClose#

Abstract commClose(msg): Promise<void>

Send an comm_close message.

Parameters#

Name

Type

msg

ICommCloseMsg<"shell" | "iopub">

Returns#

Promise<void>

Defined in#

packages/kernel/src/kernel.ts:231

commInfoRequest#

Abstract commInfoRequest(content): Promise<ReplyContent<ICommInfoReply>>

Handle a comm_info_request message.

Parameters#

Name

Type

Description

content

Object

The content of the request.

content.target_name?

string

The comm target name to filter returned comms

Returns#

Promise<ReplyContent<ICommInfoReply>>

A promise that resolves with the response message.

Defined in#

packages/kernel/src/kernel.ts:201

commMsg#

Abstract commMsg(msg): Promise<void>

Send an comm_msg message.

Parameters#

Name

Type

Description

msg

ICommMsgMsg<"shell" | "iopub">

The comm_msg message.

Returns#

Promise<void>

Defined in#

packages/kernel/src/kernel.ts:224

commOpen#

Abstract commOpen(msg): Promise<void>

Send an comm_open message.

Parameters#

Name

Type

Description

msg

ICommOpenMsg<"shell" | "iopub">

The comm_open message.

Returns#

Promise<void>

Defined in#

packages/kernel/src/kernel.ts:217

completeRequest#

Abstract completeRequest(content): Promise<ReplyContent<ICompleteReply>>

Handle a complete_request message.

Parameters#

Name

Type

Description

content

Object

The content of the request.

content.code

string

-

content.cursor_pos

number

-

Returns#

Promise<ReplyContent<ICompleteReply>>

Defined in#

packages/kernel/src/kernel.ts:168

displayData#

Protected displayData(content, parentHeader?): void

Send a display_data message to the client.

Parameters#

Name

Type

Default value

Description

content

Object

undefined

The display_data content.

content.data

IMimeBundle

undefined

-

content.metadata

PartialJSONObject

undefined

-

content.transient?

Object

undefined

-

content.transient.display_id?

string

undefined

-

parentHeader

undefined | IHeader<MessageType>

undefined

The parent header.

Returns#

void

Defined in#

packages/kernel/src/kernel.ts:264

dispose#

dispose(): void

Dispose the kernel.

Returns#

void

Implementation of#

IKernel.dispose

Defined in#

packages/kernel/src/kernel.ts:90

executeRequest#

Abstract executeRequest(content): Promise<Object>

Handle an execute_request message.

Parameters#

Name

Type

Description

content

Object

The content of the execute_request kernel message

content.allow_stdin?

boolean

Whether to allow stdin requests. The default is true.

content.code

string

The code to execute.

content.silent?

boolean

Whether to execute the code as quietly as possible. The default is false.

content.stop_on_error?

boolean

Whether to the abort execution queue on an error. The default is false.

content.store_history?

boolean

Whether to store history of the execution. The default true if silent is False. It is forced to false if silent is true.

content.user_expressions?

JSONObject

A mapping of names to expressions to be evaluated in the kernel’s interactive namespace.

Returns#

Promise<Object>

Defined in#

packages/kernel/src/kernel.ts:159

handleComm#

Protected handleComm(type, content, metadata, buffers, parentHeader?): void

Send a comm message to the client.

Parameters#

Name

Type

Default value

type

"comm_close" | "comm_msg" | "comm_open"

undefined

content

Object

undefined

content.comm_id

string

undefined

content.data

JSONObject

undefined

metadata

JSONObject

undefined

buffers

undefined | (ArrayBuffer | ArrayBufferView)[]

undefined

parentHeader

undefined | IHeader<MessageType>

undefined

Returns#

void

Defined in#

packages/kernel/src/kernel.ts:416

handleMessage#

handleMessage(msg): Promise<void>

Handle an incoming message from the client.

Parameters#

Name

Type

Description

msg

IMessage<MessageType>

The message to handle

Returns#

Promise<void>

Implementation of#

IKernel.handleMessage

Defined in#

packages/kernel/src/kernel.ts:103

inputReply#

Abstract inputReply(content): void

Send an input_reply message.

Parameters#

Name

Type

Description

content

ReplyContent<IInputReply>

The content of the reply.

Returns#

void

Defined in#

packages/kernel/src/kernel.ts:210

inputRequest#

Protected inputRequest(content, parentHeader?): void

Send a input_request message to the client.

Parameters#

Name

Type

Default value

Description

content

Object

undefined

The input_request content.

content.password

boolean

undefined

Whether the request is for a password. If so, the frontend shouldn’t echo input.

content.prompt

string

undefined

The text to show at the prompt.

parentHeader

undefined | IHeader<MessageType>

undefined

The parent header.

Returns#

void

Defined in#

packages/kernel/src/kernel.ts:292

inspectRequest#

Abstract inspectRequest(content): Promise<ReplyContent<IInspectReply>>

Handle an inspect_request message.

Parameters#

Name

Type

Description

content

Object

The content of the request.

content.code

string

-

content.cursor_pos

number

-

content.detail_level

0 | 1

-

Returns#

Promise<ReplyContent<IInspectReply>>

A promise that resolves with the response message.

Defined in#

packages/kernel/src/kernel.ts:179

isCompleteRequest#

Abstract isCompleteRequest(content): Promise<ReplyContent<IIsCompleteReplyIncomplete | IIsCompleteReplyOther>>

Handle an is_complete_request message.

Parameters#

Name

Type

Description

content

Object

The content of the request.

content.code

string

-

Returns#

Promise<ReplyContent<IIsCompleteReplyIncomplete | IIsCompleteReplyOther>>

A promise that resolves with the response message.

Defined in#

packages/kernel/src/kernel.ts:190

kernelInfoRequest#

Abstract kernelInfoRequest(): Promise<ReplyContent<IInfoReply>>

Handle a kernel_info_request message.

Returns#

Promise<ReplyContent<IInfoReply>>

A promise that resolves with the kernel info.

Defined in#

packages/kernel/src/kernel.ts:152

publishExecuteError#

Protected publishExecuteError(content, parentHeader?): void

Send an error message to the client.

Parameters#

Name

Type

Default value

Description

content

Object

undefined

The error content.

content.ename

string

undefined

-

content.evalue

string

undefined

-

content.traceback

string[]

undefined

-

parentHeader

undefined | IHeader<MessageType>

undefined

The parent header.

Returns#

void

Defined in#

packages/kernel/src/kernel.ts:342

publishExecuteResult#

Protected publishExecuteResult(content, parentHeader?): void

Send an execute_result message.

Parameters#

Name

Type

Default value

Description

content

Object

undefined

The execute result content.

content.data

IMimeBundle

undefined

-

content.execution_count

ExecutionCount

undefined

-

content.metadata

PartialJSONObject

undefined

-

content.transient?

Object

undefined

-

content.transient.display_id?

string

undefined

-

parentHeader

undefined | IHeader<MessageType>

undefined

The parent header.

Returns#

void

Defined in#

packages/kernel/src/kernel.ts:317

stream#

Protected stream(content, parentHeader?): void

Stream an event from the kernel

Parameters#

Name

Type

Default value

Description

content

Object

undefined

The stream content.

content.name

"stdout" | "stderr"

undefined

-

content.text

string

undefined

-

parentHeader

undefined | IHeader<MessageType>

undefined

The parent header.

Returns#

void

Defined in#

packages/kernel/src/kernel.ts:239

updateDisplayData#

Protected updateDisplayData(content, parentHeader?): void

Send a update_display_data message to the client.

Parameters#

Name

Type

Default value

Description

content

{ data: IMimeBundle ; metadata: PartialJSONObject ; transient?: { display_id?: string } } & { transient: { display_id: string } }

undefined

The update_display_data content.

parentHeader

undefined | IHeader<MessageType>

undefined

The parent header.

Returns#

void

Defined in#

packages/kernel/src/kernel.ts:367