Skip to content

verso-v1.2.2

Latest

Choose a tag to compare

@github-actions github-actions released this 04 Sep 02:10

Release letting Markdown cells typeset TeX math and draw Mermaid diagrams in place, rendering a DataFrame as a typed, scrollable table through a new formatter built into every host, putting Verso's notebook tools in front of Copilot agent mode for the first time and only while a notebook is open, documenting the five showcase layouts, and adding two PowerShell sample notebooks that build Vega-Lite charts over DataFrames, with notice that a coming release will require .NET 10.

Upgrade Notes

  • A coming release will drop .NET 8 and require .NET 10 or newer. .NET 8 leaves Microsoft support on November 10, 2026, and .NET 9 ends the same day, so the host, the command line tool and the VS Code extension will move to .NET 10 ahead of that date. Nothing changes in this release: .NET 8, 9 and 10 all still run Verso. Installing the .NET 10 runtime now, or accepting the extension's offer to install one, means the switch will pass unnoticed when it comes. Verso's library packages already ship .NET 10 builds beside .NET 8, so an extension can move ahead of the host, and one built for .NET 8 keeps loading on a .NET 10 host
  • A DataFrame now renders as a table before any other formatter sees it. A Microsoft.Data.Analysis.DataFrame used to fall through to the expandable object graph and run into the wide-type output budget. If you wrote a formatter extension of your own for DataFrames, give it a priority above 50 to keep it in front

New: Math and Diagrams in Markdown Cells

  • Markdown cells typeset TeX math with KaTeX. Wrap an inline formula in single dollars, $E = mc^2$, or a display equation in double dollars on lines of its own; the \(...\) and \[...\] delimiters work too. A dollar amount such as $5 stays ordinary text, and a dollar sign inside inline code or a fenced block stays code
  • A fenced code block tagged mermaid renders as a diagram in place, so prose and diagrams can share a cell, and @variable substitution applies inside the fence as it does to the rest of the cell. Asked for by @sheng-jie (#101)
  • Both carry through to HTML export. An exported notebook loads KaTeX and Mermaid only when a cell needs them, and a formula that fails to typeset leaves its source text in place
  • The dedicated Mermaid cell type remains the one that offers diagram keyword completions and reports an unresolved variable as a diagnostic, and the guides say which to reach for

New: DataFrame Tables

  • A Microsoft.Data.Analysis.DataFrame returned from a PowerShell or .NET cell renders as a scrollable table with column names and types, sticky headers and visible nulls, through a new Verso.DataFrame formatter that is built into the VS Code extension, verso serve and verso run and is also published as its own NuGet package. An explicit Display call renders the same way, including one made from PowerShell that still carries its PSObject wrapper. Contributed by @eosfor (#94)
  • The table is a bounded preview: the first 100 rows and 50 columns, with the frame's total row and column counts in the footer, and any cell value longer than 200 characters shortened, so a wide or long frame cannot swamp the output
  • The formatter reads a frame through reflection and takes no dependency on Microsoft.Data.Analysis, so the PowerShell module or kernel that created the frame keeps ownership of the assembly and there is no second copy to conflict with
  • Table text, including the empty-frame message and the footer counts, is translated into German, Spanish, Japanese and Simplified Chinese alongside English

Improved: Copilot Agent Mode

  • Copilot agent mode can now see Verso's twenty notebook tools. They had been registered in a way that kept them out of the agent tool picker, so only the @verso participant could reach them and the README's promise of agent mode without typing @verso did not hold. Diagnosed and fixed by @4D-Bird in #102, recreated here with their agreement
  • The tools are offered only while a notebook is open, so a chat session about something else does not carry twenty notebook tools it cannot use, and each one can be pulled into a prompt by name, #verso_runAll for instance
  • Each tool carries a short description in the tools picker, translated into the five interface languages, in place of the long model-facing text that used to show there

Improved: Documentation and Samples

  • A new Showcase Extensions section documents the five sample layouts, DAG Notebook, Slide Studio, Grid Studio, Form Studio and Image Studio, with a page and screenshots for each, how inline and isolated layouts differ, and how to install or build one. The layouts guide lists all five and links to it
  • A Palmer Penguins sample notebook loads a public CSV into a typed DataFrame from PowerShell, inspects and groups it with every frame drawn by the new formatter, and builds three interactive Vega-Lite charts from PowerShell hashtables. Contributed by @eosfor (#95)
  • A Deneb Showcase sample notebook adapts ten Vega and Vega-Lite visualizations from David Bacci's Deneb Showcase to refreshable public datasets, from a calendar heatmap of daily weather to a bar chart race of World Bank population, with the download and display steps split so a chart can be pointed at a different year or selection without fetching again. Contributed by @eosfor (#103)
  • The Interactive Widgets and Python Packages guides now say when a #!pip line is needed and when it is not. In the editor the default install policy offers to install whatever a cell imports and cannot find, while verso run --auto-install installs only distributions Verso keeps a mapping for, so a package that installs under its import name, ipywidgets among them, still needs the line on the command line
  • The README describes DataFrame tables and math and diagrams in Markdown and links the showcase section, the architecture pages list Verso.DataFrame and the KaTeX interop, and the known issue about wide framework types no longer cites DataFrame as its example (VERSO-007)

Improved: Contributing

  • The DCO check now rejects a commit authored or signed off with a GitHub noreply address, since nobody can be reached through one, and CONTRIBUTING.md says so

Fixed

  • A Mermaid cell no longer fails silently when the code editor's module loader was already on the page, which in a real notebook it usually is. Mermaid's bundle registered itself with that loader and threw, and the failed load then left the library dead for the rest of the page. Both the VS Code extension and the browser now load Mermaid in a way the editor's loader cannot see, and several diagrams rendering at once share a single load