Crates.io | harmonizer |
lib.rs | harmonizer |
version | 2.9.3 |
source | src |
created_at | 2021-03-12 20:23:50.652794 |
updated_at | 2024-12-04 22:57:59.042665 |
description | Apollo Federation utility to compose a supergraph from subgraphs |
homepage | https://www.apollographql.com/apollo-federation/ |
repository | https://github.com/apollographql/federation/ |
max_upload_size | |
id | 367879 |
size | 6,478,062 |
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.