Commit Graph

108 Commits

Author SHA1 Message Date
Koxiaet
a42cc58f00 Merge branch 'master' of github.com-koxiaet:Koxiaet/async-graphql into master 2020-09-08 09:32:37 +01:00
Koxiaet
c42aa55625 Rustfmt 2020-09-08 09:30:29 +01:00
Koxiaet
ed5acdcf18 Support service parsing in async-graphql-parser
- Instead of adding a separate module `schema` like there was before,
since service parsing and executable parsing have a fair amount of
overlap I put them as two submodules `executable` and `service` in both
`parse` and `types`. Also, the grammar is unified under one `.pest`
file.
- Added const equivalents to `Value`, `Directive` etc
- Change the reexport `async_graphql::Value` from
`async_graphql_parser::types::Value` to
`async_graphql_parser::types::ConstValue` since in 99% of cases in this library
a const value is wanted instead of a value.
- Added consistent usage of executable/service instead of the ambiguous
query/schema.
- Some of the tests actually had invalid GraphQL so the new more correct
grammar made them fail, that was fixed.
- Added a `Name` newtype to refer to GraphQL names
(`[A-Za-z_][A-Za-z_0-9]*`) since they are used so frequently.
2020-09-08 09:21:27 +01:00
Sunli
9ce0554ed3 Clippy cleanup 2020-09-06 18:59:38 +08:00
Sunli
22fb1681d5 Make all tests pass. 2020-09-06 18:53:24 +08:00
Koxiaet
3bf5f3a16c Rustfmt 2020-09-06 07:16:36 +01:00
Koxiaet
e3e58d261d Rewrite async-graphql-parser 2020-09-06 06:38:31 +01:00
Koxiaet
945cd72869 Remove dependency on serde_derive, satisfy Clippy, improve docs 2020-08-31 19:18:02 +01:00
Sunli
a193a8e51a Add directive @ifdef 2020-08-06 14:52:54 +08:00
Sunli
c22ff21b96 InputValueValidator::is_valid function now returns the Result type. #221 2020-07-30 09:43:51 +08:00
Sunli
8992b681dc Fix input validator is ignored when using variable #207 2020-07-11 10:05:30 +08:00
Sunli
d407b2ca98 Remove unsafe code from tests 2020-05-29 17:29:15 +08:00
Sunli
a92a619345 Implement a type-safe default value definition for InputValue. #111 2020-05-26 20:43:53 +08:00
Sunli
d300e27fa2 Add Deferred type and @defer directive. #51 2020-05-19 20:53:29 +08:00
sunli
1c78341ce8 Remove some unsafe code 2020-05-16 21:14:26 +08:00
sunli
42a4639dc3 Preserve field order for introspection. #89 2020-05-16 10:05:48 +08:00
Sunli
14312ba472 Rename async_graphql_parser::ast to async_graphql_parser::query 2020-05-15 10:38:48 +08:00
Sunli
9184c999ae Modify some type names (internal types) 2020-05-15 10:08:37 +08:00
sunli
01b2ce8e18 Improve GraphQL query parser performance. #76 2020-05-12 16:27:06 +08:00
Blaine Bublitz
548447cdec Change Unions to enums instead of structs 2020-05-10 21:27:30 -07:00
Blaine Bublitz
9483ff14be Fix tests 2020-05-10 20:25:49 -07:00
sunli
f7d308be8a Improve parser performance. 2020-05-10 10:59:51 +08:00
sunli
311859e12a Merge branch 'parser'
Implement a new GraphQL query parser and remove the dependency on graphql-parser.
2020-05-09 17:55:04 +08:00
sunli
98864c6879 Add field guard 2020-05-02 07:57:34 +08:00
sunli
1bc97de889 fix #33 2020-04-27 12:57:52 +08:00
sunli
f1d0b3f641 Add federation support 2020-04-09 22:03:09 +08:00
sunli
3ac07990bb v1.7.6 2020-04-06 19:57:21 +08:00
sunli
efad20d4c4 Add subscription test 2020-04-06 18:30:38 +08:00
sunli
6067e221ae v1.7.4 2020-04-05 16:14:22 +08:00
sunli
f9983def4b Add some test, modified from juniper 2020-04-05 16:00:26 +08:00
sunli
d1abad5127 If the field name or parameter name is wrong, give suggestion 2020-04-03 13:57:24 +08:00
sunli
4e74044c54 Return the correct type at the union and interface 2020-04-02 20:37:01 +08:00
sunli
10105b8a09 Reimplement the error type and remove the dependency on the anyhow::Error 2020-04-02 10:21:04 +08:00
sunli
0eeae43745 v1.6.7 2020-03-30 11:32:19 +08:00
sunli
9b538cd85b Add validation for the InputObject field 2020-03-30 10:45:41 +08:00
sunli
457e30ea2f v1.5.2 2020-03-25 15:07:16 +08:00
sunli
41fd8ed40e v1.5.1 2020-03-25 11:39:28 +08:00
sunli
2fc056ad39 v1.5.0
Improve performance
2020-03-24 18:54:22 +08:00
sunli
c6953b0bbf Add CacheControl for object 2020-03-22 16:45:59 +08:00
sunli
934038150e v1.4.2 2020-03-22 09:34:32 +08:00
sunli
2b2be34d4d Clippy cleanup 2020-03-21 09:32:13 +08:00
sunli
ac044d6d30 add GraphQL Cursor Connections 2020-03-19 17:20:12 +08:00
sunli
e6cfaf134e Support subscription 2020-03-17 17:26:59 +08:00
sunli
f78a172241 Add support for multipart request 2020-03-14 11:46:20 +08:00
sunli
6074474d2c v1.0.0 2020-03-12 17:11:02 +08:00
sunli
6b0eb89fea Update provided_non_null_arguments.rs 2020-03-11 15:23:28 +08:00
sunli
162cab071b add KnownDirectives rule 2020-03-11 10:10:56 +08:00
sunli
ab511d4957 add ProvidedNonNullArguments rule 2020-03-10 20:35:25 +08:00
sunli
d553bf6a6e add PossibleFragmentSpreads rule 2020-03-10 18:07:47 +08:00
sunli
af720b76f5 Update visitor.rs 2020-03-10 15:17:01 +08:00
sunli
cf442544aa Update mod.rs 2020-03-10 14:30:16 +08:00
sunli
32703f6fe3 add some validation rules 2020-03-10 14:14:09 +08:00
sunli
a1d47aaf90 add some validation rules 2020-03-09 20:39:46 +08:00
sunli
482c5b3cf3 v0.10.4 2020-03-09 18:05:52 +08:00
sunli
3de914df7a v0.10.2 2020-03-09 12:08:50 +08:00
sunli
0169fd6122 fix some bug 2020-03-09 09:33:36 +08:00
sunli
e0ffe3faa8 v0.10.1 2020-03-08 20:58:22 +08:00
sunli
53dcd0aae5 add some validation code 2020-03-08 20:35:36 +08:00