{"action":"created","issue":{"url":"https://api.github.com/repos/basho/riak_cs/issues/1040","labels_url":"https://api.github.com/repos/basho/riak_cs/issues/1040/labels{/name}","comments_url":"https://api.github.com/repos/basho/riak_cs/issues/1040/comments","events_url":"https://api.github.com/repos/basho/riak_cs/issues/1040/events","html_url":"https://github.com/basho/riak_cs/pull/1040","id":53515652,"number":1040,"title":"Fix inaccurate s3 rewrite rule.","user":{"login":"ksauzz","id":451586,"avatar_url":"https://avatars.githubusercontent.com/u/451586?v=3","gravatar_id":"","url":"https://api.github.com/users/ksauzz","html_url":"https://github.com/ksauzz","followers_url":"https://api.github.com/users/ksauzz/followers","following_url":"https://api.github.com/users/ksauzz/following{/other_user}","gists_url":"https://api.github.com/users/ksauzz/gists{/gist_id}","starred_url":"https://api.github.com/users/ksauzz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ksauzz/subscriptions","organizations_url":"https://api.github.com/users/ksauzz/orgs","repos_url":"https://api.github.com/users/ksauzz/repos","events_url":"https://api.github.com/users/ksauzz/events{/privacy}","received_events_url":"https://api.github.com/users/ksauzz/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/basho/riak_cs/labels/Bug","name":"Bug","color":"FF6600"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/basho/riak_cs/milestones/15","labels_url":"https://api.github.com/repos/basho/riak_cs/milestones/15/labels","id":925617,"number":15,"title":"1.5.4","description":null,"creator":{"login":"shino","id":10225,"avatar_url":"https://avatars.githubusercontent.com/u/10225?v=3","gravatar_id":"","url":"https://api.github.com/users/shino","html_url":"https://github.com/shino","followers_url":"https://api.github.com/users/shino/followers","following_url":"https://api.github.com/users/shino/following{/other_user}","gists_url":"https://api.github.com/users/shino/gists{/gist_id}","starred_url":"https://api.github.com/users/shino/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shino/subscriptions","organizations_url":"https://api.github.com/users/shino/orgs","repos_url":"https://api.github.com/users/shino/repos","events_url":"https://api.github.com/users/shino/events{/privacy}","received_events_url":"https://api.github.com/users/shino/received_events","type":"User","site_admin":false},"open_issues":1,"closed_issues":2,"state":"open","created_at":"2015-01-07T15:00:12Z","updated_at":"2015-01-13T01:10:11Z","due_on":null,"closed_at":null},"comments":12,"created_at":"2015-01-06T13:43:07Z","updated_at":"2015-01-13T01:35:51Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/basho/riak_cs/pulls/1040","html_url":"https://github.com/basho/riak_cs/pull/1040","diff_url":"https://github.com/basho/riak_cs/pull/1040.diff","patch_url":"https://github.com/basho/riak_cs/pull/1040.patch"},"body":"Riak CS doesn't handle some specific characters in object name well.\r\n\r\nsee: https://gist.github.com/ksauzz/9f0dc13c9b8cb0f2a85e\r\nrelated to #910 \r\n\r\n##### This PR includes:\r\n\r\n- Fix s3 rewrite rule which results in losing backward compability.\r\n- Introduce riak_cs_s3_rewrite_legacy to keep backward compatibility.\r\n- Add regression test for riak_cs_s3_rewrite_legacy.\r\n\r\n##### Topics I'd like to discuss\r\n\r\n- Is using `test-python` reasonable for regression test ? At least, boto test saved me from my bad codes.\r\n\r\n##### How access log format changes after this patches.\r\n\r\nbefore\r\n\r\n```\r\n172.17.42.1 - - [07/Jan/2015:08:27:07 +0000] \"PUT /buckets/test/objects/path1%2Fpath2%2Fte%2Bst.txt HTTP/1.1\" 200 0 \"\" \"\"\r\n```\r\n\r\nafter\r\n```\r\n127.0.0.1 - - [07/Jan/2015:17:28:23 +0900] \"PUT /buckets/test/objects/path1%2Fpath2%2Fte%252Bst.txt HTTP/1.1\" 200 0 \"\" \"\"\r\n```\r\n\r\n\r\n##### TODO:\r\n\r\n- Update releasenote about description the change of rewrite rule, and how to keep backward compatibility."},"comment":{"url":"https://api.github.com/repos/basho/riak_cs/issues/comments/69680999","html_url":"https://github.com/basho/riak_cs/pull/1040#issuecomment-69680999","issue_url":"https://api.github.com/repos/basho/riak_cs/issues/1040","id":69680999,"user":{"login":"shino","id":10225,"avatar_url":"https://avatars.githubusercontent.com/u/10225?v=3","gravatar_id":"","url":"https://api.github.com/users/shino","html_url":"https://github.com/shino","followers_url":"https://api.github.com/users/shino/followers","following_url":"https://api.github.com/users/shino/following{/other_user}","gists_url":"https://api.github.com/users/shino/gists{/gist_id}","starred_url":"https://api.github.com/users/shino/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shino/subscriptions","organizations_url":"https://api.github.com/users/shino/orgs","repos_url":"https://api.github.com/users/shino/repos","events_url":"https://api.github.com/users/shino/events{/privacy}","received_events_url":"https://api.github.com/users/shino/received_events","type":"User","site_admin":false},"created_at":"2015-01-13T01:35:51Z","updated_at":"2015-01-13T01:35:51Z","body":"Note: The above diagram is only on `objects` part of the path in case of \"virtual host style\" access. `buckets` part in \"path style\" and subresource part are different, not doubly escaped at any point of time.\r\n"}}