バグ #1434
closedTwitter プラグイン導入後の初回起動で Twitter 認証が完了しない
Description
NetBSD/i386 9.0版のておくれ Live Image のテスト中に起きたのでとりあえず報告。
- pkgsrc の mikutter 4.0.4 を入れる
- mikutter の twitter_bootstrap 相当である mikutter-plugins-twitter の pkgsrc パッケージを入れる
- この状態で一度も mikutter を起動していない
- mikutter を起動
- 「Worldを追加」で Twitter認証のURLボタンを押してブラウザで認証してトークンを入力する(添付の画面)
- OKを押す
⇒本来であれば「アカウント追加」のウインドウの続きで「このアカウントでログインしますか」が出るべきところで、「アカウント追加」のウインドウが閉じてしまう(落ちている?) - その状態でもう一度「Worldを追加」からやり直しても同じくトークン入力後に「アカウント追加」のウインドウが落ちる
- 一度 mikutter を終了して、再度 mikutter を起動して「Worldを追加」からもう一度Twitter認証すると、トークン入力後に本来の「このアカウントでログインしますか」に遷移する
バグ #1328: チュートリアルで Twitterの認証待ちのあと認証が完了してもチュートリアルが進行しない
の問題と似ている気がしますが、今回は「Worldを追加」をやり直すだけではダメで、
一度 mikutter を終了して 2回めの起動でないと進行しません。
pkgsrc オレオレ環境なので入っている gem は以下
ruby26-addressable-2.7.0 ruby26-atk-3.4.1 ruby26-base-2.6.5nb1 ruby26-cairo-1.16.5 ruby26-cairo-gobject-3.4.1 ruby26-delayer-1.1.2 ruby26-delayer-deferred-2.1.3 ruby26-diva-1.0.2 ruby26-gdk_pixbuf2-3.4.1 ruby26-gettext-3.3.5 ruby26-gio2-3.4.1 ruby26-glib2-3.4.1 ruby26-gobject-introspection-3.4.1 ruby26-gtk2-3.4.1 ruby26-httpclient-2.8.3 ruby26-instance_storage-1.0.0 ruby26-locale-2.1.3 ruby26-memoist-0.16.2 ruby26-mikutter-4.0.4 ruby26-mikutter-plugins-twitter-4.0 ruby26-mini_portile2-2.4.0 ruby26-moneta-1.2.0 ruby26-native-package-installer-1.0.6 ruby26-nokogiri-1.10.8 ruby26-oauth-0.5.4 ruby26-pango-3.4.1 ruby26-pkg-config-1.3.7 ruby26-pluggaloid-1.2.0 ruby26-public_suffix-4.0.3 ruby26-simpleidn-0.0.9 ruby26-text-1.3.1 ruby26-twitter-text-simpleidn-3.0.0.0 ruby26-typed-array-0.1.2 ruby26-unf-0.1.4 ruby26-unf_ext-0.0.7.5
Twitter 関連プラグインは 2020/2/17 時点でタグを打たれたものですが、DMプラグインは除いています。
詳細は以下を参照
http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/net/mikutter-plugins-twitter/Makefile?rev=1.2&content-type=text/x-cvsweb-markup&only_with_tag=MAIN
Files
Updated by Izumi Tsutsui over 4 years ago
~/.mikutter/settings を削除した状態で
--debug 付きで起動して認証を進めたところ、
「このアカウントでログインしますか」まで進んだあと
以下のエラーで落ちました。
warning: /usr/pkg/lib/ruby/2.6.0/rubygems/deprecate.rb:62:in `block (2 levels) in deprecate': NOTE: Plugin::Twitter::World#user is deprecated; use user_obj.idname instead. It will be removed on or after 2018-05-01. Plugin::Twitter::World#user called from {MIKUTTER_DIR}/plugin/guide/guide.rb:119. notice: {MIKUTTER_DIR}/core/serialthread.rb:48:in `force_exit!': all Serial Thread Group jobs canceled. notice: {MIKUTTER_DIR}/mikutter.rb:91:in `boot!': raise mainloop exception `NoMethodError' notice: {MIKUTTER_DIR}/mikutter.rb:96:in `error_handling!': catch NoMethodError notice: {MIKUTTER_DIR}/core/configloader.rb:34:in `block in <module:ConfigLoader>': configloader: wrote 3 keys (UserConfig::account_crypt_key, UserConfig::achievement_took, Plugin::guide_guide_sequence) Traceback (most recent call last): 16: from /usr/pkg/share/mikutter/mikutter.rb:115:in `<main>' 15: from /usr/pkg/share/mikutter/mikutter.rb:79:in `boot!' 14: from /usr/pkg/share/mikutter/plugin/gtk/mainloop.rb:10:in `mainloop' 13: from /usr/pkg/share/mikutter/plugin/gtk/mainloop.rb:10:in `catch' 12: from /usr/pkg/share/mikutter/plugin/gtk/mainloop.rb:12:in `block in mainloop' 11: from /usr/pkg/share/mikutter/plugin/gtk/mainloop.rb:12:in `loop' 10: from /usr/pkg/share/mikutter/plugin/gtk/mainloop.rb:23:in `block (2 levels) in mainloop' 9: from /usr/pkg/lib/ruby/gems/2.6.0/gems/delayer-1.1.2/lib/delayer.rb:38:in `method_missing' 8: from /usr/pkg/lib/ruby/gems/2.6.0/gems/delayer-1.1.2/lib/delayer/extend.rb:109:in `run_once' 7: from /usr/pkg/lib/ruby/gems/2.6.0/gems/delayer-1.1.2/lib/delayer/extend.rb:117:in `run_once_without_pop_reserve' 6: from /usr/pkg/lib/ruby/gems/2.6.0/gems/delayer-1.1.2/lib/delayer/procedure.rb:26:in `run' 5: from /usr/pkg/share/mikutter/plugin/rest/rest.rb:34:in `block in start' 4: from /usr/pkg/share/mikutter/plugin/rest/rest.rb:34:in `each' 3: from /usr/pkg/share/mikutter/plugin/rest/rest.rb:35:in `block (2 levels) in start' 2: from /usr/pkg/share/mikutter/plugin/rest/rest.rb:35:in `each' 1: from /usr/pkg/share/mikutter/plugin/rest/rest.rb:35:in `block (3 levels) in start' /usr/pkg/share/mikutter/plugin/rest/rest.rb:9:in `block in define_periodical_executer': undefined method `+' for nil:NilClass (NoMethodError) teokure-%
実績とコンフィグの書き込み関連の順番とかでしょうか。
Updated by toshi_a 初音 over 4 years ago
アカウント追加のウィンドウが閉じてしまうのは原因わかりません。
~/.mikutter/settings を削除した状態で
--debug 付きで起動して認証を進めたところ、
「このアカウントでログインしますか」まで進んだあと
以下のエラーで落ちました。
パッと見た感じ、UserConfigの、:retrieve_interval_friendtlと:retrieve_interval_mentionのデフォルト値が設定されなくなったことが原因かもしれません。
Updated by toshi_a 初音 over 4 years ago
- Status changed from 分類待ち to 実装待ち
バグだとは思うので、誰かやってくれることを期待して却下はしないでおきます
Updated by Shibafu Midorino over 4 years ago
Updated by Izumi Tsutsui over 4 years ago
Updated by Izumi Tsutsui over 4 years ago
- Status changed from 実装待ち to 終了
https://github.com/mikutter/rest/issues/1#issuecomment-601491517 のとおり
rest プラグイン v1.1 で修正確認しました