Releases: apollographql/rover
v0.27.2
If using Rover with Connectors, you will need to specify
APOLLO_ROVER_DEV_ROUTER_VERSION=2.0.0
when usingrover dev
🐛 Fixes
-
Restore the ability to use environment or file references in the
supergraph.yaml
file - @jonathanrainer PR #2411In v0.26.3 and older you could use references such as
${env.HOST}
or similar in thesupergraph.yaml
file, there
was an oversight in the refactor and this was removed. This ability has now been restored.
🛠 Maintenance
- Restructure and add logging to failing E2E test - @jonathanrainer PR #2406
- Upgrade Rust to v1.84.0 - @jonathanrainer PR #2407
- Upgrade
apollographql/federation-rs
to v2.10.0 - @jonathanrainer PR #2409 - Upgrade
thiserror
to v2.0.1 - @jonathanrainer PR #2261
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.27.1
If using Rover with Connectors, you will need to specify
APOLLO_ROVER_DEV_ROUTER_VERSION=2.0.0-preview.X
when usingrover dev
🐛 Fixes
-
Create output parent directories if they do not already exist - @dotdat PR #2396
One small regression with release of v0.27.0 was that if an output directory to
supergraph compose
was specified,
but one of the parent directories did not exist, the command would fail. In previous versions the parent directories
would be created instead and the command would succeed. This is now corrected and the previous behaviour restored. -
Clean up how default subgraphs are defined in
rover dev
- @dotdat PR #2397 fixes #2394An issue has been reported where
rover dev
would prompt repeatedly for the subgraph name and URL despite the
user having given those values already. This was due to multiple factors, including not accounting for CLI args in
the default case and some faulty other faulty logic. This has now been restored. -
Refine how composition produces artifacts for targets - @dotdat PR #2398 fixes #2393
Due to changes in the
supergraph
binary from 2.9+, writing directly to a file is now supported. However,
this feature is not available in earlier versions ofsupergraph
. As such Rover should be responsible for
orchestrating how the output fromsupergraph
binary ends up in a file, rather than delegating that responsibility
to thesupergraph
binary and thus being at the mercy of which version is used. This allowed a further refactor that
eliminated complexity around composition outputs. -
Ensure credentials are checked when needed and not before - @jonathanrainer PR #2400 fixes #2399
Due to the
rover dev
refactor there were situations where credentials were being required when they were ultimately
not being used. As such we stopped supporting the use case where noprofile
was defined and noAPOLLO_KEY
env var
was provided, which is a very common pattern. This is now corrected.
🛠 Maintenance
-
Update
apollographql/router
to v1.60.1 - @jonathanrainer PR #2388 -
Update Node.js packages - @jonathanrainer PR #2390
Includes
eslint
to v9.20.0 andprettier
to v3.5.0 -
Update
node
CircleCI orb to v7.1.0 - @jonathanrainer PR #2391 -
Pin dependencies - @jonathanrainer PR #2401
-
Update Rust and Node.js packages - @jonathanrainer PR #2402
Includes
eslint
to v9.20.1,mockito
to v1.6.1,node
to v20.18.3 andprettier
to v3.5.1 -
Update CI node Docker Image to v20.18.3 - @jonathanrainer PR #2403
-
Update
mockall
to v0.13.1 - @jonathanrainer PR #24045
📚 Documentation
- Remove obsolete language from
rover dev --help
- @dylan-apollo PR #2395
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.27.0
Important: 3 potentially breaking changes below, indicated by ❗ BREAKING ❗
If using Rover with Connectors, you will need to specify
APOLLO_ROVER_DEV_ROUTER_VERSION=2.0.0-preview.X
when usingrover dev
❗ BREAKING ❗
-
Make paths in
supergraph.yaml
resolve relative to the location of thesupergraph.yaml
file - @jonathanrainer PR #2119To support the new Apollo Language Server it is now the case that any paths expressed in the
supergraph.yaml
file will
be resolved relative to the file's location on disk, not the location that Rover is running in, at the time. -
Remove
fed2
command - @aaronArinder PR #2222This was a deprecated, hidden, unused command that was for early Federation 2.0 testing. This command has not been
invoked for a very long time. -
Remove ability to start multiple
rover dev
sessions - @jonathanrainer PR #2352Now that Rover supports hot-reloading from
supergraph.yaml
files we've removed the ability to start multiple
rover dev
sessions, in multiple terminal windows, and have them communicate with each other. Because of this, you can no longer longer pass in the--schema
argument torover dev
to provide a subgraph schema.
🚀 Features
-
Apollo Language Server - @jonathanrainer
This brand-new feature aids in subgraph development and also supports connectors. It enhances Apollo tools such as the schema proposals editor and recent versions of IDE plugins and extensions by providing federation-aware syntax highlighting, validation, autocompletion, and more
-
New version of
rover dev
- @dotdat @aaronArinder @loshz @monkpow @jonathanrainerIn this version of Rover there is a new version of
rover dev
built upon a completely new implementation of the
composition pipeline inside of Rover. This not only allows a better functioningrover dev
with more features, but
it also supports the new Apollo Language Server, for use with Connectors!In addition, it also supports hot-reloading of the
supergraph.yaml
file, subgraphs can be added, removed or edited,
and this will be all be reflected in the runningrover dev
session!PRs Included
- #2118
- #2127
- #2130
- #2131
- #2132
- #2138
- #2141
- #2142
- #2144
- #2145
- #2146
- #2147
- #2149
- #2150
- #2152
- #2154
- #2156
- #2157
- #2158
- #2159
- #2160
- #2163
- #2166
- #2167
- #2171
- #2172
- #2177
- #2178
- #2179
- #2184
- #2189
- #2204
- #2205
- #2207
- #2208
- #2209
- #2210
- #2211
- #2214
- #2223
- #2228
- #2229
- #2251
- #2253
- #2257
- #2267
- #2268
- #2274
- #2282
- #2283
- #2285
- #2288
- #2289
- #2305
- #2308
- #2309
- #2310
- #2311
- #2312
- #2314
- #2316
- #2318
- #2319
- #2320
- #2321
- #2322
- #2326
- #2327
- #2328
- #2329
- #2330
- #2331
- #2332
- #2334
- #2335
- #2336
- #2338
- #2339
- #2340
- #2341
- #2342
- #2343
- #2344
- #2355
- #2356
- #2357
- #2358
- #2360
- #2361
- #2362
- #2365
- #2370
- #2371
- #2374
- #2379
- #2383
- #2384
-
Add ability to hot-reload
federation_version
insupergraph.yaml
- @jonathanrainer PR #2347Rover now has the ability to account for changes in the
federation_version
field of thesupergraph.yaml
file,
while it is running. -
Enabling Remote Proxy Downloads - @LongLiveCHIEF @jonathanrainer PR #2254 #2372
Rover now has the ability to be installed from a remote proxy, via the use of environment variables.
-
Display the results of custom check tasks - @swcollard PR #2087
Rover now has the ability to print out results of CustomCheckTasks from the Platform API
🐛 Fixes
-
Stop Running Router with logs at TRACE level - @nmoutschen PR #2143
We were running the Router at TRACE level logging, which was causing queries to not complete in some cases
-
Stop
rover dev
session if router binary crashes - @jonathanrainer PR #2382In the past we let the
rover dev
session continue if the router binary crashed, which led to a misleading state
of affairs, this has now been fixed.
🛠 Maintenance
-
Consolidate Rover Tests - @jonathanrainer PR #2095
Removes old tests now that the E2E tests are more mature and consolidates our examples to clean up the codebase
-
Implement breaking changes for
apollo-federation-types
0.14 - @dylan-apollo PR #2104 -
Update
apollographql/router
to v1.55.0 - @jonathanrainer PR #2123 -
Update rust crates - @jonathanrainer PR #2129
Includes
octocrab
to v0.41.0,rstest
to v0.23.0 andtower-http
to v0.6.0 -
Update rust crates - @jonathanrainer PR #2136
Includes
git-url-parse
to v0.4.5 andtower
to v0.5.1 -
Update node.js packages - @jonathanrainer PR #2137
Includes
concurrently
to v9.0.1,eslint
to v9.11.1 andnodemon
to 3.1.7 -
Downgrade
openssl-src
to v300.3.1+3.3.1 - @aaronArinder PR #2174 -
Fix integration tests against the
supergraph-demo
repo - @dotdat PR #2175 -
Fix Windows tests for
rover_std
- @aaronArinder PR #2180 -
Strip ANSI codes from lint/custom validations tests - @dotdat PR #2183
-
Update
apollographql/router
to v1.56.0 - @jonathanrainer PR #2123 -
Fix Smoke Test Payload to be valid JSON and add test timeout - @jonathanrainer PR #2191
-
Fix Dependabot Alerts in
/examples
- @jonathanrainer PR #2192 -
Switch to a timeout of 15 minutes per matrix job in Smoke Tests - @jonathanrainer PR #2193
-
Add ability to skip linting check where no
.md
files have changed - @jonathanrainer PR #2194 -
Update links after docs re-write has launched - @jonathanrainer PR #2195
-
Ensure we catch all semver pre-release versions - @jonathanrainer PR #2196
-
Update
tower-http
to v0.6.1 - @jonathanrainer PR #2197 -
Update node.js packages - @jonathanrainer PR #2137
Includes
@eslint/compat
to v1.2.0,eslint
to v9.12.0,node
to v20.18.0 andnpm
to 10.9.0 -
Update CI node Docker Image to v20.18.0 - @jonathanrainer PR #2199
-
Update
lychee-lib
to v0.16.0 - @jonathanrainer PR #2200 -
Let lint tests to message Slack if linting check fails - @jonathanrainer PR #2201
-
Move Smoke Tests away from macOS 12 - @jonathanrainer PR #2202
-
Remove comma such that
payload
becomes valid JSON - @jonathanrainer #2212 -
Update
async-trait
to v0.1.83 - @jonathanrainer PR #2216 -
Update
axios-mock-adapter
to v2.1.0 - @jonathanrainer PR #2217 -
Update
gh
CircleCI orb to v2.5.0 - @jonathanrainer PR #2218 -
Update
node
CircleCI orb to v6.2.0 - @jonathanrainer PR #2219 -
Update
slack
CircleCI orb to v5.0.0 - @jonathanrainer PR #2221 -
Update
package-lock.json
across repo to resolve security vulnerabilities - @jonathanrainer PR #2226 -
Ignore links in CHANGELOG when linting - @aaronArinder PR #2227
-
Update node.js packages - @jonathanrainer PR #2230
Includes
@eslint/compat
to v1.2.1 andeslint
to v9.13.0 -
Update
node
CircleCI orb to v6.3.0 - @jonathanrainer PR #2231 -
Update Rust to v1.82.0 - @jonathanrainer PR #2232
-
Update
apollographql/router
to v1.57.0 - @jonathanrainer PR #2235 -
Bump macOS CI such that we're using support OpenSSL - @jonathanrainer PR #2238
-
Update
bytes
to v1.8.0 - @jonathanrainer PR #2240 -
Update
notify
to v7.0.0 - @jonathanrainer PR #2241 -
Update
termimad
to v0.31.0 - @jonathanrainer PR #2242 -
Increase robustness of Smoke Tests - @jonathanrainer PR #2243
-
Update
--timeout
for delete commands in line with other tests - @jonathanrainer PR #2244 -
Update node.js packages - @jonathanrainer PR #2245
Includes
@eslint/compat
to v1.2.2 andeslint
to v9.14.0 -
Update
ariadne
to v0.5.0 - @jonathanrainer PR #2246 -
Update
which
to v7.0.0 - @jonathanrainer PR #2248 -
Update
apollographql/router
to v1.57.1 - @jonathanrainer PR #2249 -
Fix up Clippy warnings throughout tests - @jonathanrainer PR #2250
-
**Remove
netlify.toml
after new Documentation Platfo...
v0.27.0-rc.4
New release candidate build, this features the big changes of the 0.27.0 release, including the Language Server and a refactor of the internals of rover dev. All testing that should be applied to this release candidate should focus on those two elements, and bugs raised in the previously communicated fashion so that we can iterate towards a 0.27.0 release.
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.27.0-rc.3
This beta release is now out of date. If you previously installed this release, you should reinstall and see what's changed in the latest release.
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.27.0-rc.2
This beta release is now out of date. If you previously installed this release, you should reinstall and see what's changed in the latest release.
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.27.0-rc.1
This beta release is now out of date. If you previously installed this release, you should reinstall and see what's changed in the latest release.
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.27.0-rc.0
This beta release is now out of date. If you previously installed this release, you should reinstall and see what's changed in the latest release.
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.26.3
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.26.3-rc.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.