Skip to content

feat(tables): add layout property to table schemas - #228

Merged
hotdata-automation[bot] merged 2 commits into
mainfrom
openapi-update-41045659542
Nov 6, 2026
Merged

hotdata-automation[bot] merged 2 commits into
mainfrom
openapi-update-41045659542

Conversation

@hotdata-automation

Copy link
Copy Markdown
Contributor

Auto-generated from the updated HotData OpenAPI spec.
Source: https://github.com/hotdata-dev/www/pull/494

@hotdata-automation
hotdata-automation Bot requested a review from a team as a code owner October 30, 2026 11:06
@hotdata-automation
hotdata-automation Bot enabled auto-merge (squash) October 30, 2026 11:07
@hotdata-automation
hotdata-automation Bot requested review from rohan-hotdata and removed request for a team October 30, 2026 11:07
connection: StrictStr
constant_per_key: List[StrictStr] = Field(description="Columns the table declares constant for a given key: for every row, any other row sharing its key holds the same value of these columns. Declaring this lets a keyed mutation narrow its search for prior versions to the values the upload carries. Empty when none is declared, which is the unrestricted search. Unlike `partition_by` and `sorted_by` this is NOT fixed at creation — it changes only which files a mutation opens, never how rows are written — so read it here rather than assuming a declaration took effect.")
last_sync: Optional[StrictStr] = None
layout: TableLayout = Field(description="The table's storage layout: `analytical`, or `point_lookup`, whose small data pages make fetching its rows by id cheap. Fixed at creation.")

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: Release this SDK version only after the server change from hotdata-dev/www#494 is deployed (not blocking).

TableInfo.layout is a required field with no default. A server response without layout makes TableInfo.from_dict raise a pydantic ValidationError. That error breaks the information schema calls and every other response that embeds TableInfo. If the server already sends layout for all tables, including tables from external connections, no action is needed.

claude[bot]
claude Bot previously approved these changes Oct 30, 2026

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Context note: the since-last-review diff was truncated. The full PR diff (2 files: CHANGELOG.md, tests/test_model_extra_forbid.py) was complete and was reviewed in full. The truncated part of the since-diff is content merged from main.

@hotdata-automation
hotdata-automation Bot merged commit 9aff24d into main Nov 6, 2026
5 checks passed
@hotdata-automation
hotdata-automation Bot deleted the openapi-update-41045659542 branch November 6, 2026 16:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant