Commit Graph

196 Commits

Author SHA1 Message Date
Ariel Mashraki
bbbedf53af entc/gen: add EqualFold and ContainsFold to string IDs (#3382) 2023-03-12 11:42:13 +02:00
Ariel Mashraki
3b7715b552 dialect/sql/schema: allow setting table comments (#3365) 2023-03-04 20:50:26 +02:00
Ariel Mashraki
baec350ed4 entc/gen: support type-based matching for edge-schema columns (#3306)
In case of no match by foreign-keys, we search by edge-type. This can happen if the type (edge owner)
is named T, but the edge-schema E names its edge field as u_id. We consider it as a match if
there is only one usage of T in E.
2023-02-07 10:58:20 +02:00
Ariel Mashraki
ef0427550f ent: add additional fields to QueryContext 2023-01-14 22:47:54 +02:00
Ariel Mashraki
542f36d4ab entc/gen: skip checking required fields with db-based default values (#3204) 2023-01-02 22:59:27 +02:00
Ariel Mashraki
136807549d dialect/entsql: supports setting SQL column comments (#3191)
* feat: Add column comment in SQL DDL, using EntSQL annotations to achieve it.

* Update annotation.go

* fix lint

* Add table primary key column comment

* entsql.Comment(string)  is unnecessary

* entc/gen: minor changes to entsql.WithComments + add tests

Co-authored-by: chenghonour <wantto@outlook.com>
2022-12-26 14:48:37 +02:00
Ariel Mashraki
f226627d67 ent: export query interceptors (#3157) 2022-12-19 10:17:10 +02:00
Ariel Mashraki
d0c5afa705 entc/gen: make generated client to implement the ent.Mutator interface (#3161) 2022-12-09 21:18:25 +02:00
Christopher Schmitt
d7f2f3a098 entc/gen: add driver as a reserved field word (#3158) 2022-12-09 08:08:30 +02:00
Ariel Mashraki
381483e45c entc/gen: remove unnecessary sqlgraph.To step on HasE predicates (#3144)
Predicate that checks existence-only do not need the 'other' table
2022-12-04 13:15:16 +02:00
Ariel Mashraki
891fc8fecf dialect/sql/schema: support setting default value expressions on id fields (#3089) 2022-11-13 18:55:04 +02:00
Ariel Mashraki
1e5f68646f dialect/sql/entsql: support setting expression as column default value
Fixed https://github.com/ent/ent/issues/3069
2022-11-12 14:38:33 +02:00
nzlov
942eb56b2a cmd/ent: add comments to 'describe' command (#3067) 2022-11-07 16:23:07 +02:00
Ariel Mashraki
c063978d68 entc/gen: ensure edge.StorageKey and edge.Field do not conflict
Fixed https://github.com/ent/ent/issues/2205.
2022-10-30 00:08:44 +03:00
Ariel Mashraki
13bf27bdd6 entc/gen: support Append<F> for JSON array fields (#2975) 2022-09-29 16:57:54 +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
f40cdf84f4 entc/gen: ensure immutability is consistent between edge and their fields (#2877) 2022-08-20 19:30:27 +03:00
Ariel Mashraki
b18ca9ca6f schema/edge: allow setting immutable edges (#2876) 2022-08-20 19:10:16 +03:00
Ariel Mashraki
2c63d1d70e all: gofmt -w -r 'interface{} -> any' (#2874) 2022-08-19 18:23:04 +03:00
Ariel Mashraki
b207429f15 entc/gen: allow setting required fields as nillable 2022-08-13 20:12:28 +03:00
Ariel Mashraki
26e07c90c0 dialect/sql/sqlgraph: support edgeschema in entgql (#2817) 2022-08-01 18:18:12 +03:00
Ariel Mashraki
9673a4d506 entc/gen: allow naming ent/schema as Field (#2811) 2022-07-29 13:17:20 +03:00
Ariel Mashraki
b60e0f9eac entc/gen: add support for WithNamed<E> feature-flag (#2792)
* entc/gen: struct fields and methods for NamedEdge api

* entc/gen: generate WithNamedEdge methods for named-edges

* entc/gen: implement eager-loading for named-edges

* entc/gen: simplify eager-loading template

* entc/gen: drop support for unqiue edges in named-based loading

* all: codegen

* doc/website: named-edges feature-flag

* Update doc/md/eager-load.mdx

* Update doc/md/eager-load.mdx
2022-07-24 18:41:07 +03:00
Ariel Mashraki
077670451a entc/gen: skip enum identifier checks in case it has custom Go type (#2766)
Fixes https://github.com/ent/ent/issues/2756
2022-07-17 17:14:43 +03:00
Sasha Melentyev
9e0d8af284 ent/gen: use error.New for errors without format (#2764) 2022-07-17 16:50:50 +03:00
Will Bicks
cd1afb235c entc: improve generated comments for edges and fields (#2632)
* replace default field comment with user comment if defined
* use comments defined on edges in generated entities
* add docs for comment method on edges and fields
* update integration to reflect above changes
2022-06-13 15:52:47 +03:00
Ariel Mashraki
c26d92d39e entc/gen: support indexing edge schema with composite primary keys (#2578) 2022-05-30 17:20:27 +03:00
Ariel Mashraki
5800f6b578 entc/gen: avoid setting the incremental attribute fo non-integer fields (#2571) 2022-05-27 23:54:41 +03:00
Ariel Mashraki
e1c5277483 ent: initial support for edge schemas (#2560) 2022-05-25 15:46:00 +03:00
Giau. Tran Minh
196875c761 entc/gen: block Optional on ID fields (#2443)
* entc/gen: block Optional on the ID field

* chore: restore the old error message

* Update entc/gen/type.go

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

Co-authored-by: Ariel Mashraki <7413593+a8m@users.noreply.github.com>
2022-04-02 21:01:38 +03:00
Ariel Mashraki
c071898395 entc/gen: move column default quoting to template (#2406) 2022-03-16 13:41:19 +02:00
Ariel Mashraki
770e4d24e9 entc/gen: add Type.IsInt64 helper function for fields 2022-02-04 22:46:17 +02:00
Ariel Mashraki
1d3f1819ae entc/gen: replace Type.Alias with Type.PackageAlias 2022-02-04 22:46:17 +02:00
Ariel Mashraki
0e49dd1d9f entc/gen: support local package names for generated packages
The new Alias option adds package aliases (local names) for all type-packages that
their import identifier conflicts with user-defined packages (i.e. GoType).
2022-02-02 15:50:00 +02:00
Genevieve
16e57a92c5 entc/gen: spelling fix in error message (#2262) 2022-01-13 12:51:37 +02:00
Sasha Melentyev
f5fed28782 all: fix typos (#2243)
* refactor(all): Fix typo and small refactor

* refactor(all): Fix typo
2022-01-05 16:10:28 +02:00
MasseElch
76770e8a52 entc/gen: don't rely on descriptor when retrieving enum values or names to ease extension testibility (#2211)
Trying to add tests to some extensions and this is complicating things a lot because `Field.def` is unexported. Not taking the length of `def.Enums` but `Enums` directly fixes this. It technically is also more correct, because `f.Enums` could be greater than `f.def.Enums`.
2021-12-11 14:25:02 +02:00
Ariel Mashraki
6372263b99 entc/gen: add support for subtracting values from unsgined fields (#2169) 2021-11-25 12:37:43 +02:00
Alexander Melentyev
147b1f59ae all: small typo fixes (#2095) 2021-11-01 17:47:06 +02:00
Ariel Mashraki
e687246f7a schema/field: support default values for json and other 2021-10-21 22:57:04 +03: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
87e2199309 entc/integration: add example for bytes id with custom comparable Go type 2021-09-29 18:31:01 +03:00
Ariel Mashraki
625e422a08 entc/gen: fix bug with enum separators
Fixed https://github.com/ent/ent/issues/1961
2021-09-24 00:03:59 +03:00
Ariel Mashraki
4c2faf2282 entc/gen: allow spaces in enum fields 2021-09-23 23:23:28 +03:00
Ariel Mashraki
430a3ee8b3 entc/gen: add example for uuid edge-field and fix #1723 (#1731) 2021-07-16 22:33:28 +03:00
Ariel Mashraki
d3a0b89864 entc/gen: simplify the way to get gen.Field operation
External templates should not deal with storage configuration
2021-06-27 11:07:38 +03:00
Ariel Mashraki
c40ae45aee entc/gen: add support for summing custom Go numeric types 2021-06-25 17:30:17 +03:00
Ariel Mashraki
754b56856a entc/gen: disallow immutable edge-fields
Until we add the immutable option for edges
2021-06-16 22:19:53 +03:00
Ariel Mashraki
66871c9806 dialect/sql/schema: add support for index prefixes in mysql 2021-06-09 22:52:31 +03:00
Mahmudul Haque
ba954ebeec dialect/sql/schema: add field collation support (#1548)
* specific field collation support

* go generate ./...
2021-05-09 18:09:08 +03:00