Commit Graph

99 Commits

Author SHA1 Message Date
Rob Lourens
07b7831746 NotebookExecutionStateService - createCellExecution returns an execution object. For #125668 2022-01-18 10:14:24 -08:00
Rob Lourens
a2655c2e5f prefer-const in notebooks 2021-12-30 14:25:09 -08:00
Rob Lourens
f944a56538 Remove runState from cell internalMetadata. Expose execution state data from service.
For #125668
2021-12-29 15:46:36 -08:00
Rob Lourens
33d81fdc8c Improve NotebookExecutionService and cancel executions when closing the notebook, deleting cells, and changing the kernel 2021-12-28 13:42:01 -08:00
Johannes Rieken
20382c5743 extract notebook controller kind into its own proposal, https://github.com/microsoft/vscode/issues/131165 2021-11-12 09:54:38 +01:00
Johannes Rieken
a4d426a1c2 split vscode.proposed.d.ts into a file per proposal, https://github.com/microsoft/vscode/issues/131165 2021-11-12 09:48:17 +01:00
Johannes Rieken
f01a1e991d move isProposedApiEnabled and checkProposedApiEnabled-util back to workbench-layer 2021-11-10 12:02:04 +01:00
Johannes Rieken
799d82fcc3 add isProposedApiEnabled-util, move checkProposedApiEnabled-util, use utils instead of reading the enableProposedApi-property, https://github.com/microsoft/vscode/issues/129037 2021-11-09 14:13:32 +01:00
Don Jayamanne
48eb908fd6 Categorize kernels in the notebook kernel picker (#135502)
* Categorize kernels in the notebook kernel picker

* rename property

* address review comments

* more changes

* fix liner

* address review comments
2021-10-25 08:23:43 -07:00
Joyce Er
d4d04e556c Allow invoking kernel picker for inactive notebook given NotebookEditor in notebook.selectKernel command args (#132879)
* Allow invoking kernel picker for inactive notebook

`notebook.selectKernel` is now an API command that takes target `NotebookEditor` as an arg

* move select kernel command to extHost Kernel.

Co-authored-by: rebornix <penn.lv@gmail.com>
2021-09-15 14:35:02 -07:00
Rob Lourens
32ef4edfbf Fix timing issue with waiting on cell output changes
Fix #131281
2021-08-20 18:33:44 -07:00
Rob Lourens
84ab3008da Guarantee frequent output updates #130789 2021-08-17 17:04:40 -07:00
Matt Bierner
8b6547aa2c Transfer notebook output as VSBuffer (#130452)
* Transfer notebook output data as a VSBuffer

This PR transfers notebook output as an VSBuffer instead of as a array of numbers. This significantly reduces the message size as well as the serialize/deserialize times

To accomplish this, I've introduced a new `SerializableObjectWithBuffers` type. This specially marks rpc objects that contain VSBuffers. This is needed as our current RPC implementation can only efficently transfer VSBuffers that appears as top level arguments. The rpcProtocol now can also identify top level `SerializableObjectWithBuffers` arguments and ensure these are serialized more efficently.

This is easier than trying to extract the `VSBuffer` proeprties to top level arguments. It also lets us easily support return types that may contain buffers

* use SerializableObjectWithBuffers when dealing with (old) notebook controllers

Co-authored-by: Johannes Rieken <johannes.rieken@gmail.com>
2021-08-17 09:57:57 -07:00
Rob Lourens
01643e514e Better cell execution lifecycle 2021-08-11 15:38:08 -07:00
Rob Lourens
ff681a5db2 Ensure final cell execution update is not delayed 2021-08-11 14:52:52 -07:00
Rob Lourens
99104943f5 Add NotebookExecutionService
Towards #125668
2021-08-11 12:50:30 -07:00
Johannes Rieken
d0cc52143b change IOutputItemDto to use real bytes, add many dedicated dto-types for transporting output (which cannot be bytes), remove metadata2 from renderer 2021-06-10 11:18:46 +02:00
Johannes Rieken
1d7b2d4b48 remove old, backwards-compat API 2021-06-09 12:47:59 +02:00
Johannes Rieken
5cd7916219 towards https://github.com/microsoft/vscode/issues/125668 2021-06-09 11:36:49 +02:00
Johannes Rieken
8006b8c9a4 make getEditorById strict 2021-06-07 17:47:34 +02:00
Johannes Rieken
826f9e99a4 remove old mime types, application/x.notebookABC 2021-06-07 15:42:32 +02:00
Johannes Rieken
f207b38307 inline NotebookExecuteHandler type 2021-06-04 11:32:25 +02:00
Johannes Rieken
e43c3957f6 rename onDidChangeNotebookAssociation to onDidChangeSelectedNotebooks 2021-06-03 11:27:09 +02:00
Johannes Rieken
0b6e70302f remove deprecated API 2021-06-02 09:24:43 +02:00
Johannes Rieken
f2d6da27d0 make sure appendOutputItems and replaceOutputItems return something 2021-06-02 08:44:01 +02:00
Rob Lourens
ef28d1663d Inline parameters to execution task start and end 2021-06-01 16:13:27 -07:00
Johannes Rieken
2031df2653 rename hasExecutionOrder to supportsExecutionOrder 2021-05-31 16:09:05 +02:00
Johannes Rieken
f2fb2b8cbe rename viewType to notebookType, https://github.com/microsoft/vscode/issues/122922 2021-05-31 15:55:15 +02:00
Johannes Rieken
355df0eccb move renderer script and IPC into proposed and merge with general renderer IPC, https://github.com/microsoft/vscode/issues/123601 2021-05-31 13:38:17 +02:00
Johannes Rieken
4202ab071a rename NotebookCellOutput#outputs to #items 2021-05-28 17:57:50 +02:00
Johannes Rieken
04e09dacdf refine output modifications of NotebookCellExecution 2021-05-28 11:15:56 +02:00
rebornix
5338cc32da fix build. 2021-05-27 11:17:01 -07:00
Johannes Rieken
4c5a061df6 rename NotebookKernelPreload to NotebookRendererScript 2021-05-27 15:21:48 +02:00
Johannes Rieken
da1193950a some jsdoc for NotebookCellExecution 2021-05-27 12:59:47 +02:00
Johannes Rieken
9d907212ba rename NotebookCellExecutionTask to NotebookCellExecution 2021-05-27 12:14:20 +02:00
Johannes Rieken
d63a69abf3 some enforcement of unique mime types in the extension host, https://github.com/microsoft/vscode/issues/124357 2021-05-26 12:18:46 +02:00
Matt Bierner
9847783f62 Remove uuid from webview resource uris
This is no longer be needed. We still serve the webview code itself from a unique subdomain

This also removes the need for `serviceWorkerFetchIgnoreSubdomain`
2021-05-21 09:28:43 -07:00
Matt Bierner
07a2aab8f2 Remove duplication around checking isRemote 2021-05-20 16:00:40 -07:00
Matt Bierner
18ea5ac15e Use isRemote instead of remote authority to determine where to load from 2021-05-20 11:30:43 -07:00
Matt Bierner
2270c36cff Use extension location instead of remote for asWebviewUri 2021-05-20 10:32:47 -07:00
Matt Bierner
1ddc623e58 Simplify logic for webview resource uris (#123740)
* Simplify logic for webview resource uris

This change attempts to simplify the logic around webview resource uris by doing the following:

- Hard code the resource origin. We always will be hitting a service worker for these paths so they don't need to be dynamic (although in the future we may want to pull them from `product.json`)

    This lets us remove these properties from the environment service

- Move remote handling from the resource loader in `asWebviewUri`.

- Remove the handling of http and https paths from the resource loader.

    I don't think these cases can be hit any longer (although I need to confirm this with more testing for the web case). Instead I added a check to `asWebviewUri` so that we return the original uri if a http(s) uri is passed in

* Restore normalizeResourcePath

We still need to convert between a remote uri and one that our remote file system can read

* Fix test

* Restore passing in remote on extension side

* Remove only
2021-05-19 17:26:51 -07:00
Rob Lourens
5b13f40b47 Remove NotebookCellExecutionState.Idle 2021-05-13 11:34:02 -07:00
Rob Lourens
dfb8c467ca Separate extension metadata from execution metadata
Fix #123235
2021-05-12 17:26:00 -07:00
Johannes Rieken
2f2ca2ea19 more trace logging, https://github.com/microsoft/vscode/issues/123700 2021-05-12 20:02:53 +02:00
Johannes Rieken
c6beaef489 added logging for https://github.com/microsoft/vscode/issues/123700 2021-05-12 19:46:11 +02:00
Johannes Rieken
2f282bbefb Log which extension creates what controller when, https://github.com/microsoft/vscode/issues/122409#issuecomment-833448914 2021-05-12 19:28:19 +02:00
Matt Bierner
b847eb35e7 Add remote-authority to webview uri 2021-05-11 18:14:13 -07:00
Matt Bierner
4177014a1c Revert "Put authority into webview resource uri"
This reverts commit 3d978d4dde.
2021-05-10 23:01:26 -07:00
Matt Bierner
3d978d4dde Put authority into webview resource uri
This lets us handle the case where a webview needs to load both local and remote resources
2021-05-10 20:40:07 -07:00
Johannes Rieken
f7f1dbd5be 💄 2021-05-07 15:08:40 +02:00