positron icon indicating copy to clipboard operation
positron copied to clipboard

Remove `PositronNotebookOutputWebviewService.createRawHtmlOutput()`

Open nstrayer opened this issue 1 year ago • 1 comments

Currently, the notebook output webview service has a method for handling raw html output. Since there's a built-in html notebook renderer that will get used if the method createNotebookRenderOutput() is called instead. We should move to using that for display since it gets us lots of freebies like link clicking etc without having to duplicate logic across two code-paths.

The basic way to test the depreciation of this path is to comment out the line mimeType === 'text/html' in createNotebookOutputWebview():

image

One example of an area that doesn't currently work for this is great tables:

import polars as pl

from great_tables import GT

df = pl.DataFrame({"x": [1,2,3]})
GT(df)

Another code change that will need to be made is the allowing of createNotebookRenderOutput() to create non-overlay webviews like createRawHtmlOutput() can currently. This is needed so that Positron notebooks can use that method instead of the current createRawHtmlOutput().

nstrayer avatar Aug 20 '24 14:08 nstrayer

Great tables doesn't work because it sends over the full HTML page. We're responsible for that (https://github.com/posit-dev/positron/issues/2079#issuecomment-2233676078), so we could probably get it removed if needed.

seeM avatar Aug 20 '24 14:08 seeM

Verified Fixed

Positron Version(s) : 2025.05.0-58
OS Version          : OSX

Test scenario(s)

import polars as pl

from great_tables import GT

df = pl.DataFrame({"x": [1,2,3]})
GT(df)

Looks good!

Link(s) to TestRail test cases run or created:

testlabauto avatar Apr 15 '25 16:04 testlabauto