-
Notifications
You must be signed in to change notification settings - Fork 92
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore: prebuilt ARM binaries for linux and macos #1356
Conversation
4865d95
to
6b3d023
Compare
ad152fe
to
b31d8d8
Compare
known issue in
I just pushed a fix, but heading out for the weekend. i'll cut another rc on monday. |
@EverlastingBugstopper thank you for your awesome work. Could we also get a musl arm64 build? They are provided for x86 so it makes sense (at least to me) to also provide them for arm64. This would allow alpine arm64 workloads to just use rover dists. |
@danilobuerger Just to set expectations: Which Rover commands are you hoping to use on your arm64 musl build? It is not possible to use |
@abernix Personally I just use graph check and graph publish. |
5b61385
to
1510bee
Compare
# [0.10.0] - 2022-11-10 > 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`](https://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](https://www.apollographql.com/docs/rover/getting-started/#linux--macos-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 - @EverlatingBugstopper, #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 - **Update studio algolia key to graphos - @trevorblades, #1384** - **Fix some broken links - @StephenBarlow, #1376** - **Fix a typo in the migration guide instructing the use of `check` instead of `publish` - @EverlastingBugstopper, #1364 fixes #1361**
fixes #582
This PR supercedes #1137 as the rebase was much too gnarly. This is essentially that same PR. Copying the description w/updated status below:
We should not merge this PR and release ARM support until we can run the latest
rover supergraph compose
androver dev
commands on ARM.The following must happen, in order, before landing this PR.
federation-rs
release candidates[email protected]
(javascript)[email protected]
(rust)supergraph compose
with2.0.6-rc.0
in asupergraph.yaml
withrover
built frommain
natively on an M1, and in Docker on an M1Hopefully it is justupdate: it was not that easy, the next two steps are new2.0.6-rc.0
. If that works, it is safe to assume 0.x will work, so no release candidate will be needed there.aarch64-apple-darwin
apollographql/federation-rs because V8 snapshots cannot be cross-compiled from x86_64 machines and CircleCI does not currently provide native ARM64 Mac machines meaning we have to cross-compile if we want ARM binaries at all. If either of those things change, we will revisit this decision.supergraph compose
with2.0.6-rc.1
in asupergraph.yaml
withrover
built frommain
natively on an arm ubuntu device, and in Docker on an M1federation-rs
releases with native ARM support (only Linux binaries, no ARM64 MacOS binaries)[email protected]
(javascript)[email protected]
(rust)[email protected]
(javascript)[email protected]
(rust)supergraph compose
with the packages we just released[email protected]
[email protected]
supergraph compose
natively on an M1, and in Docker on an M1