Repository navigation
Highlights
-
Annotations at a million. A table holds a million annotations:
- lookups take microseconds;
- a scroll step stays within 2 ms of the same table without annotations;
- a save writes the annotations only when they change.
F8/Shift+F8(orAlt+↓/Alt+↑) go from one annotation to the next, andactions.showAnnotatedRows()shows only the rows that have any. -
Gutters that scroll. Hidden columns sit in one row of chips that scrolls sideways, as active filters do, so hiding hundreds of columns no longer takes the table's height. Both rows glide to the chips a change adds.
-
A new demo. The demo opens on the table, reads Excel workbooks, and lists every key and gesture on a Shortcuts page. The examples share its look.
Upgrading
Most integrations upgrade with a version bump. These cases can break one:
- A stylesheet that styles the filter bar or the hidden-columns gutter by their structure. Their buttons moved into the rows' new scrollers,
.dt-filter-scrolland.dt-hidden-scroll. - A TypeScript
switchexhaustive overfilter.type. It needs a case for the new'annotated'filter. - Code that relies on the old annotation behaviour:
- code that reads
getByCellfor a whole row or column: it now returns the exact intersection at one cell; - code that asserts on annotation events:
loadJSON(file, 'replace')firescleared, thenadded; - running 0.9 against sessions 0.10 saved: annotations now persist in a second IndexedDB database,
dt-annotations, and 0.9 restores those sessions without them.
- code that reads
The 0.9 → 0.10 migration guide walks through each of these, and lists the other behaviour changes upgraders may notice.
Known issues
- Two tabs writing at once. Two tabs that write the same table's annotations at the same moment can lose them. Otherwise the last tab to write wins.
- Deep sorted jumps. An
F8jump that has to query DuckDB, deep in a sorted ten-million-row view, takes about a second. A jump among the rows the grid holds takes milliseconds. - 0.9.0's known issues still apply. Nothing in 0.10.0 changes them: the
icuextension needed offline, a seventh fractional-second digit in CSV and JSON, and the chart and brush issues listed in the v0.9.0 notes.
Full list of changes: CHANGELOG.md.