Commit Graph

90 Commits

Author SHA1 Message Date
Alex Snast
6e1da6a891 entc/gen: add Type.EnumFields helper (#584)
Signed-off-by: Alex Snast <alexsn@fb.com>
2020-07-05 14:17:58 +03:00
Ariel Mashraki
dca96ca564 entc/gen: revet the new format for enums (#581)
Some acronyms don't exist in entc, and we define them as uppercase to control the Go constant name
2020-07-04 20:55:05 +03:00
Alex Snast
361b796e90 entc/gen: make enum names pascal case regadless of value case
Signed-off-by: Alex Snast <alexsn@fb.com>
2020-07-04 15:19:46 +03:00
Ariel Mashraki
0ebb0f5e13 entc/gen: add IsBool method to gen.Field (#577) 2020-07-02 16:42:48 +03:00
Ariel Mashraki
052ba49294 entc/gen: convert GoType to basic type for validators (#568)
Fixed #567
2020-06-25 15:08:43 +03:00
Ariel Mashraki
c5503d76ad entc/integration: fix issue with storage-key and inverse-edges (#556) 2020-06-17 18:17:09 +03:00
Ariel Mashraki
47f1a203aa schema/edge: an storage-key option for edges (#545)
* schema/edge: an storage-key option for edges

* schema/edge: use Column(s) with functional options
2020-06-15 23:06:00 +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
5d7e8f242c entc/gen: add missing fieldtype for nulltype template func (#526) 2020-06-05 17:29:05 +03:00
Ariel Mashraki
29688a0fa5 entc/gen: add support for ValueScanner for bytes type (#524) 2020-06-04 19:00:07 +03:00
Ariel Mashraki
cc6c6e1b4c entc/gen: add support for ValueScanner for GoType (#522) 2020-06-03 15:45:34 +03:00
Ariel Mashraki
916099611b gotype/bool: support valuescanner in codegen (#517) 2020-06-01 21:45:20 +03:00
Ariel Mashraki
35ce39a8f3 entc/gen: count id field in mixins (#515)
Fixes #512
2020-05-31 13:29:45 +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
ef7285b917 entc/gen: add api for getting field old values (#491) 2020-05-17 14:23:36 +03:00
Ariel Mashraki
cfee55e514 schema/field: add an option to configure the database type (#484) 2020-05-11 15:07:33 +03:00
Ariel Mashraki
caf1eb6e97 entc/gen: remove unnecessary function call from column generation (#483) 2020-05-10 15:52:57 +03:00
Ariel Mashraki
08289b3570 entc/gen: fix method conflicts in mutation builders (#479)
Fixed #475
2020-05-08 21:02:21 +03:00
Ariel Mashraki
7cfcb97694 entc/gen: suffix Order and Aggregate with Func (#449) 2020-04-23 13:22:21 +03:00
Ariel Mashraki
1c49159d18 entc/gen: add indexes, edges and hooks to mixin (#431) 2020-04-20 13:40:56 +03:00
Ariel Mashraki
3c6a04f884 entc/gen: add default-funcs and validators for userdefined id (#436)
Fixes #432
2020-04-18 12:28:50 +03:00
Ariel Mashraki
2ea4268414 entc/gen: add schema checks for types (#418) 2020-04-01 22:53:02 +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
15cbc5c223 entc/gen: unexport capitalized schema fields in mutations (#388) 2020-03-16 11:21:05 +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
7114543a08 entc/gen: fix nulltype field name for float32 (#381)
Fixes #380
2020-03-07 19:12:59 +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
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
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
9cb0eb7467 entc/gen: reject fields without name (#273)
Fixes #272
2020-01-06 21:30:25 +02:00
Ariel Mashraki
b54007ef56 Entc/enums (#271)
* ent: add default value setter to enum builder

Co-authored-by: Dario Ielardi <dario.ielardi@gmail.com>
2020-01-05 18:31:35 +02:00
Jian Li
fc6a9b1a9b fix meta.tmpl code generating incomplete issue. (#268) 2020-01-05 08:12:45 +02:00
Ariel Mashraki
7a85c04c32 entc/gen: add edge-fields + minor changes 2019-12-23 10:57:36 +02: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
Ariel Mashraki
e54373f410 ent: allow non-numeric columns as PKs
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/180

Reviewed By: alexsn

Differential Revision: D18636443

fbshipit-source-id: f14b34926817f6d9652f49a640bfb377f3f3cdaf
2019-11-21 08:49:58 -08:00
Ariel Mashraki
7be1779ad1 entc/gen: add the type name as an index prefix (#171)
Summary:
Pull Request resolved: https://github.com/facebookincubator/ent/pull/171

Note that this is a non backwards compatible change.

I'll add another change (before this) for setting the storage-key of the index, and only after that we can land this.

Reviewed By: alexsn

Differential Revision: D18570445

fbshipit-source-id: e3ffc7b4baa6bc2fcce9e4553e17817091423b1e
2019-11-20 07:08:47 -08:00
Ariel Mashraki
3c6661fce8 schema/index: add storage-key option for indexes
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/172

Reviewed By: alexsn

Differential Revision: D18571700

fbshipit-source-id: 2b8dbcc7c36be01ba383c48f982f59361a68c621
2019-11-18 07:54:56 -08:00
Ariel Mashraki
d9da7243f9 entc/gen: initial support for user-defined ids
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/162

Reviewed By: alexsn

Differential Revision: D18485086

fbshipit-source-id: 9bb6ccff592bc0cb8b218625161ed492f67bc170
2019-11-14 08:21:31 -08:00
Ariel Mashraki
e161ecc29c cmd/entc: remove graph printing from generator
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/163

Reviewed By: alexsn

Differential Revision: D18503829

fbshipit-source-id: 1269d4c8c30f848c5096258f2328230f5f378f69
2019-11-14 08:21:30 -08:00
Ariel Mashraki
6ce4cb6803 all: fix minor lint errors
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/159

Reviewed By: dlvhdr

Differential Revision: D18476131

fbshipit-source-id: 9e792f5a35f25233aad73f75f12d13d215a21ad2
2019-11-13 06:01:41 -08:00
Ariel Mashraki
3ac23d8420 entc/gen: allow defining index only on edges (#152)
Summary:
Pull Request resolved: https://github.com/facebookincubator/ent/pull/152

Fixes #150

Reviewed By: idoshveki

Differential Revision: D18419810

fbshipit-source-id: aeabd9c3379d4456235884abeca01407569cd7dc
2019-11-10 02:56:34 -08:00
Ariel Mashraki
4aa550a68f entc/gen: avoid ambiguous selector error when adding config field
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/147

Reviewed By: alexsn

Differential Revision: D18380088

fbshipit-source-id: 8173b0082b69eda4e623da618a54d443b34d20eb
2019-11-07 22:08:33 -08:00
Ariel Mashraki
c5b790043c entc: change the way we inject additional fields (#1560)
Summary:
Pull Request resolved: https://github.com/facebookexternal/fbc/pull/1560

Pull Request resolved: https://github.com/facebookincubator/ent/pull/96

Reviewed By: alexsn

Differential Revision: D17931147

fbshipit-source-id: 24e1d72be482cb787c557f46feeb2ed4a31dfe60
2019-10-15 12:00:46 -07:00
Ariel Mashraki
36a3971f3d entc/gen: add struct field name to fields and edges
Summary: avoig logic in templates

Reviewed By: alexsn

Differential Revision: D17926168

fbshipit-source-id: d583e800fb4a45cf939e9788cea6d45e126c61fe
2019-10-15 06:42:44 -07:00
Ariel Mashraki
64ed7580c0 entc/gen: use BuilderField for builder memebrs
Summary: StructField should be used a member of the ent type (struct), and logic should be removed from templates.

Reviewed By: alexsn

Differential Revision: D17926151

fbshipit-source-id: f77c5ce8359816ec3a4ce1ab71dd98f205706deb
2019-10-15 06:42:44 -07:00
Ido Shveki
3d0d8724b0 ent/schema: adding sensitive fields support (#75)
Summary:
Pull Request resolved: https://github.com/facebookincubator/ent/pull/75

Pull Request resolved: https://github.com/facebookexternal/fbc/pull/1539

Supporting "Sensitive" mode for string fields.

Reviewed By: a8m

Differential Revision: D17786543

fbshipit-source-id: a4d022c1436472cb525cdd50663dd0ce23d13699
2019-10-07 07:46:28 -07:00