Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 8 additions & 7 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,11 @@ jobs:
tests:
name: Tests
runs-on: ${{ matrix.os }}
continue-on-error: ${{ matrix.toolchain == 'nightly' }}
strategy:
fail-fast: false
matrix:
os: [macos-latest, windows-latest, ubuntu-latest]
toolchain: [stable, beta, nightly]
toolchain: ["1.87"]
include:
- os: macos-latest
MACOS: true
Expand All @@ -35,15 +34,17 @@ jobs:
- name: Install ${{ matrix.toolchain }} toolchain
run: rustup toolchain install ${{ matrix.toolchain }} && rustup default ${{ matrix.toolchain }}

- run: |
rustup component add clippy
cargo clippy --all-features -- -D warnings
if: matrix.toolchain == 'stable' && matrix.os == 'ubuntu-latest'
- name: Install stable toolchain for clippy
run: rustup toolchain install stable
if: matrix.os == 'ubuntu-latest'

- run: cargo +stable clippy --all-features -- -D warnings
if: matrix.os == 'ubuntu-latest'

- run: |
rustup component add rustfmt
cargo fmt --all -- --check
if: matrix.toolchain == 'stable' && matrix.os == 'ubuntu-latest'
if: matrix.os == 'ubuntu-latest'

- run: cargo test --all-targets
- run: cargo test --all-targets --all-features
Expand Down
1 change: 1 addition & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ repository = "https://github.com/RustAudio/rodio"
documentation = "https://docs.rs/rodio"
exclude = ["assets/**", "tests/**"]
edition = "2021"
rust-version = "1.87"

[features]
# Default feature set provides audio playback and common format support
Expand Down
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,10 @@ Rodio playback works in environments supported by [cpal](https://github.com/Rust

The CPU of the target system should have hardware support for 32-bit floating point (`f32`), and atomic operations that are at least 32 bit wide. Without these the CPU may not be fast enough to keep up with real-time.

### Minimum Supported Rust Version (MSRV)

Rodio requires Rust 1.87 or later.

## Dependencies (Linux only)

Rodio uses `cpal` library to send audio to the OS for playback. ALSA development files are needed to build `cpal` on Linux. These are provided as part of the `libasound2-dev` package on Debian and Ubuntu distributions and `alsa-lib-devel` on Fedora.
Expand Down
4 changes: 3 additions & 1 deletion flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@
inputs: inputs.utils.lib.eachDefaultSystem (
system: let
pkgs = inputs.nixpkgs.legacyPackages.${system}.extend inputs.rust-overlay.overlays.default;
rust = pkgs.rust-bin.fromRustupToolchainFile ./rust-toolchain.toml;
rust = pkgs.rust-bin.stable."1.87.0".default.override {
extensions = [ "rust-src" "rust-analyzer" ];
};
in {
devShell = pkgs.mkShell {
nativeBuildInputs = with pkgs; [
Expand Down
10 changes: 0 additions & 10 deletions rust-toolchain.toml

This file was deleted.