Skip to content

Commit ff28390

Browse files
esilvermapollo-bot2alocaynicholascioliDaleSeo
authored
Releasing 0.8.0 (#356)
* fix(ci): pin to specific stable rust version (#287) This commit pins the rust-toolchain to a specific rust version (1.89.0) for compatibility guarantees. Renovate will handle warning on outdated versions of stable rust. A minimal supported rust version was also added to the underlying crates to ensure compatibility guarantees as the stable verison increments in future updates. * feat: Implement Test Coverage Measurement and Reporting * chore: add changeset * feat: remove unnecessary codecov setting * feat: add codecov badge * feat: add codecov config file * feat: add code coverage docs to CONTRIBUTING.md * test: add tests for uplink schema event * ci: prevent draft PRs from verifying changeset * chore: add changeset * ci: trigger verify changeset workflow when PR becomes ready for review * ci: update github checkout actions * feat: Configuration for disabling authorization token passthrough (#336) * Allow config for not forwarding Auth tokens to GraphQL API * use serde default to make new config optional * Changeset * Fix default case in main.rs * Add new config option to documentation * Redirect /docs/apollo-mcp-server/guides to fix 404 (#349) Co-authored-by: Samuel Collard <[email protected]> Co-authored-by: Michelle Mabuyo <[email protected]> * chore: update RMCP version to latest (#328) This commit updates the RMCP dependency to the latest version 0.6.4. Sadly, schemars was also updated with this, so a lot of unrelated changes were needed to conform with the new stable schemars version. * chore(release): bumping to version 0.8.0 * chore(release): changelog for 0.8.0 --------- Co-authored-by: Apollo Bot <[email protected]> Co-authored-by: Armando Locay <[email protected]> Co-authored-by: Nicholas Cioli <[email protected]> Co-authored-by: Dale Seo <[email protected]> Co-authored-by: Dale Seo <[email protected]> Co-authored-by: Samuel Collard <[email protected]> Co-authored-by: apollo-bot2 <[email protected]> Co-authored-by: Samuel Collard <[email protected]> Co-authored-by: Michelle Mabuyo <[email protected]>
1 parent 94997f6 commit ff28390

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+4311
-3805
lines changed

.github/renovate.json5

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,49 @@
11
{
2+
// Allow for intellisense in editors
3+
$schema: "https://docs.renovatebot.com/renovate-schema.json",
4+
5+
// List of rules to apply
26
extends: [
7+
// Recommended best practices from renovate itself
8+
// See: https://docs.renovatebot.com/upgrade-best-practices/#whats-in-the-configbest-practices-preset
9+
"config:best-practices",
10+
11+
// Apply our own internal best practices
12+
// See: https://github.com/apollographql/apollo-mcp-server/commits/main/.github/renovate.json5
313
"github>apollographql/renovate-config-apollo-open-source:default.json5",
14+
15+
// Update to the latest rust stable version as it releases.
16+
// See: https://github.com/Turbo87/renovate-config/blob/master/rust/updateToolchain.json
417
"github>Turbo87/renovate-config//rust/updateToolchain",
518
],
19+
20+
// Globally disable all automatic update PRs from renovate
621
packageRules: [
722
{
823
enabled: false,
924
matchPackageNames: ["*"],
1025
},
1126
],
27+
1228
// Automating Nix upgrades is currently in beta and opt-in only.
1329
// https://docs.renovatebot.com/modules/manager/nix/
1430
nix: {
1531
enabled: true,
1632
},
33+
34+
// Globally enable vulnerability alerts
35+
//
36+
// Note: This needs extra configuration at the repository level, which is described in the link
37+
// below.
38+
//
39+
// See: https://docs.renovatebot.com/configuration-options/#vulnerabilityalerts
1740
vulnerabilityAlerts: {
1841
enabled: true,
1942
},
43+
44+
// Disable automatically updating lock files to latest versions once a week.
45+
//
46+
// See: https://docs.renovatebot.com/configuration-options/#lockfilemaintenance
2047
lockFileMaintenance: {
2148
enabled: false,
2249
},

.github/workflows/ci.yml

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ jobs:
2828
actions: write
2929
contents: read
3030
steps:
31-
- uses: actions/checkout@v4
31+
- uses: actions/checkout@v5
3232
with:
3333
ref: ${{ github.event.pull_request.head.sha }}
3434
- uses: nixbuild/nix-quick-install-action@v30
@@ -55,7 +55,7 @@ jobs:
5555
actions: write
5656
contents: read
5757
steps:
58-
- uses: actions/checkout@v4
58+
- uses: actions/checkout@v5
5959
with:
6060
ref: ${{ github.event.pull_request.head.sha }}
6161
- uses: nixbuild/nix-quick-install-action@v30
@@ -81,7 +81,7 @@ jobs:
8181
actions: write
8282
contents: read
8383
steps:
84-
- uses: actions/checkout@v4
84+
- uses: actions/checkout@v5
8585
with:
8686
ref: ${{ github.event.pull_request.head.sha }}
8787
- uses: nixbuild/nix-quick-install-action@v30
@@ -107,7 +107,7 @@ jobs:
107107
actions: write
108108
contents: read
109109
steps:
110-
- uses: actions/checkout@v4
110+
- uses: actions/checkout@v5
111111
with:
112112
ref: ${{ github.event.pull_request.head.sha }}
113113
- uses: nixbuild/nix-quick-install-action@v30
@@ -124,3 +124,22 @@ jobs:
124124
gc-max-store-size: 5G
125125
- name: Run Tests
126126
run: 'nix develop --command bash -c "cargo test"'
127+
128+
coverage:
129+
name: Run Coverage
130+
runs-on: ubuntu-24.04
131+
permissions:
132+
contents: read
133+
steps:
134+
- uses: actions/checkout@v5
135+
with:
136+
ref: ${{ github.event.pull_request.head.sha }}
137+
- uses: taiki-e/install-action@cargo-llvm-cov
138+
- name: Generate code coverage
139+
run: cargo llvm-cov --all-features --workspace --codecov --output-path codecov.json
140+
- name: Upload coverage to Codecov
141+
uses: codecov/codecov-action@v5
142+
with:
143+
token: ${{ secrets.CODECOV_TOKEN }} # not required for public repos
144+
files: codecov.json
145+
fail_ci_if_error: true

.github/workflows/prep-release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ jobs:
4747
GH_TOKEN: ${{ secrets.GH_PAT }}
4848

4949
steps:
50-
- uses: actions/checkout@v4
50+
- uses: actions/checkout@v5
5151
with:
5252
fetch-depth: 0
5353

.github/workflows/release-bins.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ jobs:
4242
attestations: write
4343
id-token: write
4444
steps:
45-
- uses: actions/checkout@v4
45+
- uses: actions/checkout@v5
4646
with:
4747
ref: ${{ github.ref }}
4848
- uses: nixbuild/nix-quick-install-action@v30

.github/workflows/release-container.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
attestations: write
3333
id-token: write
3434
steps:
35-
- uses: actions/checkout@v4
35+
- uses: actions/checkout@v5
3636
with:
3737
ref: ${{ github.ref }}
3838

.github/workflows/sync-develop.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ jobs:
5151
GH_TOKEN: ${{ secrets.GH_PAT }}
5252

5353
steps:
54-
- uses: actions/checkout@v4
54+
- uses: actions/checkout@v5
5555
with:
5656
fetch-depth: 0
5757
token: ${{ secrets.GH_PAT }}

.github/workflows/verify-changeset.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
name: Verify Changeset
22
on:
33
pull_request:
4+
types: [opened, reopened, synchronize, ready_for_review]
45
branches-ignore:
56
- main
67
- release/**
@@ -19,7 +20,7 @@ on:
1920

2021
jobs:
2122
verify-changeset:
22-
if: ${{ !contains(github.event.pull_request.labels.*.name, 'skip-changeset') && !startsWith(github.head_ref, 'sync/') && !startsWith(github.head_ref, 'conflict/') }}
23+
if: ${{ !contains(github.event.pull_request.labels.*.name, 'skip-changeset') && !startsWith(github.head_ref, 'sync/') && !startsWith(github.head_ref, 'conflict/') && !github.event.pull_request.draft }}
2324
name: Verify
2425
runs-on: ubuntu-24.04
2526
permissions:

CHANGELOG.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,34 @@ All notable changes to this project will be documented in this file.
44

55
This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
66

7+
# [0.8.0] - 2025-09-12
8+
9+
## 🚀 Features
10+
11+
### feat: Configuration for disabling authorization token passthrough - @swcollard PR #336
12+
13+
A new optional new MCP Server configuration parameter, `transport.auth.disable_auth_token_passthrough`, which is `false` by default, that when true, will no longer pass through validated Auth tokens to the GraphQL API.
14+
15+
## 🛠 Maintenance
16+
17+
### Configure Codecov with coverage targets - @DaleSeo PR #337
18+
19+
This PR adds `codecov.yml` to set up Codecov with specific coverage targets and quality standards. It helps define clear expectations for code quality. It also includes some documentation about code coverage in `CONTRIBUTING.md` and adds the Codecov badge to `README.md`.
20+
21+
### Implement Test Coverage Measurement and Reporting - @DaleSeo PR #335
22+
23+
This PR adds the bare minimum for code coverage reporting using [cargo-llvm-cov](https://crates.io/crates/cargo-llvm-cov) and integrates with [Codecov](https://www.codecov.io/). It adds a new `coverage` job to the CI workflow that generates and uploads coverage reporting in parallel with existing tests. The setup mirrors that of Router, except it uses `nextest` instead of the built-in test runner and CircleCI instead of GitHub Actions.
24+
25+
### chore: update RMCP dependency ([328](https://github.com/apollographql/apollo-mcp-server/issues/328))
26+
27+
Update the RMCP dependency to the latest version, pulling in newer specification changes.
28+
29+
### ci: Pin stable rust version ([Issue #287](https://github.com/apollographql/apollo-mcp-server/issues/287))
30+
31+
Pins the stable version of Rust to the current latest version to ensure backwards compatibility with future versions.
32+
33+
34+
735
# [0.7.5] - 2025-09-03
836

937
## 🐛 Fixes

CHANGELOG_SECTION.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# [0.8.0] - 2025-09-12
2+
3+
## 🚀 Features
4+
5+
### feat: Configuration for disabling authorization token passthrough - @swcollard PR #336
6+
7+
A new optional new MCP Server configuration parameter, `transport.auth.disable_auth_token_passthrough`, which is `false` by default, that when true, will no longer pass through validated Auth tokens to the GraphQL API.
8+
9+
## 🛠 Maintenance
10+
11+
### Configure Codecov with coverage targets - @DaleSeo PR #337
12+
13+
This PR adds `codecov.yml` to set up Codecov with specific coverage targets and quality standards. It helps define clear expectations for code quality. It also includes some documentation about code coverage in `CONTRIBUTING.md` and adds the Codecov badge to `README.md`.
14+
15+
### Implement Test Coverage Measurement and Reporting - @DaleSeo PR #335
16+
17+
This PR adds the bare minimum for code coverage reporting using [cargo-llvm-cov](https://crates.io/crates/cargo-llvm-cov) and integrates with [Codecov](https://www.codecov.io/). It adds a new `coverage` job to the CI workflow that generates and uploads coverage reporting in parallel with existing tests. The setup mirrors that of Router, except it uses `nextest` instead of the built-in test runner and CircleCI instead of GitHub Actions.
18+
19+
### chore: update RMCP dependency ([328](https://github.com/apollographql/apollo-mcp-server/issues/328))
20+
21+
Update the RMCP dependency to the latest version, pulling in newer specification changes.
22+
23+
### ci: Pin stable rust version ([Issue #287](https://github.com/apollographql/apollo-mcp-server/issues/287))
24+
25+
Pins the stable version of Rust to the current latest version to ensure backwards compatibility with future versions.
26+

CONTRIBUTING.md

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,4 +57,21 @@ It’s important that every piece of code in Apollo packages is reviewed by at l
5757
2. Simplicity. Is this the simplest way to achieve the intended goal? If there are too many files, redundant functions, or complex lines of code, suggest a simpler way to do the same thing. In particular, avoid implementing an overly general solution when a simple, small, and pragmatic fix will do.
5858
3. Testing. Please make sure that the tests ensure that the code won’t break when other stuff change around it. The error messages in the test should help identify what is broken exactly and how. The tests should test every edge case if possible. Please make sure you get as much coverage as possible.
5959
4. No unnecessary or unrelated changes. PRs shouldn’t come with random formatting changes, especially in unrelated parts of the code. If there is some refactoring that needs to be done, it should be in a separate PR from a bug fix or feature, if possible.
60-
5. Please run `cargo test`, `cargo clippy`, and `cargo fmt` prior to creating a PR.
60+
5. Please run `cargo test`, `cargo clippy`, and `cargo fmt` prior to creating a PR.
61+
62+
### Code Coverage
63+
64+
Apollo MCP Server uses comprehensive code coverage reporting to ensure code quality and test effectiveness.
65+
The project uses [cargo-llvm-cov](https://crates.io/crates/cargo-llvm-cov) for generating code coverage reports and [Codecov](https://www.codecov.io/) for coverage analysis and reporting. Coverage is automatically generated and reported on every pull request through GitHub Actions.
66+
67+
#### Coverage Targets
68+
69+
The project maintains the following coverage targets, configured in `codecov.yml`:
70+
71+
- **Project Coverage**: Automatically maintained - should increase overall coverage on each PR
72+
- **Patch Coverage**: 80% - requires 80% coverage on all new/modified code
73+
74+
These targets help ensure that:
75+
76+
- The overall codebase coverage doesn't decrease over time
77+
- New code is well-tested before being merged

0 commit comments

Comments
 (0)