Alex Snast
aa57d732c1
ent/entc: correctly cache type info in node.tmpl
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/156
Reviewed By: a8m
Differential Revision: D18429543
fbshipit-source-id: 11bbd9c426878f819ebb2b89978e10948f0730bd
2019-11-12 00:13:43 -08:00
Ariel Mashraki
514c0ff6d3
entc/gen: add support for adding client fields using template
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/155
Reviewed By: alexsn
Differential Revision: D18421223
fbshipit-source-id: 112d4d26d53a64e2c78640c6d508ba2d1d3a7791
2019-11-10 13:29:38 -08:00
Ariel Mashraki
6ed99b93e5
entc/integration: add edges-only index
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/153
Reviewed By: idoshveki
Differential Revision: D18419861
fbshipit-source-id: af7a07eacc601d0db54a5512f6edf26d725f5f7e
2019-11-10 02:56:34 -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
Alex Snast
782f3d90c9
ent/integration: refactor node template to provide .Noder on client ( #50 )
...
Summary:
Pull Request resolved: https://github.com/facebookincubator/symphony/pull/50
Pull Request resolved: https://github.com/facebookincubator/ent/pull/149
Noder can be used to implement graphql Node interface over gqlgen.
See https://facebook.github.io/relay/graphql/objectidentification.htm for more info.
Reviewed By: a8m
Differential Revision: D18410318
fbshipit-source-id: 5e9e2f243ab96ef61999f9066ffee65cb39094fe
2019-11-09 09:34:23 -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
53cfcb6e8b
dialect/sql: fix predicate builder on join
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/143
Reviewed By: idoshveki
Differential Revision: D18346652
fbshipit-source-id: e8c5d7eb3cefc16f52090de0d121e82cae058fc2
2019-11-06 05:21:26 -08:00
Ariel Mashraki
930a17b767
dialect/sql: add neighbors function ( #140 )
...
Summary:
Pull Request resolved: https://github.com/facebookincubator/ent/pull/140
This part of the effort of moving logic from Go templates to shared packages.
Next diffs will migrate the neighbors-set and predicates as well.
Dedicated tests for `sql/dialect/graph.go` will be added in a follow-up diff.
Reviewed By: alexsn
Differential Revision: D18304531
fbshipit-source-id: 93e9cf2636b5b4525eb27305bd2708122cfd6e40
2019-11-05 13:08:48 -08:00
Ariel Mashraki
a5d6a9e8b8
entc/integration: add missing license header
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/138
Reviewed By: alexsn
Differential Revision: D18291686
fbshipit-source-id: a1df2e4e3e036f6877acb33cbb27d05dfa982668
2019-11-03 05:54:44 -08:00
Hylke Visser
02bae0d652
Remove update validators for immutable fields ( #137 )
...
Summary:
This pull request modifies the update builder template so that it no longer generates code to validate immutable fields.
The first commit breaks the integration code by making the `number` field of `Card` immutable (the generated validation code references non-existent fields of `CardUpdate`/`CardUpdateOne`).
The second commit fixes the issue by making the `update/save` template not render validation code for immutable fields.
Pull Request resolved: https://github.com/facebookincubator/ent/pull/137
Differential Revision: D18288633
Pulled By: a8m
fbshipit-source-id: c0361b833a3971f76280d624f16cd7eda2725c1e
2019-11-02 09:05:08 -07:00
Ariel Mashraki
838b8fab8a
entc/integration: move relation tests to its own file ( #134 )
...
Summary:
Pull Request resolved: https://github.com/facebookincubator/ent/pull/134
integration_test.go was too big and not fun to work with.
Reviewed By: alexsn
Differential Revision: D18246139
fbshipit-source-id: 0c4437578adb9da4b03fc737044b3b7738b0bd4a
2019-10-31 10:11:38 -07:00
Ariel Mashraki
a9d787edf7
ent/integration: enable postgres in json tests
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/133
Reviewed By: alexsn
Differential Revision: D18227305
fbshipit-source-id: 33718041db52014f82dad831b5b609c511e0ba9a
2019-10-30 12:52:40 -07:00
Ariel Mashraki
38fcf995d0
entc/integration/migrate: enable postgres 10,11 in migrate test
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/132
Reviewed By: alexsn
Differential Revision: D18203398
fbshipit-source-id: a261ed3934d2e4262d7177b41546b2239e798ef5
2019-10-29 10:16:50 -07:00
Ariel Mashraki
440a737d73
entc/integration: add postgress 10,11 for test cases
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/131
Reviewed By: alexsn
Differential Revision: D18199300
fbshipit-source-id: 2335f81ba67055934dddae22ec02f1bfb43162d0
2019-10-29 03:31:14 -07:00
Ariel Mashraki
c259aee24b
entc/gen: generate sql builders with dialect option
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/130
Reviewed By: alexsn
Differential Revision: D18164397
fbshipit-source-id: 2858d69d3ff85c06b51382c01c3d4369ee2c3bdb
2019-10-27 21:53:50 -07:00
Ariel Mashraki
21a58e94a3
entc/integration: test postgres schema creation
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/124
Reviewed By: alexsn
Differential Revision: D18117662
fbshipit-source-id: e8151f92e00f565db26f17f78ff46b132c46e425
2019-10-24 10:49:47 -07:00
Ariel Mashraki
e493574c83
entc: add postgres dialect for sql storage driver options
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/123
Reviewed By: alexsn
Differential Revision: D18117641
fbshipit-source-id: 8e520a1b1f70c7bea70f8a37ac698116e98a804e
2019-10-24 10:49:47 -07:00
Alex Snast
a5b1805da3
ent/entc: rename time mixin fields ( #109 )
...
Summary:
Pull Request resolved: https://github.com/facebookincubator/ent/pull/109
- created_at -> create_time
- updated_at -> update_time
Reviewed By: a8m
Differential Revision: D18035896
fbshipit-source-id: ec9aef703c444554eb0f65a668703a1a6607b93e
2019-10-22 03:45:52 -07:00
Alex Snast
4d835b6d6f
ent/entc: mask reserved names on type validation
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/111
Reviewed By: a8m
Differential Revision: D18037667
fbshipit-source-id: 391b4d1826bb453fc6235363fb288c2ef1d3134c
2019-10-21 07:42:45 -07:00
Alex Snast
9d9e121dbd
ent/entc: .String() now uses ansic time format when formating time fields
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/103
Reviewed By: a8m
Differential Revision: D17978059
fbshipit-source-id: 721014b0bf712943d721c7ff038239cff690b94e
2019-10-17 04:36:04 -07:00
Alex Snast
75f59d76ad
ent/entc: drop modtime from generated bindata
...
Summary: Keep bindata code consistent accross `go generate` executions.
Reviewed By: a8m
Differential Revision: D17977276
fbshipit-source-id: 7bc1eecf23f59c0732399ec69e484a594a611d31
2019-10-17 01:55:41 -07:00
Ariel Mashraki
c6b395904c
entc/load: avoid panic due to index out of range ( #99 )
...
Summary:
Pull Request resolved: https://github.com/facebookincubator/ent/pull/99
go/packages now returns partial packages instead of error and this can cause an index of out range.
Reviewed By: alexsn
Differential Revision: D17939156
fbshipit-source-id: d02867a0cca5f1e90ac4952ac4136d8c8086a944
2019-10-15 22:17:02 -07:00
Ariel Mashraki
a6df15101f
dialect/sql: fix bad query generation on clone
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/97
Reviewed By: alexsn
Differential Revision: D17931134
fbshipit-source-id: e181e253f6e29b757f5ca647195d87d7ac89a0c8
2019-10-15 13:38:39 -07: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
Hylke Visser
aa23f95b3e
Restore ids declaration in query builder IDs ( #95 )
...
Summary:
This pull request restores a line in the query builder template that I believe was [removed by accident](0c46ce4e5e (diff-855ebdbcdbdd5bf91fcb98886276275eL203) ).
Pull Request resolved: https://github.com/facebookincubator/ent/pull/95
Differential Revision: D17931801
Pulled By: a8m
fbshipit-source-id: d88f3f303329e2581bfa69668316f9cf5f5f0fe7
2019-10-15 09:52:09 -07:00
Ariel Mashraki
0c46ce4e5e
entc/gen: move multistorage logic to Go code
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/94
Reviewed By: alexsn
Differential Revision: D17926186
fbshipit-source-id: b59dc418703bc4faca5230a7354edea1423b7d35
2019-10-15 06:42:44 -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
Ariel Mashraki
2c8d7fcc8b
ent/doc: add custom predicate exmaple
...
Reviewed By: alexsn
Differential Revision: D17926144
fbshipit-source-id: 5390585bf634aecfad86a729db6e633c4a7e6f5e
2019-10-15 06:42:44 -07:00
Alex Snast
5d988870bc
ent/entc: use select/scan on id query ( #1552 )
...
Summary:
Pull Request resolved: https://github.com/facebookexternal/fbc/pull/1552
Pull Request resolved: https://github.com/facebookincubator/ent/pull/93
avoids complete ent load on id query
Reviewed By: a8m
Differential Revision: D17906002
fbshipit-source-id: 7749a0d7c707858eab368978a1d220b581ea6dbb
2019-10-14 23:16:14 -07:00
Ariel Mashraki
c2418a1907
entc/gen: suspended goimports after files were written ( #89 )
...
Summary:
Pull Request resolved: https://github.com/facebookincubator/ent/pull/89
We can't run "imports" on files when the state is not completed. Because, "goimports" will drop undefined package. Therefore, it's suspended to end of the writing.
Fixed #88
Reviewed By: alexsn
Differential Revision: D17899321
fbshipit-source-id: 198dae11b121869764ebc9eee92110caf4256bed
2019-10-13 07:03:11 -07:00
Ariel Mashraki
6f5f42ab3c
dialect/sql: dialect based builders ( #1550 )
...
Summary:
Pull Request resolved: https://github.com/facebookexternal/fbc/pull/1550
Pull Request resolved: https://github.com/facebookincubator/ent/pull/84
This is still WIP and you should ignore this.
Reviewed By: alexsn
Differential Revision: D17854477
fbshipit-source-id: 2d19713c118adb31164b7a2781327e64c87db8d4
2019-10-13 07:03:11 -07:00
Alex Snast
9983309eac
ent/circleci: cache / restore go modules ( #86 )
...
Summary:
Pull Request resolved: https://github.com/facebookincubator/ent/pull/86
In addition rename run.deadline golangci-lint config to run.timeout
Reviewed By: a8m
Differential Revision: D17863321
fbshipit-source-id: f863bac6499ddd3066a3ec6e9f518c0d5156f117
2019-10-12 23:52:42 -07:00
Alex Snast
ce2bc07c1a
ent/circleci: adding linter tests
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/80
Reviewed By: a8m
Differential Revision: D17837182
fbshipit-source-id: 9fb539fd6cebc064d2d2804bd52e0fbf413cfc93
2019-10-10 04:45:07 -07:00
Christian Muehlhaeuser
713b22ba60
Remove ineffective assignments in test ( #76 )
...
Summary:
Don't assign 'typ' if we don't end up checking it.
Pull Request resolved: https://github.com/facebookincubator/ent/pull/76
Differential Revision: D17809445
Pulled By: a8m
fbshipit-source-id: 124b53c2970795c51e8998efebd8e6049f82591a
2019-10-08 07:20:03 -07:00
Ariel Mashraki
82f91dfcd2
examples/start: add license
...
Reviewed By: idoshveki
Differential Revision: D17788435
fbshipit-source-id: ae8ba70bcf84cf5e325291c45b69e8721a130bf1
2019-10-07 07:48:30 -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
Ariel Mashraki
7597f07912
entc: add option to use entc as package
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/72
Reviewed By: alexsn
Differential Revision: D17783580
fbshipit-source-id: 597f124a28415fef66b0b16811ad2acac8df631d
2019-10-07 07:06:32 -07:00
Alex Snast
e668326c5e
ent/entc: set go-bindata version in go.mod ( #74 )
...
Summary:
Pull Request resolved: https://github.com/facebookincubator/ent/pull/74
don't rely on local go-bindata binary
Reviewed By: a8m
Differential Revision: D17786303
fbshipit-source-id: 1d1258478fd8f3abcdb3a7b1b06d0601b4468c94
2019-10-07 02:20:47 -07:00
Alex Snast
ac50ea81d4
ent: address several lint errors throughout the project ( #1534 )
...
Summary:
Pull Request resolved: https://github.com/facebookexternal/fbc/pull/1534
Pull Request resolved: https://github.com/facebookincubator/ent/pull/73
lint errors detected by running `golangci-lint` tool.
Reviewed By: a8m
Differential Revision: D17784980
fbshipit-source-id: f7e8bd99fdf1e018d5672cea1e8d44b67f2a4201
2019-10-06 23:59:12 -07:00
Ariel Mashraki
766940563f
ent/gen: set currect storage-key for indexes
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/66
Reviewed By: alexsn
Differential Revision: D17779042
fbshipit-source-id: 12be885b20f91eb611a41e361650f7a66747fab0
2019-10-05 11:03:05 -07:00
Ariel Mashraki
b64330e475
ent/gen: remove redundant nillable check
...
Summary: nillable must be optional
Reviewed By: alexsn
Differential Revision: D17763004
fbshipit-source-id: 9c134e1648d1a387d90a5f2353de855a1aa3464f
2019-10-05 11:03:05 -07:00
Ariel Mashraki
fc3e7f0a70
all: minor style changes
...
Reviewed By: noamsch
Differential Revision: D17763014
fbshipit-source-id: ba574059dcd93e7b02e22b6eac7c6a637bf5ba30
2019-10-05 11:03:05 -07:00
Alex Snast
5c93cb823c
ent/circleci: store go tests metadata ( #63 )
...
Summary:
Pull Request resolved: https://github.com/facebookincubator/ent/pull/63
Pull Request resolved: https://github.com/facebookexternal/fbc/pull/1527
See https://circleci.com/blog/level-up-go-test-with-gotestsum/ for more info
Reviewed By: a8m
Differential Revision: D17761305
fbshipit-source-id: d16050b4e1825e8c23be5cc0a4b0dff80936b86a
2019-10-05 10:15:47 -07:00
Alex Snast
d581e01bb6
ent/circleci: drop goimports installation
...
Reviewed By: a8m
Differential Revision: D17761242
fbshipit-source-id: 7ebf67b59eed722ac329b5ab6a152140a013c64c
2019-10-05 10:15:47 -07:00
Ariel Mashraki
82c70a6d35
entc/gen: fix broken test
...
Reviewed By: alexsn
Differential Revision: D17761235
fbshipit-source-id: 5530af054440dd41fecb031ffc992705a7dac06e
2019-10-04 04:46:12 -07:00
Alex Snast
2a6060a3ab
ent/entc: no need to pass options to imports.Process
...
Summary: default options produce the same formatted output
Reviewed By: a8m
Differential Revision: D17760716
fbshipit-source-id: 556dc11e4c48c480e704f28ec779ec721137a9ba
2019-10-04 04:11:03 -07:00
Hylke Visser
6a1c9e73fe
entc/sql/decode: fix decoding of NullTime in optional and nillable time fields ( #60 )
...
Summary:
While trying out this project I think I found a bug in the generated code when using an optional and nillable time field.
```
vet: ent/user.go:46:16: cannot use &vu.DeletedAt (value of type *sql.NullTime) as *time.Time value in assignment
```
7438104b5d made a change to the `{{ $scan }}` struct, which now always uses `{{ $f.NullType }}` as type, so the `$f.IsTime` check can now be removed. This pull request does that.
This is my fist contribution here. I hope I didn't miss anything.
Pull Request resolved: https://github.com/facebookincubator/ent/pull/60
Differential Revision: D17760925
Pulled By: a8m
fbshipit-source-id: 675005be62487b1b9eb77302b8185bd3b6ef0195
2019-10-04 03:38:45 -07:00
Ariel Mashraki
eb240579ca
ent/gen: fix identifiers conflict in ent.tmpl
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/58
Reviewed By: alexsn
Differential Revision: D17759261
fbshipit-source-id: df7f5344b43157a483662d9ee5cf8441943b637a
2019-10-03 23:54:11 -07:00
Ariel Mashraki
480eb714d3
entc/gen: replace goimports with golang.org/x/tools/imports
...
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/53
Reviewed By: alexsn
Differential Revision: D17738814
fbshipit-source-id: 9865bc3c8eec766bd5c8e02db5c7afcaadb48c1f
2019-10-03 12:08:34 -07:00