This changelog summarizes new features and breaking changes in EdgeDB 1.0 alpha 3 “Proxima Centauri”.
The EdgeDB command-line tools are now written in Rust. The tools are a single binary now and can run on multiple different platforms, including Windows.
A few more commands have been added to REPL:
\dump FILENAME dump current database into a file \restore FILENAME restore the database from file into the current one \s, \history show history \e, \edit [N] spawn $EDITOR to edit history entry N then use the output as the input \set [OPTION [VALUE]] show/change setting \set Show setting descriptions (without arguments)
Existing introspection commands have been slightly updated to use a different way of supplying command options. Commands now also have long-form names that are more human-readable.
Also, there are a few settings that control the look and feel of the
REPL (and can be changed via the
expand-strings Stop escaping newlines in quoted strings implicit-properties Print implicit properties of objects: id, type id input-mode Set input mode. One of: vi, emacs introspect-types Print type names instead of `Object` in default output mode (may fail if schema is updated after enabling option) limit Set implicit LIMIT. Defaults to 100, specify 0 to disable output-mode Set output mode. One of: json, json- elements, default, tab-separated verbose-errors Print all errors with maximum verbosity
Allow tuple arrays in schema definitions (73125882).
Get rid of
schema::CompoundType in favor of
schema::Constraint no longer has
std::Object the implicit base type for all user-defined
object types only.
std::BaseObject the root type for all object types both
user-defined and system object types.
1e100n format as a valid
bigint constant rather than
Make self-referencing (recursive) aliases forbidden.
Fix dependency tracking affecting index creation (#1181).
Fix derivation of link targets in certain cases of multiple inheritance (52c6b2d4).
Fix handling of ad-hoc tuples (#1255).
Fix incorrect implicit limit injection in subqueries in computed expressions (#1271).
Prohibit database names longer than 63 characters (#1158).
Prohibit duplicate elements in shapes (#1368).
Convert EdgeQL lexer (#1178)
Convert GraphQL parser to Rust and perform constant extraction (#1299).
Constant extraction from EdgeQL queries (#1356)
Make it possible to use different EdgeDB servers connected to the same Postgres cluster (#1197).
JSON_ELEMENTS IO format for responses