@RGJ لم أقوم بتغيير ذلك على الإطلاق؛ إعادة إنشاء Upload كانت إصلاحًا لخطأ من @zogstrip في Cannot execute the rake uploads:migrate_from_s3 - #11
أنا أحاول فقط جعل الكود الموجود مسبقًا يعمل، ولا أعرف تفاصيل داخليّة Discourse جيدًا؛ لقد كنت أترنح في الظلام كثيرًا. تجربتي الوحيدة مع Ruby هي بضع طلبات سحب (PRs) قمت بها لـ Discourse. اتباع نمط الكود الحالي يبدو أنه ليس المسار الأكثر كفاءة (انظر محادثتي مع @pfaffman أعلاه حول القفز عن الخطوات)، وأنا أتفق تمامًا معك. كما يمكنك الاستدلال من حقيقة أنني لم أدرك حتى في وقت سابق من اليوم أن OptimizedImages.url سيحتاج أيضًا إلى التعديل ليصبح مسارًا /uploads وأن يتم تعيين etag إلى nil (ولست أدري ما هو غير ذلك)، فأنا لا أزال أعمل في الظلام.
ما زال يتوجب عليّ التكرار عبر المنشورات أولاً على الأقل لإصلاح عناوين URL الحرفية القديمة في المنشورات. ما زال يتوجب تطبيق بعض الإصلاحات الأخرى، مثل عدم إعادة التحقق من صحة المنشورات وعدم ابتلاع الأخطاء بصمت. ما زلت أرغب في تحديد معدل الطلبات (rate limit)، أعتقد، لتقليل التأثير على المواقع النشطة.
بخصوص قلقك الأولين المتعلقين بعمليات التحديث غير المتعلقة بالمنشورات، إليك عملي قيد التطوير، لم يتم اختباره بعد على موقع نشط (التزام) والذي قد يساعد، لكنني لن أقوم باختباره على موقعي النشط حتى ينتهي كل شيء متعلق بهجرة تحميلات المنشورات.
تعديل شيء كان يعمل سابقًا كان كل ما لدي من رغبة. إذا كنت ترغب في تنفيذ عملية هجرة أسرع، فأنا معك تمامًا؛ قد يكون من المنطقي دمج عملي الأبطأ ولكن الأفضل على الأقل كتحسين باريتو، ثم يمكنك استبداله تمامًا بشيء أفضل بكثير، وسأكون أول من يحتفل بذلك، حتى لو لم أعد في وضع يمكنني من استخدامه في ذلك الوقت.