バグ #1302
完了依存関係の足りないプラグインがある
説明
- intent プラグイン
intent プラグインは uitranslator に依存しているが書かれていないため、下記エラーで落ちる1: from /home/mikutter/mikutter/core/plugin/intent/intent.rb:63:in `block in <top (required)>' /usr/local/bundle/gems/pluggaloid-1.1.1/lib/pluggaloid/plugin.rb:257:in `method_missing': undefined method `_' for #<Plugin:0x00005650b8984bf8> (NoMethodError)
- twitter プラグイン
Photo プラグインに依存しているが、依存関係に書かれていないため、下記エラーで落ちる1: from /home/mikutter/mikutter/core/plugin/twitter/model/world.rb:53:in `to_hash' /home/mikutter/mikutter/core/plugin/twitter/model/user.rb:84:in `icon': undefined method `generate' for nil:NilClass (NoMethodError)
それぞれ mikutter.yml を修正すれば問題ないですが、これはそれぞれチケット分けた方がいいですかね(それがわかればブランチにコミットしてプッシュします)
cob odo さんが約6年前に更新
twitterプラグインは、
https://dev.mikutter.hachune.net/projects/mikutter/repository/revisions/bc54fdf5cb054567316af95e53ce188a2d9d12b8/entry/core/plugin/twitter/twitter.rb#L408
にもPhotoモデルに依存したコードがありますね(添付画像の処理)。
他に
https://dev.mikutter.hachune.net/projects/mikutter/repository/revisions/bc54fdf5cb054567316af95e53ce188a2d9d12b8/entry/core/plugin/gui/tablike.rb#L81
https://dev.mikutter.hachune.net/projects/mikutter/repository/revisions/bc54fdf5cb054567316af95e53ce188a2d9d12b8/entry/core/plugin/gui/window.rb#L39
https://dev.mikutter.hachune.net/projects/mikutter/repository/revisions/bc54fdf5cb054567316af95e53ce188a2d9d12b8/entry/core/plugin/shortcutkey/shortcutkey_listview.rb#L35
の3箇所に、Plugin::Photo::Photo.[]
メソッドの存在を前提にしたコードがありますね。guiプラグイン、shortcutkeyプラグインの2つとも、photoプラグインに依存していません。
toshi_a 初音 さんが約6年前に更新
- ステータス を toshi_aの判断待ち から 実装待ち に変更
twitterプラグインに関しては、単に.generate(...)を&.generate(...)にして、nilだったらnilのままにしておくという手もあるかと思います。特に画像を扱う必要のない環境でも、プラグイン自体は同じように使えたほうが便利そうです。
そう思います。TwitterプラグインがPhotoに依存していないのは意図的なものです。 cc640064 は必要ないと思います。
それもそうですね。
.generate(...) に関しては &.generate(...) にします。
その場合、photo は gui 系のプラグインが依存していればいいんですかね。
guiもphotoに依存する必要はありません。GUIはPhoto Modelを利用するだけで生成しないからです。
ただ、 source:core/plugin/gui/tablike.rb@2d0864a0#L81 はPhotoがないとクラッシュするように見えるので、修正が必要ですね。
shortcutkeyもphotoとは関係がないので依存すべきではないですが、現状のユースケースでは考えなくて良さそうです。
toshi_a 初音 さんが約6年前に更新
guiプラグインの修正はコミットしました( 3947035e )。
twitterプラグインはPhoto Variantを使っているため Plugin::Photo::Photo.generate
を使ってしまってますね。どうしたものか
toshi_a 初音 さんが約6年前に更新
- ステータス を 実装待ち から レビュー待ち に変更
- 担当者 を あひる 家鴨 にセット
- ブランチ を topic/1302-tarinai-dependencies にセット
多分動くと思うからpushしました!
toshi_a 初音 さんが約6年前に更新
merged.
@ahiru develop基準になっていたためcherry-pickしました。masterにpushしたぶんでうまく動いてるか確認して大丈夫そうだったらcloseしてください(雑)