This reduces chances of errors where consumers of strings mutate inputs and reduces memory usage of the app. Test suite passes now, but there may be some stuff left, so we will run a few sites on a branch prior to merging
Before: Total allocated: 257909321 bytes (2514134 objects) Total retained: 39681579 bytes (343387 objects) allocated memory by gem ----------------------------------- 42875979 rss retained memory by gem ----------------------------------- 2080188 rss retained objects by gem ----------------------------------- 13052 rss After: Total allocated: 210562047 bytes (2252030 objects) Total retained: 37433816 bytes (328635 objects) ---- So, 2 less megabytes on boot and 13000 objects stuck in ruby heaps forever.