Spreadsheets Changelog

This changelog summarizes new workbook features, Excel compatibility, Google Sheets compatibility, bug fixes, security hardening, and performance improvements.

api/v2.49.0 - 2026-06-12

  • Improved Excel-compatible recalculation for lookup, aggregation, external-reference, array, and dynamic-reference formulas, including VLOOKUP, HLOOKUP, LOOKUP, INDEX, AGGREGATE, FREQUENCY, INDIRECT, COUNTIF, SUMIF, and related *IF(S) functions; see Formula Evaluation, Formula Dependencies, and Supported Functions.
  • Matched more Excel text and date coercion behavior, including date-times with seconds, two-digit-year dates using Excel's 2029 pivot, month-name month-year text, leading-whitespace rejection for general date/time coercion, TEXT date limits, and rendering IEEE negative zero as 0; see Formula Features.
  • Preserved volatile legacy CSE array formulas more accurately during load, save, and structural edits, including calculation-array flags and slave markers; see Array And Data-Table Cells.
  • Improved performance of table consistency checks and VLOOKUP/HLOOKUP scans on large worksheets by bounding work to the worksheet used range and used table cells; see Tables and Calc.
  • Fixed legacy .xls to .xlsx conversion for large, formula-dense workbooks by avoiding per-formula dependency rebuilds while preserving cached formula values; the converter also strips XML-invalid control characters from older workbook text so those files can save cleanly.
  • Allowed witan xlsx exec to infer the Office Scripts runtime from a typed main(workbook: ExcelScript.Workbook) function; see Office Scripts and CLI Scripting.
  • Improved chart label and trendline-equation rendering by composing labels invariantly while localizing decimal separators; see Charts.

api/v2.48.0 - 2026-06-11

  • Reduced memory use when opening large workbooks by streaming worksheet parts, avoiding unnecessary in-memory preservation of unchanged workbook parts, and keeping sheet parsing single-pass; a large benchmark workbook that exhausted memory in api/v2.47.0 opened in 7.9s at 2.9 GB peak memory in this release.
  • Improved save performance for large and dense worksheets by reusing unchanged package entries, writing dense cell data more efficiently, avoiding redundant worksheet reparsing, and skipping no-op style refresh work; compared with api/v2.47.0, benchmark dirty saves improved by 57-88%, clean saves improved by 74-80%, and repeat clean saves improved by 78-92%.
  • Reduced save allocations by 66-93% across benchmark workbooks, including a large-model dirty save that dropped from 21.8 GB to 6.5 GB allocated.
  • Improved repeated operation performance for large sheets by caching sheet bounds and content ranges across reads, writes, search, table detection, dependency tracing, autofit, listSheets, viewCells, and describeSheet; in the largest benchmark workbook, single-cell setCells ran in 15ms, autofit ran in 19s, and dirty save completed in 18s. See Search and Discovery and Styles and Layout.
  • Reduced lint runtime and output volume on large formula-heavy workbooks by caching whole-row and whole-column reference bounds, reporting repeated formula-template diagnostics once, and collapsing repeated row-height and column-width clipping findings; compared with api/v2.47.0, one large benchmark lint run improved from a 600s timeout to 102.5s, while other benchmark lint runs improved by 13-23%. See Lint, D003, D032, and D034.
  • Improved autofit and describeSheet throughput on benchmark workbooks, including autofit improvements up to 67% and describeSheet improvements up to 38%; see Autofit and Describe Sheets.
  • Allowed findCells and findRows matcher arrays to include numbers and booleans, with clean validation errors for unsupported matcher entries; see Find Cells, findCells, and findRows.
  • Tolerated more embedded JPEG metadata variants, including nonstandard application markers from image editors, when opening workbooks with pictures; see Images and Drawings.
  • Tolerated out-of-spec font family values when opening workbooks, matching Excel's behavior of degrading them instead of rejecting the file.
  • Allowed whitespace-only worksheet names on load and rename operations, matching workbook files and automation paths that Excel accepts even though the Excel UI rejects them; see Sheet Properties.
  • Treated empty column-width attributes as absent when opening workbooks, falling back to the sheet default instead of failing the load.
  • Preserved headers and footers longer than Excel's UI input cap instead of failing workbook load.
  • Preserved non-local or dynamic print areas as raw defined names instead of failing workbook load, so external workbook references and formula-defined print areas survive save.
  • Preserved conditional formatting rules with external-reference formulas that cannot be parsed locally, and clamped invalid conditional-format priorities during load instead of rejecting the workbook; see Conditional Formatting.
  • Fixed whole-column and whole-row data validation ranges so saved workbooks reopen cleanly, while still accepting compact range forms from existing files; see Data Validation.
  • Fixed save robustness for workbooks whose ZIP archive comments contain bytes that look like archive directory markers.
  • Improved dependency tracking for very large worksheets so formulas and dependency-based operations can address wider used ranges reliably; see Formula Dependencies.

