https://dev.mikutter.hachune.net/
https://dev.mikutter.hachune.net/favicon.ico?1619448608
2017-06-25T10:34:50Z
やること
mikutter - 環境対応 #1051: memoistを1.16にアップデートすると起動しなくなる
https://dev.mikutter.hachune.net/issues/1051?journal_id=2588
2017-06-25T10:34:50Z
toshi_a 初音
toshi.alternative@gmail.com
<ul></ul><p>再現できました。対応難しそうなら一旦は<=1.15としますが、最終的には1.16でも問題なく使えるようにします。</p>
<p>かつてmemoizable gemを使っていた時はKernelモジュールにincludeするとすべてのメソッドがメモ化可能になっていて、memoist gemに乗り換えたとき(<a class="issue tracker-6 status-5 priority-3 priority-lowest closed" title="最適化: memoize deprecated (終了)" href="https://dev.mikutter.hachune.net/issues/755">#755</a>)も同じことが出来たのですが、コードを読んでいるとその方法は想定されてないのかな(READMEにもそういう使い方に関する言及がない)。<br />経緯の想像はつくけれど、かなり多くの場所に <code>extend Memoist</code> を入れなければならない?</p>
mikutter - 環境対応 #1051: memoistを1.16にアップデートすると起動しなくなる
https://dev.mikutter.hachune.net/issues/1051?journal_id=2596
2017-06-26T13:48:19Z
toshi_a 初音
toshi.alternative@gmail.com
<ul><li><strong>担当者</strong> を <i>toshi_a 初音</i> にセット</li></ul><p>一応すべてのmemoize使っているクラスにextend Memoistを入れたら起動するけど、以前まではmemoizeはmikutterのすべての場所で使えたので、これは非互換な変更となり、一部サードパーティプラグインがクラッシュする可能性があります。<br />mikutter 3.5系は memoist <1.16 とするのが良いんですが、だいたいのディストリにとって意味がないので、memoist 1.16でも同じように動作させる方法を探っています。</p>
mikutter - 環境対応 #1051: memoistを1.16にアップデートすると起動しなくなる
https://dev.mikutter.hachune.net/issues/1051?journal_id=2599
2017-06-26T20:40:59Z
toshi_a 初音
toshi.alternative@gmail.com
<ul><li><strong>ステータス</strong> を <i>新規</i> から <i>実装待ち</i> に変更</li></ul><p>二案。</p>
<a name="memoistを利用するすべてのModuleにMemoistをextendする-topic1051-memoist-116"></a>
<h1 >memoistを利用するすべてのModuleにMemoistをextendする (topic/1051-memoist-1.16)<a href="#memoistを利用するすべてのModuleにMemoistをextendする-topic1051-memoist-116" class="wiki-anchor">¶</a></h1>
<p>正しい使い方に愚直に合わせる。vanillaでは正しく動作しているがサードパーティプラグインの互換性問題がある。</p>
<a name="Modulememoize-が呼ばれたらMemoistをextendする-topic1051-memoist-auto-extend"></a>
<h1 >Module#.memoize が呼ばれたらMemoistをextendする (topic/1051-memoist-auto-extend)<a href="#Modulememoize-が呼ばれたらMemoistをextendする-topic1051-memoist-auto-extend" class="wiki-anchor">¶</a></h1>
<p>互換性の問題を解決したもの。<br />ゴリ押し感が強いので、長期に渡ってはやりたくない気がする。Module#.memoizeが呼ばれたら警告を表示するなどして、基本的にMemoistをextendしてもらうようにするか。</p>
mikutter - 環境対応 #1051: memoistを1.16にアップデートすると起動しなくなる
https://dev.mikutter.hachune.net/issues/1051?journal_id=2604
2017-06-30T21:18:27Z
toshi_a 初音
toshi.alternative@gmail.com
<ul></ul><p>今後は、memoizeメソッドを利用する場合は、そのClassやModuleにMemoistをextendするという、memoistのマニュアルに書いてある方法をmikutterプラグインにも利用してもらうようにします。そのうえで、Module#.memoizeも実装しておいて、extendしていない旧来のプラグインも利用できるようにします。その場合はmemoizeが呼ばれた時に警告を発生させます。</p>
<p>この警告が表示されるようになってしまったプラグインは、<a href="https://github.com/matthewrudy/memoist" class="external">memoistの使い方</a> を参考に書き直すべきです。memoistはもともと利用するClassやModuleにextendするのが正しい使い方だったので、そのような書き換えを行っても、memoist 1.15以前+mikutter 3.5.8以前を利用している環境でも正しく動きます。</p>
mikutter - 環境対応 #1051: memoistを1.16にアップデートすると起動しなくなる
https://dev.mikutter.hachune.net/issues/1051?journal_id=2605
2017-06-30T21:20:14Z
toshi_a 初音
toshi.alternative@gmail.com
<ul><li><strong>ステータス</strong> を <i>実装待ち</i> から <i>レビュー待ち</i> に変更</li><li><strong>担当者</strong> を <i>toshi_a 初音</i> から <i>ncaq エヌユル</i> に変更</li></ul><p>hotfix/3.5 ブランチにmergeしました。年のためそちらの環境でもこのブランチでの確認をお願いします。<br />もし正しく動作すればチケットのステータスを「終了」に、なにか問題が発生する場合は「まだダメ」に変えたうえで、どういった問題が起こったかを注記に書いてください。</p>
mikutter - 環境対応 #1051: memoistを1.16にアップデートすると起動しなくなる
https://dev.mikutter.hachune.net/issues/1051?journal_id=2619
2017-07-05T07:59:05Z
ncaq エヌユル
ncaq@ncaq.net
<ul><li><strong>ステータス</strong> を <i>レビュー待ち</i> から <i>終了</i> に変更</li></ul><p>hotfix/3.5での起動を確認しました.<br />返信が遅くなり申し訳ありません.</p>