プロジェクト

全般

プロフィール

致命的 #805

完了

.mikutter の無い初回起動時に設定ボタンを押すと落ちる?

Izumi Tsutsui さんが8年以上前に追加. 8年以上前に更新.

ステータス:
終了
優先度:
通常
担当者:
対象バージョン:
開始日:
2015-12-29
期日:
進捗率:

0%

プラグイン名:

説明

NetBSD/i386 7.0 + pkgsrc-2015Q4 の「とか環境」で mikutter 3.3.1 のパッケージ作成検証中
という中途半端な環境ですが、以下の現象が起きたのでとりあえずチケット書きます。

現象

~/.mikutter が存在しない新規の状態で mikutter を起動したあと、
チュートリアルの途中でネギレンチの設定ボタンを押すと以下のようなログを吐いて
mikutterが落ちます。

/usr/pkg/share/mikutter/core/utils.rb:108:in `where_should_insert_it': undefined method `include?' for #<Symbol:0x2cdbf0e>
     from /usr/pkg/share/mikutter/core/plugin/activity/activity.rb:286:in `block (3 levels) in <top (required)>'
     from /usr/pkg/share/mikutter/core/plugin/activity/activity.rb:284:in `each'
     from /usr/pkg/share/mikutter/core/plugin/activity/activity.rb:284:in `block (2 levels) in <top (required)>'
     from /usr/pkg/share/mikutter/core/plugin/settings/settings.rb:35:in `instance_eval'
     from /usr/pkg/share/mikutter/core/plugin/settings/settings.rb:35:in `block in setting_window'
     from /usr/pkg/share/mikutter/core/plugin/settings/settings.rb:30:in `each'
     from /usr/pkg/share/mikutter/core/plugin/settings/settings.rb:30:in `setting_window'
     from /usr/pkg/share/mikutter/core/plugin/settings/settings.rb:18:in `block (2 levels) in <top (required)>'

状況

activity.rbwhere_should_insert_it を呼んでるのは以下
        i = where_should_insert_it(kind, activity_kind_order, UserConfig[:activity_kind_order])

で、 UserConfig[:activity_kind_order] で何かあるのかなとログを見ると
リビジョン 3c04005e で以下の変更が入っています。
  1. ratelimit streaming_status の追加
  2. %s[] の書式変更

ここで添付 mikutter-3.3.1.patch のように後者の書式だけ元に戻すと落ちなくなるようなのですが、
そもそも環境的に何かのインストールが足りていないだけかもしれません。

環境は以下:
  • ruby 2.0.0p648
  • mikutter-3.3.1
  • addressable-2.3.8
  • delayer-0.0.2
  • delayer-deferred-1.0.3
  • gettext-3.1.6
  • hmac-0.4.0
  • httpclient-2.6.0.1
  • instance_storage-1.0.0
  • json-1.8.3
  • locale-2.1.1
  • memoist-0.14.0
  • moneta-0.8.0
  • nokogiri-1.6.6.4
  • oauth-0.4.7
  • pluggaloid-1.0.2
  • text-1.3.1
  • twitter-text-1.13.0
  • typed-array-0.1.2
  • unf-0.1.4
  • unf_ext-0.0.7.1

totorijp はどうすべきか迷ってます。すいません。


ファイル

mikutter-3.3.1.patch (609 Bytes) mikutter-3.3.1.patch activity.rb 適当修正 Izumi Tsutsui, 2015-12-29 05:33

Izumi Tsutsui さんが8年以上前に更新

もぐのさんがこんなの書いてました
https://twitter.com/moguno/status/681606575983702017

mikutter 3.3.Xで設定画面を開くと落ちる問題を回避するプラグイン書きました https://t.co/3MZMWxPv38

手っ取り早く回避したい方はこちら?

Osamu Koga さんが8年以上前に更新

%記法の使い方が間違ってますね。 http://docs.ruby-lang.org/ja/2.0.0/doc/spec=2fliteral.html#percent
とりあえず今pushした 850104c2 で直っていると思います。

toshi_a 初音 さんが8年以上前に更新

  • ステータス新規 から 実装待ち に変更

これみたいですね。既に3.3系を起動してしまった人がアップデートで直るようにしたいので、少し手を加えます。

toshi_a 初音 さんが8年以上前に更新

  • ステータス実装待ち から レビュー待ち に変更
  • 担当者Izumi Tsutsui にセット

これで、一度3.3で起動してしまった人でも大丈夫でした。一応確認してもらえますか。

toshi_a 初音 さんが8年以上前に更新

  • トラッカーバグ から 致命的 に変更

Izumi Tsutsui さんが8年以上前に更新

  • ステータスレビュー待ち から 解決 に変更
  • 担当者Izumi Tsutsui から toshi_a 初音 に変更

toshi_a 初音 さんは書きました:

これで、一度3.3で起動してしまった人でも大丈夫でした。一応確認してもらえますか。

以下で確認してみました。OKと思います。


  • 非公式 pkgsrc でmikutter 3.3.1 をインストール
  • ~/.mikutter を削除
  • core/plugin/activity/activity.rb を 3c04005e にする
  • mikutter --debug で起動
  • 設定ボタンを押す
    • → undefined method `include?' for ... で落ちる
  • mikutter --debug で起動
  • 設定ボタンを押す
    • → undefined method `include?' for ... で落ちる
  • core/plugin/activity/activity.rb を 850104c2 にする
  • mikutter --debug で起動
  • 設定ボタンを押す
    • → undefined method `include?' for ... で落ちる
  • mikutter --debug で起動
  • 設定ボタンを押す
    • → undefined method `include?' for ... で落ちる
  • core/plugin/activity/activity.rb を b574cb05 にする
  • mikutter --debug で起動
  • 設定ボタンを押す
    • → 設定画面が正常に出る
  • ~/.mikutter を削除
  • core/plugin/activity/activity.rb を 850104c2 にする
  • mikutter --debug で起動
  • 設定ボタンを押す
    • → 設定画面が正常に出る

失った信頼が戻ってこないように、対策コードも永遠に残ってしまうのですね……。

toshi_a 初音 さんが8年以上前に更新

  • ステータス解決 から 終了 に変更

他の形式にエクスポート: Atom PDF