This week in Rails
This is detective 🕵 Prathamesh reporting from the secret chambers of Rails.We were busy investigating many 🐛🐛🐛🐛🐛 this week and I am happy to announce that we have successfully solved many mysterious cases 💪
Great 🔍 work by 22 detectives who solved mysterious cases this week. Also welcome to 4 new 🕵 in our growing list of contributors!
Ruby/Rails applications not vulnerable to HTTProxy security issue
The Phusion team found out that Ruby, Rails and Rack applications are not affected by the recent security issue related to HTTProxy. Great 🕵 investigation!
Use already loaded records in the finder methods
If the records of the finder queries are already loaded, then Rails will use them instead of querying again.
Correctly return associated_table when associated_with? is true
This fixes an issue related to has and belongs to many associations failing when the association name and table name are the same.
Remove circular join references in join_dependency
This fixes a stack level too deep crash when a circular join on the same table is used with the current scope.
Correct the behavior of virtual attributes on models loaded from the database
Before this change, virtual attributes not backed by the database would throw an error unless explicitly initialized. This change fixes it and also cleans up the implementation for virtual attributes.
Reset rack.input when the environment is scrubbed for the next request
Before this change, parameters sent via post requests would leak across requests in the Action Controller tests. This change prevents that by cleaning rack.input at the end of the request scrubbing.
Changed partial rendering to allow collections which don't implement to_ary
This change allows collections which do not implement to_ary also to be used for rendering partials. It allows instances of Enumerator or Enumerable to be used for rendering partials.
That's it from This Week in Rails! There were many other great contributions and investigations too numerous to list here, but feel free to check them out!
Until next week! 🕵 🔍 💪