إضافة المواقع 🌍

  • إصلاح: يجب ألا يتسبب فتح خريطة الموضوع العامة مباشرة في حدوث مشكلة
  • إصلاح: يجب أن يعمل الانتقال بين خريطة الفئة والخريطة العامة الآن بشكل صحيح
  • اختبارات خريطة قيد العمل غير الوظيفية

@vincefrommtl، @Stephane_Roy @packman هل يمكنكم تجربة هذا التحديث؟ لاحظوا نطاق الإصلاحات. إصلاح آخر قادم قريبًا.

(ملاحظة فنية: نظرًا لأن مكتبة Leaflet كائن عام، يبدو أن QUnit لا يمكنها رؤيتها، لذلك لم أتمكن من توفير اختبارات واجهة أمامية متكاملة بالكامل لهذه الإصلاحات - إذا كان أي شخص يعرف كيف يمكنني جعل Leaflet و QUnit يعملان معًا، فيرجى إخباري)

3 إعجابات

رأيي:

  • الانتقال بين الخريطة العامة وخريطة الفئة يعمل. ولكن العكس معطل (من خريطة الفئة إلى الخريطة العامة)، تمامًا مثل من فئة إلى فئة.
  • لم أرى هذا الخطأ في سجلي منذ أن قمت بالترقية: ActionView::Template::Error (No route matches {:action=>"map_feed", :controller=>"list"}). :slight_smile:
  • خطأ جديد: في بعض الأحيان، تظهر روابط مجمعة على الخريطة علامة الموضع فقط على الخريطة عند التكبير، وليس التسمية.
  • خطأ جديد: في بعض الأحيان، لا ترتبط تسميات العلامات على الخريطة بالموضوع المقابل.
  • خطأ جديد: الخريطة العامة تتأثر الآن بنفس الخطأ الذي تعاني منه خرائط الفئات: تظهر فقط عدد قليل من العلامات (انظر أدناه).

فيما يتعلق بالخرائط التي تحتوي على عدد أقل من العلامات المفترض: لقد ألقيت نظرة فاحصة عليها، وهي تظهر فقط علامات للمواضيع النشطة في الأيام العشرين الماضية (أو شيء من هذا القبيل)، وبحد أقصى 30 منها. هل من الممكن أن تكون مشكلة تكوين في منتدانا؟ يبدو الأمر محددًا جدًا! لكننا لم نغير أي شيء في هذه الإعدادات. لدي حد أقصى يبلغ 1700 موضوع أقصى لخريطة الموقع ولا أعتقد أن هناك أي إعداد متعلق بالوقت من شأنه أن يؤدي إلى عرض علامات من مواضيع نشطة في الأيام العشرين الماضية فقط؟

إعجاب واحد (1)

بعد الترقية، فتحت الخريطة العالمية ولم يتم عرض أي علامات (موضوع). إذا قمت بتحرير موقع لموضوع بعلامة وقمت فقط بالحفظ دون إجراء أي تغييرات، تظهر العلامة. جميع علاماتي أقدم من 20 يومًا، لذا ربما تكون هذه هي نفس المشكلة التي يراها @vincefrommtl؟

تعديل: لا يزال زر “إظهار الخريطة” لكل موضوع يظهر موقع العلامة الصحيح عندما لا تظهر هذه العلامة على الخريطة العالمية.

إعجاب واحد (1)

شكراً يا رفاق، سألقي نظرة أخرى.

إعجابَين (2)

هذا ليس إصلاحًا كاملاً ولكنه يجب، في اعتقادي، أن يعيد مواقع المواضيع القديمة مع تجنب خطأ الخريطة عند التحميل مباشرة من رابط خارجي أو تحديث المتصفح:

مشكلة معروفة: لم أحل الانتقال المباشر من الخريطة => خريطة الفئة (ولكن يجب أن تكون هذه حالة هامشية)، ولكن يجب أن يكون كل شيء آخر أفضل.

إعجاب واحد (1)

سأختبر غدًا ولكن أحد المستخدمين أشار للتو إلى أن المواقع الأمريكية تُسمى الآن المدينة، البلد، الولاية، على سبيل المثال أتلانتا، الولايات المتحدة، جورجيا

اختبار سريع: يمكنني التأكيد على أنني أرى كل العلامات على الخريطة مع هذا التحديث الجديد. شكراً جزيلاً لك. :slight_smile:

في الوقت الحالي، سأنصح مستخدمي بعدم القفز من خريطة فئة إلى أخرى، لتجاوز الانتقال المعطل.

إعجاب واحد (1)

التغييرات الأخيرة الوحيدة تتعلق بتعداد الخريطة.

ترتيب البلد/الولاية ليس أحدث إصدار. ذكرته لأنني لا أتذكر رؤيته قبل إصدارات اليومين الماضيين.

إعجاب واحد (1)

@packman حاليًا، لقد أصلحت مشكلتك السابقة:

وهذا مغطى الآن بالاختبارات.

شكرًا مرة أخرى لـ @david على إخراجه لي من القبو في هذا الشأن.

