Commit Graph

183 Commits

Author SHA1 Message Date
Ariel Mashraki
1ebfa489c5 ent: add support for enum types
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/45

Reviewed By: alexsn

Differential Revision: D17715085

fbshipit-source-id: 7472e1bd9cf7a8a5bd98f96e6e884c0e27f36803
2019-10-02 12:55:28 -07:00
Ariel Mashraki
55fefbfbec doc: update Open api examples
Reviewed By: alexsn

Differential Revision: D17710222

fbshipit-source-id: 189b2c0407c035e62da5926a71f89453d6acaa12
2019-10-02 10:11:09 -07:00
Ariel Mashraki
cb1f78f233 entc/gen: add open func for creating client
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/44

Reviewed By: alexsn

Differential Revision: D17657719

fbshipit-source-id: 9bbe18dc0e9c553f8a2df81018d7db06f38f5e0e
2019-10-02 01:41:40 -07:00
Ariel Mashraki
86a6fbe48e ent/doc: mixin api and example
Reviewed By: alexsn

Differential Revision: D17602975

fbshipit-source-id: 2414a2de0b5b02ef6c3255e0524e228c3c17a500
2019-09-26 09:09:39 -07:00
Ariel Mashraki
4dbebe68ff entc: add codegen support for mixin
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/43

Reviewed By: alexsn

Differential Revision: D17600868

fbshipit-source-id: 39a242a541fa2a2dd2db1c9919fecf192ff098bf
2019-09-26 07:41:11 -07:00
Ariel Mashraki
df37dcc1a9 ent: add mixin interface to schema
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/42

Reviewed By: alexsn

Differential Revision: D17600212

fbshipit-source-id: 74021efb2d7974c28e6a3f6df53bcedebff874f2
2019-09-26 05:59:27 -07:00
Ariel Mashraki
6a0a247c57 ent/doc: add config option to docs
Reviewed By: alexsn

Differential Revision: D17599268

fbshipit-source-id: 2d89229e1880a0c33ff26c89d52205981a5cfbab
2019-09-26 05:59:27 -07:00
Ariel Mashraki
bd6d7cc647 entc/gen: use default name in column construction
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/41

Reviewed By: alexsn

Differential Revision: D17599004

fbshipit-source-id: 928d82fe689ca1c528ec204c3fb6e2732cb58f0b
2019-09-26 05:59:26 -07:00
Alex Snast
dacc568413 ent/entc: corrently reference default value on migrate generation
Summary:
Migration incorrectly generated field default value on storage key inclusion.

Example Field:
```
field.String("tenant").
  StorageKey("organization").
  Default("fb-test"),
```
Generated default of:
```
// DefaultTenant holds the default value on creation for the tenant field.
DefaultTenant = descTenant.Default.(string)
```
But migration references non existent default (storage key is used):
```
{Name: "organization", Type: field.TypeString, Default: user.DefaultOrganization},
```

Reviewed By: a8m

Differential Revision: D17578898

fbshipit-source-id: afca92ac3f34c16100c868a10d0a480139bf4262
2019-09-25 13:51:45 -07:00
Alex Snast
6cf5b918c3 ent/entc: keep struct tags sorted
Summary: keeping tags sorted will prevent codegen changes due to random map key ordering

Reviewed By: a8m

Differential Revision: D17571598

fbshipit-source-id: 12afc4aa0d030aa178e6568eb7c768ccc159f726
2019-09-25 06:48:01 -07:00
Alex Snast
517d22843c ent/schema: adding .NotEmpty() helper to string field
Summary: just a wrapper around .MinLen(1) but makes it cleaner when reading the schema

Reviewed By: a8m

Differential Revision: D17551384

fbshipit-source-id: 1e2c7639eff7032f433271582830c7e11a2fb0d5
2019-09-25 00:00:42 -07:00
Ariel Mashraki
0f71ca6ad8 entc/cmd/entc: support more numeric types for ids
Reviewed By: alexsn

Differential Revision: D17527952

fbshipit-source-id: 1465b054531cee8ca1dd445b6654063f32f4c4e3
2019-09-23 09:48:24 -07:00
Ariel Mashraki
3f7553af20 entc/gen: add tag ignoring for private fields
Summary: Pull Request resolved: https://github.com/facebookexternal/fbc/pull/1487

Reviewed By: alexsn

Differential Revision: D17527793

fbshipit-source-id: b264706b8af74ff94d384dddd1b5a14661478676
2019-09-23 09:48:24 -07:00
Ariel Mashraki
19ef92e25b doc: update godoc link
Summary: godoc will be available only after making the repo public

Reviewed By: alexsn

Differential Revision: D17516450

fbshipit-source-id: adefc969484da46f7e316052ea2005be04c0e214
2019-09-22 01:38:08 -07:00
Ariel Mashraki
76f5b6ec5f ent/schema: add config for customize schema options
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/40

Reviewed By: alexsn

Differential Revision: D17480104

fbshipit-source-id: 5223430e3b2223b8471a85bd1d85b445f23acfce
2019-09-22 01:38:07 -07:00
Ariel Mashraki
57e95e0c7a sql/schema: add MySQL datetime type to column scan
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/39

Reviewed By: alexsn

Differential Revision: D17477388

fbshipit-source-id: 806fdce823ec919115f34b87a29ae411575537c0
2019-09-19 07:58:36 -07:00
Ariel Mashraki
26f3a42944 sql/schema: avoid parsing prerelease in semver
Reviewed By: alexsn

Differential Revision: D17476646

fbshipit-source-id: a3c8de5232e8c249c44fcb734c566420dccd0aa8
2019-09-19 06:36:56 -07:00
Ariel Mashraki
bf913111fd entc: improve numeric addition api
Reviewed By: alexsn

Differential Revision: D17474547

fbshipit-source-id: 08e367793faac76eb0cece880259a49a8bcbc95b
2019-09-19 05:00:11 -07:00
Ariel Mashraki
bc5e8316dd doc: json doc
Reviewed By: alexsn

Differential Revision: D17475209

