fix(coverage): exclude agntcy-slim-rpc from workspace --all-features coverage pass - #1924
Merged
Conversation
…s alpha.5
Version bumps (slim):
- data-plane, controller, channel-manager install pages: 2.0.0-alpha.7 → 2.0.0-alpha.8
- cli install + slim-howto download URLs: slimctl-v2.0.0-alpha.7 → slimctl-v2.0.0-alpha.8
- data-plane/config.md schema links: slim-v2.0.0-alpha.7 → slim-v2.0.0-alpha.8
- deploy/docker.md: 1.4.0 → 2.0.0-alpha.8 for all Docker images
- slimrpc/tutorial-serve.md Rust Cargo.toml: agntcy-slim 2.0.0-alpha.7 → 2.0.0-alpha.8
Version bumps (slim-bindings):
- slim-howto.md Go/Java/Kotlin: 2.0.0-alpha.9 → 2.0.0-alpha.5
- sdk/install.md Python pyproject.toml: ~=1.0 → ==2.0.0a5
- sdk/install.md Kotlin build.gradle.kts: 1.2.0 → 2.0.0-alpha.5
- tutorial-connect.md docs.rs API link: 2.0.0-alpha.9 → 2.0.0-alpha.5
Code fixes (found by running examples against slim-bindings 2.0.0a5):
- Shared secret too short: "my-shared-secret" (16 chars) fails HMAC minimum
length check; replaced with "my-shared-secret-replace-in-prod" (32 chars)
across all languages in tutorial-app.md, tutorial-persistence.md, and
putting-it-together.md
- Python SessionConfig missing required metadata={} field; added to both the
P2P and group session blocks in tutorial-session.md
- Python MlsSettings missing max_seen_control_message_ids_size=None; added
to both session blocks in tutorial-session.md
- Group session Python: app.create_session() (sync, blocks event loop) →
await app.create_session_async() in tutorial-session.md
- Persistence Python: create_app_with_persistence_async() panics with Tokio
reactor error; changed to synchronous create_app_with_persistence() and
restore_sessions() in tutorial-persistence.md
Other fixes:
- slim-howto.md .NET package: Agntcy.Slim.Bindings → Agntcy.Slim
- tutorial-session.md Java examples link: tree/main/kotlin/examples →
tree/main/java/examples (wrong directory)
…runtime create_app_with_persistence_async and restore_sessions_async both call into code that invokes tokio::spawn internally (the message-processing loop in bootstrap_app and Timer::start in the session layer). When these functions are reached from a UniFFI async context the calling thread has no Tokio reactor set, so tokio::spawn panics with "there is no reactor running". Fix mirrors what create_session_async already does: wrap the work in get_runtime().spawn() so the future executes on the managed Tokio runtime where a reactor is always present. The web build is unchanged — it uses cfg gates to fall back to the direct await path. Also restore the Python tutorial examples to use the async variants now that the underlying panic is fixed. Signed-off-by: Mauro Sardara <msardara@cisco.com>
…coverage pass Mirror the clippy fix: exclude agntcy-slim-rpc and agntcy-slim-bindings from the workspace --all-features llvm-cov run, add separate targeted passes for each feature combination, then merge into a single lcov report.
Apply the same exclusion pattern already used in clippy and test:coverage: exclude agntcy-slim-rpc from the workspace --all-features pass (which activates the incompatible uniffi+web combination) and add two targeted passes — lib-only with all features, all targets with uniffi only. Same change applied to test:build for consistency.
The web feature was added to agntcy-slim-rpc to "synchronize" with agntcy-slim-bindings, but it was never a real build surface for rpc (the slim-bindings-ffi crate only passes --features uniffi to it). Its presence caused --all-features to activate the incompatible uniffi+web combination, breaking workspace test and lint runs. Remove the web feature and all the cfg guards it introduced in lib.rs and server.rs. Now --all-features on agntcy-slim-rpc only activates uniffi, which compiles and tests correctly. Simplify the test, test:build, clippy, and test:coverage tasks back to single workspace-wide commands that only exclude agntcy-slim-bindings.
--all-features on agntcy-slim-bindings works fine on a native host: web is the only non-default feature and it compiles cleanly alongside the native target-gated dependencies. Collapse clippy, test, test:build, and test:coverage back to single unconditional workspace commands.
--all-features activates slim-bindings' web feature which hides get_runtime, breaking rpc's ffi module. The web variant is already tested on the actual wasm32 target via test:wasm. Drop --all-features from the defaults in clippy, test, test:build, and test:coverage. Also remove blank lines between doc comments and fn signatures left behind by the earlier cfg-attribute removal in server.rs.
msardara
force-pushed
the
docs/fix-tutorials-alpha8
branch
from
July 31, 2026 16:20
b45e76b to
c7a605f
Compare
micpapal
approved these changes
Jul 31, 2026
Merged
msardara
pushed a commit
that referenced
this pull request
Jul 31, 2026
## 🤖 New release * `agntcy-slim-version`: 2.0.0-alpha.9 -> 2.0.0-alpha.10 * `agntcy-slim`: 2.0.0-alpha.9 -> 2.0.0-alpha.10 * `agntcy-slim-channel-manager`: 2.0.0-alpha.9 -> 2.0.0-alpha.10 * `agntcy-slim-control-plane`: 2.0.0-alpha.9 -> 2.0.0-alpha.10 * `agntcy-slim-rpc`: 2.0.0-alpha.9 -> 2.0.0-alpha.10 (✓ API compatible changes) * `agntcy-slimctl`: 2.0.0-alpha.9 -> 2.0.0-alpha.10 * `agntcy-slim-auth`: 0.14.2 -> 0.14.3 * `agntcy-slim-config`: 0.14.0 -> 0.14.1 * `agntcy-slim-proto`: 0.5.1 -> 0.5.2 * `agntcy-slim-tracing`: 0.4.10 -> 0.4.11 * `agntcy-slim-datapath`: 0.17.1 -> 0.17.2 * `agntcy-slim-mls`: 0.3.1 -> 0.3.2 * `agntcy-slim-session`: 0.7.1 -> 0.7.2 * `agntcy-slim-signal`: 0.1.17 -> 0.1.18 * `agntcy-slim-controller`: 0.12.1 -> 0.12.2 * `agntcy-slim-service`: 0.12.1 -> 0.12.2 * `agntcy-slim-bindings`: 2.0.0-alpha.11 -> 2.0.0-alpha.12 <details><summary><i><b>Changelog</b></i></summary><p> ## `agntcy-slim-version` <blockquote> ## [1.3.0](https://github.com/agntcy/slim/releases/tag/slim-version-v1.3.0) - 2026-03-20 ### Added - add agntcy-slim-version crate as single source of truth for version and build info ([#1360](#1360)) </blockquote> ## `agntcy-slim` <blockquote> ## [2.0.0-alpha.8](slim-v2.0.0-alpha.7...slim-v2.0.0-alpha.8) - 2026-07-29 ### Other - rename group in domain ([#1891](#1891)) </blockquote> ## `agntcy-slim-channel-manager` <blockquote> ## [2.0.0-alpha.8](slim-channel-manager-v2.0.0-alpha.7...slim-channel-manager-v2.0.0-alpha.8) - 2026-07-29 ### Added - *(channel-manager)* add storage ([#1901](#1901)) - *(bindings)* expose session close/rejoin ([#1896](#1896)) </blockquote> ## `agntcy-slim-control-plane` <blockquote> ## [2.0.0-alpha.9](slim-control-plane-v2.0.0-alpha.8...slim-control-plane-v2.0.0-alpha.9) - 2026-07-31 ### Added - add control-plane side override of node connection data ([#1913](#1913)) </blockquote> ## `agntcy-slim-rpc` <blockquote> ## [2.0.0-alpha.10](slim-rpc-v2.0.0-alpha.9...slim-rpc-v2.0.0-alpha.10) - 2026-07-31 ### Fixed - *(coverage)* exclude agntcy-slim-rpc from workspace --all-features coverage pass ([#1924](#1924)) </blockquote> ## `agntcy-slimctl` <blockquote> ## [2.0.0-alpha.9](slimctl-v2.0.0-alpha.8...slimctl-v2.0.0-alpha.9) - 2026-07-31 ### Added - add control-plane side override of node connection data ([#1913](#1913)) </blockquote> ## `agntcy-slim-auth` <blockquote> ## [0.14.3](slim-auth-v0.14.2...slim-auth-v0.14.3) - 2026-07-31 ### Other - updated the following local packages: agntcy-slim-version </blockquote> ## `agntcy-slim-config` <blockquote> ## [0.14.1](slim-config-v0.14.0...slim-config-v0.14.1) - 2026-07-31 ### Other - updated the following local packages: agntcy-slim-version, agntcy-slim-auth </blockquote> ## `agntcy-slim-proto` <blockquote> ## [0.5.2](slim-proto-v0.5.1...slim-proto-v0.5.2) - 2026-07-31 ### Other - updated the following local packages: agntcy-slim-version, agntcy-slim-config </blockquote> ## `agntcy-slim-tracing` <blockquote> ## [0.4.11](slim-tracing-v0.4.10...slim-tracing-v0.4.11) - 2026-07-31 ### Other - updated the following local packages: agntcy-slim-version, agntcy-slim-config </blockquote> ## `agntcy-slim-datapath` <blockquote> ## [0.17.2](slim-datapath-v0.17.1...slim-datapath-v0.17.2) - 2026-07-31 ### Other - updated the following local packages: agntcy-slim-version, agntcy-slim-config, agntcy-slim-proto, agntcy-slim-tracing </blockquote> ## `agntcy-slim-mls` <blockquote> ## [0.3.2](slim-mls-v0.3.1...slim-mls-v0.3.2) - 2026-07-31 ### Other - updated the following local packages: agntcy-slim-version, agntcy-slim-auth </blockquote> ## `agntcy-slim-session` <blockquote> ## [0.7.2](slim-session-v0.7.1...slim-session-v0.7.2) - 2026-07-31 ### Other - updated the following local packages: agntcy-slim-version, agntcy-slim-auth, agntcy-slim-datapath, agntcy-slim-mls </blockquote> ## `agntcy-slim-signal` <blockquote> ## [0.1.18](slim-signal-v0.1.17...slim-signal-v0.1.18) - 2026-07-31 ### Other - updated the following local packages: agntcy-slim-version </blockquote> ## `agntcy-slim-controller` <blockquote> ## [0.12.2](slim-controller-v0.12.1...slim-controller-v0.12.2) - 2026-07-31 ### Other - updated the following local packages: agntcy-slim-version, agntcy-slim-auth, agntcy-slim-config, agntcy-slim-proto, agntcy-slim-tracing, agntcy-slim-datapath, agntcy-slim-session, agntcy-slim-signal </blockquote> ## `agntcy-slim-service` <blockquote> ## [0.12.2](slim-service-v0.12.1...slim-service-v0.12.2) - 2026-07-31 ### Other - updated the following local packages: agntcy-slim-version, agntcy-slim-auth, agntcy-slim-config, agntcy-slim-datapath, agntcy-slim-mls, agntcy-slim-session, agntcy-slim-controller </blockquote> ## `agntcy-slim-bindings` <blockquote> ## [2.0.0-alpha.12](slim-bindings-v2.0.0-alpha.11...slim-bindings-v2.0.0-alpha.12) - 2026-07-31 ### Other - updated the following local packages: agntcy-slim-version, agntcy-slim-version, agntcy-slim-version, agntcy-slim, agntcy-slim-auth, agntcy-slim-auth, agntcy-slim-config, agntcy-slim-config, agntcy-slim-tracing, agntcy-slim-datapath, agntcy-slim-datapath, agntcy-slim-session, agntcy-slim-session, agntcy-slim-signal, agntcy-slim-controller, agntcy-slim-service, agntcy-slim-service </blockquote> </p></details> --- This PR was generated with [release-plz](https://github.com/release-plz/release-plz/).
Open
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Mirror the clippy fix: exclude agntcy-slim-rpc and agntcy-slim-bindings from
the workspace --all-features llvm-cov run, add separate targeted passes for
each feature combination, then merge into a single lcov report.
Type of Change
Checklist