3 إعجابات

@merefield مرحبًا، فقط للتنبيه، تم إيقاف استخدام الدالة modify_user_params منذ فترة، وسيتم إزالتها قريبًا الآن بعد أن وصل Discourse إلى الإصدار 3.2.0.beta1-dev

discourse-locations/lib/users_map.rb
35:  def modify_user_params(attrs)

هل يمكنك العمل على تحديثها لاستخدام المعدّل users_controller_update_user_params عندما تتاح لك الفرصة؟ شكرًا!

إعجاب واحد (1)

بالتأكيد، شكرًا على التنبيه الإضافي، سألقي نظرة عليه هذا الأسبوع.

إعجاب واحد (1)

بليك، تم الانتهاء من هذا، هل تمانع في إضافتك كمراجع؟

3 إعجابات

رائع، شكراً لك!

إعجابَين (2)

شكرا، تم الدمج!

إعجاب واحد (1)

عذرًا على نقل الأخبار السيئة، ولكن لدي تقرير عن خطأ.

نحن نعمل حاليًا على أحدث إصدار، وقد قمنا بالتحديث هذا الصباح: 3.2.0.beta1-dev (7ca5ee6cd2)

نواجه مشكلة غريبة، لم تكن موجودة قبل أسبوعين عندما قمنا بالتحديث الأخير، حيث لم نعد قادرين على تعديل ملف تعريف المستخدم إذا كان لديه حقول مخصصة.

أرغب في تعديل هذا المستخدم: https://example.com/u/username/preferences/profile

يتم تحميل الصفحة بشكل جيد:

بمجرد النقر على “حفظ”، أحصل على خطأ:

جاء هذا الأمر إلى النور لأن أحد مواقعنا الإلكترونية الأخرى يقوم بتحديث حقل “العضوية” المخصص عندما يقوم أعضاء نادينا بالترقية، وكان نقطة نهاية واجهة برمجة تطبيقات Discourse تُرجع خطأ 500.

هذا واضح عندما أحاول إعادة الإنتاج باستخدام Postman أيضًا:

تُظهر سجلات Discourse:

و:

plugins/discourse-locations/plugin.rb:188:in `block (2 levels) in activate!'

lib/discourse_plugin_registry.rb:293:in `apply_modifier'

app/controllers/users_controller.rb:2036:in `user_params'

app/controllers/users_controller.rb:198:in `update'

actionpack (7.0.7) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'

actionpack (7.0.7) lib/abstract_controller/base.rb:215:in `process_action'

actionpack (7.0.7) lib/action_controller/metal/rendering.rb:165:in `process_action'

actionpack (7.0.7) lib/abstract_controller/callbacks.rb:234:in `block in process_action'

activesupport (7.0.7) lib/active_support/callbacks.rb:118:in `block in run_callbacks'

app/controllers/application_controller.rb:420:in `block in with_resolved_locale'

i18n (1.14.1) lib/i18n.rb:322:in `with_locale'

app/controllers/application_controller.rb:420:in `with_resolved_locale'

activesupport (7.0.7) lib/active_support/callbacks.rb:127:in `block in run_callbacks'

activesupport (7.0.7) lib/active_support/callbacks.rb:138:in `run_callbacks'

actionpack (7.0.7) lib/abstract_controller/callbacks.rb:233:in `process_action'

actionpack (7.0.7) lib/action_controller/metal/rescue.rb:23:in `process_action'

actionpack (7.0.7) lib/action_controller/metal/instrumentation.rb:67:in `block in process_action'

activesupport (7.0.7) lib/active_support/notifications.rb:206:in `block in instrument'

activesupport (7.0.7) lib/active_support/notifications/instrumenter.rb:24:in `instrument'

activesupport (7.0.7) lib/active_support/notifications.rb:206:in `instrument'

actionpack (7.0.7) lib/action_controller/metal/instrumentation.rb:66:in `process_action'

actionpack (7.0.7) lib/action_controller/metal/params_wrapper.rb:259:in `process_action'

activerecord (7.0.7) lib/active_record/railties/controller_runtime.rb:27:in `process_action'

actionpack (7.0.7) lib/abstract_controller/base.rb:151:in `process'

actionview (7.0.7) lib/action_view/rendering.rb:39:in `process'

actionpack (7.0.7) lib/action_controller/metal.rb:188:in `dispatch'

actionpack (7.0.7) lib/action_controller/metal.rb:251:in `dispatch'

actionpack (7.0.7) lib/action_dispatch/routing/route_set.rb:49:in `dispatch'

actionpack (7.0.7) lib/action_dispatch/routing/route_set.rb:32:in `serve'

actionpack (7.0.7) lib/action_dispatch/journey/router.rb:50:in `block in serve'

actionpack (7.0.7) lib/action_dispatch/journey/router.rb:32:in `each'

actionpack (7.0.7) lib/action_dispatch/journey/router.rb:32:in `serve'

actionpack (7.0.7) lib/action_dispatch/routing/route_set.rb:852:in `call'

