Expressions régulières invalides dans 'Mots surveillés' : aucun mot surveillé ne fonctionne

Lorsque l’option expressions régulières pour les mots surveillés est activée, des expressions régulières invalides rendent toute la catégorie de mots surveillés concernée inopérante.

Étapes de reproduction

  1. Activez « expressions régulières pour les mots surveillés ».
  2. Ajoutez un motif de mot surveillé à « Nécessite une approbation », par exemple same issue.
  3. Ajoutez un motif de mot surveillé invalide, par exemple *ban* (comme cela pourrait être le cas si des caractères génériques étaient présents dans les mots surveillés avant l’activation des expressions régulières).
  4. Remarquez qu’un message contenant « same issue » contourne la file d’attente d’approbation et est également ignoré par le formulaire « Test ».
  5. Supprimez le mot surveillé invalide.
  6. Remarquez que « same issue » correspond désormais correctement.

Étapes de reproduction (pire scénario) :

  1. Activez « expressions régulières pour les mots surveillés » et les balises.
  2. Ajoutez un motif de mot surveillé invalide à « Balise », par exemple *tebex.io*paid.
  3. Essayez de publier un nouveau sujet. Cela renverra une « Erreur 500 » avec le résultat suivant dans /logs :
RegexpError (target of repeat operator is not specified: /*tebex.io*/)
app/services/word_watcher.rb:116:in `initialize'
app/services/word_watcher.rb:116:in `new'
app/services/word_watcher.rb:116:in `matches?'
lib/topic_creator.rb:184:in `block in setup_tags'
lib/topic_creator.rb:183:in `each'
lib/topic_creator.rb:183:in `setup_tags'
lib/topic_creator.rb:46:in `create'
lib/post_creator.rb:501:in `create_topic'

Note

Je pense qu’il serait pratique que, même lorsque les expressions régulières sont désactivées, il soit toujours possible de saisir une expression régulière valide, similaire aux caractères génériques, par exemple en l’entourant de barres obliques /, surtout car l’activation de l’option peut provoquer un dysfonctionnement grave si des mots surveillés existants contiennent déjà des caractères génériques.

3 « J'aime »

Hmm, y a-t-il une protection que nous pouvons ajouter ici @sam ?

Il y a une raison pour laquelle cela se trouve derrière un paramètre du site @blattersturm — il faut savoir ce que l’on fait… les expressions régulières sont assez dangereuses.

1 « J'aime »

Peut-être devrions-nous exiger zéro mot surveillé avant de modifier le paramètre @nbianca ?

Si vous essayez de le modifier et que vous avez des mots surveillés, vous demande-t-on de tous les supprimer ?

3 « J'aime »