A new test runner – bin/rails test – has landed on master. This is the successor to the rake-based test runner, and includes a few rspec-inspired features that are not part of minitest, like running by line number, rerun snippets, or logs displayed with unicorns filled with rainbow colors.
In Rack, request#fullpath returns the full path including the query string. This change uses fullpath from rack to avoid doing the same thing again in Rails. As a result, we also reduced some object allocations!
In MySQL 5.7.6+, the default value for optimizer_switch has changed to derived_merge=on, which causes some issue with the subqueries generated by Rails. This change fixes that by adding a DISTINCT to the subqueries.
That's all for This week in Rails. As always, there are more changes than we have room to cover here, but feel free to check them out yourself!
P.S. If you enjoyed this newsletter, why not share it with your friends? :) If you wish to be part of this project please don't hesitate to contact Godfrey – there're a lot of ways you could help make this newsletter more awesome!