Project

General

Profile

バグ #1261

twitterプラグインを外すと起動できない

Added by cob odo about 1 year ago. Updated about 1 year ago.

Status:
終了
Priority:
通常
Target version:
プラグイン名:
twitter
ブランチ:
topic/1261-without-twitter
クラッシュする:
Yes

Description

空のプロファイルで core/plugin/twitter/ ディレクトリを削除して起動すると起動前にクラッシュしました。

miquire :system, 'system'

を core/plugin/twitter/model/user.rb でしか行っていないのが原因かと思います。

Mikutter::Systemを参照している箇所は、activity, guide, saved_search, search, twitterの5プラグインですが、サードパーティプラグインでもシステムメッセージを出すことは十分にありうるし、それぞれで miquire :system, 'system' させるのは不自然なため、mikutter.rbの
miquire :boot, 'load_plugin'

より前で一括して miquire :system, 'system' してしまうのがよいのかなと思います。

Files

1261-miquire-system.patch (743 Bytes) 1261-miquire-system.patch cob odo, 2018-06-10 01:54

再現手順

空のプロファイルで core/plugin/twitter/ ディレクトリを削除して起動する。

トレースは以下の通り。

Traceback (most recent call last):
15: from ./mikutter.rb:104:in `<main>'
14: from ./mikutter.rb:68:in `boot!'
13: from /home/cobodo/repos/worldon/mikutter/core/plugin/gtk/mainloop.rb:10:in `mainloop'
12: from /home/cobodo/repos/worldon/mikutter/core/plugin/gtk/mainloop.rb:10:in `main'
11: from /home/cobodo/repos/worldon/mikutter/core/plugin/gtk/delayer.rb:10:in `block in boot'
10: from /home/cobodo/repos/worldon/mikutter/vendor/bundle/ruby/2.5.0/gems/delayer-0.0.2/lib/delayer.rb:43:in `method_missing'
9: from /home/cobodo/repos/worldon/mikutter/vendor/bundle/ruby/2.5.0/gems/delayer-0.0.2/lib/delayer/extend.rb:30:in `run'
8: from /home/cobodo/repos/worldon/mikutter/vendor/bundle/ruby/2.5.0/gems/delayer-0.0.2/lib/delayer/extend.rb:58:in `run_once'
7: from /home/cobodo/repos/worldon/mikutter/vendor/bundle/ruby/2.5.0/gems/delayer-0.0.2/lib/delayer/procedure.rb:24:in `run'
6: from /home/cobodo/repos/worldon/mikutter/vendor/bundle/ruby/2.5.0/gems/pluggaloid-1.1.1/lib/pluggaloid/event.rb:49:in `block in call'
5: from /home/cobodo/repos/worldon/mikutter/vendor/bundle/ruby/2.5.0/gems/pluggaloid-1.1.1/lib/pluggaloid/event.rb:95:in `call_all_listeners'
4: from /home/cobodo/repos/worldon/mikutter/vendor/bundle/ruby/2.5.0/gems/pluggaloid-1.1.1/lib/pluggaloid/event.rb:95:in `catch'
3: from /home/cobodo/repos/worldon/mikutter/vendor/bundle/ruby/2.5.0/gems/pluggaloid-1.1.1/lib/pluggaloid/event.rb:96:in `block in call_all_listeners'
2: from /home/cobodo/repos/worldon/mikutter/vendor/bundle/ruby/2.5.0/gems/pluggaloid-1.1.1/lib/pluggaloid/event.rb:96:in `each'
1: from /home/cobodo/repos/worldon/mikutter/vendor/bundle/ruby/2.5.0/gems/pluggaloid-1.1.1/lib/pluggaloid/event.rb:97:in `block (2 levels) in call_all_listeners'
/home/cobodo/repos/worldon/mikutter/vendor/bundle/ruby/2.5.0/gems/pluggaloid-1.1.1/lib/pluggaloid/listener.rb:25:in `call': uninitialized constant Mikutter::System (NameError)
Did you mean? SystemExit

Associated revisions

Revision 93d4c9ba (diff)
Added by cob odo about 1 year ago

twitterプラグインを外しても起動できるように、=miquire :system, 'system'の位置を移動。 refs #1261

History

#1

Updated by cob odo about 1 year ago

パッチを添付します。とりあえずクラッシュはしなくなりますが、この場所でいいのかどうかよくわかりません。

#2

Updated by toshi_a 初音 about 1 year ago

  • Status changed from 分類待ち to 実装待ち
  • Assignee set to cob odo

これは良くないですね。修正しましょう。

systemをロードする場所はその場所が適切だと思います。commitするさい、ついでにTwitterプラグインからは =miquire :system, 'system'= を行わないようにするのが良いと思います。

#3

Updated by cob odo about 1 year ago

  • Status changed from 実装待ち to レビュー待ち
  • Assignee changed from cob odo to toshi_a 初音
  • ブランチ set to topic/1261-without-twitter

topic/1261-without-twitterブランチにpushしました。
レビューお願いします。

#4

Updated by toshi_a 初音 about 1 year ago

  • Status changed from レビュー待ち to マージ待ち

良さ

#5

Updated by toshi_a 初音 about 1 year ago

merged.

#6

Updated by toshi_a 初音 about 1 year ago

  • Status changed from マージ待ち to 終了

Also available in: Atom PDF