Commit Graph

72 Commits

Author SHA1 Message Date
Sunli
a93b91ae2d Re-enable the test on websocket. 2020-09-11 16:41:56 +08:00
Sunli
faac753096 Add transports::websocket module. 2020-09-11 15:54:56 +08:00
Sunli
553e6ffd53 Remove unnecessary Result on Schema::execute_stream function. 2020-09-11 10:47:55 +08:00
Sunli
c88747dfe4 Make all tests passed (async-graphql). 2020-09-10 19:35:48 +08:00
Sunli
7a90069cad Continue to refactor. 2020-09-10 16:39:43 +08:00
Sunli
9bc837da9e Initial attempt. 2020-09-10 12:49:08 +08: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
Koxiaet
9ad4e8c1a8
Merge branch 'master' into master 2020-09-06 07:20:18 +01: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
Sunli
2aca257136 Remove unnecessary memory allocation. 2020-09-02 14:27:04 +08:00
Sunli
80b2ff00c5 Implements Default for Schema. 2020-08-28 14:19:35 +08:00
Sunli
2e5c256de9 Rename SubscriptionTransport to ConnectionTransport. #240 2020-08-15 08:47:45 +08:00
Sunli
a193a8e51a Add directive @ifdef 2020-08-06 14:52:54 +08:00
Sunli
3d7594bac1 Removes code about streaming requests. 2020-07-31 10:10:03 +08:00
Sunli
8992b681dc Fix input validator is ignored when using variable #207 2020-07-11 10:05:30 +08:00
Sunli
09a6eb4944 Extension::Logger now provides more comprehensive error information. 2020-06-13 22:14:47 +08:00
Sunli
9af4d2b5ad Add QueryBuilder::extension function. #87 2020-06-05 15:42:29 +08:00
Sunli
616b7303ee Add SchemaBuilder::enable_federation #136 2020-06-02 08:49:27 +08:00
sunli
f9f9cdfb20 Logger extensions filter out introspection. #87 2020-05-27 20:47:22 +08:00
Sunli
9294c170e2 Fix potential security issues with subscription connections. 2020-05-26 13:35:13 +08:00
Sunli
d719461ae5 Add logger extension 2020-05-22 11:58:49 +08:00
Sunli
01489e20a5 Add StreamResponse type 2020-05-21 11:36:44 +08:00
Sunli
4868cf242b Add @stream directive 2020-05-21 10:12:54 +08:00
sunli
a745667922 Add @defer support for actix-web 2020-05-20 20:10:40 +08:00
sunli
87c6d31907 Solve problem #99 2020-05-20 15:44:59 +08:00
sunli
e949cb441c Add defer tests 2020-05-20 13:42:55 +08:00
Sunli
d300e27fa2 Add Deferred type and @defer directive. #51 2020-05-19 20:53:29 +08:00
sunli
273aecb6bf Update schema.rs 2020-05-19 00:03:15 +08:00
sunli
42a4639dc3 Preserve field order for introspection. #89 2020-05-16 10:05: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
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
95c6c0bbf3 Report subscription stream errors to the client. 2020-05-03 16:02:46 +08:00
sunli
1a4189e3e0 Fixed a bug that caused the subscription request to fail to receive any messages. #45 2020-05-03 10:06:17 +08:00
sunli
4484d33f4e Add some test 2020-05-03 09:12:14 +08:00
sunli
998e9b7b85 Websocket transport creates context data from the connect_init.payload property 2020-04-23 14:52:22 +08:00
sunli
09624cab24 v1.9.11
Add context data for subscription
2020-04-23 10:26:16 +08:00
sunli
f7a2fe5fa5 Add SchemaBuilder::register_type method 2020-04-21 20:47:48 +08:00
sunli
26046ce809 v1.9.0 2020-04-14 09:53:17 +08:00
sunli
b880a937ce Add GQLHttpRequest and IntoQueryBuilder trait 2020-04-11 17:36:05 +08:00
sunli
f1d0b3f641 Add federation support 2020-04-09 22:03:09 +08:00
sunli
d3adeb79b1 Add SimpleBroker 2020-04-07 14:30:46 +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
631de52400 The subscription field now returns a stream 2020-04-06 13:49:39 +08:00
sunli
d1abad5127 If the field name or parameter name is wrong, give suggestion 2020-04-03 13:57:24 +08:00
sunli
fda683c931 Add Schema::execute 2020-04-02 12:53:53 +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
01ec88abf5 remove PreparedQuery 2020-04-01 16:53:49 +08:00