You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
`#[non_exhaustive]` are added to all AST enums. It allows us to add new features and extend the AST without breaking the API. If you encounter the following error,
138
+
`#[non_exhaustive]` are added to all AST enums. It allows us to add new features and extend the AST without breaking the API.
Previously, the `TableRef` variants are a product of all valid combinations of `Option<Database>`, `Option<Schema>`, `Table` and `Option<Alias>`. It is excessive and makes pattern matching difficult.
162
175
163
-
Now they're collapsed into one. `SchemaTable` is now simply a type alias of `TableName`. It makes constructing and pattern-matching `TableRef` much easier.
176
+
Now they're collapsed into one. `SchemaTable` is now simply a type alias of `TableName`. It makes constructing and pattern-matching `TableRef`/ `ColumnRef`much easier.
164
177
165
178
```rust
166
179
// the following variants are collapsed into one:
@@ -178,16 +191,95 @@ enum TableRef {
178
191
Table(TableName, Option<DynIden>), // optional Alias
|-----------------^^^^^^^^^^^^^^^^expected `ColumnName`, found `DynIden`
260
+
||
261
+
|argumentstothisenumvariantareincorrect
262
+
```
263
+
In the former case `Asterisk` has an additional inner `Option<TableName>`, you can simply put `None`.
264
+
```rust
265
+
.column(ColumnRef::Asterisk(None))
266
+
```
267
+
In the latter case, `&'static str` can now be used in most methods that accepts `ColumnRef`.
268
+
```rust
269
+
Expr::column("id")
270
+
```
271
+
272
+
## New Features
273
+
274
+
### Query Audit
275
+
276
+
### Ergonomic raw SQL
277
+
188
278
## Release Plan
189
279
190
-
This is just one of many new features we've added while preparing [SeaQuery 1.0](https://github.com/SeaQL/sea-query/blob/master/CHANGELOG.md#100---pending). This is currently an `rc` release, if you have ideas please [join the discussion](https://github.com/SeaQL/sea-query/discussions/795).
280
+
[SeaQuery 1.0](https://github.com/SeaQL/sea-query/blob/master/CHANGELOG.md#100---pending) is currently an `rc` release, and we plan to finalize it soon - meaning no more major breaking changes. If you feel adventurous or want to use some of the latest features, you can upgrade today. Please let us know the problems you faced, this will help us and the community. If you have ideas / feedback please [join the discussion](https://github.com/SeaQL/sea-query/discussions/795) on GitHub!
281
+
282
+
As SeaORM is based on top of SeaQuery, the breaking changes above would apply to all SeaORM users as well. We tried to minimize the impact to lightweight SeaORM users and most changes can be done mechanically. After that, it will be the most exciting release - SeaORM 2.0!
0 commit comments