api/v2.47.0 - 2026-06-09

  • Improved chart rendering parity for supported chart families, including style and color resolution, plot-area layout, axes and scaling, bar/column/waterfall/funnel geometry, pie/doughnut geometry, line/area geometry, shadows, clipping, and crisp borders; see Excel Interchangeability and Visual Verification.
  • Fixed sortRange so saved workbooks reopen with the reordered rows, and improved copyRange with pasteType: "values" performance and table header refresh behavior; see Copy, Scale, And Sort Ranges, sortRange, and copyRange.

api/v2.46.0 - 2026-06-08

  • Added image APIs for listImages, getImage, addImage, setImage, and deleteImage; see Images and Drawings and xlsx API images.
  • Added box-and-whisker chart authoring and rendering, including quartile mode, mean markers, mean lines, inner points, and outlier points; see Box and Whisker Charts.
  • Improved radar and box-and-whisker chart rendering so axes, plot geometry, and fonts match Excel more closely; see Radar Charts.
  • Added data validation access from exec scripts and moved value checking to lint rule D043; see Data Validation and D043.
  • Increased the accepted workbook input size to 5 MB and reported invalid image bytes as validation errors.
  • Fixed a build race that could affect parallel release builds.

api/v2.45.0 - 2026-06-05

  • Added histogram and Pareto chart authoring and rendering, including bin settings and cumulative percentage lines; see Histogram and Pareto Charts.
  • Added top-view surface and wireframe surface chart authoring and rendering; see Surface Charts.
  • Added funnel chart authoring and rendering, including category labels, value labels, and legends; see Funnel Charts.
  • Fixed statistical chart bin option setters, text inference, and header inference.
  • Rejected invalid horizontal array constants in funnel chart inputs.
  • Fixed a JavaScript execution hang when await appeared inside nested block-scoped loops.

api/v2.43.0 - 2026-06-04

  • Added waterfall chart authoring and rendering, including totals and connector lines; see Waterfall Charts.
  • Added radar chart authoring and rendering for standard, marker, and filled radar variants; see Radar Charts.
  • Improved editing and serialization for modern Excel chart families.
  • Added getDataValidations, setDataValidations, and removeDataValidations; see Data Validation and xlsx API data validation.

api/v2.42.0 - 2026-06-03

  • Added stock chart authoring and rendering for HLC, OHLC, volume-HLC, and volume-OHLC charts; see Stock Charts.
  • Added multi-level category labels for chart axes; see Multi-Level Category Labels.
  • Matched calculation comparison precision to the precision used when saving workbooks; see Calc Verify Mode.

api/v2.41.0 - 2026-06-01

  • Improved chart rendering parity for plot-area fills and borders, theme tint transforms, category-axis crossing, manually positioned legends, display-unit labels, area chart spanBlanks, and secondary bar baselines; see Charts.

api/v2.40.0 - 2026-06-01

api/v2.39.0 - 2026-05-26

  • Allowed --batch to accept a JSON array in addition to the existing batch input shape; see witan xlsx exec.
  • Tolerated malformed relationship URIs and gzip-compressed EMF/WMF assets when opening real-world workbooks.

api/v2.38.0 - 2026-05-25

  • Reduced the renderer footprint while preserving the spreadsheet render surface.
  • Fixed mixed combo chart axis orientation and mixed-sign value-axis interval selection; see 2-D Cartesian and Combo Charts.
  • Added chart render regression coverage for supported chart families; see Development Validation.

api/v2.37.0 - 2026-05-22

  • Added bubble chart authoring and rendering; see Scatter and Bubble Charts.
  • Improved Excel-compatible column width conversion, default column width handling, text padding, text spacing, and rich text layout; see Styles and Layout.
  • Added modern chart style IDs, chart color-style parts, rich text chart titles, rounded chart corners, and chart group summaries in listCharts; see listCharts.
  • Fixed chart serialization for combo, scatter, line, secondary-axis, and other supported chart types.
  • Fixed sheet edits that could leave dependent formulas dirty instead of recalculated; see Automatic Recalculation.
  • Made workbook loading more consistent by removing a trimmed open path that could hide workbook state.

