شاهد تعبير منتظم كلمات يوقف

هذه مشكلة مزدوجة.\n\nأولاً، يتسبب خطأ في تعبير عادي في حدوث خطأ 500 في الخادم عند نشر أي مشاركة.\nراجع أيضًا تقرير الخطأ السابق هذا Invalid regular expressions in 'Watched Words' makes no watched word work (السيناريو: أسوأ).\n\nثانياً، أصبح التعبير العادي الذي كان صحيحًا سابقًا والذي يهرب شرطة (-) يُنظر إليه الآن على أنه غير صحيح. لذلك، حيث كان \\- يعمل سابقًا قبل الإصدار المستقر 3.1.0، فإنه يتسبب الآن في خطأ فادح.\n\nمن المحتمل أن يحدث هذا بسبب تمكين Unicode في 9a27803.\n\nراجع https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions/Cheatsheet\n\n\u003e لاحظ أن بعض الأحرف مثل: و - و @ وما إلى ذلك، ليس لها معنى خاص عند الهروب منها أو عند عدم الهروب منها. ستكون تسلسلات الهروب مثل \\: و \\- و \\@ مكافئة لنظائرها الحرفية غير المهربه في التعبيرات العادية. ومع ذلك، في التعبيرات العادية مع علامة unicode، سيؤدي ذلك إلى خطأ هروب هوية غير صالح. يتم ذلك لضمان التوافق مع الإصدارات السابقة مع التعليمات البرمجية الموجودة التي تستخدم تسلسلات هروب جديدة مثل \\p أو \\k.\n\nولكن سيكون من الجيد لو كان هناك معالج استثناء هنا.

10 إعجابات

لقد أعطينا الأولوية لهذا الآن، وسنتعامل معه في الأسابيع الأربعة القادمة.

7 إعجابات

تم إصلاح هذا:

أنا أبحث حاليًا عن طريقة لتمكين التحقق من صحة تعبيرات جافاسكريبت العادية من جانب روبي. آمل أن يكون لدي إصلاح جاهز قريبًا.

6 إعجابات

بدأت في تلقي الخطأ 500 عند نشر مشاركات جديدة منذ تحديث حديث (الأسبوع الماضي). كانت هناك أيضًا أخطاء متعلقة بالبريد الإلكتروني (في sidekiq، كانت متعلقة بالكلمات المراقبة). لاحظت هذا اليوم فقط. حاولت تشغيل تحديث ولكن الخطأ 500 عند النشر كان لا يزال موجودًا. الحل الوحيد الذي وجدته حتى الآن هو إزالة جميع الكلمات المراقبة.

لا يمكنني استنساخه بدون أي معلومات إضافية. هل لديك إعداد الموقع watched_words_regular_expressions ممكّنًا؟ هل يمكنك تحميل قائمة الكلمات التي تراقبها حتى أتمكن من الاختبار؟ أو ربما تحقق من سجلاتك (https://your-forum/logs) وانشر هنا تتبعات المكدس المتعلقة بالكلمات التي تراقبها.

هل لديك إعداد الموقع watched_words_regular_expressions ممكّن؟ → لا

أجريت بعض الاختبارات، يبدو أنها تحدث فقط مع *الأحرف البديلة
asteriskexampleasterisk → هذا يعطي خطأ 500
example → يتم استبداله بشكل صحيح

النجمة هي *

@RGJ هل تشعر أن المسألة الأصلية قد تم تناولها؟

لقد قمنا بدمج طلب السحب هذا:

إعجابَين (2)