Commit Graph

100 Commits

Author SHA1 Message Date
Ariel Mashraki
4af9a331ae entc/gen: fix niladic predicates for id fields (#940) 2020-11-11 09:40:29 +02:00
Ariel Mashraki
3f1545f0a9 entc/gen: extract fk column from edge (#919) 2020-11-05 12:07:45 +02:00
Ariel Mashraki
fb97ca66ac entc/gen: move eager-loading naming to Go api (#887) 2020-10-27 20:11:59 +02:00
Ariel Mashraki
fae1956828 entql: add typed-builder for field predicates 2020-10-11 14:41:03 +03:00
Ariel Mashraki
c2cdc52946 entc/gen: move predicates to mutation object (#825) 2020-10-07 14:22:14 +03:00
Ariel Mashraki
49101d7d05 entc/gen: change eager-loading empty values (#791)
When loading relations (using edger-loading) and there are no changes,
the response should be an empty slice (and not nil). Similar to the
way we handle simple queries (e.g. All()).

Closed #790
2020-09-22 20:22:30 +03:00
Ariel Mashraki
17abe2d60f entc/gen: less sophisticated naming logic (#774)
Closed #772
2020-09-17 09:19:55 +03:00
Ariel Mashraki
1dc90db3a4 entc/gen: add fields checks for groupfunc 2020-09-10 22:53:25 +03:00
Ariel Mashraki
6a7a5ef439 entc/gen: add fields checks for orderfuncs 2020-09-10 22:53:25 +03:00
Ariel Mashraki
8b8744022e entc/gen: add column-check for selection and grouping (#744) 2020-09-09 12:27:28 +03:00
Ariel Mashraki
b4b4fa95d7 entc/gen: restructure hooks execution (#741)
Closed #739
2020-09-09 10:41:17 +03:00
Ariel Mashraki
8e824c14eb entc/gen: add an option for clearing non-unique edges (#731)
Closed #398
2020-09-06 20:22:42 +03:00
Ariel Mashraki
fd0a7f9f02 all: facebookincubator/ent => facebook/ent (#660)
ent repository is going to be migrated to facebook organization
2020-08-18 11:05:08 +03:00
Ariel Mashraki
e71a6de39b entc/gen: fix hooks invocation on bulk-create (#649) 2020-07-29 18:35:21 +03:00
Ariel Mashraki
f677112e18 entc/gen: ignore query execution on empty batch (#648) 2020-07-29 18:07:14 +03:00
Ariel Mashraki
dd3cdc147d entc/gen: correctly handle custom storage-key for id fields (#643)
Fixed #621
2020-07-28 10:14:21 +03:00
Ariel Mashraki
875e6e516b entc/gen: initial implementation for create-bulk #613
Closed #236
2020-07-24 20:16:31 +03:00
Ariel Mashraki
1783294d75 entc/gen: skip slicing on empty fields (#632) 2020-07-21 13:15:27 +03:00
Ariel Mashraki
399883a71a entc/gen/sql: move spec creation to a function (#604)
To be shared with batch-create builder
2020-07-13 13:27:36 +03:00
Jelmer Snoeck
b150cde478 entc/gen: introduce validation errors (#547)
This introduces the concept of validation errors, where we have a high
level validation error which wraps a more detailed error message.

The higher level `ValidationError` is set up in the generated files, much
like the `NotFoundError` and `ConstraintError` and is accompanied by an
`IsValidationError` check method. Thus, it can be used as follows:

```go
t, err := tx.Team.Create().SetName(input.Name).Save(ctx)
if ent.IsValidationError(err) {
        // handle validation error response
}
```
2020-06-17 17:11:39 +03:00
Joel Courtney
e4d57a47f7 entc/gen: fix eager loading when using uuid for foreign keys failing if loading more than a single relation (#533)
* Bugfix: eager lodaing when using uuid for foreign keys failing if loading more than a single relation (#532)

* go generate ./... output
2020-06-09 08:10:14 +03:00
Ariel Mashraki
86d345e187 entc/gen: add support for ValueScanner for int type (#530) 2020-06-08 14:54:37 +03:00
Ariel Mashraki
8a754fb795 entc/gen: fix template func for receiver names (#527)
Fixed #525
2020-06-05 19:20:30 +03:00
Ariel Mashraki
bf566aa3ac entc/gen: support valuescanner in go-types (#510) 2020-05-28 18:23:14 +03:00
Ariel Mashraki
50edd3d370 entc/gen: convert custom Go types to basic types (#502) 2020-05-25 20:46:59 +03:00
Ariel Mashraki
100d300094 schema/field: add GoType option for string fields (#500) 2020-05-25 20:05:17 +03:00
Ariel Mashraki
7f260c3ae0 entc/gen/template: remove irrelevant code from templates (#481) 2020-05-09 14:32:54 +03:00
Ariel Mashraki
7cfcb97694 entc/gen: suffix Order and Aggregate with Func (#449) 2020-04-23 13:22:21 +03:00
Ariel Mashraki
3342b85580 entc/gen: add support for storage txoptions (#435) 2020-04-17 12:57:57 +03:00
Ariel Mashraki
de5006a4d8 entc/gen: lazy compute storage-driver queries (#408) 2020-03-29 14:36:44 +03:00
Ariel Mashraki
65f96b3593 entc/gen: remove legacy i2a support for ids (#389)
* entc/gen: remove legacy i2a support for ids

* integ: add customid tests for fk strings
2020-03-16 18:19:30 +02:00
Ariel Mashraki
7988d3084d entc/hooks: initial work for mutations and hooks (#377)
* entc/hooks: initial work for mutations and hooks

* ent/schema: adding policy to schema

* ent: change op string to uint

* entc: move entschema to runtime and enable smooth transition

* entc/privacy: adding privacy template

* all: goimports

* intg/hooks: mutation client/tx and basic schema tests

* ent/privacy: adding more verbose decisions

* entc/gen: edge-ids getter and additional tests

* all: regen assets

* entc/gen: fix client hookd propagation

* intg: add deletion example

* intg/privacy: remove old entschema package

* typed privacy

* ent/privacy: hooks shouldn't be called on privacy deny

* entc/gen: fix schema hooks invocation order

* remove read policy from public api

* update circleci go orb

Co-authored-by: Ariel Mashraki <ariel@mashraki.co.il>
2020-03-16 00:19:27 +02:00
Ariel Mashraki
2a7183eb82 entc/gen: fix uuid fks scanning (#382)
Fixes #363
2020-03-07 22:11:25 +02:00
Ariel Mashraki
d9c8d9545d entc/gen: use NotFoundError when updating non-exist node (#348)
Fixes #341
2020-02-16 13:26:13 +02:00
Ariel Mashraki
bb852ad093 intgeration: add pg and mysql test for customids (#342) 2020-02-12 20:42:03 +02:00
Ariel Mashraki
9733051cc3 entc/gen: currently handle user-defined string ids (#338)
Fixes #127
2020-02-10 12:04:50 +02:00
Ariel Mashraki
48d33fde9d entc/gen: fix eager-loading for m2m edges (#335)
Fixed #334
2020-02-08 22:26:30 +02:00
Ariel Mashraki
27935a8c6c entc/gen: add <E>Loaded for <T>Edges (#319)
This helps to determine if the edge was loaded (or requested) in
eager-loading even if it's empty.
2020-01-29 11:39:19 +02:00
aca
3ee6223e64 entc/gen: use empty slice instead of nil in sqlAll (#310) 2020-01-23 16:16:21 +02:00
Harold.Luo
5cb40ff883 entc/gen/eagerloading: ignore loading edges on empty result (#298)
* fix eagerloading

while parent nodes is zero.

* Update entc/gen/template/dialect/sql/query.tmpl

Co-Authored-By: Ariel Mashraki <7413593+a8m@users.noreply.github.com>

* Update entc/gen/template/dialect/sql/query.tmpl

Co-Authored-By: Ariel Mashraki <7413593+a8m@users.noreply.github.com>

* generate new assets

Co-authored-by: Ariel Mashraki <7413593+a8m@users.noreply.github.com>
2020-01-20 09:29:01 -05:00
Ariel Mashraki
9b2b53f559 entc/gen: avoid conflict local vars with user packages (#292)
Fixes #284
2020-01-16 17:30:18 +02:00
Ariel Mashraki
caf721df47 entc/gen: add eager-loading support (#263)
* entc/gen: add OwnFK indicator for type edges

* entc/gen: add Edges field for generated types

* entc/gen: add With<T> method to query-builder template

* entc/gen: scan and assign foreign-keys on eager-loading

* entc/gen: load fk-relations (wip)

* entc/integration: add o2m/m2o tests for eager-loading

* entc/gen: add m2m support for eager-loading

* entc/gen: add integration tests for m2m and subgraphs

* entc/gen/integration: add tests for o2o eager-loading

* all: generate all assets
2020-01-13 17:21:26 +02:00
Ariel Mashraki
e5c5aec9b5 entc/gen: remove FromRows decoding 2019-12-24 10:29:40 +02:00
Ariel Mashraki
7a85c04c32 entc/gen: add edge-fields + minor changes 2019-12-23 10:57:36 +02:00
Ariel Mashraki
91cdd2a087 entc/gen: remove unnecessary subquery on fields selection 2019-12-22 20:24:29 +02:00
Ariel Mashraki
c09028f58b dialect/sql/sqlgraph: consistent scan names 2019-12-22 20:12:00 +02:00
Ariel Mashraki
6f9dade32c entc/gen: move query-all to sqlgraph 2019-12-22 20:00:25 +02:00
Ariel Mashraki
a26b9626a6 entc/gen: move query-count to sqlgraph 2019-12-22 19:42:28 +02:00
Ariel Mashraki
1c54439d40 entc/gen: move scan-assign to node def 2019-12-22 17:15:33 +02:00
Ariel Mashraki
7fde9b7642 entc/gen: move sql-update-one to sqlgraph 2019-12-22 13:32:51 +02:00