Skip to content

Releases: apollographql/rover

v0.11.1

08 Feb 21:14
2bc48c5
Compare
Choose a tag to compare

🐛 Fixes

  • Updates router config in rover dev to match newer versions - @dbanty, #1500

    The default configuration for the router in rover dev disables the health check. The router configuration recently renamed this check from health-check to health_check, which is now reflected in rover dev's default router configuration.


This release was automatically created by CircleCI.

If you would like to verify that the binary you have downloaded was built from the source code in this repository, you can compute a checksum of the zipped tarball and compare it to the checksums that are included as release artifacts.

Binaries built for MacOS are signed, notarized, and automatically verified with Gatekeeper.

v0.11.0

24 Jan 21:44
f26feeb
Compare
Choose a tag to compare

🚀 Features

  • Manage contract configuration - @sachindshinde, #1475 fixes #1421

    Rover now includes two commands for creating, modifying, and reading contracts: rover contract publish and rover contract describe. Further documentation can be found here.

  • Easier file output with new --output argument - @gocamille, #1413 fixes #1212

    This change adds the new option, --format, to allow users to define the format type for messages printed to stdout (either by passing plain or json as an argument to --format). This replaces the use of --output for defining format types. The --output option will be available to define the output file type instead, following Command Line Interface Guidelines for file outputs. This is an additive, non-breaking change and using the --output option will continue to be valid. Further documentation can be found here.

  • Adds --router-config to rover dev - @EverlastingBugstopper, #1446 fixes #1373, #1345, and #1468

    The new --router-config argument for rover dev allows you to pass a router configuration file on startup that can configure settings such as header propagaion and CORS policies. Further documentation can be found here.

  • Auto-update router versions in rover dev - @EverlastingBugstopper, #1432

    rover dev will automatically use the version of the router specified in this plugin file instead of a hard coded version.

🛠 Maintenance

  • Better error and help text for ELv2 license argument - @DoumanAsh, #1456 fixes #1455

    The help text for the --elv2-license argument now includes the expected value for the argument, in addition to the error message returned when the argument is needed but not passed.

  • Updates the Ariadne template URL - @patrick91, #1439

  • Updates ./examples/supergraph-demo to @apollo/server v4, and removes ./examples/dev - @EverlastingBugsttopper, #1442 fixes #1440 and #1441

  • Updates dependencies - @EverlastingBugstopper, #1481, #1450

    apollo-parser 0.3 -> 0.4
    base64 0.13 -> 0.21
    git2 0.15 -> 0.16
    graphql_client 0.11.0 -> 0.12
    serial_test 0.9 -> 1.0
    os_info 3.4 -> 3.5
    os_type 2.4 -> 2.6
    termcolor 1.1 -> 1.2
    tokio 1.21 -> 1.24

📚 Documentation


This release was automatically created by CircleCI.

If you would like to verify that the binary you have downloaded was built from the source code in this repository, you can compute a checksum of the zipped tarball and compare it to the checksums that are included as release artifacts.

Binaries built for MacOS are signed, notarized, and automatically verified with Gatekeeper.

v0.11.0-rc.2

20 Jan 19:45
c5ace8a
Compare
Choose a tag to compare
v0.11.0-rc.2 Pre-release
Pre-release
  • This release includes some changes to rover dev:

    1. There is now a --router-config <ROUTER_YAML_PATH> argument that you can pass to specify a yaml configuration file to start the router with. This file is reloaded when it is changed.
    2. rover dev will now intelligently select a version of the router and composition to use based on the versions in ./latest_plugin_versions.json
    3. -n is now an alias for --name
  • There are two new commands: rover contract publish and rover contract describe. Docs on these commands can be found here.

  • The --output argument has been renamed to --format and should be used for specifying JSON output, and --output should be used for writing Rover's command output to a file.


This release was automatically created by CircleCI.

