Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(composition): composition rewrite #2148

Closed
wants to merge 21 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
faa8d67
ROVER-135 Make paths in supergraph.yaml resolve relative to the locat…
jonathanrainer Sep 10, 2024
dd9551d
Dotdat/resolve supergraph config (#2141)
dotdat Sep 17, 2024
8997ebe
Dotdat/composition handler runner (#2144)
dotdat Sep 17, 2024
c7bdeee
Dotdat/supergraph watcher (#2145)
dotdat Sep 17, 2024
e6685b0
Wire-in supergraph config resolver (#2146)
dotdat Sep 18, 2024
1c14f51
fix(composition): supergraph compose --profile supported (#2147)
aaronArinder Sep 18, 2024
eab085b
Revert command/dev changes. (#2149)
loshz Sep 18, 2024
c94d8ee
fix composition-integration tests (#2150)
dotdat Sep 18, 2024
d52e3c5
fix(introspection): use memory, not files (#2152)
aaronArinder Sep 18, 2024
61b41d5
wire up composition runner (#2154)
dotdat Sep 18, 2024
5707102
fix cargo fmt errors
loshz Sep 19, 2024
ebde5e6
await compose runner messages (#2156)
dotdat Sep 19, 2024
187bdf5
composition: handle compose errors (#2157)
loshz Sep 19, 2024
0c16345
fix(supergraph config resolution): write to tempfile (#2158)
aaronArinder Sep 19, 2024
f89be47
test(supergraphbinary): arg preparation (#2159)
aaronArinder Sep 19, 2024
e114cd6
apollo-federation-types 0.14.1 (#2161)
loshz Sep 19, 2024
922214b
document(subtask): adding docs for Subtasks and the associated traits…
aaronArinder Sep 19, 2024
90d4a74
fix(supergraph): binary buildresult path updated (#2163)
aaronArinder Sep 19, 2024
2ffbc1b
Mirror existing temp supergraph.yaml behavior (#2160)
dotdat Sep 19, 2024
7f7577d
Merge branch 'main' into composition-integration
loshz Sep 20, 2024
a34a3cb
add supergraph config diff tests (#2166)
loshz Sep 20, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 57 additions & 3 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

18 changes: 13 additions & 5 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -69,14 +69,15 @@ apollo-parser = "0.8"
apollo-encoder = "0.8"

# https://github.com/apollographql/federation-rs
apollo-federation-types = "0.14.0"
apollo-federation-types = "0.14.1"

# crates.io dependencies
anyhow = "1"
ariadne = "0.4"
assert_fs = "1"
assert_cmd = "2"
assert-json-diff = "2"
anyhow = "1"
async-trait = "0.1.82"
backtrace = "0.3"
backoff = { version = "0.4", features = ["tokio"] }
base64 = "0.22"
Expand Down Expand Up @@ -109,6 +110,7 @@ httpmock = "0.7"
hyper = "1.0"
interprocess = { version = "2", default-features = false }
indoc = "2"
itertools = "0.13.0"
lazycell = "1"
lazy_static = "1.4"
notify = { version = "6", default-features = false, features = [
Expand Down Expand Up @@ -164,24 +166,29 @@ zip = "2.0"
[dependencies]
anyhow = { workspace = true }
assert_fs = { workspace = true }
async-trait = { workspace = true }
apollo-federation-types = { workspace = true }
apollo-parser = { workspace = true }
billboard = { workspace = true }
binstall = { workspace = true }
buildstructor = { workspace = true }
calm_io = { workspace = true }
camino = { workspace = true }
clap = { workspace = true, features = ["color", "derive", "env"] }
chrono = { workspace = true }
console = { workspace = true }
crossbeam-channel = { workspace = true }
ctrlc = { workspace = true }
derive-getters = { workspace = true }
dialoguer = { workspace = true }
flate2 = { workspace = true }
futures = { workspace = true }
graphql_client = { workspace = true }
heck = { workspace = true }
http = { workspace = true }
houston = { workspace = true }
interprocess = { workspace = true }
itertools = { workspace = true }
prettytable-rs = { workspace = true }
lazycell = { workspace = true }
lazy_static = { workspace = true }
Expand All @@ -200,19 +207,20 @@ sputnik = { workspace = true }
strsim = { workspace = true }
strum = { workspace = true }
strum_macros = { workspace = true }
tap = { workspace = true }
tar = { workspace = true }
tempfile = { workspace = true }
timber = { workspace = true }
termimad = { workspace = true }
thiserror = { workspace = true }
tokio = { workspace = true, features = ["rt", "rt-multi-thread", "macros", "process", "sync"] }
tokio-stream = { workspace = true }
toml = { workspace = true }
tower = { workspace = true }
tracing = { workspace = true }
which = { workspace = true }
uuid = { workspace = true }
url = { workspace = true, features = ["serde"] }
tokio = { workspace = true, features = ["rt", "rt-multi-thread", "macros"] }
futures = { workspace = true }

[dev-dependencies]
assert_cmd = { workspace = true }
Expand All @@ -225,6 +233,7 @@ graphql-schema-diff = "0.2.0"
httpmock = { workspace = true }
indoc = { workspace = true }
mime = "0.3.17"
mockall = "0.13.0"
portpicker = "0.1.1"
predicates = { workspace = true }
rand = "0.8.5"
Expand All @@ -234,5 +243,4 @@ reqwest = { workspace = true, features = ["native-tls-vendored"] }
rstest = { workspace = true }
serial_test = { workspace = true }
speculoos = { workspace = true }
tokio = { workspace = true }
tracing-test = "0.2.5"
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ query SubgraphIntrospectQuery {
_service {
sdl
}
}
}
3 changes: 2 additions & 1 deletion src/command/dev/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ use std::net::IpAddr;
use apollo_federation_types::config::FederationVersion;
use camino::Utf8PathBuf;
use clap::Parser;
use derive_getters::Getters;
use serde::Serialize;

use rover_client::shared::GraphRef;
Expand Down Expand Up @@ -55,7 +56,7 @@ pub struct DevOpts {
pub supergraph_opts: SupergraphOpts,
}

#[derive(Debug, Parser, Serialize, Clone)]
#[derive(Debug, Parser, Serialize, Clone, Getters)]
pub struct SupergraphOpts {
/// The port the graph router should listen on.
///
Expand Down
2 changes: 1 addition & 1 deletion src/command/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ pub(crate) mod output;
mod persisted_queries;
mod readme;
pub(crate) mod subgraph;
mod supergraph;
pub(crate) mod supergraph;
pub(crate) mod template;
mod update;

Expand Down
10 changes: 5 additions & 5 deletions src/command/subgraph/introspect.rs
Original file line number Diff line number Diff line change
Expand Up @@ -49,11 +49,11 @@ impl Introspect {
}
};

Ok(
introspect::run(SubgraphIntrospectInput { headers }, &client, should_retry)
.await?
.result,
)
let sdl = introspect::run(SubgraphIntrospectInput { headers }, &client, should_retry)
.await?
.result;

Ok(sdl)
}

pub async fn exec_and_watch(
Expand Down
2 changes: 1 addition & 1 deletion src/command/subgraph/mod.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
mod check;
mod delete;
mod fetch;
mod introspect;
pub mod introspect;
mod lint;
mod list;
mod publish;
Expand Down
Loading
Loading