GCWing / GCWing/OpenBitFun

[Bug]: unused_mut warning for the browser webview builder in release builds

Cerrado Apto para principiantes
#2,581 0 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Rust
Estrellas
2.3k
Forks
231
Merge medio
2 h 49 min
PR fusionados (30 d)
589

Descripción

**Summary**

The desktop crate's browser webview creation path emits an `unused_mut` warning in Windows release builds.

`cargo check --release -p bitfun-desktop` on main reports:

- `src/apps/desktop/src/api/browser_api.rs:145:9` — `unused_mut`: `let mut builder` in `browser_webview_create`, with the note "variable does not need to be mutable".

The `WebviewBuilder` binding is declared `mut` unconditionally, but its only mutating call — `builder.devtools(true)` — is compiled solely under `#[cfg(any(debug_assertions, feature = "devtools"))]`. In a release build without the devtools feature the mutation is compiled out, so the `mut` requirement disappears and the compiler flags the binding. Debug and devtools-enabled builds do not warn, which is why the warning only shows up in release-mode checks.

**Area**

Desktop app

**Reproduction or evidence**

1. On Windows, check out main and run `cargo check --release -p bitfun-desktop`.
2. Observe: `warning: variable does not need to be mutable --> src\apps\desktop\src\api\browser_api.rs:145:9`.
3. Run `cargo check -p bitfun-desktop` (dev profile): the same binding compiles without the warning, since the cfg block is active there.

A scoped fix exists and is ready to submit: shadow the builder inside the cfg block (immutable outer binding + local `mut` rebind), which removes the warning in every build configuration with zero behavior change. PR to follow referencing this issue.

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Start in src/apps/desktop/src/api/browser_api.rs around line 145, in browser_webview_create, and inspect how the cfg-gated devtools call affects the WebviewBuilder binding. Run cargo check --release -p bitfun-desktop on Windows, then verify the unused_mut warning is gone without changing debug or devtools-enabled behavior.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
rust
Área
desktop
Tipo de issue
Error
Dificultad
1/5
Tiempo estimado
Menos de una hora
Estado de actividad
Activo
Claridad
Bien especificado
Aptitud para principiantes
88/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.