If you would like to verify that the binary you have downloaded was built from the source code in this repository, you can compute a checksum of the zipped tarball and compare it to the checksums that are included as release artifacts.

Binaries built for MacOS are signed, notarized, and automatically verified with Gatekeeper.

v0.11.0-rc.1

17 Jan 23:16
Compare
Choose a tag to compare
v0.11.0-rc.1 Pre-release
Pre-release

This release includes some changes to rover dev.

  1. There is now a --router-config <ROUTER_YAML_PATH> argument that you can pass to specify a yaml configuration file to start the router with. This file is reloaded when it is changed.
  2. rover dev will now intelligently select a version of the router and composition to use based on the versions in ./latest_plugin_versions.json
  3. -n is now an alias for --name

This release was automatically created by CircleCI.

If you would like to verify that the binary you have downloaded was built from the source code in this repository, you can compute a checksum of the zipped tarball and compare it to the checksums that are included as release artifacts.

Binaries built for MacOS are signed, notarized, and automatically verified with Gatekeeper.

v0.11.0-rc.0

16 Dec 16:51
Compare
Choose a tag to compare
v0.11.0-rc.0 Pre-release
Pre-release

This release includes some changes to rover dev.

  1. There is now a --router-config <ROUTER_YAML_PATH> argument that you can pass to specify a yaml configuration file to start the router with. This file will not be reloaded when it is changed (which is why this is a pre-release and not a stable release).
  2. rover dev will now intelligently select a version of the router and composition to use based on the versions in ./latest_plugin_versions.json
  3. -n is now an alias for --name

This release was automatically created by CircleCI.

If you would like to verify that the binary you have downloaded was built from the source code in this repository, you can compute a checksum of the zipped tarball and compare it to the checksums that are included as release artifacts.

Binaries built for MacOS are signed, notarized, and automatically verified with Gatekeeper.

v0.10.0

14 Nov 17:37
33500a7
Compare
Choose a tag to compare

Important: 1 potentially breaking change below, indicated by ❗ BREAKING ❗

❗ BREAKING ❗

  • Fix implementation of --header argument - @EverlastingBugstopper, #1369 fixes #1365

    This change tightens up usage of the --header argument used for introspect commands by disallowing previously valid (but undocumented) usage like this: --header "Header-1: value" "Header-2: value". After this change, you must conform to what we have in the documentation, which indicates separate instances of the --header argument for each header, like so: --header "Header-1: value" --header "Header-2: value".

🚀 Features

  • Provide prebuilt binaries for ARM devices - @EverlastingBugstopper, #1356 fixes #582

    As of this release, rover.apollo.dev delivers prebuilt binaries from our GitHub release for ARM devices. Most notably this means that Docker on M1 devices should work out of the box. You should be able to replace any custom builds in your tooling pipeline with a call to the official curl installer.

  • Report downstream check task results - @sachindshinde, #1385

    When running rover subgraph check commands, if the proposed schema would cause downstream failures (i.e. with contracts), those failures are now reported in the check response.

  • Faster rover supergraph compose - @EverlastingBugstopper, #1392 fixes #992

    Rover now resolves all subgraph schemas in parallel when running rover supergraph compose on a supergraph.yaml file. This should improve the speed to compose large supergraphs significantly. This change also drastically improves error handling by reporting all issues with resolving subgraph schemas (and informing you which schema(s) failed to resolve) rather than exiting on the first failed schema resolution.

  • Add --polling-interval to rover dev - @patrick91, #1377 fixes #1221

    You can now set --polling-interval when running rover dev to change the frequency of introspection poll requests for subgraphs that don't provide the schema from the file system with the --schema argument.

  • Adds --skip-update-check to skip the once-per-day update check - @Tsing, #1396 fixes #1394

    Once per day, Rover checks if there is a new version available for update and notifies the user if there is. There is now a flag you can pass to disable this check: --skip-update-check.

  • Respect the NO_COLOR environment variable - @chnn, #1360

    rover will not use color in any output when executed with the NO_COLOR environment variable set to true.

