Skip to content

Instantly share code, notes, and snippets.

@brixen
Last active August 29, 2015 14:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save brixen/8e53247e368117a3a11f to your computer and use it in GitHub Desktop.
Save brixen/8e53247e368117a3a11f to your computer and use it in GitHub Desktop.

I ran this in Rubinius (rubinius 2.2.6.n78 (2.1.0 ac8f0e2f 2014-03-19 JI) [x86_64-darwin13.1.0]) and MRI 2.1.0 (ruby 2.1.0p0 (2013-12-25 revision 44422) [x86_64-darwin13.0])

These two lines in the backtraces refer to the same source code location in Parade:

The next line in the Rubinius backtrace follows (ie, we are in String#gsub): https://github.com/rubinius/rubinius/blob/master/kernel/common/string.rb#L1686

I have no clue (with superficial inspection) how we get to the next line in MRI: https://github.com/burtlo/parade/blob/master/lib/parade/parsers/dsl.rb#L36

However, MRI and Rubinius appear to have the same behavior for String#gsub given what content would be in this code: https://github.com/burtlo/parade/blob/master/lib/parade/parsers/markdown_image_paths.rb#L35

MRI:

$ ruby -v -e 'File.read("hello/hello.md").gsub(/./) { |x| p x }'
ruby 2.1.0p0 (2013-12-25 revision 44422) [x86_64-darwin13.0]
-e:1:in `gsub': invalid byte sequence in US-ASCII (ArgumentError)
	from -e:1:in `<main>'

Rubinius:

$ ruby -v -e 'File.read("hello/hello.md").gsub(/./) { |x| p x }'
rubinius 2.2.6.n78 (2.1.0 ac8f0e2f 2014-03-19 JI) [x86_64-darwin13.1.0]
An exception occurred evaluating command line code:

    invalid byte sequence in US-ASCII (ArgumentError)

Backtrace:

                                  String#gsub at kernel/common/string.rb:1686
                     { } in Object#__script__ at -e:1
  Rubinius::BlockEnvironment#call_on_instance at kernel/common/block_environment.rb:53
                Kernel(Rubinius::Loader)#eval at kernel/common/eval.rb:176
                       Rubinius::Loader#evals at kernel/loader.rb:616
                        Rubinius::Loader#main at kernel/loader.rb:830

While I'd be happy to see someone dig into WTF is resulting in the MRI backtrace, I have no interest in doing so. Given the code in Parade and tracing it to the same point in https://github.com/burtlo/parade/blob/master/lib/parade/parsers/markdown_image_paths.rb#L35, I can't see how the .gsub call can succeed in MRI unless the encoding issue is fixed.

The fact that bunk data can pass through the IO boundary and get deep into the application code before blowing up in some inscrutable way is the very joy and wonder of MRI's utterly broken encoding system.

$ bundle exec parade
--------------------------------------------------------------------------------
Please install RMagick:
$ gem install rmagick
RMagick is required for:
* Static output to ensure images are included with the documents
* Web rendering, auto-re-sizing of images
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Please install PDFKit and wkhtmltopdf-binary:
$ gem install pdfkit
$ gem install wkhtmltopdf-binary
PDFKit and wkhtmltopdf-binary are required to provide PDF output
--------------------------------------------------------------------------------
-------------------------
Your Parade presentation is now starting up.
To view it visit [ http://localhost:9090 ]
To view a printable version [ http://localhost:9090/print ]
-------------------------
[2014-05-02 10:49:34] INFO WEBrick 1.3.1
[2014-05-02 10:49:34] INFO ruby 2.1.0 (2014-03-19) [x86_64-darwin13.1.0]
== Sinatra/1.4.5 has taken the stage on 9090 for development with backup from WEBrick
[2014-05-02 10:49:34] INFO WEBrick::HTTPServer#start: pid=75487 port=9090
ArgumentError - invalid byte sequence in US-ASCII:
kernel/common/string.rb:1686:in `gsub'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/parsers/markdown_image_paths.rb:35:in `parse'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/parsers/slides_file_content_parser.rb:11:in `parse'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/parsers/presentation_directory_parser.rb:23:in `parse'
kernel/bootstrap/array.rb:87:in `map'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/parsers/presentation_directory_parser.rb:22:in `parse'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/parsers/presentation_filepath_parser.rb:14:in `parse'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/parsers/dsl.rb:75:in `section'
kernel/bootstrap/array.rb:87:in `map'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/parsers/dsl.rb:73:in `section'
(eval):2:in `parse'
kernel/common/block_environment.rb:53:in `call_on_instance'
kernel/common/eval.rb:176:in `eval'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/parsers/dsl.rb:36:in `parse'
kernel/common/eval.rb:43:in `instance_eval'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/parsers/dsl.rb:39:in `parse'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/parsers/dsl_file_parser.rb:11:in `parse'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/parsers/presentation_file_parser.rb:15:in `parse'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/parsers/presentation_directory_parser.rb:19:in `parse'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/server.rb:85:in `load_presentation'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/server.rb:174:in `presentation'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/server.rb:178:in `title'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/../views/header.erb:2:in `__tilt_202112'
kernel/common/eval.rb:43:in `instance_eval'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/../views/header.erb:-5:in `__tilt_202112'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/../views/header.erb:-7:in `__tilt_202112'
kernel/common/method.rb:71:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/tilt-1.4.1/lib/tilt/template.rb:170:in `evaluate'
/Users/bshirai/.gem/rbx/2.1.0/gems/tilt-1.4.1/lib/tilt/template.rb:103:in `render'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:814:in `render'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:665:in `erb'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/../views/index.erb:7:in `__tilt_202112'
kernel/common/eval.rb:43:in `instance_eval'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/../views/index.erb:-5:in `__tilt_202112'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/../views/index.erb:-7:in `__tilt_202112'
kernel/common/method.rb:71:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/tilt-1.4.1/lib/tilt/template.rb:170:in `evaluate'
/Users/bshirai/.gem/rbx/2.1.0/gems/tilt-1.4.1/lib/tilt/template.rb:103:in `render'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:814:in `render'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:665:in `erb'
/Users/bshirai/.gem/rbx/2.1.0/gems/parade-0.10.2/lib/parade/server.rb:216:in `__script__'
kernel/common/method.rb:71:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1603:in `compile!'
kernel/bootstrap/proc.rb:20:in `[] (call)'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:966:in `route!'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:985:in `route_eval'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:966:in `route!'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1006:in `process_route'
kernel/bootstrap/proc.rb:20:in `call'
kernel/common/throw_catch.rb:30:in `catch'
kernel/common/throw_catch.rb:8:in `register'
kernel/common/throw_catch.rb:29:in `catch'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1004:in `process_route'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:964:in `route!'
kernel/bootstrap/array.rb:66:in `each'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:963:in `route!'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1076:in `dispatch!'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `invoke'
kernel/bootstrap/proc.rb:20:in `call'
kernel/common/throw_catch.rb:30:in `catch'
kernel/common/throw_catch.rb:8:in `register'
kernel/common/throw_catch.rb:29:in `catch'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `invoke'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1073:in `dispatch!'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:898:in `call!'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `invoke'
kernel/bootstrap/proc.rb:20:in `call'
kernel/common/throw_catch.rb:30:in `catch'
kernel/common/throw_catch.rb:8:in `register'
kernel/common/throw_catch.rb:29:in `catch'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `invoke'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:898:in `call!'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:886:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/xss_header.rb:18:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/path_traversal.rb:16:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/json_csrf.rb:18:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/frame_options.rb:31:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/rack-1.5.2/lib/rack/logger.rb:15:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/rack-1.5.2/lib/rack/commonlogger.rb:33:in `call_without_check (call)'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:217:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:210:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/rack-1.5.2/lib/rack/head.rb:11:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/rack-1.5.2/lib/rack/methodoverride.rb:21:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/show_exceptions.rb:21:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:180:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:2014:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1478:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1788:in `synchronize'
/Users/bshirai/.gem/rbx/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1478:in `call'
/Users/bshirai/.gem/rbx/2.1.0/gems/rack-1.5.2/lib/rack/handler/webrick.rb:60:in `service'
/usr/local/rubinius/gems/gems/rubysl-webrick-2.0.0/lib/webrick/httpserver.rb:138:in `service'
/usr/local/rubinius/gems/gems/rubysl-webrick-2.0.0/lib/webrick/httpserver.rb:94:in `run'
/usr/local/rubinius/gems/gems/rubysl-webrick-2.0.0/lib/webrick/server.rb:295:in `start_thread'
kernel/bootstrap/proc.rb:20:in `call'
kernel/bootstrap/thread.rb:391:in `__run__'
localhost - - [02/May/2014:10:49:46 CDT] "GET / HTTP/1.1" 500 180020
- -> /
$ bundle exec parade
--------------------------------------------------------------------------------
Please install RMagick:
$ gem install rmagick
RMagick is required for:
* Static output to ensure images are included with the documents
* Web rendering, auto-re-sizing of images
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Please install PDFKit and wkhtmltopdf-binary:
$ gem install pdfkit
$ gem install wkhtmltopdf-binary
PDFKit and wkhtmltopdf-binary are required to provide PDF output
--------------------------------------------------------------------------------
-------------------------
Your Parade presentation is now starting up.
To view it visit [ http://localhost:9090 ]
To view a printable version [ http://localhost:9090/print ]
-------------------------
[2014-05-03 10:15:17] INFO WEBrick 1.3.1
[2014-05-03 10:15:17] INFO ruby 2.1.0 (2013-12-25) [x86_64-darwin13.0]
== Sinatra/1.4.5 has taken the stage on 9090 for development with backup from WEBrick
[2014-05-03 10:15:17] INFO WEBrick::HTTPServer#start: pid=76981 port=9090
ArgumentError - invalid byte sequence in US-ASCII:
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/parsers/dsl.rb:36:in `eval'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/parsers/markdown_image_paths.rb:35:in `parse'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/parsers/slides_file_content_parser.rb:11:in `parse'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/parsers/presentation_directory_parser.rb:23:in `block in parse'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/parsers/presentation_directory_parser.rb:22:in `map'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/parsers/presentation_directory_parser.rb:22:in `parse'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/parsers/presentation_filepath_parser.rb:14:in `parse'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/parsers/dsl.rb:75:in `block in section'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/parsers/dsl.rb:73:in `map'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/parsers/dsl.rb:73:in `section'
(eval):2:in `block in parse'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/parsers/dsl.rb:36:in `eval'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/parsers/dsl.rb:36:in `block in parse'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/parsers/dsl.rb:39:in `instance_eval'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/parsers/dsl.rb:39:in `parse'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/parsers/dsl_file_parser.rb:11:in `parse'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/parsers/presentation_file_parser.rb:15:in `parse'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/parsers/presentation_directory_parser.rb:19:in `parse'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/server.rb:85:in `load_presentation'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/server.rb:174:in `presentation'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/server.rb:178:in `title'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/../views/header.erb:2:in `block in singleton class'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/../views/header.erb:-5:in `instance_eval'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/../views/header.erb:-5:in `singleton class'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/../views/header.erb:-7:in `__tilt_70323614242860'
/Users/bshirai/.gem/ruby/2.1.0/gems/tilt-1.4.1/lib/tilt/template.rb:170:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/tilt-1.4.1/lib/tilt/template.rb:170:in `evaluate'
/Users/bshirai/.gem/ruby/2.1.0/gems/tilt-1.4.1/lib/tilt/template.rb:103:in `render'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:814:in `render'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:665:in `erb'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/../views/index.erb:7:in `block in singleton class'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/../views/index.erb:-5:in `instance_eval'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/../views/index.erb:-5:in `singleton class'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/../views/index.erb:-7:in `__tilt_70323614242860'
/Users/bshirai/.gem/ruby/2.1.0/gems/tilt-1.4.1/lib/tilt/template.rb:170:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/tilt-1.4.1/lib/tilt/template.rb:170:in `evaluate'
/Users/bshirai/.gem/ruby/2.1.0/gems/tilt-1.4.1/lib/tilt/template.rb:103:in `render'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:814:in `render'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:665:in `erb'
/Users/bshirai/.gem/ruby/2.1.0/gems/parade-0.10.2/lib/parade/server.rb:216:in `block in <class:Server>'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1603:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1603:in `block in compile!'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:966:in `[]'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:966:in `block (3 levels) in route!'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:985:in `route_eval'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:966:in `block (2 levels) in route!'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1006:in `block in process_route'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1004:in `catch'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1004:in `process_route'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:964:in `block in route!'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:963:in `each'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:963:in `route!'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1076:in `block in dispatch!'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `block in invoke'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `catch'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `invoke'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1073:in `dispatch!'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:898:in `block in call!'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `block in invoke'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `catch'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1058:in `invoke'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:898:in `call!'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:886:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/xss_header.rb:18:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/path_traversal.rb:16:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/json_csrf.rb:18:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/frame_options.rb:31:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/rack-1.5.2/lib/rack/logger.rb:15:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/rack-1.5.2/lib/rack/commonlogger.rb:33:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:217:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:210:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/rack-1.5.2/lib/rack/head.rb:11:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/rack-1.5.2/lib/rack/methodoverride.rb:21:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/show_exceptions.rb:21:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:180:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:2014:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1478:in `block in call'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1788:in `synchronize'
/Users/bshirai/.gem/ruby/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1478:in `call'
/Users/bshirai/.gem/ruby/2.1.0/gems/rack-1.5.2/lib/rack/handler/webrick.rb:60:in `service'
/source/mri/ruby2.1.0/lib/ruby/2.1.0/webrick/httpserver.rb:138:in `service'
/source/mri/ruby2.1.0/lib/ruby/2.1.0/webrick/httpserver.rb:94:in `run'
/source/mri/ruby2.1.0/lib/ruby/2.1.0/webrick/server.rb:295:in `block in start_thread'
localhost - - [03/May/2014:10:15:23 CDT] "GET / HTTP/1.1" 500 213654
- -> /
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment