Commit Graph

55 Commits

Author SHA1 Message Date
Ariel Mashraki
3f1063c77e schema/field: add support or external ValueScanner (#3391) 2023-03-16 22:18:54 +02:00
Ariel Mashraki
037b5a4bc3 dialect/sql/sqlgraph: add builders to create spec (#3288) 2023-01-31 09:37:51 +02:00
Ariel Mashraki
34bd0b7b6f entc/gen: move mutation hooks logic to a shared generic function (#3180) 2022-12-19 17:36:29 +02:00
Ariel Mashraki
a8dde5e0d1 dialect/sql/sqlgraph: move fields setters to method calls (#2995) 2022-10-08 20:08:22 +03:00
Ariel Mashraki
ac937f8a6e entc/gen: allow using 'client' and 'tx' as schema field names (#2919) 2022-09-09 10:38:25 +03:00
Ariel Mashraki
47972774c5 go: bump go/packages version ci to 1.18+1.19 (#2832)
* bumped pkg golang.org/x/tools version to address issue #2826

* .github: update go1.19 in go generate

Co-authored-by: Ankit Patial <ankitpatial@gmail.com>
2022-08-05 11:17:53 +03:00
Ariel Mashraki
6ddeb93649 entc/gen: use gotypw pkgname as alias in case it does not match pkgpath (#2686) 2022-06-25 11:05:15 +03:00
Giau. Tran Minh
195be2d98d entc/gen: fixed unnamed field initialization (#2648)
* entc/gen: fixed ConstraintError fields name

* fix: run go generate

* entc/gen: fixed Filter fields name

* fix: run go generate again for entql
2022-06-14 12:32:46 +03:00
Ariel Mashraki
fd955654a0 entc/gen: change codegen signature from entc to ent (#2627) 2022-06-07 17:48:17 +03:00
Ariel Mashraki
e1c5277483 ent: initial support for edge schemas (#2560) 2022-05-25 15:46:00 +03:00
Justin Johnson
38d4d5fb5c entc/gen: propagate nodes post-save mutations (#2525)
* Failing test

* Fix propagating entirely models from OpCreate hook

* Apply suggestions from code review

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

* whitespace

* Failing test for updateone

* fix for updateone

* Regnerate

* regen from root

Co-authored-by: Ariel Mashraki <7413593+a8m@users.noreply.github.com>
2022-05-05 11:19:21 +03:00
MasseElch
2c8e58ce94 entc/gen: skip Table() predicate and warn about reserved schema name (Client) (#2486)
* entc/gen: do no generate `Table()` predicate and warn the user in case of reserved schema name like `Client`.

* doc/md: document reserved schema name

* doc/md: revert reserved schema name as this was already working

* doc/md: rephrase
2022-04-20 16:30:59 +02:00
Ariel Mashraki
9e809635b2 entc/gen: ignore immutable fields on Upsert<T>.UpdateNewValues
Also, for some reason, the TimeMixin.UpdateTime was an immutable field,
but this was incorrent, because the codegen just skip generating
update setters to it. Removing the Immutable modifier allows users
to set this field explicitly.
2021-10-08 08:20:05 +03:00
Ariel Mashraki
5f31091dcd entc/gen: support de/incrementing values on upsert
Fixed https://github.com/ent/ent/issues/1952.
2021-09-17 14:25:34 +03:00
Ariel Mashraki
c1fae17b6c entc/gen: add schema type to generated validation errors 2021-09-07 18:33:32 +03:00
Ariel Mashraki
b8532f87a6 entc/gen: support for upsert with client generated ids
Fixed #1826
2021-08-14 17:44:04 +03:00
Ariel Mashraki
09c4306378 entc/gen: add support for upsert/on-conflict feature-flag 2021-08-04 14:01:31 +03:00
Ariel Mashraki
3307dd5323 entc/gen: add the Exec(X) methods for BulkCreate 2021-07-29 17:50:51 +03:00
Tarrence van As
cdfa3e35bb entc/gen: add Exec and ExecX to Create builder (#1753) 2021-07-23 15:00:47 +03:00
Ariel Mashraki
b8129817ca entc/gen: return an error instead of panic when import forgotten 2021-07-19 11:25:52 +03:00
Ariel Mashraki
ded20a0e36 entc/gen: cleanup sql templates 2021-06-27 10:27:10 +03:00
Matthew Gabeler-Lee
110073c982 entc/gen: fix nil dereference (SIGSEGV) on db errors during Save with Hooks (#1629)
* entc/gen: check for errors before assuming success when save has hooks

* entc/integration,examples: update generated code
2021-06-09 08:56:11 +03:00
Ariel Mashraki
11567a3926 entc/gen: update mutation-id on post mutation 2021-05-31 20:31:51 +03:00
Ariel Mashraki
dd4792f5b3 go: rename module from github.com/facebook/ent => entgo.io/ent (#1226) 2021-02-02 23:03:04 +02:00
Nathaniel Peiffer
b8b82f80a4 entc/gen: fix grammar and language usage in function comments (#1126)
* fix grammar and english usage in templates

* bindata gen

* codegen

* go generate ./again...
2021-01-04 14:34:40 +02:00
Ariel Mashraki
17abe2d60f entc/gen: less sophisticated naming logic (#774)
Closed #772
2020-09-17 09:19:55 +03:00
Ariel Mashraki
b4b4fa95d7 entc/gen: restructure hooks execution (#741)
Closed #739
2020-09-09 10:41:17 +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
875e6e516b entc/gen: initial implementation for create-bulk #613
Closed #236
2020-07-24 20:16:31 +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
Alex Snast
7df2e02343 ci/lint: enabling goheader linter ensuring the existance of a license header in go files (#593)
Signed-off-by: Alex Snast <alexsn@fb.com>
2020-07-07 15:36:09 +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
Ariel Mashraki
737fb4afda entc/mutation: expose builder api for getting mutations (#531) 2020-06-08 15:16:56 +03:00
Ariel Mashraki
5ed339839a entc/mutation: reject querying old values of finished mutations (#495) 2020-05-20 17:28:39 +03: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
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
9b2b53f559 entc/gen: avoid conflict local vars with user packages (#292)
Fixes #284
2020-01-16 17:30:18 +02:00
Ariel Mashraki
0a7608f8bd all: change codegen header 2019-12-18 13:00:25 +02:00
Ariel Mashraki
c6800a3869 entc/gen: move node creation to sqlgraph 2019-12-17 22:45:04 +02:00
Ariel Mashraki
e85b10be36 entc/gen: remove multi storage support 2019-12-15 14:48:55 +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
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
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
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
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
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
Ariel Mashraki
5bc8568069 all: add license reference to README and add copyright headers to gencode
Reviewed By: alexsn

Differential Revision: D17119262

fbshipit-source-id: 046f095ca9432c920778db0edb2158dedb23c0a2
2019-08-30 08:46:03 -07:00