Grammar: with-pk column specs use name(type), matching add column
`create table … with pk` parsed column types as `name:type`,
while `add column` uses `name(type)`. Unify on the parens
form so column-type syntax is consistent across the DSL:
create table T with pk id(serial), name(text)
Only `COL_SPEC` changes (`:` → `( … )`); `build_create_table`
reads columns by role, so it is unaffected. The `:` that
separates table from column in `add column` / `drop column`
is unchanged. Sweeps the test suite, the typing-surface
matrix (two `after_colon` cells renamed to `after_paren`,
4 snapshots regenerated), the friendly catalog's usage
templates, ADR-0009's example, and requirements.md.
1039 passing / 0 failing / 1 ignored; clippy clean.
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
//! Format: one record per line, three pipe-separated fields:
|
||||
//!
|
||||
//! ```text
|
||||
//! 2026-05-07T14:30:12Z|ok|create table Customers with pk id:serial
|
||||
//! 2026-05-07T14:30:12Z|ok|create table Customers with pk id(serial)
|
||||
//! ```
|
||||
//!
|
||||
//! Status is always `ok` in v1; failed commands are not
|
||||
@@ -196,12 +196,12 @@ mod tests {
|
||||
#[test]
|
||||
fn record_format() {
|
||||
let line = format_record(
|
||||
"create table Customers with pk id:serial",
|
||||
"create table Customers with pk id(serial)",
|
||||
"2026-05-07T14:30:12Z".to_string(),
|
||||
);
|
||||
assert_eq!(
|
||||
line,
|
||||
"2026-05-07T14:30:12Z|ok|create table Customers with pk id:serial\n",
|
||||
"2026-05-07T14:30:12Z|ok|create table Customers with pk id(serial)\n",
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user