استثناء في المهمة: طريقة 'json=' غير معرّفة لـ DiscourseActivityPub::AP::Link

يبدو أن المتابعة من فئة Discourse لا تعمل الآن

Job exception: undefined method 'json=' for an instance of DiscourseActivityPub::AP::Link
backtrace
Message (19 copies reported)

Job exception: undefined method 'json=' for an instance of DiscourseActivityPub::AP::Link

Backtrace

/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/a_p/object.rb:194:in 'DiscourseActivityPub::AP::Object.factory'
/var/www/discourse/plugins/discourse-activity-pub/plugin.rb:857:in 'block (4 levels) in Plugin::Instance#activate!'
/var/www/discourse/plugins/discourse-activity-pub/plugin.rb:856:in 'Array#each'
/var/www/discourse/plugins/discourse-activity-pub/plugin.rb:856:in 'block (3 levels) in Plugin::Instance#activate!'
activerecord-8.1.4/lib/active_record/connection_adapters/abstract/database_statements.rb:376:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#transaction'
activerecord-8.1.4/lib/active_record/transactions.rb:234:in 'block (2 levels) in ActiveRecord::Transactions::ClassMethods#transaction'
activerecord-8.1.4/lib/active_record/connection_adapters/abstract/connection_pool.rb:487:in 'ActiveRecord::ConnectionAdapters::ConnectionPool#with_pool_transaction_isolation_level'
activerecord-8.1.4/lib/active_record/transactions.rb:233:in 'block in ActiveRecord::Transactions::ClassMethods#transaction'
activerecord-8.1.4/lib/active_record/connection_adapters/abstract/connection_pool.rb:459:in 'ActiveRecord::ConnectionAdapters::ConnectionPool#with_connection'
activerecord-8.1.4/lib/active_record/connection_handling.rb:313:in 'ActiveRecord::ConnectionHandling#with_connection'
activerecord-8.1.4/lib/active_record/transactions.rb:232:in 'ActiveRecord::Transactions::ClassMethods#transaction'
/var/www/discourse/plugins/discourse-activity-pub/plugin.rb:817:in 'block (2 levels) in Plugin::Instance#activate!'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/plugin/instance.rb:10:in 'block in DiscourseActivityPub::Plugin::Instance#activity_pub_on'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/a_p/handlers.rb:76:in 'block in DiscourseActivityPub::AP::Handlers::ClassMethods#apply_handlers'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/a_p/handlers.rb:74:in 'Array#all?'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/a_p/handlers.rb:74:in 'DiscourseActivityPub::AP::Handlers::ClassMethods#apply_handlers'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/a_p/handlers.rb:24:in 'DiscourseActivityPub::AP::Handlers#apply_handlers'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/a_p/object.rb:225:in 'DiscourseActivityPub::AP::Object.resolve_and_store'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/a_p/activity.rb:136:in 'DiscourseActivityPub::AP::Activity#process_actor_and_object'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/a_p/activity.rb:56:in 'DiscourseActivityPub::AP::Activity#process_activity'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/a_p/activity.rb:36:in 'block in DiscourseActivityPub::AP::Activity#perform_transactions'
activerecord-8.1.4/lib/active_record/connection_adapters/abstract/transaction.rb:648:in 'block in ActiveRecord::ConnectionAdapters::TransactionManager#within_new_transaction'
activesupport-8.1.4/lib/active_support/concurrency/null_lock.rb:9:in 'ActiveSupport::Concurrency::NullLock#synchronize'
activerecord-8.1.4/lib/active_record/connection_adapters/abstract/transaction.rb:645:in 'ActiveRecord::ConnectionAdapters::TransactionManager#within_new_transaction'
activerecord-8.1.4/lib/active_record/connection_adapters/abstract/database_statements.rb:386:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#within_new_transaction'
activerecord-8.1.4/lib/active_record/connection_adapters/abstract/database_statements.rb:378:in 'ActiveRecord::ConnectionAdapters::DatabaseStatements#transaction'
activerecord-8.1.4/lib/active_record/transactions.rb:234:in 'block (2 levels) in ActiveRecord::Transactions::ClassMethods#transaction'
activerecord-8.1.4/lib/active_record/connection_adapters/abstract/connection_pool.rb:487:in 'ActiveRecord::ConnectionAdapters::ConnectionPool#with_pool_transaction_isolation_level'
activerecord-8.1.4/lib/active_record/transactions.rb:233:in 'block in ActiveRecord::Transactions::ClassMethods#transaction'
activerecord-8.1.4/lib/active_record/connection_adapters/abstract/connection_pool.rb:465:in 'ActiveRecord::ConnectionAdapters::ConnectionPool#with_connection'
activerecord-8.1.4/lib/active_record/connection_handling.rb:313:in 'ActiveRecord::ConnectionHandling#with_connection'
activerecord-8.1.4/lib/active_record/transactions.rb:232:in 'ActiveRecord::Transactions::ClassMethods#transaction'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/a_p/activity.rb:34:in 'DiscourseActivityPub::AP::Activity#perform_transactions'
/var/www/discourse/plugins/discourse-activity-pub/lib/discourse_activity_pub/a_p/activity.rb:26:in 'DiscourseActivityPub::AP::Activity#process'
/var/www/discourse/plugins/discourse-activity-pub/app/jobs/regular/discourse_activity_pub/process.rb:16:in 'block in Jobs::DiscourseActivityPub::Process#execute'
/var/www/discourse/lib/distributed_mutex.rb:53:in 'block in DistributedMutex#synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in 'Thread::Mutex#synchronize'
/var/www/discourse/lib/distributed_mutex.rb:49:in 'DistributedMutex#synchronize'
/var/www/discourse/lib/distributed_mutex.rb:34:in 'DistributedMutex.synchronize'
/var/www/discourse/plugins/discourse-activity-pub/app/jobs/regular/discourse_activity_pub/process.rb:9:in 'Jobs::DiscourseActivityPub::Process#execute'
/var/www/discourse/app/jobs/base.rb:313:in 'block (2 levels) in Jobs::Base#perform'
rails_multisite-9.0.0/lib/rails_multisite/connection_management/null_instance.rb:54:in 'RailsMultisite::ConnectionManagement::NullInstance#with_connection'
rails_multisite-9.0.0/lib/rails_multisite/connection_management.rb:23:in 'RailsMultisite::ConnectionManagement.with_connection'
/var/www/discourse/app/jobs/base.rb:300:in 'block in Jobs::Base#perform'
/var/www/discourse/app/jobs/base.rb:297:in 'Array#each'
/var/www/discourse/app/jobs/base.rb:297:in 'Jobs::Base#perform'
sidekiq-7.3.10/lib/sidekiq/processor.rb:220:in 'Sidekiq::Processor#execute_job'
sidekiq-7.3.10/lib/sidekiq/processor.rb:185:in 'block (4 levels) in Sidekiq::Processor#process'
sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:180:in 'Sidekiq::Middleware::Chain#traverse'
sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:183:in 'block in Sidekiq::Middleware::Chain#traverse'
/var/www/discourse/lib/sidekiq/suppress_user_email_errors.rb:6:in 'Sidekiq::SuppressUserEmailErrors#call'
sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:182:in 'Sidekiq::Middleware::Chain#traverse'
sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:183:in 'block in Sidekiq::Middleware::Chain#traverse'
/var/www/discourse/lib/sidekiq/discourse_event.rb:6:in 'Sidekiq::DiscourseEvent#call'
sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:182:in 'Sidekiq::Middleware::Chain#traverse'
sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:183:in 'block in Sidekiq::Middleware::Chain#traverse'
/var/www/discourse/lib/sidekiq/pausable.rb:136:in 'Sidekiq::Pausable#call'
sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:182:in 'Sidekiq::Middleware::Chain#traverse'
sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:183:in 'block in Sidekiq::Middleware::Chain#traverse'
sidekiq-7.3.10/lib/sidekiq/job/interrupt_handler.rb:9:in 'Sidekiq::Job::InterruptHandler#call'
sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:182:in 'Sidekiq::Middleware::Chain#traverse'
sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:183:in 'block in Sidekiq::Middleware::Chain#traverse'
sidekiq-7.3.10/lib/sidekiq/metrics/tracking.rb:26:in 'Sidekiq::Metrics::ExecutionTracker#track'
sidekiq-7.3.10/lib/sidekiq/metrics/tracking.rb:134:in 'Sidekiq::Metrics::Middleware#call'
sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:182:in 'Sidekiq::Middleware::Chain#traverse'
sidekiq-7.3.10/lib/sidekiq/middleware/chain.rb:173:in 'Sidekiq::Middleware::Chain#invoke'
sidekiq-7.3.10/lib/sidekiq/processor.rb:184:in 'block (3 levels) in Sidekiq::Processor#process'
sidekiq-7.3.10/lib/sidekiq/processor.rb:145:in 'block (6 levels) in Sidekiq::Processor#dispatch'
sidekiq-7.3.10/lib/sidekiq/job_retry.rb:118:in 'Sidekiq::JobRetry#local'
sidekiq-7.3.10/lib/sidekiq/processor.rb:144:in 'block (5 levels) in Sidekiq::Processor#dispatch'
sidekiq-7.3.10/lib/sidekiq/config.rb:39:in 'block in <class:Config>'
sidekiq-7.3.10/lib/sidekiq/processor.rb:139:in 'block (4 levels) in Sidekiq::Processor#dispatch'
sidekiq-7.3.10/lib/sidekiq/processor.rb:281:in 'Sidekiq::Processor#stats'
sidekiq-7.3.10/lib/sidekiq/processor.rb:134:in 'block (3 levels) in Sidekiq::Processor#dispatch'
sidekiq-7.3.10/lib/sidekiq/job_logger.rb:15:in 'Sidekiq::JobLogger#call'
sidekiq-7.3.10/lib/sidekiq/processor.rb:133:in 'block (2 levels) in Sidekiq::Processor#dispatch'
sidekiq-7.3.10/lib/sidekiq/job_retry.rb:85:in 'Sidekiq::JobRetry#global'
sidekiq-7.3.10/lib/sidekiq/processor.rb:132:in 'block in Sidekiq::Processor#dispatch'
sidekiq-7.3.10/lib/sidekiq/job_logger.rb:40:in 'Sidekiq::JobLogger#prepare'
sidekiq-7.3.10/lib/sidekiq/processor.rb:131:in 'Sidekiq::Processor#dispatch'
sidekiq-7.3.10/lib/sidekiq/processor.rb:183:in 'block (2 levels) in Sidekiq::Processor#process'
sidekiq-7.3.10/lib/sidekiq/processor.rb:182:in 'Thread.handle_interrupt'
sidekiq-7.3.10/lib/sidekiq/processor.rb:182:in 'block in Sidekiq::Processor#process'
sidekiq-7.3.10/lib/sidekiq/processor.rb:181:in 'Thread.handle_interrupt'
sidekiq-7.3.10/lib/sidekiq/processor.rb:181:in 'Sidekiq::Processor#process'
sidekiq-7.3.10/lib/sidekiq/processor.rb:86:in 'Sidekiq::Processor#process_one'
sidekiq-7.3.10/lib

استضافة ذاتية، والإصدار هو 2026.10.0-latest (+458 commit، تم الترقية الليلة الماضية). كان يعمل بشكل صحيح قبل آخر ترقية.

عذرًا على الصورة، لكن هل هذا له علاقة؟

يبدو أن الفيدرالية (التكامل) من Mastodon إلى Discourse تنكسر إذا تم تحديث مثيل Mastodon إلى الإصدار 5.0.0. لذا، ربما يكون هذا خللًا في Mastodon بعد كل شيء — كيف… لا أستطيع تحديد ذلك بمهاراتي.

تعديل

كنت مخطئًا. إصدار Mastodon لا يهم. إذا كان لدى الممثل الذي تتابعه رابط في تلك التغريدة (تويت)، فإنها لا تُدرج في Discourse، وظهر لي خطأ json=.

أحتاج إلى التأكد مما إذا كان هذا الخلل في Mastodon أو Discourse…