Search
Search documentation
Changelog
Updated Oct 28, 2026
0.7.0 (2026-10-28)
Features
- add local-date-time and local-time, and require a UTC offset in date-time and time (cac2830)
- desktop: show column/extra errors (4fe5d2f)
- python: accept a JSON Schema 2020-12 subset as a table schema (4fe5d2f)
- python: read date-time and time values with an offset as UTC and add the local types (cac2830)
- standard: accept a JSON Schema 2020-12 subset as a table schema (4fe5d2f)
- standard: define the temporalFormat specifiers and the offset rule per temporal type (cac2830), closes #42
- standard: mark removed datasets in a catalog with del (9837583)
- typescript: accept a JSON Schema 2020-12 subset as a table schema (4fe5d2f)
- typescript: mark removed datasets in a catalog with del (9837583)
- typescript: read date-time and time values with an offset as UTC and add the local types (cac2830)
Bug Fixes
- desktop: show local date-times without shifting them into the viewer's time zone (cac2830)
- extend the testsuite and fix the divergences it found (548b4da)
- python: accept a utc offset in a date-time without a temporalFormat (548b4da)
- python: add the json pointer helpers the json table plugin imports (548b4da)
- python: apply table-level missing values when validating (548b4da)
- python: check multipleOf with exact decimal arithmetic (548b4da)
- python: check self-referencing and unresolved foreign keys (548b4da)
- python: follow RFC 6901 in JSON pointers of schema errors (548b4da)
- python: give a JSON file with a top-level object no table (548b4da)
- python: infer data schemas in the TypeScript shape (548b4da)
- python: load csv files with a crlf lineTerminator (548b4da)
- python: make a list with an unparsable item a cell/type error (548b4da)
- python: pass inference options from the dataset infer command (548b4da)
- python: pass table schema options through dataset and resource inference (548b4da)
- python: read csv header rows as the spec describes (548b4da)
- python: read json tables as the spec describes (548b4da)
- python: reject a spreadsheet dialect that sets both sheetName and sheetNumber (6de7a0d)
- python: render a whole-number bound without a trailing .0 (548b4da)
- python: report column errors before cell errors (548b4da)
- python: report missing cells in duration, geometry and JSON columns (548b4da)
- python: require every part of a textual resource to be utf-8 (548b4da)
- python: transliterate non-ascii letters in inferred resource names (548b4da)
- python: treat a column without a type as unknown (548b4da)
- python: validate descriptors against their profile, then the core model (b755f85)
- python: validate empty JSON documents and report non-JSON data (548b4da)
- standard: accept any value in a column without a type (ea97c9f)
- standard: allow and ignore unknown properties in every descriptor (88c8ddd)
- standard: allow categories and withOrder only on categorical columns (57f7228)
- standard: decide foreign key column types, long JSON array rows, whitespace JSONL lines, header row order and multipart header checks (2e1df43)
- standard: define header carry-forward, object JSON files and multipart textual (548b4da)
- standard: enforce date-time, date, URI and JSON pointer shapes with patterns (f32eb88)
- standard: forbid a data schema on multipart data (de3aaef)
- standard: give absent dialect and table schema properties defaults instead of inference (148d1c8)
- standard: improve standard pipeline (#52) (407d938)
- standard: number header and comment rows by parsed row, not by line (7cca9d3)
- standard: pin down table value checks, null foreign keys and error order (548b4da)
- standard: read a quoted empty csv cell as an empty string (791326f)
- standard: reject a scheme in an internal path and allow names starting with two dots (c9b50e6)
- standard: reject a spreadsheet dialect that sets both sheetName and sheetNumber (6de7a0d)
- standard: require a file dialect's format (c58361f)
- standard: require a lowercase hex digest, and no integrity on inline data (3a0af71)
- standard: require table schema keys to name columns and primary key cells to be present (01e5341)
- standard: require types, not resourceType, in the DataCite and GREI extensions (a713d91)
- standard: require unique resource names and literal missing value matching (4d07c6d)
- standard: state that decimal bounds are JSON numbers (8a3c31c)
- standard: state what a resource without data and commentRows on json objects mean (955790c)
- standard: strip only the prefix and suffix of a withText number (3a92d39)
- standard: sync a catalog with a high-water mark, rereading ties (93af4f1)
- standard: tighten single characters, sheet numbers, key columns and paths (b87487d)
- standard: validate descriptors against their profile, then the core model (b755f85)
- standard: write the decided table, dialect, dataset, data schema and catalog rules into the specs (4a4f12c)
- typescript: accept an empty cell in a column without a type (548b4da)
- typescript: accept an integer column where the schema declares number (548b4da)
- typescript: accept any value in a column without a type (ea97c9f)
- typescript: accept file names starting with two dots and reject internal paths with a scheme (c9b50e6)
- typescript: allow categories and withOrder only on categorical columns (57f7228)
- typescript: apply minimum and maximum only to numeric columns (548b4da)
- typescript: apply table-level missingValues when validating (548b4da)
- typescript: bundle the catalog and dataset profiles that allow unknown properties (88c8ddd)
- typescript: bundle the file dialect profile that requires format (c58361f)
- typescript: carry header labels forward across empty cells (548b4da)
- typescript: check key columns, foreign key lengths and null key cells (01e5341)
- typescript: check multipleOf with exact decimal arithmetic (548b4da)
- typescript: give decimal columns a precision and scale so polars does not abort (548b4da)
- typescript: keep declared textual and name resources by position in inference (548b4da)
- typescript: load any JSON document as resource data (548b4da)
- typescript: load CSV files with a crlf lineTerminator (548b4da)
- typescript: load sqlite INTEGER columns as integers (548b4da)
- typescript: make a list with an unparsable item a cell/type error (548b4da)
- typescript: match integer categories against the text of a CSV cell (548b4da)
- typescript: parse dates, times and date-times exactly (548b4da)
- typescript: read a declared dialect with defaults, sniffing only without one (148d1c8)
- typescript: read jsonPointer as an RFC 6901 pointer (548b4da)
- typescript: reject a data schema on multipart data instead of checking only its first part (de3aaef)
- typescript: reject a spreadsheet dialect that sets both sheetName and sheetNumber (6de7a0d)
- typescript: reject repeated resource names and check self foreign keys of unnamed resources (4d07c6d)
- typescript: report a column pattern the table engine cannot compile (f32eb88)
- typescript: report missing cells in duration, geometry and JSON columns (548b4da)
- typescript: require a lowercase hex digest, and no integrity on inline data (3a0af71)
- typescript: require every part of a textual resource to be utf-8 (548b4da)
- typescript: skip foreign keys with a null part (548b4da)
- typescript: strip only the text around a withText number (3a92d39)
- typescript: tighten single characters, sheet numbers, key columns and paths (b87487d)
- typescript: validate descriptors against their profile, then the core model (b755f85)
0.6.1 (2026-09-05)
Bug Fixes
- dataset: correct the multipart resource and integrity wording (7edf233)
0.6.0 (2026-09-04)
Features
- landing: replace stack section with Datist attribution (14eb3ba)
Bug Fixes
0.5.0 (2026-02-09)
Features
0.4.0 (2026-02-06)
Features
0.3.0 (2026-01-22)
Features
0.2.3 (2026-01-22)
Bug Fixes
- Fixed dialect spec (f76101b)
0.2.2 (2026-01-22)
Bug Fixes
- Fixed dialect profile (175d3b4)
0.2.1 (2026-01-22)
Bug Fixes
- Fixed dialect profile (3465c2d)
0.2.0 (2026-01-22)
Features
Created with โค and Livemark