Releases: apskhem/dbml-rs
Releases · apskhem/dbml-rs
v1.0.0
- Allowed note blocks at the root schema sticky notes
- Added notes on table groups spec
- Added table group settings spec
- Improved tests so they compare against the
.ron
files in the out folder (set theUPDATE_DBML_OUTPUT=1
to have the test suite update the.ron
files)- Enabled test running for the mysql/mssql/postgres importer files
- Added in double-quoted string in attributes
- Needed for the DB importer files as the index names get exported in double-quotes
- Improved column type handling to support
- Schemas in the
col_type
(e.g.schemaB.my_enum
when using a enum from another schema) []
placement on unquoted type names (e.g.char[]
ormy_enum[]
)[]
placement after the quoted type name (e.g."character varying"[]
)- Mixed quoting with schema (e.g.
"schemaB"."my_enum"
orschemaB."my_enum"
etc.)
- Schemas in the
- Added support for unspecified database rather than just forcing to use
PostgresQL
during AST analysis - Fixed raw identifier parsing with an empty space inside
- Changed the
project
method fromast::schema::SchemaBlock
toprojects
as it can exist as multiple blocks without applying analysis - Updated minor documentation
Big kudos to @urkle's contribution.
Feature Stabilization Pre-Release
- Added
span_range
coverage for all AST nodes. - Added partial documentation.
- Added name support for
RefBlock
. - Added support for
no_std
. - Added support for all block settings to accept custom attributes and properties.
- Added a feature flag of
utils
for various utility functions after parsing. - Added validation on a default value as it must match its specified type.
- Updated relation validation on one-to-many, many-to-one, and many-to-many.
- Updated a foreign key must refer to either a primary key or a unique key.
- Updated error handling for the parser. All errors that produced from both
parse
andanalyze
can be handle gracefully. - Gradually changed the structure of the parsed AST as it need to contain
span_range
information in each node. - Changed modules structure. Now all AST nodes are available to use within the
ast
module without specifying each group like the previous version. - Changed the analyzer function. The analyzer function will perform only to validate the AST produced from the
parse
function without returning a new AST. - Removed
SemanticSchemaBlock
as it should rely onSchemaBlock
only.
Adding parsed test files
0.1.0-beta.2 add: rustfmt
Initial Pre-Release
0.1.0-beta.1 update: initial release version