api/v2.36.0 - 2026-05-18

  • Added lint coverage for floating objects that cover cell content or other objects, and improved z-order handling; see D041 and D042.
  • Improved Google Sheets reliability with request chunking, transient-error retries, broader operation parity, and implicit sheet creation for setCells and addChart.
  • Improved chart read/save compatibility by aligning chart defaults with Excel and preserving chart structure more accurately; see Excel Interchangeability.
  • Bundled the formula function catalog so formula metadata is available without external files; see Supported Functions.
  • Made unhandled promise rejections fail exec scripts instead of being silently ignored; see CLI Scripting.

api/v2.35.0 - 2026-05-14

  • Added Google Sheets workbook support across exec, render, lint, and calc.
  • Added Google Sheets create support, OAuth credential commands, formula dialect handling, theme colors, hyperlinks, outline groups, and style coverage.
  • Added Google Sheets chart support for column, bar, line, and pie charts; see Supported Chart Families.
  • Made readRange, readRow, and readColumn return sparse results for large empty areas; see Reading.
  • Added font coverage for Google Sheets defaults and improved auto-fit behavior for hidden rows and columns.
  • Fixed deleteSheet so deleting the default sheet name is a no-op; see deleteSheet.
  • Fixed hidden legends so charts with legend.visible: false render without a legend.

api/v2.34.0 - 2026-05-13

  • Improved workbook save preservation so unedited parts remain stable across a second save.

api/v2.33.0 - 2026-05-12

  • Added the Office Scripts runtime surface for workbook, worksheet, range, range area, sorting, filters, data validation, tables, named items, bindings, comments, shapes, slicers, pivots, conditional formats, charts, and calculation; see Implemented Surface.
  • Improved Office Scripts parity for argument validation, object identity, range behavior, chart behavior, conditional formatting, data validation, table edits, protection, dates, and formula-like values; see Compatibility Gaps.
  • Added early Google Sheets support for reads, writes, linting, conditional formatting, workbook and sheet properties, defined names, dimensions, sorting, copying, auto-fit, and script evaluation.

api/v2.32.0 - 2026-05-11

  • Fixed a formula parser stack overflow on deeply nested input.

api/v2.29.0 - 2026-05-11

  • Fixed JavaScript async control flow around try, catch, and finally in exec scripts.

api/v2.28.0 - 2026-05-11

  • Added execution and rendering safety limits for oversized formulas, recursive JavaScript inputs, regex searches, calculation runs, address parsing, number formatting, images, drawings, charts, sparklines, and rendered tiles; see Render Limits and Calc Limits.
  • Fixed shared string corruption when saving workbooks.
  • Added support for Google Sheets-only formula syntax constructs.
  • Rejected unparseable formulas in setCells; see setCells.
  • Improved cleanup for rendering resources and clamped out-of-bounds drawing dimensions before rendering.
  • Added sparse conditional-format evaluation and caps for search operations; see Conditional Formatting Rendering and Find Cells.

api/v2.27.0 - 2026-05-08

  • Added pivot table calculation support.
  • Added formula support for PERCENTOF and TRIMRANGE; see Supported Functions.
  • Tolerated malformed legacy workbook metadata when opening .xlsx files.
  • Fixed async for...of execution with destructuring in exec scripts.
  • Cleared cached values for empty formulas and preserved skipped comment shapes during save.

api/v2.26.0 - 2026-05-01

  • Made seeded RAND, RANDBETWEEN, and RANDARRAY deterministic across sheets and repeated calls; see Formula Features.
  • Added row-height clipping lint rule D034; see D034.
  • Made --seed and --now deterministic for exec script evaluation.

api/v2.25.0 - 2026-04-30

  • Added column-width clipping lint rule D032; see D032.
  • Quoted sheet names in lint diagnostic locations.

api/v2.24.0 - 2026-04-29

  • Added calculation-error lint rule D004; see D004.
  • Shared spreadsheet behavior across workbook operations and verification commands for more consistent results.
  • Fixed exec clear writes so cleared cells persist when saving.

