v0.0.5
Important: 2 breaking changes below, indicated by ❗ BREAKING ❗
🚀 Features
-
Adds introspection ability for subgraphs - lrlna, issue/349 pull/377
A new command,
rover subgraph introspecthas been added. This command
runs a federated introspection query against a server which has
implemented the requirements of the federation
specification.
This command accepts endpoint headers (-H,--header) for making the introspection
request (if required) and outputs SDL to stdout. -
Fallback to monochromic output in installer when
tputis unavailable - abernix, issue/371 pull/372The
tputcommand allows easier ANSI output using named values in rather than
control characters.While we could just use control characters and maintain colored output in the
absence oftput, it's probably also reasonable to gracefully fall back to
monochromatic output.
❗ BREAKING ❗
-
Renames
core buildtosupergraph compose- lrlna, pull/391To align with other Apollo teams on the usage of
supergraphand
composition, we are renamingcore buildtosupergraph compose. -
Updates harmonizer@0.2.2 - abernix, pull/396
Updates harmonizer to the latest version. This version now composes and
returns a core schema instead of CSDL. CSDL was an internal implementation
of composition and this new format is meant to bring some stability torover supergraph compose.
🐛 Fixes
-
Handle 400-599 HTTP responses - lrlna, issue/394 issue/187 pull/395
Previously, Rover did not provide errors for any HTTP requests that return a status code between 400 and 599. This fix makes sure Rover checks for those errors before moving on to parsing the response body.
This fix also does an extra check for 400 errors, as the Apollo
Server sends additional information that we can display to users.
🛠 Maintenance
-
Sign and notarize MacOS binaries as part of CI - EverlastingBugstopper, pull/363
This automates our signing and notarization process when releasing MacOS
binaries. This is especially necessary to install and run Rover on latest
M1s and Big Sur. -
Test, build and release on ubuntu-16.04 - abernix, pull/381
This pins us to Ubuntu 16.04 which ships with glib 2.19. This should allow
us to work with a wider range of operating systems than the newer glib
that we get with Ubuntu 20.04, which is ubuntu-latest on GitHub Actions
Virtual Environments (which resulted in a Rover that wouldn't run on
Ubuntu 18.04).Ubuntu 16.04 is LTS until April 2024, and is still receiving active
updates through the LTS program. -
Cache Rust artifacts in CI linter job- EverlastingBugstopper, pull/365
The rest of our GitHub actions workflows pull from the cache to take
advantage of Rust's incremental compilation. We now do this for clippy
too so it finishes (and fails) faster. -
Addresses new clippy 1.51 warning - EverlastingBugstopper, pull/364
Addresses some stylistic problems noticed by the new version of our linter clippy
📚 Documentation
-
Update documentation for 0.0.5 release- JakeDawkins StephenBarlow EverlastingBugstopper, pull/389
Documents recent additions to Rover in detail, including
rover supergraph compose,rover subgraph introspectandrover graph introspect.
SHA256 of release binaries for validation:
- Linux: 016dc1a9cb53cac667cf52fccf120f2e6fcd7dba13991d937d49c59468a14751
- Windows: bcdf4b8e7c41d2598b8cbe56696f0d2ad640949f4886807de62b4980984f3f03
- MacOS: 86260f8d4171a43d228fc4beca5def5ff54d8e6c1525dbd616323a097652a13e