Documentation Gap
The versioning documentation (docs/tables/versioning.mdx) explains table versions, time-travel, and retention—but only with Python examples. TypeScript and Rust SDKs have full versioning support (version(), checkout(), restore(), listVersions(), tags()) but zero documentation examples.
Description
Versioning documentation only includes Python examples despite full TypeScript and Rust SDK support.
- Both TypeScript (
nodejs/lancedb/table.ts) and Rust (rust/lancedb/src/table.rs) SDKs expose complete versioning APIs: version(), checkout(), restore(), listVersions(), and tags()
- All mutation methods (
add, update, delete, schema changes) return version numbers in both SDKs
- The versioning docs at
docs/tables/versioning.mdx only import Python snippets (PyVersioningBasicSetup, etc.) — no TsVersioning* or RsVersioning* snippets exist in docs/snippets/tables.mdx
- Users on Discord have asked whether JS supports versioning because the docs don't show it
How to Validate
- Review Discord thread where user asks about versioning in JS and maintainer confirms version file creation semantics.
- Verify versioning.mdx only has Python examples (PyVersioning* imports, no TsVersioning* or RsVersioning*).
- Confirm TypeScript SDK has full versioning API (version, checkout, restore, listVersions, tags methods).
- Confirm Rust SDK has full versioning API (version, checkout, checkout_tag, restore, list_versions, tags methods).
- Check snippets/tables.mdx for missing TsVersioning* and RsVersioning* exports.
Affected Files
docs/tables/versioning.mdx
nodejs/lancedb/table.ts
rust/lancedb/src/table.rs
docs/snippets/tables.mdx
Created by Oqoqo