api/v2.23.0 - 2026-04-28

  • Made freeze rows and freeze columns readable and writable through sheet properties; see Sheet Properties and setSheetProperties.
  • Embedded deterministic workbook fonts for rendering without relying on host fonts; see Render Fidelity.
  • Added missing style properties and improved row and column auto-fit; see Autofit.
  • Extended sheet auto-creation to more write operations.
  • Added deterministic --seed and --now options for volatile functions and byte-identical saved output; see Formula Features.
  • Improved data validation parsing, saving, and evaluation; see Data Validation Notes.
  • Improved pivot table parsing and saving.

api/v2.21.0 - 2026-04-20

  • Improved read performance on large sheets by avoiding unnecessary row and column materialization; see Reading.
  • Honored inherited row heights and implicit column visibility in read results; see Row And Column Layout.
  • Improved partial recalculation for volatile formulas and dynamic arrays; see Range Seeding.

api/v2.20.0 - 2026-04-20

  • Preserved linked number formats on horizontal bar axes and point data labels; see 2-D Cartesian and Combo Charts.
  • Preserved dynamic-array spill-anchor references as xlfn.ANCHORARRAY; see Array And Data-Table Cells.
  • Marked the calculation chain dirty when formulas shift during structural edits.
  • Added discontiguous range support for conditional formatting rules; see Multi-Area Rules.
  • Fixed XMATCH behavior and volatile recalculation propagation.

api/v2.19.0 - 2026-04-20

  • Aligned witan xlsx exec, calc, lint, and render command behavior with the CLI contract; see witan xlsx.
  • Fixed formula invalidation after structural edits such as sheet renames, dynamic ranges, recursive defined names, structured references, and spill ranges; see Formula Dependencies.
  • Improved chart style resolution, theme color fallbacks, data label styling, error bar colors, up/down bar colors, and leader lines; see Public Chart Model.

api/v2.18.1 - 2026-04-13

  • Improved chart save/read behavior by populating string and number caches, resolving uncached chart values from workbook cells, and falling back to chart formula caches when needed; see Excel Interchangeability.

api/v2.18.0 - 2026-04-13

  • Added shift-cell support for data-table formulas and array formulas; see Array And Data-Table Cells.
  • Fixed save behavior for charts and floating objects.
  • Preserved unsupported chart group order, chart object order, and workbook MIME metadata during save.

api/v2.16.0 - 2026-04-08

  • Added chart methods to exec scripts; see addChart, setChart, and deleteChart.
  • Fixed chart and table regressions in exec.
  • Rewrote ListObject formulas with the formula parser so only the target table is changed; see Structured References.
  • Preserved array formula type when deleting tables.
  • Matched headerless structured references to Excel semantics.

api/v2.15.0 - 2026-04-07

  • Added chart authoring APIs and preserved unmodeled chart XML, title relationships, visibility, drawing order, and scatter chart styling; see addChart and setChart.
  • Added ListObject table authoring; see Add A Table and addListObject.
  • Added what-if data table authoring; see What-If Data Tables and addDataTable.
  • Added validation for table placement, totals rows, headerless tables, calculated columns, and overlapping data tables.
  • Added calculation support for Excel's implicit intersection operator @; see Formula Features.

api/v2.14.0 - 2026-04-03

api/v2.13.0 - 2026-04-02

  • Added the first embedded chart model and renderer for supported Excel chart families; see Supported Chart Families.
  • Improved chart rendering for styles, titles, series lines, exploded pie charts, dash patterns, axis titles, gridlines, area baselines, legends, and stacked bars.
  • Preserved drawing z-order when copying charts; see Copy, Scale, And Sort Ranges.
  • Improved array-aware lazy evaluation for IF, IFERROR, IFNA, IFS, SWITCH, and CHOOSE; see Formula Features.

api/v2.12.2 - 2026-04-02

api/v2.12.1 - 2026-04-02

  • Added sheet visibility writes through setSheetProperties; see Sheet Properties.
  • Added wildcard lookup support for VLOOKUP and HLOOKUP; see Lookup Functions.
  • Improved Excel parity for BESSELI, BESSELJ, BESSELK, BESSELY, complex-number engineering outputs such as IMCSC and IMCSCH, and statistical functions that depend on inverse-normal or error-function calculations; see Engineering Functions and Statistical Functions.

