Ruby

2021/02/18 今週の気になった bugs.ruby のチケット

内容は適当です。 今週と言っても今週みかけたチケットなだけでチケット自体は昔からあるやつもあります。 あくまでも『わたしが気になったチケット』で全ての bugs.ruby のチケットを載せているわけではありません。 先週のまとめ [Misc #17591] Test frame…

Ruby で ["homu", "mami", "mado"].sum を呼ぶとエラーになる

今日の知見です。 Array#sum メソッドは要素を #+ で結合してその結果を返します。 p [1, 3, 5, 7].sum # => 16 また Array#sum に引数を渡すことで足し込む値の初期値を指定することもできます。 p [1, 3, 5, 7].sum(100) # => 116 ["homu", "mami", "mado"…

2021/02/11 今週の気になった bugs.ruby のチケット

内容は適当です。 今週と言っても今週みかけたチケットなだけでチケット自体は昔からあるやつもあります。 あくまでも『わたしが気になったチケット』で全ての bugs.ruby のチケットを載せているわけではありません。 先週のまとめ [Bug #17424] Interactive…

2021/02/04 今週の気になった bugs.ruby のチケット

内容は適当です。 今週と言っても今週みかけたチケットなだけでチケット自体は昔からあるやつもあります。 あくまでも『わたしが気になったチケット』で全ての bugs.ruby のチケットを載せているわけではありません。 先週のまとめ [Bug #10593] Emoji is be…

2021/01/28 今週の気になった bugs.ruby のチケット

内容は適当です。 今週と言っても今週みかけたチケットなだけでチケット自体は昔からあるやつもあります。 あくまでも『わたしが気になったチケット』で全ての bugs.ruby のチケットを載せているわけではありません。 先週のまとめ [PR 4113] Add --warning=…

Ruby で UTF-8 の文字列を SJIS で文字化けさせたり復元したりする

以下の記事を知人と話していたら思ったよりも盛り上がったので覚書。 新春!文字化けクイズ | Raksul ENGINEERING ちなみにクイズのネタバレがあるので見たくない人は読まないでね!! 縺ゅ¢縺セ縺励※縺翫a縺ァ縺ィ縺 みたいな文字化けした文字列を Ruby で生…

2021/01/21 今週の気になった bugs.ruby のチケット

内容は適当です。 今週と言っても今週みかけたチケットなだけでチケット自体は昔からあるやつもあります。 あくまでも『わたしが気になったチケット』で全ての bugs.ruby のチケットを載せているわけではありません。 先週のまとめ [Bug #17530] irb handles …

2021/01/14 今週の気になった bugs.ruby のチケット

内容は適当です。 今週と言っても今週みかけたチケットなだけでチケット自体は昔からあるやつもあります。 あくまでも『わたしが気になったチケット』で全ての bugs.ruby のチケットを載せているわけではありません。 先週のまとめ [Feature #17485] Keyword…

2021/01/07 今週の気になった bugs.ruby のチケット

内容は適当です。 今週と言っても今週みかけたチケットなだけでチケット自体は昔からあるやつもあります。 あくまでも『わたしが気になったチケット』で全ての bugs.ruby のチケットを載せているわけではありません。 先週のまとめ [Feature #17471] send_if…

M1 の MacBook で rbenv + Ruby 2.6.6 をビルドする

rbenv で Ruby 2.7 や 3.0 のビルドは問題なかったんですが 2.6 で失敗したのでその対処方法を書いておきます。 rbenv で 2.6.6 をインストールする rbenv で 2.6.6 をインストールしようとしたらエラーになります。 $ rbenv install 2.6.6 Downloading open…

【一人 cugs.ruby Advent Calendar 2020】[Feature #17016] Enumerable#scan_left【25日目】

一人 bugs.ruby Advent Calendar 2020 25日目の記事になります。 長かったアドベントカレンダーも今日で最後です。 [Feature #17016] Enumerable#scan_left このチケットは Enumerable#scan_left を追加する提案です。 Enumerable#scan_left は Enumerable#i…

2020/12/17 今週の気になった bugs.ruby のチケット

内容は適当です。 今週と言っても今週みかけたチケットなだけでチケット自体は昔からあるやつもあります。 あくまでも『わたしが気になったチケット』で全ての bugs.ruby のチケットを載せているわけではありません。 先週のまとめ [Feature #17303] Remove …

2020/12/24 今週の気になった bugs.ruby のチケット

内容は適当です。 今週と言っても今週みかけたチケットなだけでチケット自体は昔からあるやつもあります。 あくまでも『わたしが気になったチケット』で全ての bugs.ruby のチケットを載せているわけではありません。 先週のまとめ [Bug #17030] Enumerable#…

【一人 bugs.ruby Advent Calendar 2020】[Bug #17423] `Prepend` should prepend a module before the class【24日目】

一人 bugs.ruby Advent Calendar 2020 24日目の記事になります。 [Bug #17423] Prepend should prepend a module before the class このブログでも何回か紹介しているんですが Ruby 3.0 では Module#include / #prepend の挙動がちょっと変わります。 特に以…

【一人 bugs.ruby Advent Calendar 2020】[Feature #16986] Anonymous Struct literal【23日目】

【一人 bugs.ruby Advent Calendar 2020】[Feature #16986] Anonymous Struct literal【23日目】 一人 bugs.ruby Advent Calendar 2020 23日目の記事になります。 [Feature #16986] Anonymous Struct literal これは Struct.new(:a, :b).new(1, 2) を ${ a: …

【一人 bugs.ruby Advent Calendar 2020】[Feature #17004] Provide a way for methods to omit their return value【22日目】

一人 bugs.ruby Advent Calendar 2020 22日目の記事になります。 [Feature #17004] Provide a way for methods to omit their return value このチケットは任意のメソッドが戻り値を受け取るか受け取らないかを判定するメソッドの追加を追加するという内容の…

【Ruby 3.0 Advent Calendar 2020】Ruby 3.0 で WEBrick と SDBM が標準ライブラリから削除される【22日目】

Ruby 3.0 Advent Calendar 2020 22日目の記事になります。 この前の銀座Rails で完全に話忘れてたのでここに書いておきます。 Ruby 3.0 で WEBrick と SDBM が標準ライブラリから削除される 表題のとおりですが Ruby 3.0 から標準ライブラリの WEBrick と SD…

【一人 bugs.ruby Advent Calendar 2020】[Feature #17292] id outputed by inspect and to_s output does not allow to find actual object_id and vice-versa【21日目】

一人 bugs.ruby Advent Calendar 2020 21日目の記事になります。 [Misc #17199] id outputed by inspect and to_s output does not allow to find actual object_id and vice-versa Ruby 2.7 から #inspect ( #to_s ) と #__id__ が返すアドレスの関連性が一…

【一人 bugs.ruby Advent Calendar 2020】[Bug #17017] Range#max & Range#minmax incorrectly use Float end as max【20日目】

一人 bugs.ruby Advent Calendar 2020 20日目の記事になります。 誤解しないように最初に書いておくとこのチケットによる Ruby 3.0 への影響はありません。 [Bug #17017] Range#max & Range#minmax incorrectly use Float end as max このチケットは以下のよ…

【一人 bugs.ruby Advent Calendar 2020】[Feature #17292] Hash Shorthand / Punning【19日目】

一人 bugs.ruby Advent Calendar 2020 19日目の記事になります。 [Feature #17292] Hash Shorthand / Punning これは { a:, b:, c: } を { a: a, b: b, c: c } のように展開しようという提案です。 a = 1 b = 2 c = 3 { a:, b:, c: } # => { a: 1, b: 2, c: …

【一人 bugs.ruby Advent Calendar 2020】[Bug #16852] Refining Enumerable fails with ruby 2.7【18日目】

一人 bugs.ruby Advent Calendar 2020 18日目の記事になります。 [Bug #16852] Refining Enumerable fails with ruby 2.7 Ruby 2.7 系の Refinements のバグ報告チケットになります。 元々は以下のように RSpec での再現コードで報告されていた。 # file: re…

【一人 bugs.ruby Advent Calendar 2020】[Feature #17371] Reintroduce `expr in pat`【17日目】

一人 bugs.ruby Advent Calendar 2020 17日目の記事になります。 [Feature #17371] Reintroduce expr in pat これは1行 in を再度入れ直そう、という旨のチケットです。 これ、ちょっとコンテキストが複雑なんですが、元々 Ruby 2.7 で 1行 in という機能が…

【一人 bugs.ruby Advent Calendar 2020】[Bug #16919] IRB でマジックコメントの : の後に任意の文字を入力するとエラーが発生する【15日目】

一人 bugs.ruby Advent Calendar 2020 15日目の記事になります。 [Bug #16919] IRB でマジックコメントの : の後に任意の文字を入力するとエラーが発生する そのまんまの意味なんですが Ruby 2.7 の irb 上で #coding:utf-8 を入力するとクラッシュするとい…

【一人 bugs.ruby Advent Calendar 2020】[Feature #12901] Anonymous functions without scope lookup overhead【14日目】

一人 bugs.ruby Advent Calendar 2020 14日目の記事になります。 [Feature #17054] Some NilClass methods are faster if implemented in Ruby これは NilClass#to_i などを C言語じゃなくて Ruby で実装することで高速化するというチケットになります。 何…

【一人 bugs.ruby Advent Calendar 2020】[Feature #12901] Anonymous functions without scope lookup overhead【13日目】

一人 bugs.ruby Advent Calendar 2020 13日目の記事になります。 [Feature #12901] Anonymous functions without scope lookup overhead Proc などを定義する際に『外部のスコープを参照しないこと』を明示化することでオーバーヘッドをなくしパフォーマンス…

【一人 bugs.ruby Advent Calendar 2020】[Feature #17315] Hash #transform【12日目】

一人 bugs.ruby Advent Calendar 2020 12日目の記事になります。 [Feature #17315] Hash #transform これは Hash の中身を変更して Hash を返す Hash#transform Hash#transform! を追加する提案です。 h = {'name' => 'dominic ', 'email' => 'dominic.mail.…

【一人 bugs.ruby Advent Calendar 2020】[Feature #17330] Object#non【11日目】

一人 bugs.ruby Advent Calendar 2020 11日目の記事になります。 [Feature #17330] Object#non 以下のように実装された Object#non メソッドを新しく追加する提案です。 class Object # ブロックの戻り値が偽ならレシーバを返し、そうでないなら nil を返す …

2020/12/10 今週の気になった bugs.ruby のチケット

内容は適当です。 今週と言っても今週みかけたチケットなだけでチケット自体は昔からあるやつもあります。 あくまでも『わたしが気になったチケット』で全ての bugs.ruby のチケットを載せているわけではありません。 先週のまとめ [Feature #17361] lambda(…

【一人 bugs.ruby Advent Calendar 2020】[Feature #17316] On memoization【10日目】

一人 bugs.ruby Advent Calendar 2020 10日目の記事になります。 [Feature #17316] On memoization Ruby でインスタンス変数を初期化する場合、以下のように ||= 演算子を使うことが多いです。 # @foo の初期値として最初にメソッドが呼び出された時に some_…

【一人 bugs.ruby Advent Calendar 2020】[Bug #17058] Array#delete_if doesn't change array instantly【9日目】

一人 bugs.ruby Advent Calendar 2020 9日目の記事になります。 [Feature #13820] Add a nil coalescing operator このチケットは Ruby に ?? 演算子を追加しよう、というチケットになります。 ?? 演算子は || 演算子と似ているのですが『左辺が nil のとき…