Skip to content

Desktop import video #3680

Desktop import video

Desktop import video #3680

Triggered via pull request October 7, 2025 03:30
Status Failure
Total duration 7m 57s
Artifacts

ci.yml

on: pull_request
Detect Changes
7s
Detect Changes
Typecheck
1m 13s
Typecheck
Format (Biome)
8s
Format (Biome)
Format (Cargo)
10s
Format (Cargo)
Lint (Biome)
26s
Lint (Biome)
Matrix: Build Desktop
Clippy
1m 24s
Clippy
Verify Tauri plugin versions
0s
Verify Tauri plugin versions
Fit to window
Zoom out
Zoom in

Annotations

12 errors and 10 warnings
cannot find function `is_valid_video` in this scope: apps/desktop/src-tauri/src/import.rs#L23
error[E0425]: cannot find function `is_valid_video` in this scope --> apps/desktop/src-tauri/src/import.rs:23:9 | 23 | if !is_valid_video(&path) { | ^^^^^^^^^^^^^^ not found in this scope | help: consider importing this function | 1 + use crate::is_valid_video; |
failed to resolve: use of undeclared type `UploadResult`: apps/desktop/src-tauri/src/import.rs#L14
error[E0433]: failed to resolve: use of undeclared type `UploadResult` --> apps/desktop/src-tauri/src/import.rs:14:23 | 14 | return Ok(UploadResult::UpgradeRequired); | ^^^^^^^^^^^^ use of undeclared type `UploadResult` | help: consider importing this enum | 1 + use crate::UploadResult; |
failed to resolve: use of undeclared type `UploadResult`: apps/desktop/src-tauri/src/import.rs#L10
error[E0433]: failed to resolve: use of undeclared type `UploadResult` --> apps/desktop/src-tauri/src/import.rs:10:23 | 10 | return Ok(UploadResult::NotAuthenticated); | ^^^^^^^^^^^^ use of undeclared type `UploadResult` | help: consider importing this enum | 1 + use crate::UploadResult; |
failed to resolve: use of undeclared type `AuthStore`: apps/desktop/src-tauri/src/import.rs#L9
error[E0433]: failed to resolve: use of undeclared type `AuthStore` --> apps/desktop/src-tauri/src/import.rs:9:13 | 9 | AuthStore::set(&app, None).map_err(|e| e.to_string())?; | ^^^^^^^^^ use of undeclared type `AuthStore` | help: consider importing this struct through its public re-export | 1 + use crate::AuthStore; |
failed to resolve: use of undeclared type `AuthStore`: apps/desktop/src-tauri/src/import.rs#L8
error[E0433]: failed to resolve: use of undeclared type `AuthStore` --> apps/desktop/src-tauri/src/import.rs:8:30 | 8 | let Ok(Some(auth)) = AuthStore::get(&app) else { | ^^^^^^^^^ use of undeclared type `AuthStore` | help: consider importing this struct through its public re-export | 1 + use crate::AuthStore; |
cannot find type `UploadResult` in this scope: apps/desktop/src-tauri/src/import.rs#L5
error[E0412]: cannot find type `UploadResult` in this scope --> apps/desktop/src-tauri/src/import.rs:5:13 | 5 | ) -> Result<UploadResult, String> { | ^^^^^^^^^^^^ not found in this scope | help: consider importing this enum | 1 + use crate::UploadResult; |
cannot find type `UploadProgress` in this scope: apps/desktop/src-tauri/src/import.rs#L4
error[E0412]: cannot find type `UploadProgress` in this scope --> apps/desktop/src-tauri/src/import.rs:4:22 | 4 | channel: Channel<UploadProgress>, | ^^^^^^^^^^^^^^ not found in this scope | help: consider importing this struct | 1 + use crate::UploadProgress; |
cannot find type `Channel` in this scope: apps/desktop/src-tauri/src/import.rs#L4
error[E0412]: cannot find type `Channel` in this scope --> apps/desktop/src-tauri/src/import.rs:4:14 | 4 | channel: Channel<UploadProgress>, | ^^^^^^^ not found in this scope | help: consider importing one of these items | 1 + use crate::Channel; | 1 + use futures_intrusive::channel::Channel; | 1 + use tauri::ipc::Channel; |
cannot find type `PathBuf` in this scope: apps/desktop/src-tauri/src/import.rs#L3
error[E0412]: cannot find type `PathBuf` in this scope --> apps/desktop/src-tauri/src/import.rs:3:11 | 3 | path: PathBuf, | ^^^^^^^ not found in this scope | help: consider importing one of these structs | 1 + use crate::PathBuf; | 1 + use std::path::PathBuf; |
cannot find type `AppHandle` in this scope: apps/desktop/src-tauri/src/import.rs#L2
error[E0412]: cannot find type `AppHandle` in this scope --> apps/desktop/src-tauri/src/import.rs:2:10 | 2 | app: AppHandle, | ^^^^^^^^^ not found in this scope | help: consider importing one of these structs | 1 + use crate::AppHandle; | 1 + use tauri::AppHandle; |
Build Desktop (aarch64-apple-darwin, macos-latest)
Process completed with exit code 1.
Build Desktop (x86_64-pc-windows-msvc, windows-latest)
Process completed with exit code 1.
unused variable: `check_skip_send`: crates/recording/src/sources/screen_capture/macos.rs#L144
warning: unused variable: `check_skip_send` --> crates/recording/src/sources/screen_capture/macos.rs:144:33 | 144 | ... let check_skip_send = || { | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_check_skip_send`
unused variable: `tasks`: crates/recording/src/output_pipeline/ffmpeg.rs#L42
warning: unused variable: `tasks` --> crates/recording/src/output_pipeline/ffmpeg.rs:42:9 | 42 | tasks: &mut TaskPool, | ^^^^^ help: if this is intentional, prefix it with an underscore: `_tasks` | = note: `#[warn(unused_variables)]` on by default
unneeded `return` statement: crates/enc-ffmpeg/src/video/h264.rs#L193
warning: unneeded `return` statement --> crates/enc-ffmpeg/src/video/h264.rs:193:13 | 193 | return; | ^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 192 - tracing::error!("Failed to send EOF to encoder: {:?}", e); 193 - return; 192 + tracing::error!("Failed to send EOF to encoder: {:?}", e); |
unneeded `return` statement: crates/enc-ffmpeg/src/video/h264.rs#L186
warning: unneeded `return` statement --> crates/enc-ffmpeg/src/video/h264.rs:186:13 | 186 | return; | ^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 185 - tracing::error!("Failed to send frame to encoder: {:?}", e); 186 - return; 185 + tracing::error!("Failed to send frame to encoder: {:?}", e); |
manual implementation of an assign operation: crates/enc-ffmpeg/src/audio/buffered_resampler.rs#L92
warning: manual implementation of an assign operation --> crates/enc-ffmpeg/src/audio/buffered_resampler.rs:92:13 | 92 | next_pts = next_pts + samples as i64; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `next_pts += samples as i64` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern = note: `#[warn(clippy::assign_op_pattern)]` on by default
redundant pattern matching, consider using `is_some()`: crates/enc-ffmpeg/src/audio/buffered_resampler.rs#L78
warning: redundant pattern matching, consider using `is_some()` --> crates/enc-ffmpeg/src/audio/buffered_resampler.rs:78:19 | 78 | while let Some(_) = self.resampler.delay() { | ----------^^^^^^^------------------------- help: try: `while self.resampler.delay().is_some()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching = note: `#[warn(clippy::redundant_pattern_matching)]` on by default
this `if` statement can be collapsed: crates/enc-ffmpeg/src/audio/buffered_resampler.rs#L59
warning: this `if` statement can be collapsed --> crates/enc-ffmpeg/src/audio/buffered_resampler.rs:59:9 | 59 | / if let Some(min_next_pts) = self.min_next_pts { 60 | | if let Some(pts) = frame.pts() { 61 | | frame.set_pts(Some(pts.max(min_next_pts))); 62 | | } 63 | | } | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if = note: `#[warn(clippy::collapsible_if)]` on by default help: collapse nested if block | 59 ~ if let Some(min_next_pts) = self.min_next_pts 60 ~ && let Some(pts) = frame.pts() { 61 | frame.set_pts(Some(pts.max(min_next_pts))); 62 ~ } |
unneeded `return` statement: crates/enc-ffmpeg/src/audio/buffered_resampler.rs#L51
warning: unneeded `return` statement --> crates/enc-ffmpeg/src/audio/buffered_resampler.rs:51:9 | 51 | return remaining_samples; | ^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return = note: `#[warn(clippy::needless_return)]` on by default help: remove `return` | 51 - return remaining_samples; 51 + remaining_samples |
field `config` is never read: crates/enc-ffmpeg/src/video/h264.rs#L142
warning: field `config` is never read --> crates/enc-ffmpeg/src/video/h264.rs:142:5 | 139 | pub struct H264Encoder { | ----------- field in this struct ... 142 | config: VideoInfo, | ^^^^^^ | = note: `#[warn(dead_code)]` on by default
unused import: `tracing::trace`: crates/scap-targets/src/platform/macos.rs#L23
warning: unused import: `tracing::trace` --> crates/scap-targets/src/platform/macos.rs:23:5 | 23 | use tracing::trace; | ^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default