Slide 20
Slide 20 text
Enumerable#each_cons / each_slice
の戻り値が変わった
Enumerable#each_cons / each_slice
の戻り値が nil
からレシーバに変わった
1 [1, 2, 3].each_cons(2){}
2 # 3.0 => nil
3 # 3.1 => [1, 2, 3]
4
5 [1, 2, 3].each_slice(2){}
6 # 3.0 => nil
7 # 3.1 => [1, 2, 3]
これの影響で RuboCop が壊れた
修正コミット
1 def block_end_align_target(node)
2 lineage = [node, *node.ancestors]#
以下のようなコードが書かれていた
3 target = lineage.each_cons(2) do |current, parent|
4 break current if end_align_target?(current, parent)
5 end
6
7 target || lineage.last
8 end
` `
` ` ` `