Commit Graph

78 Commits

Author SHA1 Message Date
Ariel Mashraki
de5006a4d8 entc/gen: lazy compute storage-driver queries (#408) 2020-03-29 14:36:44 +03:00
Alex Snast
6be07b8f67 entc/privacy: rename Read/Write types to Query/Mutation
Signed-off-by: Alex Snast <alexsn@fb.com>
2020-03-19 14:35:32 +02:00
Alex Snast
63c6d9786d entc/gen: adding ent.Query type
Signed-off-by: Alex Snast <alexsn@fb.com>
2020-03-19 14:30:00 +02:00
Alex Snast
25fdb52a03 entc/gen: use a set when tracking cleared fields in mutation template
Signed-off-by: Alex Snast <alexsn@fb.com>
2020-03-17 12:00:15 +02:00
Ariel Mashraki
81a2f60e47 entc/gen: add facebookincubator/ent to mutation.tmpl imports (#390) 2020-03-17 10:33:58 +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
332cfe5c6e entc/gen: use named fields on client creations (#359) 2020-02-25 11:15:38 +02:00
Ariel Mashraki
dc222c0b15 entc/gen: remove example_test template from codegen (#351)
Fixes #297
2020-02-18 12:26:46 +02:00
Ariel Mashraki
320b9caf61 dialect/sql/schema: add option to skip fixture when it's irrelevant (#350) 2020-02-16 18:17:58 +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
9f9596c184 entc/gen: better formatted codegen for predicates (#336) 2020-02-09 11:38:03 +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
b4255998bf entc/gen: change name format for edge fks (#286)
* entc/gen: change name format for edge fks

* dialect/sql/schema: add fixture support for mysql and postgres

* sql/dialect: merge fkcolumn queries to one for the 2 dialects
2020-02-03 15:41:55 +02:00
Alex Snast
e6ba06441b entc/gen: change <E>Err signature to <E>OrErr (#325)
Signed-off-by: Alex Snast <alexsn@fb.com>
2020-01-30 18:56:36 +02:00
Alex Snast
0802e0b4f5 Merge pull request #324 from facebookincubator/nil_before_as
entc/gen: check for nil error before invoking .As
2020-01-30 13:47:17 +01:00
Alex Snast
091f9aba12 entc/gen: check for nil error before invoking .As
Signed-off-by: Alex Snast <alexsn@fb.com>
2020-01-30 13:42:13 +01:00
Alex Snast
112d442dac Merge pull request #323 from facebookincubator/errwrap
entc/gen: add support for wrapped errors
2020-01-30 10:57:08 +01:00
Alex Snast
0428788539 entc/gen: add support for wrapped errors
Signed-off-by: Alex Snast <alexsn@fb.com>
2020-01-30 10:53:58 +01:00
Ariel Mashraki
9e760aae58 entc/gen: change <E>WithError signature to <E>Err (#322)
<E>WithError is too verbose and we like short names
2020-01-30 11:12:53 +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
Ariel Mashraki
7a480e3943 entc/gen: use more go-ish names for generated error types (#321)
* entc/gen: use more go-ish names for generated error types

* entc/gen: add NotLodedError type for eager-load api
2020-01-28 11:04:27 +02:00
Ariel Mashraki
bc89ed4e0f entc/gen: add type for type edges (#318)
Will be used for adding methods on the struct edges
2020-01-26 12:39:18 +02:00
aca
3ee6223e64 entc/gen: use empty slice instead of nil in sqlAll (#310) 2020-01-23 16:16:21 +02:00
Ariel Mashraki
faf6c2f2f6 ci: initial work for migration-testing (#311)
Also generating new assets for new ci steps.
2020-01-22 21:20:18 +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
aca
891fc4c5ef remove meaningless omitempty 2020-01-19 00:26:04 +09:00
aca
8f5f8e8702 go generate 2020-01-18 16:56:31 +09: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
4021d35e5a entc/integration: split generate commands to packages 2019-12-23 11:29:10 +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
700b3bd04f Merge pull request #257 from facebookincubator/sqlgraph/update
entc/gen: move sql-update to sqlgraph
2019-12-22 16:22:32 +02:00
Ariel Mashraki
7fde9b7642 entc/gen: move sql-update-one to sqlgraph 2019-12-22 13:32:51 +02:00
Alex Snast
f14653be71 entc/gen: fix node out of bounds check
Signed-off-by: Alex Snast <alexsn@fb.com>
2019-12-19 13:07:06 +02:00
Ariel Mashraki
04e9391c25 entc/gen: move sql-delete to sqlgraph 2019-12-18 15:14:53 +02:00
Ariel Mashraki
0a7608f8bd all: change codegen header 2019-12-18 13:00:25 +02:00
Ariel Mashraki
798d58f02b all: use more go-ish error for constraint failures 2019-12-17 23:17:55 +02:00
Ariel Mashraki
c6800a3869 entc/gen: move node creation to sqlgraph 2019-12-17 22:45:04 +02:00
Ariel Mashraki
0cc74b5297 all: move sqlgraph to its own package 2019-12-17 18:26:09 +02:00
Ariel Mashraki
e85b10be36 entc/gen: remove multi storage support 2019-12-15 14:48:55 +02:00
Ariel Mashraki
1a73b8cf55 entc/gen: change neighbors-with check to use sqlgraph
Reviewed By: alexsn

Differential Revision: D18729648

fbshipit-source-id: 23eb95bdb0c34c811621a819be6581e1e6fcb474
2019-12-01 02:07:55 -08:00
Ariel Mashraki
f7ce61fc3c entc/gen: change neighbors predicate to use sqlgraph
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/204

Reviewed By: alexsn

Differential Revision: D18726911

fbshipit-source-id: 6fe850bb0c0613c3f1c94e8bbcf3f0684dded9a6
2019-11-27 11:28:26 -08:00
Ariel Mashraki
ed3747ff82 entc/gen: change neighbors query to use Step builder
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/202

Reviewed By: alexsn

Differential Revision: D18725770

fbshipit-source-id: d7720ac89f55022a7721edc7df15fab1d6e3672c
2019-11-27 06:20:43 -08:00
Ariel Mashraki
0e73d57571 entc/gen: change client neighbors to use Step builder
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/201

Reviewed By: alexsn

Differential Revision: D18725715

fbshipit-source-id: 6292ac659c4d86610e39476a373dee92f2820d8d
2019-11-27 03:13:52 -08:00
Ariel Mashraki
67c3fd2db9 entc/gen: initial work for supporting uuid fields in codegen
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/182

Reviewed By: alexsn

Differential Revision: D18638199

fbshipit-source-id: 0de79c78b51e544486c07a004c3c8ea82e5c3398
2019-11-24 07:11:23 -08:00