Commit Graph

51 Commits

Author SHA1 Message Date
Ariel Mashraki
f519a5465e schema/field: add builder per numeric type
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/21

Reviewed By: alexsn

Differential Revision: D16936906

fbshipit-source-id: 06f5721ed0088107cf42382731f8b7282f22eef7
2019-08-21 08:00:01 -07:00
Ariel Mashraki
eb3f140e67 entc/integration: add test for bool predicates
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/19

Reviewed By: alexsn

Differential Revision: D16917224

fbshipit-source-id: 6f4c388f504c61e5e25e3ca4a4b29a3d2736ab62
2019-08-20 08:13:40 -07:00
Ariel Mashraki
c85b001b88 ent/gen: return an error on field redeclared
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/17

Reviewed By: alexsn

Differential Revision: D16914462

fbshipit-source-id: de0284d8737e3b815fbd0799940fd5c272ed4690
2019-08-20 06:44:05 -07:00
Ariel Mashraki
c8c01f7398 ent/cmd: add target option for init command
Reviewed By: elys1um

Differential Revision: D16914253

fbshipit-source-id: df2b87d2741c96c374526c0a2d4171bd68d1e4f4
2019-08-20 06:31:22 -07:00
Ariel Mashraki
24d03df613 ent/ci: install goimports before running tests
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/16

Reviewed By: alexsn

Differential Revision: D16914392