🛠 Maintenance

  • Updates from clap v3 to clap v4 - @EverlastingBugstopper, #1404 fixes #1400

    This release updated the command line argument parsing library to major version 4. There should be no noticeable compatibility issues with this update, only lighter binaries. The look and feel of the main rover --help output has changed to a neutral color palette along with this change.

  • Updates Rust to 1.65.0 - @EverlastingBugstopper, #1399

  • Updates node.js to v18 - @renovate, #1389

  • Updates node dev-dependencies - @renovate, #1204 and zs#1398

  • Remove dependency on the saucer crate - @EverlastingBugstopper, #1402

  • Updates introspector-gadget to 0.2.0 - @EverlastingBugstopper, #1386

  • Only cache dependencies in CI, not whole /target - @EverlastingBugstopper, #1387

  • Use engine@main instead of engine@current to fetch the API schema - @EverlastingBugstopper, #1368

  • Use lychee as a link checker instead of npm - @ptondereau, #1328 fixes #1306

    We now use a Rust-based link checker to check the links in the Rover repository instead of a node-based link checker (that was much more flaky).

  • Describe latest federation versions in ./latest_plugin_versions.json - @EverlastingBugstopper, #1363

    When you run rover supergraph compose, the latest version of composition is automatically downloaded to your machine, these latest version numbers are now stored in ./latest_plugin_versions.json in the Rover repo.

  • Rename apollo- headers to apollographql- headers - @jsegaran, #1411

  • Update npm to v9 - @renovate, #1412

📚 Documentation


This release was automatically created by CircleCI.

If you would like to verify that the binary you have downloaded was built from the source code in this repository, you can compute a checksum of the zipped tarball and compare it to the checksums that are included as release artifacts.

Binaries built for MacOS are signed, notarized, and automatically verified with Gatekeeper.

v0.9.2-rc.1

03 Oct 18:43
Compare
Choose a tag to compare
v0.9.2-rc.1 Pre-release
Pre-release

Fixes an installation bug for ARM on npm.


This release was automatically created by CircleCI.

If you would like to verify that the binary you have downloaded was built from the source code in this repository, you can compute a checksum of the zipped tarball and compare it to the checksums that are included as release artifacts.

Binaries built for MacOS are signed, notarized, and automatically verified with Gatekeeper.

v0.9.2-rc.0

30 Sep 21:36
Compare
Choose a tag to compare
v0.9.2-rc.0 Pre-release
Pre-release

This release is essentially the same as v0.9.1, except for a few things:

  1. This release bumps the router used in rover dev to v1.1.0 by default.
  2. The installation endpoints for this release will deliver pre-built binaries to unix ARM devices. This enables the following:
    • You can now run rover without emulation on your M1/M2 machines. However, the supergraph and router plugins will still be emulated as we cannot yet cross-compile them, and CircleCI does not provide ARM-enabled MacOS runners.
    • You can now run rover in Docker containers on M1/M2 devices as well instead of needing to build it from source.

You can try this release out by running curl -sSL https://rover.apollo.dev/nix/v0.9.2-rc.0 | sh on Unix devices, and iwr https://rover.apollo.dev/win/v0.9.2-rc.0 | iex on Windows devices.


This release was automatically created by CircleCI.

If you would like to verify that the binary you have downloaded was built from the source code in this repository, you can compute a checksum of the zipped tarball and compare it to the checksums that are included as release artifacts.

Binaries built for MacOS are signed, notarized, and automatically verified with Gatekeeper.

v0.9.1

30 Sep 20:34
0dbeb68
Compare
Choose a tag to compare

🚀 Features

  • Add templates for TypeScript, Go, Kotlin, and Java - @dbanty, #1347

    The rover template commands now include four more languages.