api/v2.12.0 - 2026-04-01

  • Renamed scenarios to sweepInputs and improved programmatic sensitivity sweeps; see Programmatic Sweeps and sweepInputs.
  • Reported full precedent sets for what-if data table cells; see Calculation Behavior.
  • Added evaluateScript, moving exec script execution into the workbook engine for better access tracking and error reporting; see Access Tracking.
  • Improved findCells, findRows, getSheetProperties, dependency lookups, and viewCells performance.
  • Used bounded regex evaluation for user-supplied and internal regexes; see Find Cells.
  • Evaluated conditional formatting sparsely in viewCells and previewStyles; see Conditional Formatting Rendering.
  • Added calculation support for 3D references, CELL, COUNTIF criteria, database functions with external ranges, culture-specific evaluation, and broader Excel-compatible coercion; see Formula Features.
  • Improved Excel parity for CONVERT aliases d, s, and L; COUNTIF/SUMIF/AVERAGEIF tilde escaping and criteria length; LINEST, LOGEST, TREND, and GROWTH regression statistics; REGEXREPLACE negative occurrence handling; and 1x1 lambda results in MAP, SCAN, BYROW, BYCOL, MAKEARRAY, and REDUCE.
  • Changed the default calculation culture to en-US.

api/v2.11.0 - 2026-03-24

  • Resolved table names, structured references, and defined names in more address-taking operations; see Structured References and Defined Names.
  • Added object and data table metadata to listSheets; see listSheets.
  • Added per-call timeouts for regex searches.
  • Added dynamic array support in setCells, including spill ranges, the A1# spill operator, and recalculation when blockers are removed; see Array And Data-Table Cells.
  • Added legacy CSE array formula support.
  • Made findAndReplace, sortRange, and copyRange safe around array formulas; see findAndReplace, sortRange, and copyRange.
  • Calculated uncached formula cells more reliably when opening workbooks.

api/v2.10.2 - 2026-03-20

  • Fixed _xlop substitution in LAMBDA formulas.

api/v2.10.0 - 2026-03-20

  • Added LET and LAMBDA formula evaluation, including inline lambda invocation and named lambda dependency tracking; see Lambda Functions.
  • Added higher-order dynamic-array functions REDUCE, MAP, SCAN, MAKEARRAY, BYROW, and BYCOL.
  • Added evaluation timeouts and recursion guards for LAMBDA formulas.
  • Normalized _xlpm, _xlop, and _xlfn formula prefixes for display and save behavior.
  • Resolved external-link formulas from cached workbook values.

api/v2.9.0 - 2026-03-19

  • Added workbook iterative calculation properties and preserved disabled iteration settings on save; see Workbook Properties.
  • Added what-if data table formula evaluation; see What-If Data Tables.
  • Fixed NUMBERVALUE and reference handling in formula functions.
  • Normalized formula display output, including leading = and _xlfn prefix handling.
  • Accepted formula inputs with or without a leading =, and with or without stored prefixes such as _xlfn; this applies to setCells, evaluateFormulas, and formula search workflows.

api/v2.8.0 - 2026-03-17

  • Matched Excel circular-reference behavior more closely when iterative calculation is disabled; see Formula Features.
  • Added sheet-level precedents and dependents to listSheets; see listSheets.
  • Omitted hidden or out-of-print-area rows and columns from describeSheet structure maps; see Describe Sheets.
  • Improved viewCells and previewStyles performance; see previewStyles.
  • Fixed visibility handling for hidden rows and columns, including narrow explicit columns.

api/v2.7.0 - 2026-03-16

  • Reworked workbook loading, calculation, dependency tracing, linting, and save behavior around a single workbook model.
  • Added array formula and spill support; see Array And Data-Table Cells.
  • Standardized color values across style, chart, conditional formatting, and rendering operations.
  • Improved save/open round-trip fidelity for drawings, styles, worksheets, shared strings, sparklines, comments, data validations, pivot caches, workbook protection, links, themes, and related workbook parts.
  • Preserved gradient fills and conditional-format rule priority; see Conditional Formatting Notes.
  • Replaced detectTables with describeSheet structure maps for detected tables, compact cell-type maps, row collapsing, and inline label annotations; see Describe Sheets and describeSheet.
  • Added conditional formatting icon-set style metadata on read, while icon-set writes remained limited; see Supported Rules.
  • Bounded whole-row and whole-column ranges to the used range in more operations.
  • Added broad Excel function coverage across statistical, financial, engineering, date, lookup, and text categories, including LINEST, LOGEST, TREND, GROWTH, REGEXEXTRACT, REGEXREPLACE, REGEXTEST, Bessel functions, and complex-number IM* functions; see Supported Functions.
  • Improved performance for whole-column styles, used-range discovery, and save preservation.

