{"comment":{"created_at":"2011-10-14T06:09:00Z","body":"If we decode too early, we lose escaped characters: `/artist/:name` should match URI `/artist/AC%2FDC` with name -> `AC/DC`.  If we decode too late, it's hard to match diacritics.  `/ö` should match URI `/%C3%B6`.\r\n\r\nWhat if we:\r\n1) Decode anything but reserved characters\r\n2) Match routes\r\n3) Decode params extracted from the routes\r\n\r\nProbably a little slower than what we do today.  Raises ugly corner cases in chopping off the servlet path -- does anyone have encoded characters in their servlet path?  Is mojolly's URI library any use to us here?  What else are we breaking?\r\n","updated_at":"2011-10-14T06:09:00Z","url":"https://api.github.com/repos/scalatra/scalatra/issues/comments/2403670","id":2403670,"user":{"avatar_url":"https://secure.gravatar.com/avatar/a2807d8044f94a466e33f399ca318195?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a2807d8044f94a466e33f399ca318195","url":"https://api.github.com/users/rossabaker","id":142698,"login":"rossabaker"}},"action":"created","issue":{"number":52,"created_at":"2011-04-15T10:35:42Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"path info get url decoded too early\r\n\r\nhttps://groups.google.com/d/topic/scalatra-user/l0XB1jg65pE/discussion\r\n\r\nWhen a request comes in the params are already decoded before they get to the route matchers","comments":4,"title":"path info get url decoded too early","updated_at":"2011-10-14T06:09:00Z","url":"https://api.github.com/repos/scalatra/scalatra/issues/52","id":773072,"assignee":null,"milestone":{"number":3,"created_at":"2011-08-15T17:39:01Z","due_on":null,"title":"2.1.0","creator":{"avatar_url":"https://secure.gravatar.com/avatar/a2807d8044f94a466e33f399ca318195?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"a2807d8044f94a466e33f399ca318195","url":"https://api.github.com/users/rossabaker","id":142698,"login":"rossabaker"},"url":"https://api.github.com/repos/scalatra/scalatra/milestones/3","open_issues":9,"closed_issues":4,"description":"","state":"open"},"closed_at":null,"user":{"avatar_url":"https://secure.gravatar.com/avatar/1e39a948a58f4569c53d971c2e120920?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"1e39a948a58f4569c53d971c2e120920","url":"https://api.github.com/users/casualjim","id":456109,"login":"casualjim"},"html_url":"https://github.com/scalatra/scalatra/issues/52","labels":[{"name":"bug","url":"https://api.github.com/repos/scalatra/scalatra/labels/bug","color":"e10c02"}],"state":"open"},"legacy":{"issue_id":773072,"comment_id":2403670}}