)]}'
{"swift/common/middleware/symlink.py":[{"author":{"_account_id":4608,"name":"Kota Tsuyuzaki","email":"bloodeagle40234@gmail.com","username":"tsuyuzaki-kota"},"change_message_id":"3e4db8c46e5b896cc70e9c275368dae618d961f4","unresolved":false,"context_lines":[{"line_number":105,"context_line":""},{"line_number":106,"context_line":"* POSTs will produce a 307 TemporaryRedirect error."},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"----------"},{"line_number":109,"context_line":"Deployment"},{"line_number":110,"context_line":"----------"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"Symlinks are enabled by adding the `symlink` middleware to the proxy server"},{"line_number":113,"context_line":"WSGI pipeline and including a corresponding filter configuration section in the"}],"source_content_type":"text/x-python","patch_set":2,"id":"df87a7cf_983040a1","line":110,"range":{"start_line":108,"start_character":0,"end_line":110,"end_character":10},"updated":"2017-12-12 05:54:57.000000000","message":"This section is probably nice to have.","commit_id":"33d5f45ddeae92c4e6be76166a5dd77d7c4bb77b"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"2a5e6c785d2d6b4cfe14d81fadae1692ce94c3bd","unresolved":false,"context_lines":[{"line_number":125,"context_line":"    container listing results in addition to symlink objects behaving like a"},{"line_number":126,"context_line":"    normal object."},{"line_number":127,"context_line":""},{"line_number":128,"context_line":".. _symlink_container_sync_client_config:"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"Container sync configuration"},{"line_number":131,"context_line":"----------------------------"}],"source_content_type":"text/x-python","patch_set":3,"id":"df87a7cf_879d0f0c","line":128,"updated":"2017-12-13 17:14:18.000000000","message":"helpful","commit_id":"742d62638db138ebb59f1aea6cab5330e9d5de9c"}],"swift/container/sync.py":[{"author":{"_account_id":4608,"name":"Kota Tsuyuzaki","email":"bloodeagle40234@gmail.com","username":"tsuyuzaki-kota"},"change_message_id":"3e4db8c46e5b896cc70e9c275368dae618d961f4","unresolved":false,"context_lines":[{"line_number":603,"context_line":"                    headers[\u0027content-type\u0027] \u003d clean_content_type("},{"line_number":604,"context_line":"                        headers[\u0027content-type\u0027])"},{"line_number":605,"context_line":""},{"line_number":606,"context_line":"                symlink_sysmeta_to_usermeta(headers)"},{"line_number":607,"context_line":"                self._update_sync_to_headers(row[\u0027name\u0027], sync_to, user_key,"},{"line_number":608,"context_line":"                                             realm, realm_key, \u0027PUT\u0027, headers)"},{"line_number":609,"context_line":"                put_object(sync_to, name\u003drow[\u0027name\u0027], headers\u003dheaders,"}],"source_content_type":"text/x-python","patch_set":2,"id":"df87a7cf_d80008ae","side":"PARENT","line":606,"range":{"start_line":606,"start_character":15,"end_line":606,"end_character":52},"updated":"2017-12-12 05:54:57.000000000","message":"The main reason why I rebased this patch by my decision is here. In the discussion with Kazuhiro and Clay, I made the symlink logic leak small as possible.\n\nExactly, making a symlink into the pipeline may be a solution, so that I\u0027d like to discuss what we need, starting from here.","commit_id":"2968cb6b11898a26df9e1546c589cc1a15ae7db9"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"2a5e6c785d2d6b4cfe14d81fadae1692ce94c3bd","unresolved":false,"context_lines":[{"line_number":581,"context_line":"                                              info[\u0027container\u0027], row[\u0027name\u0027],"},{"line_number":582,"context_line":"                                              headers\u003dheaders_out,"},{"line_number":583,"context_line":"                                              acceptable_statuses\u003d(2, 4),"},{"line_number":584,"context_line":"                                              params\u003d{\u0027symlink\u0027: \u0027get\u0027})"},{"line_number":585,"context_line":""},{"line_number":586,"context_line":"                except (Exception, UnexpectedResponse, Timeout) as err:"},{"line_number":587,"context_line":"                    headers \u003d {}"}],"source_content_type":"text/x-python","patch_set":3,"id":"df87a7cf_4702a740","line":584,"updated":"2017-12-13 17:14:18.000000000","message":"this makes sense to me... it\u0027s a documented client API so it\u0027s pretty stable/reliable - which reduces coupling.","commit_id":"742d62638db138ebb59f1aea6cab5330e9d5de9c"}],"test/unit/common/test_internal_client.py":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"2a5e6c785d2d6b4cfe14d81fadae1692ce94c3bd","unresolved":false,"context_lines":[{"line_number":327,"context_line":"                self.request_tries \u003d 1"},{"line_number":328,"context_line":""},{"line_number":329,"context_line":"            def fake_app(self, env, start_response):"},{"line_number":330,"context_line":"                captured_envs.append(env)"},{"line_number":331,"context_line":"                start_response(\u0027200 Ok\u0027, [(\u0027Content-Length\u0027, \u00270\u0027)])"},{"line_number":332,"context_line":"                return []"},{"line_number":333,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"df87a7cf_274be3b0","line":330,"updated":"2017-12-13 17:14:18.000000000","message":"nice","commit_id":"33d5f45ddeae92c4e6be76166a5dd77d7c4bb77b"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"2a5e6c785d2d6b4cfe14d81fadae1692ce94c3bd","unresolved":false,"context_lines":[{"line_number":327,"context_line":"                self.request_tries \u003d 1"},{"line_number":328,"context_line":""},{"line_number":329,"context_line":"            def fake_app(self, env, start_response):"},{"line_number":330,"context_line":"                captured_envs.append(env)"},{"line_number":331,"context_line":"                start_response(\u0027200 Ok\u0027, [(\u0027Content-Length\u0027, \u00270\u0027)])"},{"line_number":332,"context_line":"                return []"},{"line_number":333,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"df87a7cf_67ffab34","line":330,"updated":"2017-12-13 17:14:18.000000000","message":"nice","commit_id":"742d62638db138ebb59f1aea6cab5330e9d5de9c"}]}
