Koxiaet
6947d95030
Merge branch 'master' of github.com-koxiaet:async-graphql/async-graphql into master
2020-09-22 20:03:33 +01:00
Koxiaet
49462cf05f
Move some validations to parser
...
This commit moves the single anonymous and duplicated operation name
validation rules into the parser, allowing for a nicer format to be
exposed by it. It also adds better error messages to the parser.
2020-09-22 19:59:48 +01:00
Sunli
47329b9458
Add Request::extension method. #271
2020-09-21 15:53:07 +08:00
Koxiaet
d52268523f
Merge branch 'master' of github.com-koxiaet:async-graphql/async-graphql into master
2020-09-17 19:23:15 +01:00
Koxiaet
890b282dd9
Improve websockets
2020-09-17 19:22:54 +01:00
Sunli
76257403e2
Add support for batch queries.
2020-09-17 19:54:12 +08:00
Sunli
5bb705bdf3
2.0.0-alpha.5
2020-09-14 09:46:22 +08:00
Koxiaet
6e628031bf
Rework subscriptions
...
The main change in this commit is changing the return type of
SubscriptionType::create_stream from
Future<Result<Stream<Result<Response>>>> to just Stream<Result<Json>>. I
also allowed the returned stream to borrow from self and context.
2020-09-13 18:52:36 +01:00
Koxiaet
dcc7d1be14
Replace http::GQLRequest with Request
2020-09-12 17:07:46 +01:00
Koxiaet
35e74a4e17
Create resolver_utils
2020-09-12 10:29:52 +01:00
Sunli
a4fdf6a38a
Re-enable the test on websocket.
2020-09-11 16:41:56 +08:00
Sunli
049b652dd6
Add transports::websocket module.
2020-09-11 15:54:56 +08:00
Sunli
35f17a389c
Remove unnecessary Result on Schema::execute_stream function.
2020-09-11 10:47:55 +08:00
Sunli
91c75ced2a
Make all tests passed (async-graphql).
2020-09-10 19:35:48 +08:00
Sunli
f3c0d86f12
Continue to refactor.
2020-09-10 16:39:43 +08:00
Sunli
ce0683e1f9
Initial attempt.
2020-09-10 12:49:08 +08:00
Koxiaet
47259548c4
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
1c26ff124f
Merge branch 'master' into master
2020-09-06 07:20:18 +01:00
Koxiaet
c055736101
Rustfmt
2020-09-06 07:16:36 +01:00
Koxiaet
81d85c2535
Rewrite async-graphql-parser
2020-09-06 06:38:31 +01:00
Sunli
613549d9c6
Remove unnecessary memory allocation.
2020-09-02 14:27:04 +08:00
Sunli
6a38057a22
Implements Default for Schema.
2020-08-28 14:19:35 +08:00
Sunli
8431c3a3d8
Rename SubscriptionTransport to ConnectionTransport. #240
2020-08-15 08:47:45 +08:00
Sunli
47174966fb
Add directive @ifdef
2020-08-06 14:52:54 +08:00
Sunli
2cf350a5c8
Removes code about streaming requests.
2020-07-31 10:10:03 +08:00
Sunli
909ae5e64d
Fix input validator is ignored when using variable #207
2020-07-11 10:05:30 +08:00
Sunli
7630fe1f51
Extension::Logger now provides more comprehensive error information.
2020-06-13 22:14:47 +08:00
Sunli
13e31ac9b1
Add QueryBuilder::extension function. #87
2020-06-05 15:42:29 +08:00
Sunli
ddd35315c9
Add SchemaBuilder::enable_federation #136
2020-06-02 08:49:27 +08:00
sunli
1069461873
Logger extensions filter out introspection. #87
2020-05-27 20:47:22 +08:00
Sunli
69367dc65f
Fix potential security issues with subscription connections.
2020-05-26 13:35:13 +08:00
Sunli
1461210df7
Add logger extension
2020-05-22 11:58:49 +08:00
Sunli
24af597f30
Add StreamResponse type
2020-05-21 11:36:44 +08:00
Sunli
326fac2799
Add @stream directive
2020-05-21 10:12:54 +08:00
sunli
374023748d
Add @defer support for actix-web
2020-05-20 20:10:40 +08:00
sunli
fe4b98e0a8
Solve problem #99
2020-05-20 15:44:59 +08:00
sunli
6f924efcf4
Add defer tests
2020-05-20 13:42:55 +08:00
Sunli
75bfba057a
Add Deferred type and @defer directive. #51
2020-05-19 20:53:29 +08:00
sunli
a811f48952
Update schema.rs
2020-05-19 00:03:15 +08:00
sunli
10a8b71adb
Preserve field order for introspection. #89
2020-05-16 10:05:48 +08:00
Sunli
f74652e61a
Modify some type names (internal types)
2020-05-15 10:08:37 +08:00
sunli
8299a54456
Improve GraphQL query parser performance. #76
2020-05-12 16:27:06 +08:00
sunli
dc7c8d5280
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
220cd1e775
Report subscription stream errors to the client.
2020-05-03 16:02:46 +08:00
sunli
d7df065528
Fixed a bug that caused the subscription request to fail to receive any messages. #45
2020-05-03 10:06:17 +08:00
sunli
c9fe0e9393
Add some test
2020-05-03 09:12:14 +08:00
sunli
d564ce27f1
Websocket transport creates context data from the connect_init.payload property
2020-04-23 14:52:22 +08:00
sunli
a4781523fb
v1.9.11
...
Add context data for subscription
2020-04-23 10:26:16 +08:00
sunli
c11ed53c48
Add SchemaBuilder::register_type method
2020-04-21 20:47:48 +08:00
sunli
09d5e5f489
v1.9.0
2020-04-14 09:53:17 +08:00
sunli
0b6bfd4c33
Add GQLHttpRequest and IntoQueryBuilder trait
2020-04-11 17:36:05 +08:00
sunli
86bdb422b1
Add federation support
2020-04-09 22:03:09 +08:00
sunli
5c710ff744
Add SimpleBroker
2020-04-07 14:30:46 +08:00
sunli
7b85062c6e
v1.7.6
2020-04-06 19:57:21 +08:00
sunli
ed85c85bf4
Add subscription test
2020-04-06 18:30:38 +08:00
sunli
b88ac80084
The subscription field now returns a stream
2020-04-06 13:49:39 +08:00
sunli
1b05724390
If the field name or parameter name is wrong, give suggestion
2020-04-03 13:57:24 +08:00
sunli
506e82895f
Add Schema::execute
2020-04-02 12:53:53 +08:00
sunli
14860d9b88
Reimplement the error type and remove the dependency on the anyhow::Error
2020-04-02 10:21:04 +08:00
sunli
b373e1397d
remove PreparedQuery
2020-04-01 16:53:49 +08:00
sunli
a13204273e
v1.6.8
...
Add context data support
2020-03-31 11:19:18 +08:00
sunli
9cdd0c45a3
v1.6.4
2020-03-29 20:02:52 +08:00
sunli
bc0d6603c1
v1.6.0
2020-03-26 11:34:28 +08:00
sunli
bf7332378c
v1.5.2
2020-03-25 15:07:16 +08:00
sunli
788a3b558b
v1.4.2
2020-03-22 09:34:32 +08:00
sunli
99f4184f83
Clippy cleanup
2020-03-21 09:32:13 +08:00
sunli
62b4908ffe
v1.3.2
2020-03-20 11:56:08 +08:00
sunli
724cb21258
add GraphQL Cursor Connections
2020-03-19 17:20:12 +08:00
sunli
60b0282a89
Support subscription
2020-03-17 17:26:59 +08:00
sunli
41d8d618cc
Update schema.rs
2020-03-15 15:32:54 +08:00
sunli
abfe861749
Add support for multipart request
2020-03-14 11:46:20 +08:00
sunli
18185ed7a2
v0.10.4
2020-03-09 18:05:52 +08:00
sunli
d7692414ea
add some validation code
2020-03-08 20:35:36 +08:00
sunli
ce9ca29c3d
implemented union type
2020-03-08 09:21:29 +08:00
sunli
69b3dea88c
implemented interface
2020-03-06 23:58:43 +08:00
sunli
2351e75f2c
fix some bug
...
add starwars example
2020-03-05 21:34:31 +08:00
sunli
b3340680ba
v0.8.0
2020-03-05 17:06:14 +08:00
sunli
b3974737fc
implemented query fragment
2020-03-05 15:50:57 +08:00
sunli
cc96dba8d8
add actix-web example
2020-03-05 08:39:56 +08:00
sunli
92a95dbbf4
implemented directive (@include, @skip)
2020-03-04 14:24:44 +08:00
sunli
b7a65b6784
support variables
2020-03-04 11:51:42 +08:00
sunli
d0c6db0aba
add schema support
2020-03-03 19:15:18 +08:00