Feature flag keys with one trailing newline are accepted
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 1/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 88/100
Piste de recherche
Lisez le validateur de clés dans backend/app/schemas/feature_flag.py et vérifiez comment il traite les quatre exemples de clés décrits dans l’issue. Mettez à jour la validation afin qu’un saut de ligne final soit rejeté avec le message existant pour les clés non valides. Vérifiez ensuite que les clés valides sont toujours acceptées et que les clés non valides sont rejetées.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
What happens. FeatureFlagCreate accepts a flag key that ends in one newline. FeatureFlagCreate(key="search_v2\n", name="x") is accepted and stores the key as 'search_v2\n'. Keys with a newline anywhere else ("a\nb") and keys with upper case or spaces are refused, as expected.
Why. The key validator in backend/app/schemas/feature_flag.py checks the key with re.match(r"^...$", key). In Python, $ also matches just before a final newline, so one trailing newline passes.
Expected. A key with a trailing newline is refused with the same message as any other invalid key (for example by using re.fullmatch or \Z).
Found while updating the Learn Python book (Hour 8 teaches $ versus \Z). Measured at main 09d815ea with a short script that builds FeatureFlagCreate for four keys.
- Langage dominant
- Python
- Étoiles
- 0
- Forks
- 4
- Merge moyen
- 6 h 43 min
- PR mergées (30 j)
- 414
Préparer son environnement
- Fournit un Dockerfile ou un fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de Controlvar/controlvar
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
Controlvar/controlvar#1813 ·
Les mainteneurs répondent en général sous 1 jour
-
Dashboard: an archived flag shows Off with an on/off switch the API refusesPeut-être pris @amarkanday l’a pris il y a 2 jours. Ouvertebug
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Controlvar/controlvar#1748 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Dashboard: the sequential panel's "Ready to stop" banner shows no sample-ratio-mismatch cautionPeut-être pris @amarkanday l’a pris il y a 2 jours. Ouvertebug
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
Controlvar/controlvar#1737 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
dashboard: a split URL draft's variant edit shows generic copy when the API refuses itPeut-être pris @amarkanday l’a pris il y a 2 jours. Ouvertebug
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
Controlvar/controlvar#1562 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 90/100
Controlvar/controlvar#1447 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de Controlvar/controlvar
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
pylint-dev/pylint#11791 ·
Les mainteneurs répondent en général sous 1 jour
-
Rasterio granule reads never retry, so one 503 (Service Unavailable) fails the whole requestPeut-être pris @chuckwondo l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
developmentseed/titiler-cmr#305 ·
Les mainteneurs répondent en général sous 1 jour
-
community enhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 86/100
Les mainteneurs répondent en général sous 1 jour