Project

General

Profile

バグ #1234

Ubuntu 18.04においてプラグインをコマンドライン指定した場合にmikutterが起動しない

Added by Hiyowa Kyobashi about 1 year ago. Updated about 1 year ago.

Status:
まだダメ
Priority:
通常
Target version:
プラグイン名:
mikutter_auto_reply_bot_sample
ブランチ:
topic/1234-missing-dependency-for-twitter-plugin
クラッシュする:
Yes

Description

Ubuntu Server 17.10において、aptからインストールしたmikutterが動いていた環境から、同18.04にアップグレードした環境で、コマンドラインにひよわ焼きプラグインを指定して立ち上げるとエラーを出力してクラッシュする。


再現手順

・ Ubuntu Server 17.10(DEが存在しない環境)にaptからmikutterをインストールし、ひよわ焼きプラグイン( https://github.com/KHiyowa/Hiyowayaki )を入れて動作することを確認する。
・ この環境を、do-release-updateを使ってUbuntu 18.04にアップグレードすると、rubyと本体のバージョンは以下のようになる。
ruby 2.5.1p57
mikutter 3.6.4
・ この状態で、 mikutter --plugin=mikutter_auto_reply_bot_sample を実行すると次のようになる。

Traceback (most recent call last):
35: from /usr/share/mikutter/mikutter.rb:42:in `<main>'
34: from /usr/share/mikutter/core/miquire.rb:18:in `miquire'
33: from /usr/share/mikutter/core/miquire.rb:75:in `miquire'
32: from /usr/share/mikutter/core/miquire.rb:75:in `each'
31: from /usr/share/mikutter/core/miquire.rb:76:in `block in miquire'
30: from /usr/share/mikutter/core/miquire.rb:95:in `file_or_directory_require'
29: from /usr/share/mikutter/core/miquire.rb:98:in `miquire_original_require'
28: from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
27: from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
26: from /usr/share/mikutter/core/boot/load_plugin.rb:8:in `<top (required)>'
25: from /usr/share/mikutter/core/boot/load_plugin.rb:8:in `each'
24: from /usr/share/mikutter/core/miquire_plugin.rb:146:in `load'
23: from /usr/share/mikutter/core/utils.rb:278:in `atomic'
22: from /usr/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
21: from /usr/share/mikutter/core/utils.rb:278:in `block in atomic'
20: from /usr/share/mikutter/core/miquire_plugin.rb:147:in `block in load'
19: from /usr/share/mikutter/core/miquire_plugin.rb:147:in `each'
18: from /usr/share/mikutter/core/miquire_plugin.rb:149:in `block (2 levels) in load'
17: from /usr/share/mikutter/core/miquire_plugin.rb:146:in `load'
16: from /usr/share/mikutter/core/utils.rb:278:in `atomic'
15: from /usr/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
14: from /usr/share/mikutter/core/utils.rb:278:in `block in atomic'
13: from /usr/share/mikutter/core/miquire_plugin.rb:147:in `block in load'
12: from /usr/share/mikutter/core/miquire_plugin.rb:147:in `each'
11: from /usr/share/mikutter/core/miquire_plugin.rb:149:in `block (2 levels) in load'
10: from /usr/share/mikutter/core/miquire_plugin.rb:146:in `load'
9: from /usr/share/mikutter/core/utils.rb:278:in `atomic'
8: from /usr/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
7: from /usr/share/mikutter/core/utils.rb:278:in `block in atomic'
6: from /usr/share/mikutter/core/miquire_plugin.rb:158:in `block in load'
5: from /usr/share/mikutter/core/miquire_plugin.rb:158:in `load'
4: from /usr/share/mikutter/core/plugin/twitter/twitter.rb:10:in `<top (required)>'
3: from /usr/lib/ruby/vendor_ruby/pluggaloid/plugin.rb:36:in `create'
2: from /usr/lib/ruby/vendor_ruby/pluggaloid/plugin.rb:36:in `instance_eval'
1: from /usr/share/mikutter/core/plugin/twitter/twitter.rb:302:in `block in <top (required)>'
/usr/lib/ruby/vendor_ruby/pluggaloid/plugin.rb:257:in `method_missing': undefined method `_' for #<Plugin:0x000055e19e4684f0> (NoMethodError)

Associated revisions

Revision b36792e0 (diff)
Added by toshi_a 初音 about 1 year ago

twitter: uitranslatorへの依存関係の記載が抜けている refs #1234

History

#1

Updated by Hiyowa Kyobashi about 1 year ago

  • 再現手順 updated (diff)
#2

Updated by toshi_a 初音 about 1 year ago

  • Status changed from 分類待ち to 実装待ち
  • Assignee set to toshi_a 初音

Twitterプラグインがuitranslatorの機能を使っているのに依存関係を書いてないのが原因と思われます。

#3

Updated by toshi_a 初音 about 1 year ago

  • Status changed from 実装待ち to レビュー待ち
  • Assignee changed from toshi_a 初音 to Hiyowa Kyobashi
  • ブランチ set to topic/1234-missing-dependency-for-twitter-plugin

修正してみました。ブランチ topic/1234-missing-dependency-for-twitter-plugin をcheckoutしてもらって、同じ手順で試してもらえますか。

もしこれでうまくいったら、チケットのステータスを「マージ待ち」に、まだ何か問題があれば「まだダメ」に変えてください。

3.6のほうではあまりテストしたくなかったので3.7.0を起点に作らせてもらいましたが、そちらの検証に支障が出るなら3.6で作り直すので、その場合はこのチケットで教えてください。

#4

Updated by Hiyowa Kyobashi about 1 year ago

  • Status changed from レビュー待ち to まだダメ
  • Target version changed from 3.6 to 3.7

エラーの内容が変わりましたが、次のようになりました。

Traceback (most recent call last):
49: from mikutter.rb:42:in `<main>'
48: from /home/mikutter/core/miquire.rb:18:in `miquire'
47: from /home/mikutter/core/miquire.rb:75:in `miquire'
46: from /home/mikutter/core/miquire.rb:75:in `each'
45: from /home/mikutter/core/miquire.rb:76:in `block in miquire'
44: from /home/mikutter/core/miquire.rb:95:in `file_or_directory_require'
43: from /home/mikutter/core/miquire.rb:98:in `miquire_original_require'
42: from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
41: from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
40: from /home/mikutter/core/boot/load_plugin.rb:8:in `<top (required)>'
39: from /home/mikutter/core/boot/load_plugin.rb:8:in `each'
38: from /home/mikutter/core/miquire_plugin.rb:146:in `load'
37: from /home/mikutter/core/utils.rb:278:in `atomic'
36: from /usr/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
35: from /home/mikutter/core/utils.rb:278:in `block in atomic'
34: from /home/mikutter/core/miquire_plugin.rb:147:in `block in load'
33: from /home/mikutter/core/miquire_plugin.rb:147:in `each'
32: from /home/mikutter/core/miquire_plugin.rb:149:in `block (2 levels) in load'
31: from /home/mikutter/core/miquire_plugin.rb:146:in `load'
30: from /home/mikutter/core/utils.rb:278:in `atomic'
29: from /usr/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
28: from /home/mikutter/core/utils.rb:278:in `block in atomic'
27: from /home/mikutter/core/miquire_plugin.rb:147:in `block in load'
26: from /home/mikutter/core/miquire_plugin.rb:147:in `each'
25: from /home/mikutter/core/miquire_plugin.rb:149:in `block (2 levels) in load'
24: from /home/mikutter/core/miquire_plugin.rb:146:in `load'
23: from /home/mikutter/core/utils.rb:278:in `atomic'
22: from /usr/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
21: from /home/mikutter/core/utils.rb:278:in `block in atomic'
20: from /home/mikutter/core/miquire_plugin.rb:147:in `block in load'
19: from /home/mikutter/core/miquire_plugin.rb:147:in `each'
18: from /home/mikutter/core/miquire_plugin.rb:149:in `block (2 levels) in load'
17: from /home/mikutter/core/miquire_plugin.rb:146:in `load'
16: from /home/mikutter/core/utils.rb:278:in `atomic'
15: from /usr/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
14: from /home/mikutter/core/utils.rb:278:in `block in atomic'
13: from /home/mikutter/core/miquire_plugin.rb:147:in `block in load'
12: from /home/mikutter/core/miquire_plugin.rb:147:in `each'
11: from /home/mikutter/core/miquire_plugin.rb:149:in `block (2 levels) in load'
10: from /home/mikutter/core/miquire_plugin.rb:146:in `load'
9: from /home/mikutter/core/utils.rb:278:in `atomic'
8: from /usr/lib/ruby/2.5.0/monitor.rb:226:in `mon_synchronize'
7: from /home/mikutter/core/utils.rb:278:in `block in atomic'
6: from /home/mikutter/core/miquire_plugin.rb:158:in `block in load'
5: from /home/mikutter/core/miquire_plugin.rb:158:in `load'
4: from /home/mikutter/core/plugin/intent/intent.rb:5:in `<top (required)>'
3: from /usr/lib/ruby/vendor_ruby/pluggaloid/plugin.rb:36:in `create'
2: from /usr/lib/ruby/vendor_ruby/pluggaloid/plugin.rb:36:in `instance_eval'
1: from /home/mikutter/core/plugin/intent/intent.rb:63:in `block in <top (required)>'
/usr/lib/ruby/vendor_ruby/pluggaloid/plugin.rb:257:in `method_missing': undefined method `_' for #<Plugin:0x000055614953cf78> (NoMethodError)

#5

Updated by Hiyowa Kyobashi about 1 year ago

apt経由のmikutterを削除し、gitからクローンしたものを3.5系に戻したところ、正常に起動しました。
同じ環境で3.7系を起動しようとしたところ、起動できませんでした。
3.5→3.6で加えられた変更が影響しているかもしれません。

Also available in: Atom PDF