🐛 Fixes

  • Properly report errors when the first rover dev process starts up - @EverlastingBugstopper, #1342

    If something went wrong while starting the first rover dev process, it would attempt to start an attached process, which would fail with an inscrutable the main rover dev session is no longer active error message. Now, Rover properly reports issues with starting up the first rover dev session.

  • Properly report plugin installation errors on rover dev startup - @EverlastingBugstopper, #1357

    If a plugin failed to install when starting rover dev, the error wouldn't be reported properly. Now, if something goes wrong, the error message will be printed properly.

  • Replace some misleading error suggestions regarding ports with rover dev - @EverlastingBugstopper, #1340

    Some errors suggested retrying the rover dev command with a different --port argument, which doesn't exist. In these cases, rover dev will suggest that you specify a different --supergraph-port argument instead.

  • Don't exclude certain git remotes from GitContext - @EverlastingBugstopper, #1350 fixes #1349

    In v0.8.2, we started normalizing git remotes for anonymized telemetry. Unfortunately we started excluding git remotes that were not one of BitBucket, GitLab, or GitHub. We now record all of these properly.

🛠 Maintenance

  • Fix typo in rover subgraph publish output - @EverlastingBugstopper, #1358 fixes #1337

    Instead of saying "Monitor your schema delivery progresson studio", rover subgraph publish outputs "You can monitor this launch in Apollo Studio".

  • Improve caching in CI - @EverlastingBugstopper, #1351 and #1352

    In CI builds, we now cache /target and ~/.cargo, instead of just /target.

  • Specify all dependencies in root Cargo.toml - @EverlastingBugstopper, #1344

    All of Rover's dependencies can now be viewed and updated in the root Cargo.toml, rather than needing to hunt around the workspace to update crates.

  • Updates dependencies - @EverlastingBugstopper, #1346

    • assert_cmd 1 -> 2
    • git2 0.14 -> 0.15
    • online 3.0.1 -> 4.0.0

This release was automatically created by CircleCI.

If you would like to verify that the binary you have downloaded was built from the source code in this repository, you can compute a checksum of the zipped tarball and compare it to the checksums that are included as release artifacts.

Binaries built for MacOS are signed, notarized, and automatically verified with Gatekeeper.

v0.9.0

22 Sep 20:33
Compare
Choose a tag to compare

🚀 Features

  • rover template command suite - @dbanty, @michael-watson, @EverlastingBugstopper, #1287

    Two new commands have made their way to Rover: rover template list and rover template use. These commands provide a similar experience to create-react-app, and allow you to extract GraphQL project templates to your local machine. Check out the docs for more on this new functionality.

  • rover dev to facilitate developing a supergraph on your local machine - @EverlastingBugstopper, #1190

    rover dev allows you to join multiple running subgraph servers together into a local supergraph, providing the ability to run queries and inspect query plans with Apollo Sandbox. Check out the docs for more on this new functionality.

  • If E013 is thrown and $APOLLO_KEY is set, give a more helpful suggestion - @ptondereau, #1284, #1285

    If Studio fails to recognize an API key and APOLLO_KEY is set, recommend unsetting the environment variable to use --profile default instead.

🐛 Fixes

🛠 Maintenance

  • Link directly to API Keys page in Studio - @abernix, #1202

    The rover config auth command will now provide a link that takes you directly to the "API Keys" page where you can create a Personal API Key, rather than a page that requires you to click through to another page.

  • Prefer "supergraph schema" terminology to "gateway" - @EverlastingBugstopper, #1239, #1332

    rover subgraph publish now refers to updating the "supergraph schema" as opposed to updating the "gateway," since supergraph schema consumers can be routers and/or gateways now.


This release was automatically created by CircleCI.

If you would like to verify that the binary you have downloaded was built from the source code in this repository, you can compute a checksum of the zipped tarball and compare it to the checksums that are included as release artifacts.

Binaries built for MacOS are signed, notarized, and automatically verified with Gatekeeper.