Fix for Sinatra 1.4.5's issue #951
NOTE THAT THIS IS UNNECESSARY FOR 1.4.6+, BECAUSE THE BUG IS FIXED IN THOSE RELEASES!!
How to know if you hit this
You will know if you hit this, because you'll get an error message like
NoMethodError: undefined method `join' for #<String:0x007f62c3e6fb90>
Or maybe one like this:
Unexpected error while processing request: undefined method `join' for #<String:0x007fa3d244d1f8>
If you want to understand it better, the issue is here, and I traced its history and explained what happened and why here.
If you want to understand why this fixes the issue, then you'll need to learn the Ruby Object Model. This is a class that I teach, come and learn with us at the Turing School of Software and Design!
Installing
If you're using Bundler, then add this to your Gemfile:
gem 'sinatra-fix_951', require: 'sinatra/fix_951'
If you aren't using Bundler, then install it from the command-line:
$ gem install sinatra-fix_951
And then require it wherever you're currently requiring Sinatra:
require 'sinatra/fix_951'
LICENSE
MIT, to mirror Sinatra's license.