chore(databases): clarify default_connection_id usage and catalog attachment rules - #148
hotdata-automation[bot] wants to merge 1 commit into
Conversation
|
|
||
| ### Changed | ||
|
|
||
| - chore(databases): clarify default_connection_id usage and catalog attachment rules |
There was a problem hiding this comment.
Record the breaking changes under ## [Unreleased], using the **Breaking:** prefix this file already uses (CHANGELOG.md:56, :104).
This regen renames the public field key_determines to constant_per_key on AddManagedTableDecl, AddManagedTableRequest and DatabaseDefaultTableDecl. key_determines shipped as public API in 0.15.0 (CHANGELOG.md:92). Two more source-breaking changes ride along: TableInfo::new gains a required constant_per_key argument, and JobType gains TableConstantsUpdate without carrying #[non_exhaustive].
Failure scenario: a release preparer reads the one vague bullet and runs ./scripts/release.sh prepare patch, shipping 0.18.2. A downstream crate depending on hotdata = "0.18" picks that patch up automatically. That crate then fails to compile, with struct AddManagedTableRequest has no field named key_determines and a non-exhaustive match on JobType.
| pub updated_at: String, | ||
| /// How precisely this vector index stores each number of a vector, when it was created with an explicit precision. Absent means it stores at the same precision as the column, which is the default. Also absent for BM25 and sorted indexes. | ||
| #[serde(rename = "vector_precision", skip_serializing_if = "Option::is_none")] | ||
| pub vector_precision: Option<String>, |
There was a problem hiding this comment.
super nit: vector_precision is Option<String> here, but Option<Option<String>> in IndexInfoResponse (src/models/index_info_response.rs:45-52). Both fields carry identical doc text, so the spec marks one schema nullable and the other not. A caller that reads an index from the list endpoint and from the get endpoint writes two different shapes for one value. Align the two schemas upstream if the divergence is unintended. (not blocking)
There was a problem hiding this comment.
Review
Blocking Issues
CHANGELOG.md:12— the[Unreleased]notes do not record this regen's breaking changes. The public fieldkey_determinesbecomesconstant_per_keyonAddManagedTableDecl,AddManagedTableRequestandDatabaseDefaultTableDecl.TableInfo::newgains a requiredconstant_per_keyargument.JobTypegainsTableConstantsUpdateand carries nonon_exhaustiveattribute.
Action Required
Add a **Breaking:** bullet under [Unreleased]. Name the rename, the TableInfo::new signature change, and the new JobType variant. RELEASING.md states the release tooling picks the bump from these notes. Without that note, a prepare patch run ships 0.18.2. Cargo then hands the compile break to every downstream crate pinned to hotdata = "0.18".
The generated code itself matches the spec change and needs no edit.
Auto-generated from the updated HotData OpenAPI spec.
Source: https://github.com/hotdata-dev/www/pull/430