Commit Graph

878 Commits

Author SHA1 Message Date
Sunli
000a3a3bd5 Merge pull request #737 from tilpner/tracing-name-error
fix(tracing): add name to error event
2021-12-04 15:16:41 +08:00
Sunli
922c2324e2 Add some helper methods for BatchRequest.
- BatchRequest::iter
- BatchRequest::iter_mut
- BatchRequest::variables
- BatchRequest::data
- BatchRequest::disable_introspection
2021-12-04 15:14:42 +08:00
Sunli
9280cf80a8 Fix deadlock in dataloader. #555 2021-12-04 14:33:47 +08:00
tilpner
1659367579 fix(tracing): add name to error event
According to the opentelemetry specification for traces [0], each span
must have a non-empty name.

[0]: https://github.com/open-telemetry/oteps/blob/main/text/trace/0059-otlp-trace-data-format.md

>  // This field is semantically required to be set to non-empty string.
>  //
>  // This field is required.
>  string name = 6;
2021-12-02 15:59:49 +01:00
Sunli
09be5e0021 Fix panic on f32-64::INFINITE/f32-64::NEG_INFINITE/f32-64::NAN output. #735 2021-12-02 20:19:17 +08:00
Sunli
2962902564 Update README 2021-11-30 09:46:18 +08:00
lfn3
7aea053240 Add support for SmolStr via a feature.
SmolStr is an immutable "packed" string that uses the space normally occupied
by a String's header if the String is short enough.
2021-11-30 09:44:33 +08:00
Emil Gardström
25b10deded add missing impls serde_json::Value
Fixes #728
2021-11-29 15:14:27 +01:00
Sunli
4d0fdd9e0f Fix error extensions cause stack overflow #719 2021-11-23 09:02:52 +08:00
Sunli
db83b9440c Update docs 2021-11-20 11:16:48 +08:00
Sunli
1b50738af7 Custom directive 2021-11-20 09:04:46 +08:00
Sunli
27deae8476 Add tide integration 2021-11-19 08:10:47 +08:00
Sunli
e2c6ead1a3 Add DirectivesUnique rule 2021-11-18 20:14:56 +08:00
Sunli
eb9cda4c80 Remove skipped fields from the document before executing the query. 2021-11-18 19:37:10 +08:00
Sunli
559bbedd3e Allowed use validators on wrapper types, for example: Option<T>, MaybeUnefined<T>.
Remove `OutputJson` because `Json` can replace it.
2021-11-18 15:43:12 +08:00
Sunli
502bfb8670 Add url, regex and ip validators. 2021-11-17 11:12:52 +08:00
Sunli
af25734697 Remove the ctx parameter of CustomValidator::check. #710 2021-11-17 08:46:13 +08:00
Sunli
948d8028b6 Update docs 2021-11-16 18:13:26 +08:00
Sunli
5dac2d47fa Update mod.rs 2021-11-16 17:55:10 +08:00
Sunli
5a1f0ed865 Add some validators 2021-11-16 16:20:40 +08:00
Sunli
dd13716072 Add ErrorExtensionValues::unset method. 2021-11-16 15:04:29 +08:00
Sunli
3d8a8ef6af Update documents 2021-11-16 14:51:20 +08:00
Sunli
9e5121aaf3 Remove ResolverError and use Error::new_with_source instead. 2021-11-16 11:05:50 +08:00
Sunli
60245769f5 Rework guards 2021-11-16 10:22:39 +08:00
Sunli
28f027a8bc Update mod.rs 2021-11-15 20:58:57 +08:00
Sunli
613bbc5b91 Custom validator 2021-11-15 11:08:56 +08:00
Sunli
dd55421ede Rework validators 2 2021-11-15 09:12:13 +08:00
Sunli
eb022a0cca Rework validators 2021-11-14 21:09:14 +08:00
Sunli
85d389cb79 Merge branch 'master' into async-graphql-v3 2021-11-13 21:53:50 +08:00
Sunli
789cf57d32 Change the signature of the connection::query function to allow the callback to use any type that implements Into<Error>. #671 2021-11-13 21:41:58 +08:00
Sunli
eeb1f73773 Merge branch 'master' into async-graphql-v3 2021-11-13 09:16:24 +08:00
Sunli
0f55fe7f7d Fix Federation entity union is empty during schema introspection. #700 2021-11-13 09:08:55 +08:00
smihica
1eba5623f7 Implemented CursorType for i32/i64 2021-11-12 18:33:38 +09:00
Sunli
acb44bdd05 Hide types that are not referenced by visible fields. #698 2021-11-12 07:24:04 +08:00
Sunli
0118a5dd7c Update async-graphql-poem 2021-11-12 07:23:05 +08:00
Sunli
0e9e087691 Move the methods of the Type trait to InputType and OutputType. 2021-11-12 07:23:05 +08:00
Sunli
b85815d84a Rework websocket 2021-11-12 07:23:04 +08:00
Sunli
b359b62976 If a GraphQL name conflict is detected when creating schema, it will cause panic. #499 2021-11-08 10:25:31 +08:00
Sunli
ff994dc1ec Fix the problem that EmptyMutation may cause when used in MergedObject. #694 2021-11-08 08:45:14 +08:00
Sunli
dbc0862894 Rework Failure 3 #671 2021-11-07 19:11:43 +08:00
Sunli
4d65f9c739 Rework Failure2 #671 2021-11-05 19:05:49 +08:00
Sunli
bb9bd08b11 rustfmt 2021-11-05 09:29:50 +08:00
Sunli
01f53fc865 Merge pull request #692 from SadiinsoSnowfall/master
Added map, contains and transpose function to MaybeUndefined
2021-11-05 09:29:17 +08:00
SadiinsoSnowfall
5b44b98c25 Fixed clippy warning 2021-11-04 14:05:36 +01:00
Sunli
369f1459b7 Rework Failure #671 2021-11-04 19:37:22 +08:00
SadiinsoSnowfall
fb0ea68c3a Added map, contains and transpose function to MaybeUndefined 2021-11-04 12:03:49 +01:00
Sunli
1385199107 Fix tests 2021-11-04 14:54:26 +08:00
Sunli
0335d24ccd rustfmt 2021-11-04 14:42:30 +08:00
Sunli
e73c142ce8 Add Failure type. #671 2021-11-04 14:33:04 +08:00
Sunli
5c6fd0cd5a Add MaybeUndefined::as_opt_ref and MaybeUndefined::as_opt_deref methods. #688 2021-11-04 09:44:16 +08:00
meh
0ff4120807 docs: add specified_by_url for Duration
Co-authored-by: Anthony Griffon <an.griffon@gmail.com>
2021-11-03 14:56:42 +01:00
meh
119c5d0f5d feat: add chrono::Duration custom scalar 2021-11-03 14:05:58 +01:00
Sunli
b48d4c8c1f Update MSRV 2021-11-03 18:42:41 +08:00
Sunli
b3dbbc097c Add specified_by_url for Upload 2021-11-02 20:35:43 +08:00
Sunli
fa6b7964c4 Add specified_by_url for Tz & DateTime<Tz> & Url & Uuid scalars 2021-11-02 20:35:05 +08:00
Sunli
057d6aebfd Subscription typename - [GraphQL - October 2021] #681 2021-11-02 20:35:05 +08:00
Sunli
c6d26884a9 Specified By - [GraphQL - October 2021] #677 2021-11-02 20:35:05 +08:00
Sunli
abac47fc50 Merge branch 'master' into update-to-rust-edition-2021 2021-11-02 20:08:41 +08:00
Miaxos
b361119ca0 feat: add with for object & complex object & update documentation 2021-10-28 12:42:13 +00:00
Miaxos
fa34a8ae68 feat: add basic coercion for SimpleObject derived arg 2021-10-27 13:37:13 +00:00
Sunli
9b5149ee23 Respect query object field order. #612 2021-10-26 19:02:15 +08:00
Miaxos
b7232cea65 feat: add derived for simple object & complex object 2021-10-25 12:23:12 +00:00
Miaxos
e9e73f489d feat: add derived on simple objects 2021-10-25 10:56:33 +00:00
Jeff Registre
30009005d1 Removed import for new prelude members: TryFrom, TryInto, FromIterator 2021-10-22 19:34:49 -04:00
Miaxos
e1c577de44 feat: add derived field for complex object 2021-10-22 13:08:49 +00:00
Samuel Hurel
5f3dbda310 Add Bson<->JSON and Document<->JSONObject impls 2021-10-19 10:24:41 +02:00
Sunli
3393babdd8 Implement Default for ID #659 2021-10-16 22:24:46 +08:00
smihica
4bf947244d Changed docs comment 2021-10-14 00:49:47 +09:00
smihica
5fd0561a3a Supported CharsMinLength and CharsMaxLength to count chars 2021-10-14 00:43:14 +09:00
smihica
cf74a6c5d2 Revert "Supported multibyte string in StringMinLength and StringMaxLength to count chars, not byte len."
This reverts commit 431c15195e.
2021-10-14 00:33:20 +09:00
smihica
431c15195e Supported multibyte string in StringMinLength and StringMaxLength to count chars, not byte len. 2021-10-13 15:16:32 +09:00
Miaxos
391d3d10e4 feat: add visible macro argument for union type 2021-10-11 21:54:50 +00:00
Oliver Cooper
af3eab1b57 Document selection_fields 2021-09-28 16:50:27 +13:00
Oliver Cooper
794b56a2ad Merge branch 'async-graphql:master' into master 2021-09-27 11:56:42 +13:00
Oliver Cooper
f5f3f25ed7 Get selection fields from Lookahead 2021-09-27 11:56:27 +13:00
Sunli
23bcf4cdfd Change log level. #518 2021-09-24 10:54:52 +08:00
Sunli
4740579ec9 Change the execution order of chain and race guards. #614 2021-09-24 10:30:46 +08:00
Sunli
923ed490de Add DataLoader::enable_all_cache and DataLoader::enable_cache methods. #642 2021-09-24 09:46:19 +08:00
Miaxos
e07bd5a52e misc: add documentations for naive_time url and uuid 2021-09-20 13:54:30 +00:00
Sunli
ee0e917813 Implement ScalarType for HashMap/BTreeMap to use ToString/FromStr. #585 2021-09-17 09:17:47 +08:00
Sunli
024a143f11 Add support for graphql-ws pings. #635 2021-09-16 21:10:39 +08:00
Sunli
cdede18a06 Fix typo 2021-09-03 15:15:41 +08:00
Erik Tesar
0251046ada fix: fix build and gate cbor behind feature flag 2021-09-02 15:58:37 +02:00
Erik Tesar
b95852cf28 Merge feat/multipart into master 2021-09-02 15:32:08 +02:00
Erik Tesar
42548ce04b feat: implement cbor in multipart 2021-09-02 15:27:44 +02:00
Sunli
ed9ec2a3a8 Update mod.rs 2021-09-02 20:19:08 +08:00
Sunli
bdd4c2c3ef Update CHANGELOG 2021-09-02 20:06:39 +08:00
Sunli
2d8c6f47fb Merge branch 'master' of https://github.com/minkan-chat/async-graphql into pr/619 2021-09-02 20:03:02 +08:00
Sunli
00afdbb8fc Merge branch 'master' into pr/619 2021-09-02 19:39:49 +08:00
Sunli
3e9295b91b Add feature gate cbor. 2021-09-02 19:39:45 +08:00
Erik Tesar
deef5cee4b style: cargo fmt
please note that clippy probably will still fail, because this fork was created before c80687af80
2021-09-02 13:37:18 +02:00
Erik Tesar
36c60ded81 fix: mark error types with Send and Sync 2021-09-02 13:35:34 +02:00
Erik Tesar
d9cb3b91be fix: ParseRequestError::InvalidFilesMap now is dyn std::error::Error 2021-09-02 12:21:34 +02:00
Sunli
1ba108680e Merge branch 'poem-integration' 2021-08-24 15:23:21 +08:00
Sunli
8d489089ec Add Poem integration. 2021-08-24 15:23:12 +08:00
Oliver Cooper
89015c17b8 Ignore items flagged @skip in SelectionField and Lookahead 2021-08-20 10:49:20 +12:00
Diego Stratta
b728f0e7c0 Implement From<MaybeUndefined<T>> for Option<Option<T>> 2021-08-13 19:24:04 -03:00
Julian Tescher
fe1ab1e677 Update opentelemetry to v0.16.x 2021-08-07 13:10:40 -07:00
Nicolai Unrein
d6c6d614f2 Remove unnecessary unwrap in multipart handler
The call to `unwrap` is not save at this point and will panic on connection errors/disconnects.
Instead a `ParseRequestError::InvalidMultipart(multer::Error)` will now get returned instead.
2021-08-03 11:59:23 +02:00
Sunli
1d7742779e Add Axum integration. 2021-08-03 08:56:24 +08:00
Erik Tesar
5ffcf8c36a decide which decoder to use based on content-type 2021-07-31 14:52:56 +02:00
Erik Tesar
63e423a178 always use cbor methode for deserialization 2021-07-28 17:37:47 +02:00
Erik Tesar
c88f4bbd0e try to use cbor decoding 2021-07-27 21:37:30 +02:00
Miaxos
02df4f1c24 misc: boxed error 2021-07-26 17:32:49 +00:00
cloudybyte
37e6a1b715 try to add cbor support 2021-07-26 17:29:52 +02:00
Tim Maddison
f318e02610 Reformat 2021-07-23 10:09:02 +01:00
Tim Maddison
fa218b435e Change with_setting to accept any JSON value 2021-07-23 09:44:04 +01:00
Sunli
230eb847d8 Add support for the list operator to the input value validator. #579 2021-07-20 15:16:34 +08:00
Sunli
ecf8890e7e Implemented OutputType for Bytes. #569 2021-07-18 21:42:39 +08:00
Sunli
4e1c34fa62 Sort the types in the exported SDL by name. #577 2021-07-17 10:13:42 +08:00
Sunli
8f8fe3e46d Make Schema::execute return HTTP headers when an error occurs. #572 2021-07-16 07:47:43 +08:00
Oliver Cooper
5b6f06ced1 Replaced panicking From with TryFrom 2021-07-15 16:03:33 +12:00
Oliver Cooper
39dc8399ec Added From<&[SelectionField<'a>]> for Lookahead<'a> 2021-07-15 15:51:44 +12:00
Oliver Cooper
008d262ca2 Changed Lookahead to support multiple fields 2021-07-15 13:16:55 +12:00
Sunli
e6e2f56a85 Fix SDL print is not stable. #547 2021-07-12 11:14:26 +08:00
Rodgers
0c46512900 Fix clippy error of map_err 2021-07-09 18:59:54 +07:00
Rodgers
d83cce9d3b Keep map_err compatible 2021-07-09 08:20:30 +07:00
Rodgers
53c4945fc4 Update AND, OR, and MapErr logic. Update logic for object input 2021-07-08 23:43:12 +07:00
Rodgers
aa1d4194b5 Add is_valid_with_extensions 2021-07-08 21:37:38 +07:00
Rodgers
c0d24be0c7 Add report_error_with_extensions 2021-07-08 20:02:49 +07:00
Bram Hoendervangers
6fb324182b Add decimal scalar 2021-07-01 23:47:30 +02:00
Sunli
199f599cd5 Implement From<SelectionField> for Lookahead. #557 2021-07-01 10:36:25 +08:00
Sunli
8b4f3bcff5 Allows to get the actual field name and alias in ResolveInfo. #551 2021-06-29 09:30:26 +08:00
Sunli
c367f15b05 Fix the bug that MergedObject may cause panic. #539 2021-06-21 09:48:19 +08:00
Sunli
2dce1ad35f Clippy clean 2021-06-18 10:43:34 +08:00
Sunli
b0669cbc3f Update type.rs 2021-06-17 21:02:56 +08:00
Sunli
543ce408b0 Implement InputType and OutputType for [T; N] array. 2021-06-17 10:39:27 +08:00
Sunli
42a4ff13ed Update minimum supported Rust version to 1.51 2021-06-17 09:08:19 +08:00
Sunli
c7c7e3ad05 Remove the static constraint of the receive_body and receive_batch_body functions. #544 2021-06-16 17:20:41 +08:00
Sunli
5691f6ca71 Add serial attribute for MergedObject macro. #539 2021-06-16 15:08:33 +08:00
Sunli
0ed444654d Update merged_object.rs 2021-06-16 11:28:15 +08:00
Sunli
b7b9abf40d Add serial attribute for SimpleObject and Object macros. #539 2021-06-15 08:53:26 +08:00
Yin Jifeng
05edf40b39 feat: support bson v2.0.0-beta 2021-06-11 11:00:19 +08:00
Sunli
f992e8ab94 Add the operation_name to Extension::execute method. 2021-06-10 10:17:33 +08:00
Sunli
e7382bf549 Rework error propagation. #531 2021-06-08 10:05:30 +08:00
Sunli
f53fe4111f Update CHANGELOG & Docs 2021-06-07 14:22:45 +08:00
Sunli
588a7e40e8 Bump multer from v1.2.2 to v2.0.0 2021-06-07 14:07:53 +08:00
Sunli
e886e823b9 Clippy clean 2021-06-07 14:06:06 +08:00
Sunli
f8021c0fb5 Add support for returning multiple resolver errors. #531 2021-06-07 14:03:36 +08:00
Oliver Cooper
aac62f1751 Aligned NaiveDateTime formatting with DateTime
Fixes #526

Chrono uses `%Y-%m-%dT%H:%M:%S%.f%:z` for it's RCC3339 formatting implementation. See 3467172c31/src/format/mod.rs (L680)
2021-06-03 10:12:32 +12:00
Lichuan Shang
406de7c798 fix: typo then => than 2021-05-25 18:20:47 +08:00
Yin Jifeng
884c4a7aa4 fix: call instrument span later 2021-05-19 10:49:06 +08:00
Oscar Beaumont
ac8c5497f7 style:linted code 2021-05-18 03:27:50 +08:00
Oscar Beaumont
cbfd46e890 Allow the ability to set GraphQL Playground settings 2021-05-14 15:16:23 +08:00
Scott Côté
c1c45674c2 style: cargo fmt 2021-05-10 23:00:29 -04:00
Scott Côté
09e6a9dba6 feat: Add secrecy crate feature 2021-05-10 20:49:48 -04:00
Sunli
63738e9a3a Rustfmt 2021-05-08 14:10:59 +08:00
Sunli
588bba549f Merge pull request #501 from D1plo1d/feature/websocket-file-uploads
Added `Websocket::with_message_stream` for client message customization
2021-05-08 14:10:28 +08:00
Sunli
4d2110bf0d Clippy clean 2021-05-07 10:14:05 +08:00
D1plo1d
ed8332ec90 feat: Websocket::with_message_stream added for developers to experiment with File Uploads over WebSockets 2021-05-06 20:08:28 -04:00