geldata / geldata/gel-cli

DDL snip-it output from create-migration seems confusing

Open
#255 1 comment 0 reactions 0 assignees View on GitHub
needs decision
Dominant language
Rust
Stars
175
Forks
32
PR merge metrics
No merged PRs in 30d

Description

The DDL snip-its that are sometimes printed when a migration is created seems confusing. It feels like just that snip-it is supposed to mean something to me. Which is strange behavior if the average user is not supposed to have much knowledge of DDL.

```bash
$ edgedb -I workout create-migration
did you create object type 'default::Exercise'? [y,n,l,c,b,s,q,?]
y
did you create scalar type 'default::SetIndex'? [y,n,l,c,b,s,q,?]
y
did you create object type 'default::Set_'? [y,n,l,c,b,s,q,?]
y
did you create object type 'default::Workout'? [y,n,l,c,b,s,q,?]
y
Following extra DDL statements will be applied:
ALTER TYPE default::Set_ {
CREATE LINK workout := (. datetime {
constraint exclusive;
default := datetime_current();
}
multi link sets -> Set_ {
constraint exclusive
};
}

type Exercise {
required property name -> str {
constraint exclusive;
constraint min_len_value(1);
};
}

scalar type SetIndex extending sequence;

type Set_ {
link workout := . Exercise;
required property index -> SetIndex {
constraint exclusive;
constraint min_value(0);
};
required property weight -> float32;
required property reps -> int16 {
constraint min_value(0);
};
}
};
```

- EdgeDB Version: package:1.0b2.dev5478+g25318fe0e-2021022200~focal.nightly
- EdgeDB CLI Version: edgedb-cli 1.0.0-beta.1
- OS Version: Linux 5.8.0-44-generic #50~20.04.1-Ubuntu SMP Wed Feb 10 21:07:30 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce `edgedb -I workout create-migration` with the schema shown in the report and inspect the create-migration output path. Compare the DDL snippet and approval note with the intended user-facing explanation; done means the output is understandable to users without DDL knowledge.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
cli
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.