Skip to content

Commit 93deb28

Browse files
authored
Make juniper_rocket_async replace juniper_rocket (#955)
* Make juniper_rocket_async replace juniper_rocket Now that rocket v0.5 is async and in rc, merge the two juniper projects. Fixes #947. * Remove println
1 parent bb55ad1 commit 93deb28

File tree

17 files changed

+297
-1059
lines changed

17 files changed

+297
-1059
lines changed

Cargo.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ members = [
1414
"juniper_hyper",
1515
"juniper_iron",
1616
"juniper_rocket",
17-
"juniper_rocket_async",
1817
"juniper_subscriptions",
1918
"juniper_graphql_ws",
2019
"juniper_warp",

Makefile.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ CARGO_MAKE_CARGO_ALL_FEATURES = ""
1212
[tasks.release]
1313
condition = { env_set = [ "RELEASE_LEVEL" ] }
1414
workspace = false
15-
env = { "CARGO_MAKE_WORKSPACE_SKIP_MEMBERS" = "integration_tests/*;examples/*;juniper_benchmarks;juniper_rocket_async" }
15+
env = { "CARGO_MAKE_WORKSPACE_SKIP_MEMBERS" = "integration_tests/*;examples/*;juniper_benchmarks;" }
1616
run_task = { name = "release-INTERNAL", fork = true }
1717

1818

@@ -39,7 +39,7 @@ args = ["release", "--config", "${CARGO_MAKE_WORKING_DIRECTORY}/../_build/releas
3939
[tasks.release-dry-run]
4040
condition = { env_set = [ "RELEASE_LEVEL" ] }
4141
workspace = false
42-
env = { "CARGO_MAKE_WORKSPACE_SKIP_MEMBERS" = "integration_tests/*;examples/*;juniper_benchmarks;juniper_rocket_async" }
42+
env = { "CARGO_MAKE_WORKSPACE_SKIP_MEMBERS" = "integration_tests/*;examples/*;juniper_benchmarks;" }
4343
run_task = { name = "release-dry-run-INTERNAL", fork = true }
4444

4545
[tasks.release-some-dry-run]
@@ -53,7 +53,7 @@ run_task = { name = "release-some-dry-run-INTERNAL", fork = true }
5353
[tasks.release-dry-run-INTERNAL]
5454
private = true
5555
condition = { env_set = [ "RELEASE_LEVEL" ] }
56-
env = { "CARGO_MAKE_WORKSPACE_SKIP_MEMBERS" = "integration_tests/*;examples/*;juniper_benchmarks;juniper_rocket_async" }
56+
env = { "CARGO_MAKE_WORKSPACE_SKIP_MEMBERS" = "integration_tests/*;examples/*;juniper_benchmarks;" }
5757
description = "Run `cargo-release --dry-run` for every crate"
5858
command = "cargo-release"
5959
args = ["release", "--config", "${CARGO_MAKE_WORKING_DIRECTORY}/../_build/release.toml", "--dry-run", "${RELEASE_LEVEL}"]
@@ -68,7 +68,7 @@ args = ["release", "--config", "${CARGO_MAKE_WORKING_DIRECTORY}/../_build/releas
6868
[tasks.release-local-test]
6969
condition = { env_set = [ "RELEASE_LEVEL" ] }
7070
workspace = false
71-
env = { "CARGO_MAKE_WORKSPACE_SKIP_MEMBERS" = "integration_tests/*;examples/*;juniper_benchmarks;juniper_rocket_async" }
71+
env = { "CARGO_MAKE_WORKSPACE_SKIP_MEMBERS" = "integration_tests/*;examples/*;juniper_benchmarks;" }
7272
run_task = { name = "release-local-test-INTERNAL", fork = true }
7373

7474

juniper/release.toml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,6 @@ pre-release-replacements = [
2121
# Rocket
2222
{file="../juniper_rocket/Cargo.toml", min=0, search="juniper = \\{ version = \"[^\"]+\"", replace="juniper = { version = \"{{version}}\""},
2323
{file="../juniper_rocket/Cargo.toml", min=0, search="\\[dev-dependencies\\.juniper\\]\nversion = \"[^\"]+\"", replace="[dev-dependencies.juniper]\nversion = \"{{version}}\""},
24-
# Rocket Async
25-
{file="../juniper_rocket_async/Cargo.toml", min=0, search="juniper = \\{ version = \"[^\"]+\"", replace="juniper = { version = \"{{version}}\""},
26-
{file="../juniper_rocket_async/Cargo.toml", min=0, search="\\[dev-dependencies\\.juniper\\]\nversion = \"[^\"]+\"", replace="[dev-dependencies.juniper]\nversion = \"{{version}}\""},
2724
# Warp
2825
{file="../juniper_warp/Cargo.toml", min=0, search="juniper = \\{ version = \"[^\"]+\"", replace="juniper = { version = \"{{version}}\""},
2926
{file="../juniper_warp/Cargo.toml", min=0, search="\\[dev-dependencies\\.juniper\\]\nversion = \"[^\"]+\"", replace="[dev-dependencies.juniper]\nversion = \"{{version}}\""},

juniper_rocket/CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
# master
22

3+
- Require async rocket support (`rocket` >= 0.5-rc1).
34
- Compatibility with the latest `juniper`.
45

56
# [[0.7.1] 2021-06-07](https://github.com/graphql-rust/juniper/releases/tag/juniper_rocket-0.7.1)

juniper_rocket/Cargo.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,9 @@ documentation = "https://docs.rs/juniper_rocket"
1212
repository = "https://github.com/graphql-rust/juniper"
1313

1414
[dependencies]
15-
juniper = { version = "0.15.6", path = "../juniper", default-features = false}
16-
rocket = { version = "0.4.10", default-features = false }
15+
futures = "0.3.1"
16+
juniper = { version = "0.15.6", path = "../juniper", default-features = false }
17+
rocket = { version = "0.5.0-rc.1", default-features = false }
1718
serde_json = "1.0.2"
1819

1920
[dev-dependencies]

juniper_rocket/Makefile.toml

Lines changed: 0 additions & 17 deletions
This file was deleted.
Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,8 @@
1-
#![feature(decl_macro, proc_macro_hygiene)]
2-
3-
use rocket::{response::content, State};
4-
51
use juniper::{
62
tests::fixtures::starwars::schema::{Database, Query},
73
EmptyMutation, EmptySubscription, RootNode,
84
};
5+
use rocket::{response::content, Rocket, State};
96

107
type Schema = RootNode<'static, Query, EmptyMutation<Database>, EmptySubscription<Database>>;
118

@@ -16,24 +13,25 @@ fn graphiql() -> content::Html<String> {
1613

1714
#[rocket::get("/graphql?<request>")]
1815
fn get_graphql_handler(
19-
context: State<Database>,
16+
context: &State<Database>,
2017
request: juniper_rocket::GraphQLRequest,
21-
schema: State<Schema>,
18+
schema: &State<Schema>,
2219
) -> juniper_rocket::GraphQLResponse {
23-
request.execute_sync(&schema, &context)
20+
request.execute_sync(&*schema, &*context)
2421
}
2522

2623
#[rocket::post("/graphql", data = "<request>")]
2724
fn post_graphql_handler(
28-
context: State<Database>,
25+
context: &State<Database>,
2926
request: juniper_rocket::GraphQLRequest,
30-
schema: State<Schema>,
27+
schema: &State<Schema>,
3128
) -> juniper_rocket::GraphQLResponse {
32-
request.execute_sync(&schema, &context)
29+
request.execute_sync(&*schema, &*context)
3330
}
3431

35-
fn main() {
36-
rocket::ignite()
32+
#[rocket::main]
33+
async fn main() {
34+
Rocket::build()
3735
.manage(Database::new())
3836
.manage(Schema::new(
3937
Query,
@@ -44,5 +42,7 @@ fn main() {
4442
"/",
4543
rocket::routes![graphiql, get_graphql_handler, post_graphql_handler],
4644
)
47-
.launch();
45+
.launch()
46+
.await
47+
.expect("server to launch");
4848
}

0 commit comments

Comments
 (0)