rust/bt-mcs: Migrate off try_recv and pin futures-channel

Pin futures-channel = "=0.3.31" to match the version vendored and
pinned by Fuchsia.

`UnboundedReceiver::try_recv` does not exist in 0.3.31.

Because Cargo.lock is gitignored in this
repository, local and CI builds resolved newer versions (0.3.34) from
crates.io, masking the compilation failure that occurs when vendored
in Fuchsia.

Bug: 540400364
Test: cargo test -p bt-mcs, ./presubmit.sh
Change-Id: Ibf55456fcbd991c98c9729053d7cccaf8cf63c17
Reviewed-on: https://bluetooth-review.googlesource.com/c/bluetooth/+/3920
3 files changed
tree: 16d3bc14b744b60d6660f444d9bd82bd3736c24a
  1. .agents/
  2. docs/
  3. infra/
  4. rust/
  5. .gitignore
  6. AUTHORS
  7. CONTRIBUTING.md
  8. GEMINI.md
  9. LICENSE
  10. OWNERS
  11. PATENTS
  12. presubmit.sh
  13. README.md
README.md

Bluetooth Shared Libraries

What is this?

This is a repository for shared libraries and tools that can be useful for multiple Bluetooth stacks.

These tools and libraries are meant to be:

  • Stack-agnostic and platform-agnostic
  • Implement a useful subset of a published Bluetooth specification.

It has been started as a repository for developing Rust crates but can be easily expanded to include libraries and tools written in other languages.

What is this not?

It is not a full Bluetooth stack. Google has two officially open-source Bluetooth stacks:

Structure

  • rust - Rust Crates
  • docs - General documentation (documentation for each library/tool is included in their directories)