GATEWAY_INTERFACE: "CGI/1.1"
HTTP_ACCEPT: "text/html"
HTTP_COOKIE: "_depot_session=BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246; path=/; HttpOnly"
HTTP_HOST: "localhost:3000"
HTTP_VERSION: "HTTP/1.1"
PATH_INFO: "/carts/wibble"
QUERY_STRING: ""
REMOTE_ADDR: "127.0.0.1"
REMOTE_HOST: "localhost"
REQUEST_METHOD: "GET"
REQUEST_PATH: "/"
REQUEST_URI: "http://localhost:3000/carts/wibble"
SCRIPT_NAME: ""
SERVER_NAME: "localhost"
SERVER_PORT: "3000"
SERVER_PROTOCOL: "HTTP/1.1"
SERVER_SOFTWARE: "WEBrick/1.3.1 (Ruby/1.8.7/2013-06-27)"
action_controller.instance: #<CartsController:0x7f438ed4e648 @_params={"controller"=>"carts", "action"=>"show", "id"=>"wibble"}, @_config=#<OrderedHash {}>, @_response=#<ActionDispatch::Response:0x7f438ed4e4b8 @header={}, @etag=nil, @writer=#<Proc:0x00007f4390b258d8@/home/rubys/git/rails/actionpack/lib/action_dispatch/http/response.rb:43>, @blank=false, @sending_file=false, @cache_control={}, @cookie=[], @block=nil, @request=#<ActionDispatch::Request:0x7f438ed4e580 @env={"rack.request.query_hash"=>{}, "action_dispatch.request.content_type"=>nil, "REQUEST_METHOD"=>"GET", "action_dispatch.secret_token"=>"634eee9f6f429913b67819f57e81d89281f59d106f857fb03e86986660538710f55167d7a206b0e04e502b7de6e78c7f4203c7d3a66b4d517861f0b659c4acfc", "HTTP_VERSION"=>"HTTP/1.1", "rack.run_once"=>false, "SERVER_NAME"=>"localhost", "action_dispatch.request.formats"=>[#<Mime::Type:0x7f439096f570 @string="text/html", @synonyms=["application/xhtml+xml"], @symbol=:html>], "action_dispatch.request.parameters"=>{"controller"=>"carts", "action"=>"show", "id"=>"wibble"}, "action_controller.instance"=>#<CartsController:0x7f438ed4e648 ...>, "rack.errors"=>#<IO:0x7f4395089aa0>, "rack.multithread"=>false, "rack.url_scheme"=>"http", "HTTP_ACCEPT"=>"text/html", "action_dispatch.request.accepts"=>[#<Mime::Type:0x7f439096f570 @string="text/html", @synonyms=["application/xhtml+xml"], @symbol=:html>], "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/1.8.7/2013-06-27)", "SERVER_PORT"=>"3000", "REQUEST_URI"=>"http://localhost:3000/carts/wibble", "PATH_INFO"=>"/carts/wibble", "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.request_parameters"=>{}, "action_dispatch.request.unsigned_session_cookie"=>{"flash"=>{}, "session_id"=>"be150040d5c38491668db9c0c6c6840b", "_csrf_token"=>"0JWNbMejBCqcmIwbrK7Sc7RLeHHSq/G5Fzh+eXUMrew=", "cart_id"=>1}, "rack.request.cookie_string"=>"_depot_session=BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246; path=/; HttpOnly", "action_dispatch.show_exceptions"=>true, "HTTP_HOST"=>"localhost:3000", "REMOTE_ADDR"=>"127.0.0.1", "action_dispatch.request.path_parameters"=>{:action=>"show", :controller=>"carts", :id=>"wibble"}, "rack.request.cookie_hash"=>{"path"=>"/", "HttpOnly"=>nil, "_depot_session"=>"BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246"}, "SCRIPT_NAME"=>"", "GATEWAY_INTERFACE"=>"CGI/1.1", "rack.request.query_string"=>"", "action_dispatch.remote_ip"=>#<ActionDispatch::RemoteIp::RemoteIpGetter:0x7f438edee6e8 @env={...}, @check_ip_spoofing=true, @trusted_proxies=/(^127\.0\.0\.1$|^(10|172\.(1[6-9]|2[0-9]|30|31)|192\.168)\.)/i>, "SERVER_PROTOCOL"=>"HTTP/1.1", "QUERY_STRING"=>"", "REQUEST_PATH"=>"/", "rack.version"=>[1, 1], "REMOTE_HOST"=>"localhost", "rack.session.options"=>{:expire_after=>nil, :httponly=>true, :domain=>nil, :secure=>false, :id=>"be150040d5c38491668db9c0c6c6840b", :path=>"/"}, "rack.session"=>{"session_id"=>"be150040d5c38491668db9c0c6c6840b", "cart_id"=>1, "_csrf_token"=>"0JWNbMejBCqcmIwbrK7Sc7RLeHHSq/G5Fzh+eXUMrew="}, "action_dispatch.parameter_filter"=>[:password], "action_dispatch.cookies"=>{"path"=>"/", "HttpOnly"=>nil, "_depot_session"=>"BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246"}, "rack.input"=>#<StringIO:0x7f438edef688>, "rack.multiprocess"=>false, "HTTP_COOKIE"=>"_depot_session=BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246; path=/; HttpOnly"}, @request_method="GET", @fullpath="/carts/wibble", @method="GET", @filtered_parameters={"controller"=>"carts", "action"=>"show", "id"=>"wibble"}>, @status=200, @body=[], @length=0>, @_status=200, @_response_body=nil, @_request=#<ActionDispatch::Request:0x7f438ed4e580 @env={"rack.request.query_hash"=>{}, "action_dispatch.request.content_type"=>nil, "REQUEST_METHOD"=>"GET", "action_dispatch.secret_token"=>"634eee9f6f429913b67819f57e81d89281f59d106f857fb03e86986660538710f55167d7a206b0e04e502b7de6e78c7f4203c7d3a66b4d517861f0b659c4acfc", "HTTP_VERSION"=>"HTTP/1.1", "rack.run_once"=>false, "SERVER_NAME"=>"localhost", "action_dispatch.request.formats"=>[#<Mime::Type:0x7f439096f570 @string="text/html", @synonyms=["application/xhtml+xml"], @symbol=:html>], "action_dispatch.request.parameters"=>{"controller"=>"carts", "action"=>"show", "id"=>"wibble"}, "action_controller.instance"=>#<CartsController:0x7f438ed4e648 ...>, "rack.errors"=>#<IO:0x7f4395089aa0>, "rack.multithread"=>false, "rack.url_scheme"=>"http", "HTTP_ACCEPT"=>"text/html", "action_dispatch.request.accepts"=>[#<Mime::Type:0x7f439096f570 @string="text/html", @synonyms=["application/xhtml+xml"], @symbol=:html>], "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/1.8.7/2013-06-27)", "SERVER_PORT"=>"3000", "REQUEST_URI"=>"http://localhost:3000/carts/wibble", "PATH_INFO"=>"/carts/wibble", "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.request_parameters"=>{}, "action_dispatch.request.unsigned_session_cookie"=>{"flash"=>{}, "session_id"=>"be150040d5c38491668db9c0c6c6840b", "_csrf_token"=>"0JWNbMejBCqcmIwbrK7Sc7RLeHHSq/G5Fzh+eXUMrew=", "cart_id"=>1}, "rack.request.cookie_string"=>"_depot_session=BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246; path=/; HttpOnly", "action_dispatch.show_exceptions"=>true, "HTTP_HOST"=>"localhost:3000", "REMOTE_ADDR"=>"127.0.0.1", "action_dispatch.request.path_parameters"=>{:action=>"show", :controller=>"carts", :id=>"wibble"}, "rack.request.cookie_hash"=>{"path"=>"/", "HttpOnly"=>nil, "_depot_session"=>"BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246"}, "SCRIPT_NAME"=>"", "GATEWAY_INTERFACE"=>"CGI/1.1", "rack.request.query_string"=>"", "action_dispatch.remote_ip"=>#<ActionDispatch::RemoteIp::RemoteIpGetter:0x7f438edee6e8 @env={...}, @check_ip_spoofing=true, @trusted_proxies=/(^127\.0\.0\.1$|^(10|172\.(1[6-9]|2[0-9]|30|31)|192\.168)\.)/i>, "SERVER_PROTOCOL"=>"HTTP/1.1", "QUERY_STRING"=>"", "REQUEST_PATH"=>"/", "rack.version"=>[1, 1], "REMOTE_HOST"=>"localhost", "rack.session.options"=>{:expire_after=>nil, :httponly=>true, :domain=>nil, :secure=>false, :id=>"be150040d5c38491668db9c0c6c6840b", :path=>"/"}, "rack.session"=>{"session_id"=>"be150040d5c38491668db9c0c6c6840b", "cart_id"=>1, "_csrf_token"=>"0JWNbMejBCqcmIwbrK7Sc7RLeHHSq/G5Fzh+eXUMrew="}, "action_dispatch.parameter_filter"=>[:password], "action_dispatch.cookies"=>{"path"=>"/", "HttpOnly"=>nil, "_depot_session"=>"BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246"}, "rack.input"=>#<StringIO:0x7f438edef688>, "rack.multiprocess"=>false, "HTTP_COOKIE"=>"_depot_session=BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246; path=/; HttpOnly"}, @request_method="GET", @fullpath="/carts/wibble", @method="GET", @filtered_parameters={"controller"=>"carts", "action"=>"show", "id"=>"wibble"}>, @lookup_context=#<ActionView::LookupContext:0x7f438ed4e148 @view_paths=[#<ActionView::FileSystemResolver:0x7f439083f678 @path="/home/rubys/git/awdwr/edition4/work-187-30/depot/app/views", @caching=false, @cached={}>], @details_key=nil, @skip_default_locale=false, @details={:locale=>[:en, :en], :handlers=>[:rhtml, :builder, :rxml, :erb, :rjs], :formats=>[:html]}, @frozen_formats=false>, @_headers={"Content-Type"=>"text/html"}, @view_context_class=nil, @action_has_layout=true, @_action_name="show", @_env={"rack.request.query_hash"=>{}, "action_dispatch.request.content_type"=>nil, "REQUEST_METHOD"=>"GET", "action_dispatch.secret_token"=>"634eee9f6f429913b67819f57e81d89281f59d106f857fb03e86986660538710f55167d7a206b0e04e502b7de6e78c7f4203c7d3a66b4d517861f0b659c4acfc", "HTTP_VERSION"=>"HTTP/1.1", "rack.run_once"=>false, "SERVER_NAME"=>"localhost", "action_dispatch.request.formats"=>[#<Mime::Type:0x7f439096f570 @string="text/html", @synonyms=["application/xhtml+xml"], @symbol=:html>], "action_dispatch.request.parameters"=>{"controller"=>"carts", "action"=>"show", "id"=>"wibble"}, "action_controller.instance"=>#<CartsController:0x7f438ed4e648 ...>, "rack.errors"=>#<IO:0x7f4395089aa0>, "rack.multithread"=>false, "rack.url_scheme"=>"http", "HTTP_ACCEPT"=>"text/html", "action_dispatch.request.accepts"=>[#<Mime::Type:0x7f439096f570 @string="text/html", @synonyms=["application/xhtml+xml"], @symbol=:html>], "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/1.8.7/2013-06-27)", "SERVER_PORT"=>"3000", "REQUEST_URI"=>"http://localhost:3000/carts/wibble", "PATH_INFO"=>"/carts/wibble", "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.request_parameters"=>{}, "action_dispatch.request.unsigned_session_cookie"=>{"flash"=>{}, "session_id"=>"be150040d5c38491668db9c0c6c6840b", "_csrf_token"=>"0JWNbMejBCqcmIwbrK7Sc7RLeHHSq/G5Fzh+eXUMrew=", "cart_id"=>1}, "rack.request.cookie_string"=>"_depot_session=BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246; path=/; HttpOnly", "action_dispatch.show_exceptions"=>true, "HTTP_HOST"=>"localhost:3000", "REMOTE_ADDR"=>"127.0.0.1", "action_dispatch.request.path_parameters"=>{:action=>"show", :controller=>"carts", :id=>"wibble"}, "rack.request.cookie_hash"=>{"path"=>"/", "HttpOnly"=>nil, "_depot_session"=>"BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246"}, "SCRIPT_NAME"=>"", "GATEWAY_INTERFACE"=>"CGI/1.1", "rack.request.query_string"=>"", "action_dispatch.remote_ip"=>#<ActionDispatch::RemoteIp::RemoteIpGetter:0x7f438edee6e8 @env={...}, @check_ip_spoofing=true, @trusted_proxies=/(^127\.0\.0\.1$|^(10|172\.(1[6-9]|2[0-9]|30|31)|192\.168)\.)/i>, "SERVER_PROTOCOL"=>"HTTP/1.1", "QUERY_STRING"=>"", "REQUEST_PATH"=>"/", "rack.version"=>[1, 1], "REMOTE_HOST"=>"localhost", "rack.session.options"=>{:expire_after=>nil, :httponly=>true, :domain=>nil, :secure=>false, :id=>"be150040d5c38491668db9c0c6c6840b", :path=>"/"}, "rack.session"=>{"session_id"=>"be150040d5c38491668db9c0c6c6840b", "cart_id"=>1, "_csrf_token"=>"0JWNbMejBCqcmIwbrK7Sc7RLeHHSq/G5Fzh+eXUMrew="}, "action_dispatch.parameter_filter"=>[:password], "action_dispatch.cookies"=>{"path"=>"/", "HttpOnly"=>nil, "_depot_session"=>"BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246"}, "rack.input"=>#<StringIO:0x7f438edef688>, "rack.multiprocess"=>false, "HTTP_COOKIE"=>"_depot_session=BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246; path=/; HttpOnly"}>
action_dispatch.cookies: {"path"=>"/", "HttpOnly"=>nil, "_depot_session"=>"BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246"}
action_dispatch.parameter_filter: [:password]
action_dispatch.remote_ip: #<ActionDispatch::RemoteIp::RemoteIpGetter:0x7f438edee6e8 @env={"rack.request.query_hash"=>{}, "action_dispatch.request.content_type"=>nil, "REQUEST_METHOD"=>"GET", "action_dispatch.secret_token"=>"634eee9f6f429913b67819f57e81d89281f59d106f857fb03e86986660538710f55167d7a206b0e04e502b7de6e78c7f4203c7d3a66b4d517861f0b659c4acfc", "HTTP_VERSION"=>"HTTP/1.1", "rack.run_once"=>false, "SERVER_NAME"=>"localhost", "action_dispatch.request.formats"=>[#<Mime::Type:0x7f439096f570 @string="text/html", @synonyms=["application/xhtml+xml"], @symbol=:html>], "action_dispatch.request.parameters"=>{"controller"=>"carts", "action"=>"show", "id"=>"wibble"}, "action_controller.instance"=>#<CartsController:0x7f438ed4e648 @_params={"controller"=>"carts", "action"=>"show", "id"=>"wibble"}, @_config=#<OrderedHash {}>, @_response=#<ActionDispatch::Response:0x7f438ed4e4b8 @header={}, @etag=nil, @writer=#<Proc:0x00007f4390b258d8@/home/rubys/git/rails/actionpack/lib/action_dispatch/http/response.rb:43>, @blank=false, @sending_file=false, @cache_control={}, @cookie=[], @block=nil, @request=#<ActionDispatch::Request:0x7f438ed4e580 @env={...}, @request_method="GET", @fullpath="/carts/wibble", @method="GET", @filtered_parameters={"controller"=>"carts", "action"=>"show", "id"=>"wibble"}>, @status=200, @body=[], @length=0>, @_status=200, @_response_body=nil, @_request=#<ActionDispatch::Request:0x7f438ed4e580 @env={...}, @request_method="GET", @fullpath="/carts/wibble", @method="GET", @filtered_parameters={"controller"=>"carts", "action"=>"show", "id"=>"wibble"}>, @lookup_context=#<ActionView::LookupContext:0x7f438ed4e148 @view_paths=[#<ActionView::FileSystemResolver:0x7f439083f678 @path="/home/rubys/git/awdwr/edition4/work-187-30/depot/app/views", @caching=false, @cached={}>], @details_key=nil, @skip_default_locale=false, @details={:locale=>[:en, :en], :handlers=>[:rhtml, :builder, :rxml, :erb, :rjs], :formats=>[:html]}, @frozen_formats=false>, @_headers={"Content-Type"=>"text/html"}, @view_context_class=nil, @action_has_layout=true, @_action_name="show", @_env={...}>, "rack.errors"=>#<IO:0x7f4395089aa0>, "rack.multithread"=>false, "rack.url_scheme"=>"http", "HTTP_ACCEPT"=>"text/html", "action_dispatch.request.accepts"=>[#<Mime::Type:0x7f439096f570 @string="text/html", @synonyms=["application/xhtml+xml"], @symbol=:html>], "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/1.8.7/2013-06-27)", "SERVER_PORT"=>"3000", "REQUEST_URI"=>"http://localhost:3000/carts/wibble", "PATH_INFO"=>"/carts/wibble", "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.request_parameters"=>{}, "action_dispatch.request.unsigned_session_cookie"=>{"flash"=>{}, "session_id"=>"be150040d5c38491668db9c0c6c6840b", "_csrf_token"=>"0JWNbMejBCqcmIwbrK7Sc7RLeHHSq/G5Fzh+eXUMrew=", "cart_id"=>1}, "rack.request.cookie_string"=>"_depot_session=BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246; path=/; HttpOnly", "action_dispatch.show_exceptions"=>true, "HTTP_HOST"=>"localhost:3000", "REMOTE_ADDR"=>"127.0.0.1", "action_dispatch.request.path_parameters"=>{:action=>"show", :controller=>"carts", :id=>"wibble"}, "rack.request.cookie_hash"=>{"path"=>"/", "HttpOnly"=>nil, "_depot_session"=>"BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246"}, "SCRIPT_NAME"=>"", "GATEWAY_INTERFACE"=>"CGI/1.1", "rack.request.query_string"=>"", "action_dispatch.remote_ip"=>#<ActionDispatch::RemoteIp::RemoteIpGetter:0x7f438edee6e8 ...>, "SERVER_PROTOCOL"=>"HTTP/1.1", "QUERY_STRING"=>"", "REQUEST_PATH"=>"/", "rack.version"=>[1, 1], "REMOTE_HOST"=>"localhost", "rack.session.options"=>{:expire_after=>nil, :httponly=>true, :domain=>nil, :secure=>false, :id=>"be150040d5c38491668db9c0c6c6840b", :path=>"/"}, "rack.session"=>{"session_id"=>"be150040d5c38491668db9c0c6c6840b", "cart_id"=>1, "_csrf_token"=>"0JWNbMejBCqcmIwbrK7Sc7RLeHHSq/G5Fzh+eXUMrew="}, "action_dispatch.parameter_filter"=>[:password], "action_dispatch.cookies"=>{"path"=>"/", "HttpOnly"=>nil, "_depot_session"=>"BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246"}, "rack.input"=>#<StringIO:0x7f438edef688>, "rack.multiprocess"=>false, "HTTP_COOKIE"=>"_depot_session=BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246; path=/; HttpOnly"}, @check_ip_spoofing=true, @trusted_proxies=/(^127\.0\.0\.1$|^(10|172\.(1[6-9]|2[0-9]|30|31)|192\.168)\.)/i>
action_dispatch.request.accepts: [#<Mime::Type:0x7f439096f570 @string="text/html", @synonyms=["application/xhtml+xml"], @symbol=:html>]
action_dispatch.request.content_type: nil
action_dispatch.request.formats: [#<Mime::Type:0x7f439096f570 @string="text/html", @synonyms=["application/xhtml+xml"], @symbol=:html>]
action_dispatch.request.parameters: {"controller"=>"carts", "action"=>"show", "id"=>"wibble"}
action_dispatch.request.path_parameters: {:action=>"show", :controller=>"carts", :id=>"wibble"}
action_dispatch.request.query_parameters: {}
action_dispatch.request.request_parameters: {}
action_dispatch.request.unsigned_session_cookie: {"flash"=>{}, "session_id"=>"be150040d5c38491668db9c0c6c6840b", "_csrf_token"=>"0JWNbMejBCqcmIwbrK7Sc7RLeHHSq/G5Fzh+eXUMrew=", "cart_id"=>1}
action_dispatch.secret_token: "634eee9f6f429913b67819f57e81d89281f59d106f857fb03e86986660538710f55167d7a206b0e04e502b7de6e78c7f4203c7d3a66b4d517861f0b659c4acfc"
action_dispatch.show_exceptions: true
rack.errors: #<IO:0x7f4395089aa0>
rack.input: #<StringIO:0x7f438edef688>
rack.multiprocess: false
rack.multithread: false
rack.request.cookie_hash: {"path"=>"/", "HttpOnly"=>nil, "_depot_session"=>"BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246"}
rack.request.cookie_string: "_depot_session=BAh7CSIKZmxhc2hJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoLbm90aWNlIihMaW5lIGl0ZW0gd2FzIHN1Y2Nlc3NmdWxseSBjcmVhdGVkLgY6CkB1c2VkbzoIU2V0BjoKQGhhc2h7BjsGVCIPc2Vzc2lvbl9pZCIlYmUxNTAwNDBkNWMzODQ5MTY2OGRiOWMwYzZjNjg0MGIiEF9jc3JmX3Rva2VuIjEwSldOYk1lakJDcWNtSXdicks3U2M3UkxlSEhTcS9HNUZ6aCtlWFVNcmV3PSIMY2FydF9pZGkG--4dc240142a8df1a4e246fefc54d2c6b0fb6fb246; path=/; HttpOnly"
rack.request.query_hash: {}
rack.request.query_string: ""
rack.run_once: false
rack.session: {"session_id"=>"be150040d5c38491668db9c0c6c6840b", "cart_id"=>1, "_csrf_token"=>"0JWNbMejBCqcmIwbrK7Sc7RLeHHSq/G5Fzh+eXUMrew="}
rack.session.options: {:expire_after=>nil, :httponly=>true, :domain=>nil, :secure=>false, :id=>"be150040d5c38491668db9c0c6c6840b", :path=>"/"}
rack.url_scheme: "http"
rack.version: [1, 1]