harmonizer

Crates.ioharmonizer
lib.rsharmonizer
version2.8.0-connectors.2
sourcesrc
created_at2021-03-12 20:23:50.652794
updated_at2024-05-14 00:03:26.416562
descriptionApollo Federation utility to compose a supergraph from subgraphs
homepagehttps://www.apollographql.com/apollo-federation/
repositoryhttps://github.com/apollographql/federation/
max_upload_size
id367879
size7,007,295
(apollo-bot2)

documentation

https://apollographql.com/docs/federation/

README

Harmonizer

This harmonizer offers the ability to invoke a bundled version of the JavaScript library, @apollo/composition, which composes multiple subgraphs into a supergraph.

The bundled version of the federation library that is included is a JavaScript Immediately Invoked Function Expression (IIFE) that is created by running the esbuild bundler on the @apollo/composition package.

When the [harmonize] function that this crate provides is called with a [Vec<SubgraphDefinition>] (which is synonymous with the terminology and service list notion that exists within the JavaScript composition library), this crate uses deno_core to invoke the JavaScript within V8. This is ultimately accomplished using rusty_v8's V8 bindings to V8.

While we intend for a future version of composition to be done natively within Rust, this allows us to provide a more stable transition using an already stable composition implementation while we work toward something else.

Commit count: 3543

cargo fmt