fbshipit-source-id: 7f0fc01fb760b0712341810796d6539f549a9b5f
2019-08-20 06:07:08 -07:00
Alex Snast
85b29631a8 entc/schema: adding support for immutable fields (#1340)
Summary:
Pull Request resolved: https://github.com/facebookexternal/fbc/pull/1340

Immutable fields are ent fields which cannot be updated

Reviewed By: a8m

Differential Revision: D16899625

fbshipit-source-id: ca482c66570e84ca9a1e0a03f729847561f2816b
2019-08-20 02:17:13 -07:00
Ariel Mashraki
e0e754717e ent: change ent package name (#1338)
Summary:
Pull Request resolved: https://github.com/facebookexternal/fbc/pull/1338

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

Reviewed By: alexsn

Differential Revision: D16890825

fbshipit-source-id: 656baaa73f5debab08c849b6b9639caeec2a8ef1
2019-08-19 09:32:14 -07:00
Alex Snast
a209a8395e schema/field: Allow .Unique() definition on int / float fields
Reviewed By: a8m

Differential Revision: D16891088

fbshipit-source-id: b3d8375685b6d1957f678c2f9eb40e172891b255
2019-08-19 06:35:26 -07:00
Ariel Mashraki
7438104b5d entc/sql/decode: use null types for fields scanning
Reviewed By: alexsn

Differential Revision: D16890638

fbshipit-source-id: bfe3699831875a559d322a500ffc20a976f30a44
2019-08-19 05:02:37 -07:00
Ariel Mashraki
079ba191e3 ent/field: add default value for time
Reviewed By: alexsn

Differential Revision: D16890453

fbshipit-source-id: 362ae9e9666c523bdcce16503441565b6279ff08
2019-08-19 04:21:25 -07:00
Ariel Mashraki
ba950aac52 entc/load: add support for embedding schemas
Reviewed By: alexsn

Differential Revision: D16884402

fbshipit-source-id: 216bbf875251b0cbdd61e312ad763b439cab7813
2019-08-18 04:30:14 -07:00
Ariel Mashraki
ec302a47e2 entc/gen: unique field can not have default value
Reviewed By: alexsn

Differential Revision: D16827420

fbshipit-source-id: 9a9896980203ba1ca2c53412071423847d18d8cb
2019-08-15 04:42:03 -07:00
Ariel Mashraki
c16d3c8e25 ent/schema: explicitly defines non-null fields in schema
Reviewed By: alexsn

Differential Revision: D16791620

fbshipit-source-id: bad3ac7b2349d2f483c804eb3623c6dfa8b06313
2019-08-15 03:37:17 -07:00
Ariel Mashraki
4ac1b595bf ent/schema: fix indexes in mysql versions <= 5.6
Summary: move property type uniqueness enforment to ent schema

Reviewed By: alexsn

Differential Revision: D16767355

fbshipit-source-id: db6ba4853a8816fd5f6299a34c0b780028d75da1
2019-08-13 07:41:23 -07:00
Ariel Mashraki
74ce5b36f2 ent/load: safely marshaling schema
Summary: more descriptive output on marshaling failures.

Reviewed By: alexsn

Differential Revision: D16782294

fbshipit-source-id: 4ac3fbb3ef152d59bada257a9f0d8ccde5e95ae9
2019-08-13 03:06:08 -07:00
Alex Snast
c0deedcf48 set default mysql table collation to utf8mb4_bin (#1295)
Summary:
Pull Request resolved: https://github.com/facebookexternal/fbc/pull/1295

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

See [Case Sensitivity in String Searches](https://dev.mysql.com/doc/refman/5.7/en/case-sensitivity.html)

Reviewed By: a8m

Differential Revision: D16782072

fbshipit-source-id: f2a836e580757f0e956a444c3fdf93c502723098
2019-08-13 02:12:58 -07:00
Ariel Mashraki
108affa8dd ent/schema: move schema packages into a separate package
Reviewed By: alexsn

Differential Revision: D16763332

fbshipit-source-id: e3e4279c62992de192464c3d3b1036c45687507c
2019-08-12 07:53:03 -07:00
Ariel Mashraki
230e764b77 ent/entc: add test for index creation
Reviewed By: idoshveki

Differential Revision: D16762873

fbshipit-source-id: 3e656a0979c6d61e542ad5f4bc5a951089c5c0c0
2019-08-12 07:13:20 -07:00
Ariel Mashraki
2128fc2ca1 ent/index: add indexes api
Reviewed By: alexsn

Differential Revision: D16757699

fbshipit-source-id: 6a0027b1f855721f1415b8c72b5b1be8bc2ce902
2019-08-12 06:44:40 -07:00
Ariel Mashraki
f2411742ae ent/field: force optional on nillable field
Reviewed By: alexsn

Differential Revision: D16757719

fbshipit-source-id: 813e10b8b4b1744e7ab68f4513722f66911cdef3
2019-08-11 08:44:39 -07:00
Alex Snast
71725de3d7 implement graph database migrate command
Summary: Pull Request resolved: https://github.com/facebookexternal/fbc/pull/1281

Reviewed By: a8m

Differential Revision: D16757606

fbshipit-source-id: 89ad3cdf7b9a7c9931ac8e2b20f127a1cc125d62
2019-08-11 08:32:44 -07:00
Ariel Mashraki
329b5ddf77 ent/sql/migrate: support indexes
Reviewed By: alexsn

Differential Revision: D16711184

fbshipit-source-id: 632b02c5c77c6289b242263647d45d9f28752e3f
2019-08-11 05:47:18 -07:00
Ariel Mashraki
7c84a20f2e ent/client: follow up for D16667212
Reviewed By: alexsn

Differential Revision: D16692962

fbshipit-source-id: 2502b74bf57ae63577fd3232303fc5f51de6d0fb
2019-08-07 12:10:33 -07:00
Ariel Mashraki
619b63d5f7 ent/schema: rename nullable to nillable
Reviewed By: idoshveki

Differential Revision: D16687892

fbshipit-source-id: e8cfaaf1241e94c2de0a9fe9077326339d593716
2019-08-07 06:56:33 -07:00
Ariel Mashraki
25f5a2ef01 entc/predicate: add isnull/notnull predicates for codegen
Reviewed By: idoshveki

Differential Revision: D16687226

fbshipit-source-id: 14a39e066447dbf77413e5c7f7318a2d61bddd32
2019-08-07 06:56:32 -07:00
Ariel Mashraki
23059c8bae graph/ent: re-generate ent assets
Reviewed By: alexsn

Differential Revision: D16686149

fbshipit-source-id: f62ee0da4204460a59e6356d92faea774e796bf3
2019-08-07 04:08:28 -07:00
Ariel Mashraki
2fd1b728f3 ent: add AND operator for type predicates
Reviewed By: alexsn

Differential Revision: D16668249

fbshipit-source-id: 1554c3af9779fd551a90218c604d23b5bf8b8c6b
2019-08-06 14:41:56 -07:00
Alex Snast
dfadb3e27b entc: drop switch statements on single storage (#12)
Summary:
Pull Request resolved: https://github.com/facebookincubator/ent/pull/12

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

Reviewed By: a8m

Differential Revision: D16667212

fbshipit-source-id: e9f8a51986de5fe97356285e23946a61578d8164
2019-08-06 07:52:21 -07:00
Ariel Mashraki
cef32f1fb4 entc: add option to override codegen header
Summary:
Set the standard header ("Code generated by entc, DO NOT EDIT.") as default, and override it using option in graph.

No changes to graph except the `generate.go` file.

Reviewed By: idoshveki

Differential Revision: D16642348

fbshipit-source-id: d9fd1d2046e2fd96acbb100ef061fda75d99ce52
2019-08-04 05:12:33 -07:00
Ariel Mashraki
c5259c8528 entc: add relevant example-code for bytes field
Reviewed By: alexsn

Differential Revision: D16639870

fbshipit-source-id: 948cb0256fc8691a6c2194ee31db984d6ac1aede
2019-08-04 04:22:36 -07:00
Ariel Mashraki
66ea49049a entc: report informative message when goimports is not in PATH
Summary: Learning from the remote troubleshoot session I had with Murtadha on Friday - this could save me and him a lot fo time.

Reviewed By: alexsn

Differential Revision: D16639856

fbshipit-source-id: dc2a6b693b617fcd8061757987a6db95af4be2b6
2019-08-04 04:05:06 -07:00
Ariel Mashraki
2cc8286f5f entc: add idtype option codegen
Reviewed By: alexsn

Differential Revision: D16601757

fbshipit-source-id: 35d5fbfb4ef40bae192e084ad4e067880175e71c
2019-08-04 03:13:01 -07:00
Ariel Mashraki
c203f043cf ent: add blob tyoe
Reviewed By: idoshveki

Differential Revision: D16600425

fbshipit-source-id: 04c6fe39f9b3b628a1e79eb3063188f582d9e504
2019-08-01 07:45:05 -07:00
Ariel Mashraki
2d962d5cba ent/entc: add nillable setter for nullable fields
Reviewed By: idoshveki

Differential Revision: D16599899

fbshipit-source-id: bcab65e09645409f8a822e2eebda1aac0f804c7c
2019-08-01 06:57:19 -07:00
Ariel Mashraki
2c8b5a65b7 entc: abandon plugins
Summary:
Go plugin is not a good solution for both internal and external usage.
It's hard to manage and maintain matching versions (both Go and external libraries), and it does not support Windows.

Reviewed By: alexsn

Differential Revision: D16582217

fbshipit-source-id: 81876d2c6f30bbfc16ecf9e5000f0670f2e62484
2019-08-01 05:07:48 -07:00
Ariel Mashraki
8cb2428ea3 ent: fix lint errors
Reviewed By: idoshveki

Differential Revision: D16560151

fbshipit-source-id: 703f6e28403b14fc667fa7c592f0f3827a9335a6
2019-07-30 05:31:33 -07:00
Ariel Mashraki
56656dfcb6 ent/entc: configure storage driver in codegen
Summary: Pull Request resolved: https://github.com/facebookexternal/fbc/pull/1229

Reviewed By: alexsn

Differential Revision: D16539934

fbshipit-source-id: b3a8bf1f1be6f65ad3f649cd921ea20fc24182bf
2019-07-30 02:49:22 -07:00
Ariel Mashraki
c6b178de20 manaully import deps
Summary:
Some old versions of `goimports` don't import deps that are go modules.
Importing manually them right now.

Reviewed By: apbuteau

Differential Revision: D16472613

fbshipit-source-id: 6cc237f133f3058c2e7bd4ec723500b725cde0a1
2019-07-24 17:39:03 -07:00
Ariel Mashraki
2cfda7564f type safe predicates
Reviewed By: alexsn

Differential Revision: D16452717

fbshipit-source-id: da0a07275434d95d73a5a26830a2e5535c3abf47
2019-07-24 08:35:51 -07:00
Alex Snast
ff6403b4ae remove mutex from sql tx
Summary: We were releasing tx lock before consuming rows data which could place the connection in a bad state. Instead of changing lock placement we chose to remove it as mutations were changed to being serial which is expected when working with transactions.

Reviewed By: a8m

Differential Revision: D16449629

fbshipit-source-id: 9f2e7435036f35c407f0640e3dd1071a17b3c368
2019-07-23 20:15:45 -07:00
Ariel Mashraki
1e47de5300 move lib/go/gremlin to ent/dialect (#1192)
Summary:
Pull Request resolved: https://github.com/facebookexternal/fbc/pull/1192

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

Reviewed By: alexsn

Differential Revision: D16377224

fbshipit-source-id: 07ca7436eb9b64fbe2299568560b91466b2417ba
2019-07-20 08:27:06 -07:00
Ariel Mashraki
dbe2afb946 add Clone methods for query builders (#10)
Summary:
Pull Request resolved: https://github.com/facebookincubator/ent/pull/10

Closes T46957221

Reviewed By: idoshveki

Differential Revision: D16278371

fbshipit-source-id: ca2b038fccb8fca6a7e8261444de27bdd63d0b00
2019-07-16 03:32:25 -07:00
Ariel Mashraki
b5cdb810b8 dialect/sql/schema: universl id allocation support
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/9

Reviewed By: alexsn

Differential Revision: D16252229

fbshipit-source-id: 795b6556d322e5c1ff5fb826c3b06ba5421ac857
2019-07-15 02:30:41 -07:00
Alex Snast
ad051e6d72 adding ent client context load/store support
Summary: Pull Request resolved: https://github.com/facebookexternal/fbc/pull/1148

Reviewed By: a8m

Differential Revision: D16202464

fbshipit-source-id: 15174e19e5e514774928e4e682d1c2743e863a26
2019-07-14 08:33:14 -07:00
Ariel Mashraki
fd738c1b3e add case for column deletion
Reviewed By: alexsn

Differential Revision: D16183212

fbshipit-source-id: af288f2e1433820356e97ede77c7595db8d23a9f
2019-07-10 10:21:41 -07:00
Ariel Mashraki
4b176495e8 add support for all int types in schema
Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/8

Reviewed By: alexsn

Differential Revision: D16131257

fbshipit-source-id: 7b362740053c684f70ec69188b2fcee898605436
2019-07-10 09:24:31 -07:00
Alex Snast
1cf3c3a117 adding ent.MaskNotFound generated helper
Reviewed By: a8m

Differential Revision: D16121210

fbshipit-source-id: c956551c975192cf997496490dd3e243022fbfb3
2019-07-04 09:37:27 -07:00
Ariel Mashraki
e8e96f014f add charset support for fields
Summary: Basically, adding support for Hebrew characters.

Reviewed By: alexsn

Differential Revision: D16068537

fbshipit-source-id: 4e934da5ea97c9e804317f746556ab1d51faebcc
2019-07-01 08:10:24 -07:00
Ariel Mashraki
37ae2b744e add offset step to query builder (#1049)
Summary:
Pull Request resolved: https://github.com/facebookexternal/fbc/pull/1049

Useful for real paging

Reviewed By: noamsch

Differential Revision: D16003607

fbshipit-source-id: 6a85d0e3d71a2582bc3cd8f1d66748dda4f2a10e
2019-06-26 01:43:59 -07:00
Ariel Mashraki
4f31aa6cfe imporve sql migration (#3)
Summary:
Pull Request resolved: https://github.com/facebookincubator/ent/pull/3

add an append-only mode to the migration

Reviewed By: alexsn

Differential Revision: D15845370

fbshipit-source-id: f22ae1866d4bb9250bf2d1c6cba476d574a3f45d
2019-06-17 04:23:24 -07:00