Audit CF for cyclomatic complexity compliance
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
- Tipo di issue
- Refactoring
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- c
- Ambito
- embedded-iot
Direzione di ricerca
Inizia esaminando cf_cmd.c:CF_CmdWriteQueue e cf_cfdp_r.c:CF_CFDP_R_Tick, concentrandoti sui rami che producono valori di complessità ciclomatica pari a 18 e 17. Esamina il comportamento del software di volo circostante prima di semplificare una delle due funzioni. Il lavoro è completato quando entrambe le funzioni rispettano la raccomandazione di NPR 7150.2D relativa a una complessità ciclomatica pari o inferiore a 15.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Checklist (Please check before submitting)
[x ] I reviewed the [Contributing Guide](https://github.com/nasa/FM/blob/main/CONTRIBUTING.md).
[x ] I reviewed the [README file](https://github.com/nasa/FM/blob/main/README.md) to see if the feature is in the major future work.
[x ] I performed a cursory search to see if the feature request is relevant, not redundant, nor in conflict with other tickets.
Is your feature request related to a problem? Please describe.
NASA guidelines in NPR 7150.2D recommends maintaining a cyclomatic complexity (cc) in software, in particular flight software of 15 or less.
cf_cmd.c:CF_CmdWriteQueue (cc of 18) and cf_cfdp_r.c:CF_CFDP_R_Tick (cc of 17) unnecessarily violate the recommendation of a cyclomatic complexity of 15 or less.
Describe the solution you'd like
Audit cf_cmd.c:CF_CmdWriteQueue and cf_cfdp_r.c:CF_CFDP_R_Tick to see if functions would benefit from simplification such that they comply with NPR 7150.2D recommendation.
Requester Info
Dan Knutsen
- Lingua principale
- C
- Stelle
- 122
- Fork
- 79
- Merge medio
- 1g 15h
- PR unite (30g)
- 4
Preparare l'ambiente
- 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 nasa/CF
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
Assert checks non-existent variable (`pt`) in `CF_CFDP_ProcessPlaybackDirectory()`Forse di nuovo libera Una pull request per questa issue è stata chiusa senza essere unita. Apertainvalid
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 68/100
-
Transaction priority sorted incorrectlyForse già presa @dmknutsen l’ha presa 893 giorni fa. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
CF_Chunks_Insert drops all data after the chunk list fills, so a lossy Class 2 upload is mostly resentForse già presa @SpaceOceanCorp l’ha presa oggi. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
Issue simili
-
Memory leak: "Add to Playlist" (`CMD_EVENT_ADD_TO_PLAYLIST`) never frees the playlist it loadsAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno
-
Signed/unsigned mix in the EOCD backward scan rejects valid archives with a 65535-byte commentAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
area: recompiler area: runtime kind: bug preview-effort: small priority: low
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Prism::Translation::Parser raises NoMethodError for a method with a &nil parameter and a bodyForse già presa @bbatsov l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno