Compare commits
7
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
660261a9a5 | ||
|
|
3a74fd0230 | ||
|
|
2dbb1ea316 | ||
|
|
c902db2e90 | ||
|
|
83e5881768 | ||
|
|
8424b44dec | ||
|
|
33e49a8ca7 |
@@ -0,0 +1,42 @@
|
||||
name: CI
|
||||
|
||||
# Runs on the self-hosted host-mode runner on the desktop (label `arch`). The
|
||||
# gitbutter VPS only queues the job; all compile/test compute happens locally.
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
pull_request:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
check:
|
||||
runs-on: arch
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Toolchain versions
|
||||
run: |
|
||||
rustc --version
|
||||
cargo --version
|
||||
cargo clippy --version
|
||||
cargo deny --version
|
||||
cargo audit --version
|
||||
|
||||
- name: Format check
|
||||
run: cargo fmt --all -- --check
|
||||
|
||||
- name: Clippy (all targets, warnings as errors)
|
||||
run: cargo clippy --all-targets -- -D warnings
|
||||
|
||||
- name: Tests
|
||||
run: cargo test --all-targets
|
||||
|
||||
- name: Doc tests
|
||||
run: cargo test --doc
|
||||
|
||||
- name: cargo-deny (advisories, bans, licenses, sources)
|
||||
run: cargo deny check
|
||||
|
||||
- name: cargo-audit
|
||||
run: cargo audit
|
||||
Generated
+4
-4
@@ -200,9 +200,9 @@ checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000"
|
||||
|
||||
[[package]]
|
||||
name = "anyhow"
|
||||
version = "1.0.102"
|
||||
version = "1.0.103"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c"
|
||||
checksum = "2a4385e2e34eb35d6b3efe798b9eb88096925d87726c0798709bf56d9ed84af3"
|
||||
|
||||
[[package]]
|
||||
name = "arbitrary"
|
||||
@@ -3682,9 +3682,9 @@ checksum = "6b947ae49db0d222b1dbc6b113ce7248a3fc3a6ca21b696717bfc000ba4484d8"
|
||||
|
||||
[[package]]
|
||||
name = "memmap2"
|
||||
version = "0.9.10"
|
||||
version = "0.9.11"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "714098028fe011992e1c3962653c96b2d578c4b4bce9036e15ff220319b1e0e3"
|
||||
checksum = "d1219ed1b7f229ee7104d281dd01d6802fe28bb6e95d292942c4daacdeb798c0"
|
||||
dependencies = [
|
||||
"libc",
|
||||
]
|
||||
|
||||
+9
-4
@@ -1100,7 +1100,10 @@ fn effective_background_bytes(
|
||||
}
|
||||
|
||||
pub fn run_gui() -> iced::Result {
|
||||
crate::log_msg(&format!("PeerSpeak v{} starting", env!("CARGO_PKG_VERSION")));
|
||||
crate::log_msg(&format!(
|
||||
"PeerSpeak v{} starting",
|
||||
env!("CARGO_PKG_VERSION")
|
||||
));
|
||||
// Restore the last window size (saved on close). Position is restored too,
|
||||
// but only on X11 — Wayland's xdg-shell gives clients no way to set their own
|
||||
// position, so we center there and leave placement to the compositor.
|
||||
@@ -5243,9 +5246,11 @@ fn view(state: &AppState) -> Element<'_, AppMessage> {
|
||||
}
|
||||
settings_nav = settings_nav
|
||||
.push(iced::widget::Space::new().height(iced::Length::Fill))
|
||||
.push(text(format!("PeerSpeak v{}", env!("CARGO_PKG_VERSION")))
|
||||
.size(11)
|
||||
.color(color_subtext));
|
||||
.push(
|
||||
text(format!("PeerSpeak v{}", env!("CARGO_PKG_VERSION")))
|
||||
.size(11)
|
||||
.color(color_subtext),
|
||||
);
|
||||
let settings_nav = container(settings_nav)
|
||||
.padding(12)
|
||||
.width(iced::Length::Fixed(220.0))
|
||||
|
||||
+13
-3
@@ -380,7 +380,11 @@ impl MultitrackRecorder {
|
||||
let batch = CycleBatch {
|
||||
new_peers: pending.new_peers,
|
||||
mic_frame,
|
||||
mix_frame: if self.with_mix { pending.mix_frame } else { None },
|
||||
mix_frame: if self.with_mix {
|
||||
pending.mix_frame
|
||||
} else {
|
||||
None
|
||||
},
|
||||
peer_frames: pending.peer_frames,
|
||||
};
|
||||
match self.batch_tx.try_send(batch) {
|
||||
@@ -560,9 +564,15 @@ mod tests {
|
||||
assert_eq!(state.cycles_written, 3);
|
||||
assert_eq!(state.mic.samples.len(), 3 * frame);
|
||||
assert_eq!(state.mix.as_ref().unwrap().samples.len(), 3 * frame);
|
||||
assert_eq!(&state.mix.as_ref().unwrap().samples[2 * frame..], &[0, 0, 0]);
|
||||
assert_eq!(
|
||||
&state.mix.as_ref().unwrap().samples[2 * frame..],
|
||||
&[0, 0, 0]
|
||||
);
|
||||
assert_eq!(state.peers.get(&early).unwrap().samples.len(), 3 * frame);
|
||||
assert_eq!(&state.peers.get(&early).unwrap().samples[2 * frame..], &[2, 2, 2]);
|
||||
assert_eq!(
|
||||
&state.peers.get(&early).unwrap().samples[2 * frame..],
|
||||
&[2, 2, 2]
|
||||
);
|
||||
assert_eq!(
|
||||
state.peers.get(&late).unwrap().samples,
|
||||
vec![0, 0, 0, 0, 0, 0, 7, 7, 7],
|
||||
|
||||
Reference in New Issue
Block a user