Commit graph

128 commits

Author SHA1 Message Date
Benno Tielen
761710205a
Provide axum integration (#1088, #986, #1184)
- create `juniper_axum` crate in Cargo workspace
- implement `graphql` default `axum` handler for processing GraphQL requests
- implement `extract::JuniperRequest` and `response::JuniperResponse` for custom processing GraphQL requests
- implement `subscriptions::graphql_transport_ws()` default `axum` handler for processing the new `graphql-transport-ws` GraphQL over WebSocket Protocol
- implement `subscriptions::graphql_ws()` default `axum` handler for processing the legacy `graphql-ws` GraphQL over WebSocket Protocol
- implement `subscriptions::serve_graphql_transport_ws()` function for custom processing the new `graphql-transport-ws` GraphQL over WebSocket Protocol
- implement `subscriptions::serve_graphql_ws()` function for custom processing the legacy `graphql-ws` GraphQL over WebSocket Protocol
- provide `examples/simple.rs` of default `juniper_axum` integration
- provide `examples/custom.rs` of custom `juniper_axum` integration

Additionally:
- fix `junper_actix` crate MSRV to 1.73
- add `test_post_with_variables()` case to integration `juniper::http::tests`

Co-authored-by: ilslv <ilya.solovyiov@gmail.com>
Co-authored-by: Christian Legnitto <LegNeato@users.noreply.github.com>
Co-authored-by: Kai Ren <tyranron@gmail.com>
2023-11-09 11:57:00 +01:00
dependabot[bot]
782eccba47
Upgrade syn crate to 2.0 version (#1157)
- replace `proc-macro-error` crate with simplified `common::diagnostic::pollyfill`
- migrate `juniper_codegen_tests` to stable Rust

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Kai Ren <tyranron@gmail.com>
2023-11-01 19:00:05 +01:00
Kai Ren
d11e351a49
Use actix-ws for juniper_actix subscriptions (#1197)
- fix panicking issues in `graphql-transport-ws` protocol implementation
- rework `graphql-ws` integration tests in `juniper::http`
- add `graphql-transport-ws` integration tests in `juniper::http`
2023-10-24 17:59:36 +00:00
Kai Ren
aaf28e962d
Merge juniper_graphql_transport_ws and juniper_graphql_ws crates (#1196, #1022) 2023-10-17 16:12:20 +02:00
Kai Ren
9849736582
Improve WebSocket integration (#1191, #1022)
- consider `juniper_graphql_transport_ws` crate on CI
- implement auto-selection of protocol in `juniper_warp` crate
- support `graphql-transport-ws` protocol in  `juniper_actix` crate
- implement auto-selection of protocol in `juniper_actix` crate

Additionally:
- move `examples/warp_subscriptions` into `juniper_warp/examples/subscription.rs`
- move `examples/actix_subscriptions` into `juniper_actix/examples/subscription.rs`
- move `examples/basic_subscriptions` into `juniper_subscriptions/examples/basic.rs`
- bump up MSRV of `juniper_actix` crate to 1.68
2023-09-21 23:24:41 +02:00
Kai Ren
7e886e8fab
Update GraphQL Playground to 1.7.28 version (#1190, #1069)
- track GraphQL Playground new versions via @dependabot
- automate GraphQL Playground integration glue adapting for new versions
2023-09-13 17:10:49 +00:00
Kai Ren
f9d90277bf
Upgrade GraphiQL to 3.0.5 version (#1188, #1069)
- track GraphiQL new version via @dependabot
- automate GraphiQL integration glue adapting for new versions
- rework `example/warp_subscriptions`  to support subscriptions in new GraphiQL
2023-09-13 17:34:44 +02:00
Christian Legnitto
108ccf2715
Clippy fixes (#1181) 2023-08-25 22:48:01 +00:00
Chris
27430bf60c
add juniper_graphql_transport_ws crate for new subscription protocol (#1158)
Co-authored-by: Christian Legnitto <LegNeato@users.noreply.github.com>
2023-08-25 01:02:32 +00:00
Darin Morrison
9e0b9692a9
Allow to specify already Arced schema in juniper_warp (#1136, #1135)
Co-authored-by: Kai Ren <tyranron@gmail.com>
2023-01-20 21:15:35 +02:00
tyranron
6aa6385437
Bump up MSRV to 1.65.0 2022-12-19 09:31:23 +01:00
dependabot[bot]
b79b799824
Upgrade env_logger crate to 0.10 version (#1130)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-28 12:13:09 +02:00
Kai Ren
f3df70693c
Improve CI (#1113)
- switch to `dtolnay/rust-toolchain` GitHub action
- restore release Git tag format and correct `cargo-release` integration
- enable MSRV check
- integrate `cargo-careful`
2022-10-21 16:07:17 +00:00
tyranron
e9482c3f18
Fix codegen tests for latest nightly Rust 2022-08-29 17:10:40 +03:00
tyranron
ef7a7e8229
Upgrade to 2021 Rust edition
- set 1.62 Rust as MSRV
- use new fmt syntax where possible
- refactor `.to_owned()`, `.to_string()` and `.into()` usage
- rename `IntoResolvable::into()` as `IntoResolvable::into_resolvable()` to disambiguate with `Into::into()`
- use `#[derive(Default)]` for enums where possible
- use `bool::then_some()` where possible
2022-07-13 15:20:10 +02:00
Kai Ren
72ed45a77c
Rework CI and project toolchain (#1043)
- remove `cargo-make` integration
- rework CI pipeline more granular and precise
- rework releasing process
- tune up project layout
- fill up new CHANGELOGs

Additionally:
- fix latest nightly/stable Rust inconsistencies
2022-04-08 17:44:50 +03:00
tyranron
77d4c90b23
Bump up juniper and juniper_codegen version to 0.16.0-dev to disambiguate release automation on CI 2022-02-02 20:08:41 +02:00
tyranron
589acb5a7b
Merge security fixes from 0.15 juniper releases 2022-02-02 19:37:24 +02:00
tyranron
855137cde6
Release juniper 0.15.9 2022-02-02 18:33:41 +02:00
Christian Legnitto
ad82364c5a Release juniper_warp 0.6.5 2022-01-26 23:51:58 -08:00
Christian Legnitto
bae27e8694 Release juniper_graphql_ws 0.2.6 2022-01-26 23:51:12 -08:00
Christian Legnitto
3025ab0a4a Release juniper 0.15.8 2022-01-26 23:28:49 -08:00
Kai Ren
f66296d618
Replace ScalarValue::Visitor with DeserializeOwned requirement (#985)
- remove `Serialize` impl from `#[derive(GraphQLScalarValue)]` macro expansion
2021-10-11 21:53:04 +03:00
nickelc
b9257ef7d4
Fix Clippy warnings (#980) 2021-09-12 20:38:41 +03:00
Kai Ren
a3fda7363d
Rework codegen for GraphQL objects and subscriptions (#971, #421)
- preserve and reuse defined impl blocks in #[graphql_object] and #[graphql_subscription] macros expansion
- allow renaming `ScalarValue` type parameter in expanded code via `scalar = S: ScalarValue` syntax

Additionally:
- rename `rename` attribute's argument to `rename_all`
- support `rename_all` in #[graphql_interface] macro
2021-08-11 17:41:49 +03:00
dependabot[bot]
88a7571b30
Update env_logger requirement from 0.8.1 to 0.9.0 (#964)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: tyranron <tyranron@gmail.com>
2021-07-16 12:01:18 +03:00
Christian Legnitto
fd8c414f18 Release juniper_warp 0.7.0 2021-07-08 00:12:02 -07:00
Christian Legnitto
d4a5ed4b0e Release juniper_graphql_ws 0.3.0 2021-07-08 00:10:57 -07:00
Christian Legnitto
88b10fe009 Release juniper 0.15.7 2021-07-08 00:01:56 -07:00
Jordão Rodrigues Oliveira Rosario
739cc3bfc2
Upgraded tokio, warp, hyper and actix (#912)
* Upgraded tokio, warp, hyper and actix

* Code formatting

* actix-web temporary version fix specification

* Error handling fix on juniper_rocket

Co-authored-by: Christian Legnitto <LegNeato@users.noreply.github.com>
2021-06-28 20:22:45 -10:00
Christian Legnitto
261dc205d0 Release juniper_warp 0.6.4 2021-06-07 19:42:28 -07:00
Christian Legnitto
831211911b Release juniper_graphql_ws 0.2.5 2021-06-07 19:41:31 -07:00
Christian Legnitto
5dee177fb1 Release juniper 0.15.6 2021-06-07 18:23:16 -07:00
tyranron
e998457c0e
Release juniper 0.15.5 2021-05-11 17:38:32 +03:00
Christian Legnitto
c003c8149d Release juniper_warp 0.6.3 2021-04-03 15:42:33 -10:00
Christian Legnitto
a85315e5fb Release juniper_graphql_ws 0.2.4 2021-04-03 15:41:32 -10:00
Christian Legnitto
97d8b70ea0 Release juniper 0.15.4 2021-04-03 15:36:50 -10:00
trevyn
f6523c9d29
Fix 404 for juniper_warp example (#885)
Co-authored-by: Christian Legnitto <LegNeato@users.noreply.github.com>
2021-02-26 11:59:19 -10:00
Christian Legnitto
71731c8cb2 Release juniper_warp 0.6.2 2021-01-27 20:56:46 -10:00
Christian Legnitto
3638e1e65e Release juniper_graphql_ws 0.2.3 2021-01-27 20:35:52 -10:00
Christian Legnitto
212f896e40 Release juniper 0.15.3 2021-01-27 17:54:00 -10:00
Christian Legnitto
c6a9774b44 Release juniper_warp 0.6.1 2021-01-15 19:54:43 -10:00
Christian Legnitto
d4c97fdc77 Release juniper_graphql_ws 0.2.2 2021-01-15 19:53:42 -10:00
Christian Legnitto
186186a603 Release juniper 0.15.2 2021-01-15 19:46:23 -10:00
Christian Legnitto
7da9f6fcd6 Release juniper_graphql_ws 0.2.1 2020-12-12 09:52:41 -10:00
Christian Legnitto
b2a3b097bd Release juniper 0.15.1 2020-12-12 09:48:31 -10:00
Christian Legnitto
0c83ffde2a
Fix release replacements. (#825)
Some crates need to rewrite values when they are released in other crates. It turns out, by default we use a general config _build/release.toml. So it turns out these local-to-the-crate release.tomls were not being used unless explicitly chosen in the local-to-the-crate Makefile.toml. This removes the dead release.tomls and overrides the ones that need to edit other crates on release.
2020-12-11 19:20:05 -10:00
Christian Legnitto
9a8d98a0b1 Release juniper_warp 0.6.0 2020-12-09 20:06:03 -10:00
Christian Legnitto
270deb24dc Fix warp releases 2020-12-09 20:05:14 -10:00
Christian Legnitto
bfe627e573 Release juniper 0.15.0 2020-12-09 19:19:43 -10:00