fbshipit-source-id: c418f43426cce3fb3b8296a1e274ba3f5bc2a9bc
2019-09-19 05:00:11 -07:00
Ariel Mashraki
c3955a08f1 schema/field: json type support (#38)
Summary:
Pull Request resolved: https://github.com/facebookincubator/ent/pull/38

Only `IsNil` and `NotNil` predicates are supported this moment

Reviewed By: alexsn

Differential Revision: D17444976

fbshipit-source-id: 37336fa0bc7749af995933baee2e23bb7366dd78
2019-09-19 05:00:11 -07:00
Ariel Mashraki
83d0063437 entc/gen: returns affected rows in delete
Summary: Pull Request resolved: https://github.com/facebookexternal/fbc/pull/1455

Reviewed By: alexsn

Differential Revision: D17396880

fbshipit-source-id: 3a3a9849b816777bd0ef94cf55b2291705a37df6
2019-09-16 08:47:42 -07:00
Alex Snast
2b1ff377b5 ent/entc: move Get / GetX operation under client
Summary: Saves typing `.Query()` every time we want to use `.Get()`

Reviewed By: a8m

Differential Revision: D17396667

fbshipit-source-id: 103c10d25bd1181b8e52fa272f2c1a26f47ed9f6
2019-09-16 07:44:41 -07:00
Ariel Mashraki
1f0f39df38 ent/doc: add docs for storage-key option
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/36

Reviewed By: dlvhdr

Differential Revision: D17395353

fbshipit-source-id: b06de30a66ee4bb79f68a585a981a52ee3f341be
2019-09-16 06:07:01 -07:00
Ariel Mashraki
624ecd2cc7 schema/field: add storage-key option
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/35

Reviewed By: alexsn

Differential Revision: D17394930

fbshipit-source-id: bc9d8cc6569ad457b93d47d26d143f2442f98df9
2019-09-16 04:39:17 -07:00
Ariel Mashraki
a89cf1ff72 ent/dialect: add missing license headers
Reviewed By: alexsn

Differential Revision: D17390279

fbshipit-source-id: bdf27f42d768305341bfcc6cf80fa5bde63497e9
2019-09-15 09:43:24 -07:00
Ariel Mashraki
d99d9d282e ent/migrate: properly scan text columns
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/34

Reviewed By: alexsn

Differential Revision: D17390040

fbshipit-source-id: 92cb0e638f484877af185a88e41aa9c5eef6d22b
2019-09-15 08:08:41 -07:00
Ariel Mashraki
78a7509c52 entc: clear optional field values
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/33

Reviewed By: noamsch

Differential Revision: D17344992

fbshipit-source-id: 5336e9c5a4978e10923e26b5754942d92371a5cd
2019-09-15 04:44:55 -07:00
Ariel Mashraki
651dc25dd1 graph/ent: add node template and codegen
Summary:
This change allows to call `Client.Node` to get node info.

```
node, err := client.Node(ctx, id)
```

Reviewed By: dlvhdr

Differential Revision: D17341682

fbshipit-source-id: bed1fe018cca7f5048a624b50b1f5cc6cc3507f3
2019-09-12 02:50:57 -07:00
Ariel Mashraki
5c9c99f5db ent/dialect: disable flaky gremlin test
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/32

Reviewed By: alexsn

Differential Revision: D17341672

fbshipit-source-id: 1597d66a5f8030a2c0d431500669a22b21210697
2019-09-12 02:45:31 -07:00
Ariel Mashraki
ade72ced0d entc/integration: test external templates with node interface (#31)
Summary:
Pull Request resolved: https://github.com/facebookincubator/ent/pull/31

node template is just a template used for testing.

Reviewed By: dlvhdr

Differential Revision: D17327549

fbshipit-source-id: 803ac26df1b866e721edee97999d199b0935098b
2019-09-12 01:24:16 -07:00
Ariel Mashraki
6915b13d25 ent/gen: add support for external tempaltes execution
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/30

Reviewed By: dlvhdr

Differential Revision: D17318127

fbshipit-source-id: eccc2963f648296e222de9d002ab3caa8fac1389
2019-09-11 12:18:34 -07:00
Ariel Mashraki
7dfe3c174c sql/schema: more precise blob definition
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/29

Reviewed By: alexsn

Differential Revision: D17284406

fbshipit-source-id: 84c2ffb50b8f016ad361f1420c5352c7969cbc77
2019-09-10 12:40:37 -07:00
Ariel Mashraki
2cc229eeb2 entc/gen: reject edge with mismatch type for back-ref
Reviewed By: alexsn

Differential Revision: D17260642

fbshipit-source-id: ef25dc77d9e4a7986e86d859f4f776fcf34336c9
2019-09-10 06:00:34 -07:00
Ariel Mashraki
d820361a3a entc/gen: add inc/dec capability for numeric fields
Reviewed By: alexsn

Differential Revision: D17259987

fbshipit-source-id: ad5ba1ba7383418463bc9137d82f16eadef809e7
2019-09-10 06:00:34 -07:00
Alex Snast
b59fb59b9a symphony: bump stretchr/testify package version
Reviewed By: idoshveki

Differential Revision: D17281295

fbshipit-source-id: fff60a2760eea967b61b5636fec7a21b77c48bf0
2019-09-10 01:21:16 -07:00
Ariel Mashraki
ca995171ea ent/doc: additional fields to generated model doc and example
Summary: https://pxl.cl/KrbT

Reviewed By: alexsn

Differential Revision: D17257937

fbshipit-source-id: b271278d75e0b4952543515963548e8e0295f613
2019-09-09 06:22:30 -07:00
Ariel Mashraki
b067d5d8b4 dialect/sql: increment and decrement columns using "add"
Summary:
Use case:

```
query, args := Update("data_packs").
  Add("bytes_left", count).
  Where(expr...).
  Query()
```

Reviewed By: alexsn

Differential Revision: D17257590

fbshipit-source-id: f27b4b388a711a16deb0c3b790e24957e044204d
2019-09-09 05:50:59 -07:00
Ariel Mashraki
5fb8c081f3 ent/doc: add documentation and exmples to offline migrate
Summary: https://pxl.cl/Knr4

Reviewed By: alexsn

Differential Revision: D17253380

fbshipit-source-id: 517985f1b912c68e379da3412863b5d14927aedc
2019-09-09 01:20:45 -07:00
Ariel Mashraki
b2cedc6c95 entc: move bindata files to internal packages
Summary: godoc was showing "Code generated by go-bindata. (generated) DO NOT EDIT." in the package description and exposing its methods.

Reviewed By: alexsn

Differential Revision: D17253564

fbshipit-source-id: c82082b4fa6adfba2c2663efbfacefb6423f89d9
2019-09-08 10:14:53 -07:00
Ariel Mashraki
61b8ccea4a entc/load: enable adding additional fields to the generated entities
Summary: In some cases (like xwf auth service), you want to add additional fields to the generated model.

Reviewed By: alexsn

Differential Revision: D17223674

fbshipit-source-id: fb4be71b388c6bd107e6bac242133c237fe25599
2019-09-08 08:05:13 -07:00
Ariel Mashraki
3fcaf80ca4 entc/migrate: add an option to dump schema changes
Reviewed By: alexsn

Differential Revision: D17253145

fbshipit-source-id: 32640e60a8e149ac8774384db8e2ece29b9fec24
2019-09-08 06:28:58 -07:00
Ariel Mashraki
6c20ef1d3a ent/migrate: add writedriver for dumping sql exec commands
Reviewed By: alexsn

Differential Revision: D17200893

fbshipit-source-id: 09ec631b5a52d617d0ee97bda81c52f67486889e
2019-09-08 06:01:12 -07:00
Alex Snast
397ff3b79d entgo/circleci: run integration tests from docker executer (#28)
Summary:
Switching to docker executer gives us:
- Faster execution times.
- Removes docker-compose dependency.
- Provides view into DB containers output.

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

Reviewed By: a8m

Differential Revision: D17210011

fbshipit-source-id: 71225939ef16194cf011ec47a5815b42918cbbbd
2019-09-08 04:31:04 -07:00
Alex Snast
d8eab42654 ent/docs: use absolute paths in footer links
Summary: Currently links are relative so clicking them from https://entgo.io/docs/getting-started/ resolves to https://entgo.io/docs/getting-started/docs/getting-started/ which is invalid

Reviewed By: dlvhdr

Differential Revision: D17201398

fbshipit-source-id: becff35bfc689601377882c461b60e2019711a8e
2019-09-05 00:16:52 -07:00
Ariel Mashraki
f1bea078e5 ent/doc: fix footer links
Reviewed By: alexsn

Differential Revision: D17183988

fbshipit-source-id: 4635c083c2057bbfa453112466039fac9e1f262c
2019-09-04 09:09:55 -07:00
Ariel Mashraki
b26334c93c ent/doc: add example for select api
Reviewed By: dlvhdr

Differential Revision: D17183384

fbshipit-source-id: 39072346582a70b74f9eb78137a9f9357117ca84
2019-09-04 08:20:24 -07:00
Ariel Mashraki
95d878d3c6 ent/doc: fix grammar and typos and doc
Summary: {F206501895}

Reviewed By: alexsn

Differential Revision: D17182079

fbshipit-source-id: 9311fc8b3f2608b9cd5ae5cd0a805b0cf73c4029
2019-09-04 07:35:46 -07:00
Ariel Mashraki
9ab0a28ffe entc/select: add selection api
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/27

Reviewed By: alexsn

Differential Revision: D17164536

fbshipit-source-id: f5caa80b05aff1ef8ec30d7a53256b00380d018c
2019-09-04 07:14:24 -07:00
Alex Snast
c95a00c4ce upgrade go version to 1.13 (#1408)
Summary:
Pull Request resolved: https://github.com/facebookexternal/fbc/pull/1408

In addition removing GOPROXY setting as its enabled by default in 1.13

Reviewed By: a8m

Differential Revision: D17181239

fbshipit-source-id: e1faebea46ce6d5c4c11a55e6e7ee7a87b374c0f
2019-09-04 05:20:16 -07:00
Ariel Mashraki
6913e80e43 ent/doc: minor changes for doc websote and readme
Reviewed By: dlvhdr

Differential Revision: D17163026

fbshipit-source-id: 62536da9a450ac80eb224252e12ae8dc835acb11
2019-09-03 07:56:32 -07:00