操作
バグ #1409
完了プラグインの起動順かなにかがおかしく、起動しない
プラグイン名:
クラッシュする:
いいえ
説明
developブランチでgit pullしたところ、プラグインの読み込み順番が変化たためか起動に失敗するようになりました。
.mikutter.ymlのdepends.pluginに必要なものを書き足すと進むようですが、今まで.mikutter.ymlがなかったプラグインも引っかかるので骨が折れそうです〄パリーン。
- commit 815d65f60b7045dffb4736c0ed8353ad1f328d07(Alpha2相当)
$ ruby mikutter.rb --debug
notice: {MIKUTTER_DIR}/core/configloader.rb:43:in `boot': load setting data from /Users/akkie/.mikutter/settings/setting.yml
notice: {MIKUTTER_DIR}/core/miquire_plugin.rb:156:in `block in load': plugin loaded: {MIKUTTER_DIR}/plugin/uitranslator/uitranslator.rb
notice: {MIKUTTER_DIR}/core/miquire_plugin.rb:156:in `block in load': plugin loaded: {MIKUTTER_DIR}/plugin/intent/intent.rb
notice: {MIKUTTER_DIR}/core/miquire_plugin.rb:156:in `block in load': plugin loaded: {MIKUTTER_DIR}/plugin/score/score.rb
notice: {MIKUTTER_DIR}/core/miquire_plugin.rb:156:in `block in load': plugin loaded: {MIKUTTER_DIR}/plugin/skin/skin.rb
notice: {MIKUTTER_DIR}/core/miquire_plugin.rb:156:in `block in load': plugin loaded: {MIKUTTER_DIR}/plugin/spell/spell.rb
notice: {MIKUTTER_DIR}/core/miquire_plugin.rb:156:in `block in load': plugin loaded: /Users/akkie/.mikutter/plugin/twitter_api_keys/twitter_api_keys.rb
notice: {MIKUTTER_DIR}/core/miquire_plugin.rb:156:in `block in load': plugin loaded: {MIKUTTER_DIR}/plugin/world/world.rb
notice: {MIKUTTER_DIR}/core/miquire_plugin.rb:156:in `block in load': plugin loaded: /Users/akkie/.mikutter/plugin/twitter/twitter.rb
notice: {MIKUTTER_DIR}/core/miquire_plugin.rb:156:in `block in load': plugin loaded: /Users/akkie/.mikutter/plugin/api_request_file_cache/api_request_file_cache.rb
Traceback (most recent call last):
18: from mikutter.rb:48:in `<main>'
17: from mikutter.rb:48:in `require'
16: from /Users/akkie/mikutter/core/boot/load_plugin.rb:10:in `<top (required)>'
15: from /Users/akkie/mikutter/core/miquire_plugin.rb:98:in `load_all'
14: from /Users/akkie/mikutter/core/miquire_plugin.rb:38:in `each_spec'
13: from /Users/akkie/mikutter/core/miquire_plugin.rb:35:in `each'
12: from /Users/akkie/mikutter/core/miquire_plugin.rb:35:in `each'
11: from /Users/akkie/mikutter/core/miquire_plugin.rb:40:in `block in each_spec'
10: from /Users/akkie/mikutter/core/miquire_plugin.rb:99:in `block in load_all'
9: from /Users/akkie/mikutter/core/miquire_plugin.rb:149:in `load'
8: from /Users/akkie/mikutter/core/utils.rb:290:in `atomic'
7: from /Users/akkie/.rbenv/versions/2.6.3/lib/ruby/2.6.0/monitor.rb:230:in `mon_synchronize'
6: from /Users/akkie/mikutter/core/utils.rb:290:in `block in atomic'
5: from /Users/akkie/mikutter/core/miquire_plugin.rb:159:in `block in load'
4: from /Users/akkie/mikutter/core/miquire_plugin.rb:159:in `load'
3: from /Users/akkie/.mikutter/plugin/api_request_file_cache/api_request_file_cache.rb:4:in `<top (required)>'
2: from /Users/akkie/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/pluggaloid-1.2.0/lib/pluggaloid/plugin.rb:36:in `create'
1: from /Users/akkie/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/pluggaloid-1.2.0/lib/pluggaloid/plugin.rb:36:in `instance_eval'
/Users/akkie/.mikutter/plugin/api_request_file_cache/api_request_file_cache.rb:12:in `block in <top (required)>': uninitialized constant Reserver (NameError)
Did you mean? Retriever
ファイル
toshi_a 初音 さんが約5年前に更新
- ステータス を 分類待ち から 実装待ち に変更
- 担当者 を toshi_a 初音 にセット
うちの環境では再現しませんが、Reserverを定義しているcore/lib/reserver.rbをロードしているのが、core/mui/cairo_timeline.rbだけですね。
reserverはプラグインがロードされる前にロードされるべきです。プラグインの移動やTwitterのサードパーティ化によっていろいろとロード順が変わって見つかったというところでしょうか。
Shibafu Midorino さんが約5年前に更新
miquire_plugin.rb get_kind()でのバンドル/サードパーティ判定がおかしくなっていそうな気がします。Environment::PLUGIN_PATHって変えてないですよね
toshi_a 初音 さんが約5年前に更新
標準プラグインの読み込みをサードパーティよりできるだけ先に行うのは、サードパーティプラグインが正しく.mikutter.ymlを指定できていない場合があるから行っていることです。これは修正します。
toshi_a 初音 さんが約5年前に更新
- ステータス を 実装待ち から レビュー待ち に変更
- 担当者 を toshi_a 初音 から Akira Ouchi に変更
- ブランチ を topic/1409-wrong-detect-bundle-plugin にセット
一旦、標準プラグインを先に読み込ませるようにしました。こっちでは再現できないので確認お願いします。
操作