api/v2.6.0 - 2026-03-07

  • Added sparkline rendering; see What Renders.
  • Added autoFitColumns, sortRange, findAndReplace, and copyRange; see Autofit and Copy, Scale, And Sort Ranges.
  • Added notes, threaded comments, and hyperlinks to readRange and setCells; see Notes And Hyperlinks and Threaded Comments.
  • Added conditional formatting CRUD APIs; see Conditional Formatting and setConditionalFormatting.
  • Added the first sensitivity-sweep operation, later renamed to sweepInputs; see Programmatic Sweeps.
  • Fixed workbook compatibility issues around notes, pictures, pivot caches, auto filters, data validations, conditional formatting, table overlap checks, used rows and columns, defined names, shared formulas, and pivot table extensions.
  • Added iterative calculation settings and configurable render feature support.

api/v2.5.0 - 2026-03-02

  • Improved font lookup and sped up wide-sheet views.

api/v2.2.0 - 2026-02-24

  • Fixed setCells behavior and moved address escaping into the server-side parser; see setCells.
  • Added address-filtered calculation and avoided unnecessary reopen-after-save work in single-operation requests; see Range Seeding.
  • Added changed-cell lists to calc and setCells results; see Calc JSON Output.
  • Added lint visibility metadata and reduced false positives for empty-cell coercion and numeric-range rules; see D003 and D005.

api/v2.1.0 - 2026-02-17

  • Added cell-edit endpoints and the viewSheet operation.
  • Rendered tiles off the main thread and lazy-loaded non-active sheets in the viewer path.
  • Added render zoom support; see Render CLI Reference.
  • Improved text rendering with font metrics, vertical alignment, text decorations, justified and distributed alignment, and in-cell data bars; see Styles and Layout.

api/v2.0.0 - 2026-02-12

api/v1.7.0 - 2026-02-11

  • Auto-created missing sheets in setCells; see Writes.
  • Added rendering for gradient fills, superscript, subscript, shrink-to-fit, fill alignment, fill patterns, images, and shapes; see What Renders.
  • Added an open option to skip preprocessing when sanitization and calculation are not needed.
  • Improved render geometry for zero-height rows, zero-width columns, custom row heights, Excel-sized cells, and sparse tile lookup.
  • Improved tile rendering performance and embedded image quality.

api/v1.6.0 - 2026-02-04

  • Improved table detection for data tables, pivot tables, categorical headers, multiple tables per sheet, transposed tables, and overlapping regions; see Describe Sheets.
  • Added numberType to readRange and readCell; see Typed Reads.
  • Improved number-format metadata lookup performance; see Number Formats.

api/v1.5.0 - 2026-01-30

  • Evaluated conditional formatting in viewCells and previewStyles; see Conditional Formatting Rendering.
  • Rendered colors defined in number formats; see Number Formats.
  • Resolved built-in style IDs consistently across number-format paths.

api/v1.4.0 - 2026-01-30

api/v1.3.0 - 2026-01-29

  • Added support for multiple open workbooks in one spreadsheet session.
  • Added tile rendering and exact-range previews; see previewStyles.
  • Rendered hyperlinks in workbook previews; see Notes And Hyperlinks.
  • Improved Excel-compatible number formatting, locale handling, fraction formatting, and formatting performance; see Number Formats.

api/v1.2.0 - 2026-01-26

  • Emitted default vertical and horizontal alignment more consistently; see Cell Styles.
  • Fixed formula evaluation when the used range reached Excel's maximum column.
  • Fixed concurrent workbook access issues.

api/v1.1.0 - 2026-01-23

  • Worked around malformed date formats with a single unclosed quote.
  • Aligned style representations across read, write, and render paths; see Styles and Layout.

api/v1.0.0 - 2026-01-22

  • Introduced the spreadsheet workbook engine for JSON-RPC scripting and workbook operations.
  • Added explicit save, formula graph traversal, workbook validation, calculation results on edits, incremental calculation, iterative calculation, linting, preview rendering, style editing, property editing, and setCells; see xlsx API.
  • Added table detection, table lookup, formula evaluation, dependency tracing, search ranking, accent-insensitive text matching, TSV reads, print-area metadata, and tolerant range addressing; see Search and Discovery and Formula Dependencies.
  • Improved workbook sanitization, hidden-sheet ordering, error-cell reporting, locale handling, and non-finite numeric value handling.