refactor(mqtt): replace the too_many_arguments suppressions in embedded/ with a context struct
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
- Tipo di issue
- Refactoring
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- rust
- Ambito
- embedded-iot
Direzione di ricerca
Read the seven clippy::too_many_arguments sites listed in aimdb-mqtt-connector/src/embedded/session_loop.rs, session.rs, tls.rs, and mod.rs, then trace which parameters they share. Group the common parameters into one or two context structs and remove the suppressions that are no longer needed. Run make test-embedded and the bench gate; done means the checks pass without increasing future sizes on the embedded target.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problem
aimdb-mqtt-connector/src/embedded/ suppresses clippy::too_many_arguments in seven places:
session_loop.rs:81,:152,:310session.rs:50tls.rs:317mod.rs:370,:428
The same group of parameters is evidently threaded through the session entry points, the session loop and the TLS path. That usually means a missing "session context" struct: adding one more piece of state today means touching every signature in the chain.
The crate also has the most features in the workspace (17 in aimdb-mqtt-connector/Cargo.toml), and mod.rs:489 / :516 carry #[allow(unreachable_code)], so this is the connector where configuration complexity is highest.
Suggested work
- Identify the parameters common to those seven functions and group them into one or two structs (e.g. connection config vs. per-session buffers/channels), passed by reference.
- Remove the
too_many_argumentsallows that become unnecessary. - Check that the change does not grow future sizes on the embedded target (
make test-embeddedand the bench gate).
Notes
Found from the lint suppressions alone at d9c7be0; I did not trace each signature, so how many of the seven collapse onto the same struct is to be confirmed when doing the work.
- Lingua principale
- Rust
- Stelle
- 101
- Fork
- 20
- Merge medio
- 2h 33m
- PR unite (30g)
- 90
Preparare l'ambiente
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di aimdb-dev/aimdb
-
🏷️ good first issue enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
I maintainer di solito rispondono entro 1 giorno
-
documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di aimdb-dev/aimdb
Issue simili
-
Panic on live viewport resize when unstyled elements exist in display: none subtreeForse già presa @GoCoder7 l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
DioxusLabs/blitz#1488 ·
I maintainer di solito rispondono entro 1 giorno
-
S-Needs triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
vectordotdev/vrl#2042 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno