操作
機能 #808
完了Enumerable#to_hash を定義しないようにする
開始日:
2016-01-10
期日:
進捗率:
0%
プラグイン名:
説明
core/utils.rb で Enumerable#to_hash が定義されているため、Ruby 2.2 以降でオプション引数とキーワード引数を組み合わせた以下のコードが奇妙な挙動をします。
def test(x = 1, y: 2) p x end test(["abc"]) # => {"a"=>"b"}
(この影響で Ruby 2.4.0dev で mikutter が起動しなくなりました(OptionParser#parse! がキーワード引数を受け付けるようになった))
るりまによると暗黙的に変換されても構わない場合のみ定義するべきだそうなので、Enumerable#to_hash は削除するべきだと思います。
http://docs.ruby-lang.org/ja/2.3.0/method/Object/i/to_hash.html
とりあえず、私の環境では Enumerable#to_hash をそのまま削除しても正常に動作しているように見えます。
toshi_a 初音 さんがほぼ9年前に更新
- トラッカー を バグ から 機能 に変更
- ステータス を 新規 から 実装待ち に変更
- 担当者 を toshi_a 初音 にセット
- 対象バージョン を 3.4 にセット
これは流石に経緯を覚えてないやつですね…。追加したのも2010年末ということだし、用途も不明なので消します。
一応サードパーティプラグインが使っている可能性がないこともないので、3.4で削除ということにします。
toshi_a 初音 さんがほぼ9年前に更新
- ステータス を 実装待ち から 終了 に変更
こちらでも問題ないと判断したので削除しました。問題自体は単純だったので齟齬もないと思うので、チケット終了しておきます。
操作