Misuse of quit() in api.py; Use of SystemExit(1) + narrow exception handling
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 1/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 50/100
Direzione di ricerca
Inizia in face_recognition/api.py, intorno alle righe 8-13, dove viene importato face_recognition_models e il gestore generico delle eccezioni stampa le istruzioni per l'installazione prima di chiamare quit(). Restringi la gestione delle eccezioni e sostituisci il comportamento di uscita come richiesto. Il lavoro è completato quando le dipendenze mancanti mostrano ancora il messaggio di installazione indicato e il modulo termina con lo stato 1 senza nascondere errori di importazione non correlati.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
In face_recognition/api.py:
- The try/except block on lines 8-13 catches a broad Exception and then calls quit. Code below:
try:
import face_recognition_models
except Exception:
print("Please install face_recognition_models with this command before using face_recognition:\n")
print("pip install git+https://github.com/ageitgey/face_recognition_models")
quit()
Using ImportError instead of except Exception can prevent masking of unrelated errors, like syntax errors, that may happen during an import. Since the block calls an import and specifically checks for missing dependencies, use of ImportError is more focused on the codes specific purpose.
For the quit() --> SystemExit(1) suggestion, quit() isn't guaranteed to exist in all execution envs. Raising SystemExit(1) is more universal and serves the same purpose, preventing any disruption in existing code. SystemExit(1) also has the benefit of not needing an import to function.
- Lingua principale
- Python
- Stelle
- 56.8k
- Fork
- 13.7k
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Nessun 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 ageitgey/face_recognition
-
CLI image-folder regex missing end-anchor picks up non-image files (foo.jpg.bak, notes.jpegdoc)Forse già presa @Vic-41148 l’ha presa 62 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
ageitgey/face_recognition#1678 ·
-
Honest-FeedbackAperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
ageitgey/face_recognition#1669 · 3 commenti ·
-
AiSoulAperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
ageitgey/face_recognition#1668 · 1 commento ·
-
Logical Error: Image display (.show()) placed inside loop, causing multiple windows for multi-face imagesForse già presa @pavansai018 l’ha presa 316 giorni fa. Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 55/100
ageitgey/face_recognition#1666 ·
-
Multiprocessing output can be interleaved/jumbled due to direct print calls in worker processAperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 76/100
ageitgey/face_recognition#1665 · 2 commenti ·
Tutte le issue di ageitgey/face_recognition
Issue simili
-
bug documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
awslabs/visual-asset-management-system#514 ·
I maintainer di solito rispondono entro 1 giorno
-
backend bug spec:REQ-053
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
nolte/kamerplanter#2547 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
EleutherAI/lm-evaluation-harness#4425 ·
I maintainer di solito rispondono entro 1 giorno
-
Gemini: respect PLANNING_DISABLED=1 in lifecycle context hooksForse già presa @AmariAugustin l’ha presa oggi. Apertabug good first issue help wanted
Difficoltà 2/5 1-3 ore Idoneità per principianti 87/100
OthmanAdi/planning-with-files#329 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
wr.dynamodb.read_items returns [{}] for a single partition value that does not existForse già presa @auraseb l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
aws/aws-sdk-pandas#3520 ·
I maintainer di solito rispondono entro 2 giorni