lib/middleware/omniauth_bypass_middleware.rb:74:in `call'

rack (2.2.8) lib/rack/tempfile_reaper.rb:15:in `call'

rack (2.2.8) lib/rack/conditional_get.rb:40:in `call'

rack (2.2.8) lib/rack/head.rb:12:in `call'

actionpack (7.0.7) lib/action_dispatch/http/permissions_policy.rb:38:in `call'

lib/content_security_policy/middleware.rb:12:in `call'

lib/middleware/anonymous_cache.rb:389:in `call'

lib/middleware/gtm_script_nonce_injector.rb:10:in `call'

rack (2.2.8) lib/rack/session/abstract/id.rb:266:in `context'

rack (2.2.8) lib/rack/session/abstract/id.rb:260:in `call'

actionpack (7.0.7) lib/action_dispatch/middleware/cookies.rb:704:in `call'

actionpack (7.0.7) lib/action_dispatch/middleware/callbacks.rb:27:in `block in call'

activesupport (7.0.7) lib/active_support/callbacks.rb:99:in `run_callbacks'

actionpack (7.0.7) lib/action_dispatch/middleware/callbacks.rb:26:in `call'

actionpack (7.0.7) lib/action_dispatch/middleware/debug_exceptions.rb:28:in `call'

actionpack (7.0.7) lib/action_dispatch/middleware/show_exceptions.rb:29:in `call'

logster (2.12.2) lib/logster/middleware/reporter.rb:43:in `call'

railties (7.0.7) lib/rails/rack/logger.rb:40:in `call_app'

railties (7.0.7) lib/rails/rack/logger.rb:27:in `call'

config/initializers/100-quiet_logger.rb:20:in `call'

config/initializers/100-silence_logger.rb:29:in `call'

actionpack (7.0.7) lib/action_dispatch/middleware/remote_ip.rb:93:in `call'

actionpack (7.0.7) lib/action_dispatch/middleware/request_id.rb:26:in `call'

lib/middleware/enforce_hostname.rb:24:in `call'

rack (2.2.8) lib/rack/method_override.rb:24:in `call'

actionpack (7.0.7) lib/action_dispatch/middleware/executor.rb:14:in `call'

rack (2.2.8) lib/rack/sendfile.rb:110:in `call'

actionpack (7.0.7) lib/action_dispatch/middleware/host_authorization.rb:131:in `call'

message_bus (4.3.7) lib/message_bus/rack/middleware.rb:60:in `call'

lib/middleware/request_tracker.rb:233:in `call'

railties (7.0.7) lib/rails/engine.rb:530:in `call'

railties (7.0.7) lib/rails/railtie.rb:226:in `public_send'

railties (7.0.7) lib/rails/railtie.rb:226:in `method_missing'

rack (2.2.8) lib/rack/urlmap.rb:74:in `block in call'

rack (2.2.8) lib/rack/urlmap.rb:58:in `each'

rack (2.2.8) lib/rack/urlmap.rb:58:in `call'

unicorn (6.1.0) lib/unicorn/http_server.rb:634:in `process_client'

unicorn (6.1.0) lib/unicorn/http_server.rb:739:in `worker_loop'

unicorn (6.1.0) lib/unicorn/http_server.rb:547:in `spawn_missing_workers'

unicorn (6.1.0) lib/unicorn/http_server.rb:143:in `start'

unicorn (6.1.0) bin/unicorn:128:in `<top (required)>'

vendor/bundle/ruby/3.2.0/bin/unicorn:25:in `load'

vendor/bundle/ruby/3.2.0/bin/unicorn:25:in `<main>'

من الغريب أنني أستطيع تعديل ملف التعريف الخاص بي وتحديث حقول المستخدم المخصصة بشكل جيد.

لكنني لم أعد أستطيع تعديل أي مستخدم آخر، ولا يمكن لـ system إجراء التحديثات عبر واجهة برمجة التطبيقات الخاصة بنا أيضًا.

إذا قمت بتعطيل إضافة المواقع (Locations plugin)، فإن كل شيء يعمل بشكل جيد مرة أخرى:

3 إعجابات

@Richie شكراً على تقريرك.

يمكنني إعادة إنتاج هذا.

يبدو أن هذا يحدث فقط عندما لا يكون لدى شخص ما موقع.

تمت إعادة هيكلة هذه الشفرة مؤخرًا بسبب إيقاف قديم في النواة وقد فاتني (حالة كبيرة جدًا). سأقوم بتصحيحها قريبًا.

5 إعجابات

آه، لذا ربما كان تعديلي لملفي الشخصي بنجاح مجرد تضليل، حيث لدي موقع على ملفي الشخصي :slight_smile:

لا تقلق، شكرًا على الدعم المستمر :slight_smile:

أعتقد أنه تم إصلاح ذلك الآن:

8 إعجابات

تحديث هذا الصباح، لا مزيد من أخطاء HTTP/500.

شكرًا على الإصلاح السريع يا روبرت :smiley: :clap:

3 إعجابات