)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"29dd35fe3b0c3797fd58a822edab08707fddd016","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"15e7e028_01830ca5","updated":"2022-01-26 22:43:08.000000000","message":"Cool thanks Tim, will push up a new version of this. Then we can decide to sqaush it down.","commit_id":"361676424a2ec38fdc28e148a974bc90296ae913"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"49445c099a576f665fb4058067710c08693cc37b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"2506c02f_874c4f1b","updated":"2022-01-24 23:37:32.000000000","message":"I think I\u0027m on-board -- the churn is a bit unfortunate, but easy enough to spot-check.","commit_id":"361676424a2ec38fdc28e148a974bc90296ae913"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"5e83d64500b724461b57f464c8170e0e0abf3d80","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"9f52a77e_a4527a4a","updated":"2022-02-03 06:10:07.000000000","message":"This is now the parent of the trim senstive information in logs patch. As discussed in the meeting. It\u0027s moving the existing registation functions to swift/common/registry.py and updating references.\n\nThe follow up trim patch can now just go put it in the right location.","commit_id":"b6302ab71910dba9241b293d0f5ae706d0b65e15"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"2adea32981e266c177ec09b7828d1f05d74ee2a6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"35ace383_b6aacd7c","updated":"2022-02-03 21:34:05.000000000","message":"recheck","commit_id":"589ac355f3ddf505983925d80b81c20107ceace0"}],"swift/common/middleware/proxy_logging.py":[{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"49445c099a576f665fb4058067710c08693cc37b","unresolved":true,"context_lines":[{"line_number":468,"context_line":"    # Normally it would be the middleware that uses the header that"},{"line_number":469,"context_line":"    # would register it. But because there could be 3rd party auth middlewares"},{"line_number":470,"context_line":"    # that use \u0027x-auth-token\u0027 will special case it here."},{"line_number":471,"context_line":"    register_sensitive_header(\u0027x-auth-token\u0027)"},{"line_number":472,"context_line":""},{"line_number":473,"context_line":"    def proxy_logger(app):"},{"line_number":474,"context_line":"        return ProxyLoggingMiddleware(app, conf)"}],"source_content_type":"text/x-python","patch_set":1,"id":"4825c677_14ecf40e","line":471,"updated":"2022-01-24 23:37:32.000000000","message":"I think I mentioned it on the parent, but we should probably also add x-storage-token.","commit_id":"361676424a2ec38fdc28e148a974bc90296ae913"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"41ab475e7a9f8dc58d48332580dacfeb8fb1d05c","unresolved":false,"context_lines":[{"line_number":468,"context_line":"    # Normally it would be the middleware that uses the header that"},{"line_number":469,"context_line":"    # would register it. But because there could be 3rd party auth middlewares"},{"line_number":470,"context_line":"    # that use \u0027x-auth-token\u0027 will special case it here."},{"line_number":471,"context_line":"    register_sensitive_header(\u0027x-auth-token\u0027)"},{"line_number":472,"context_line":""},{"line_number":473,"context_line":"    def proxy_logger(app):"},{"line_number":474,"context_line":"        return ProxyLoggingMiddleware(app, conf)"}],"source_content_type":"text/x-python","patch_set":1,"id":"72a8c9b8_b7e4c93f","line":471,"in_reply_to":"4825c677_14ecf40e","updated":"2022-01-27 22:20:28.000000000","message":"Done","commit_id":"361676424a2ec38fdc28e148a974bc90296ae913"}],"swift/common/middleware/s3api/s3api.py":[{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"49445c099a576f665fb4058067710c08693cc37b","unresolved":true,"context_lines":[{"line_number":158,"context_line":"    InternalError, MethodNotAllowed, S3ResponseBase, S3NotImplemented"},{"line_number":159,"context_line":"from swift.common.utils import get_logger, config_true_value, \\"},{"line_number":160,"context_line":"    config_positive_int_value, split_path, closing_if_possible, list_from_csv"},{"line_number":161,"context_line":"from swift.common.registry import register_swift_info"},{"line_number":162,"context_line":"from swift.common.middleware.s3api.utils import Config"},{"line_number":163,"context_line":"from swift.common.middleware.s3api.acl_handlers import get_acl_handler"},{"line_number":164,"context_line":"from swift.common.registry import register_sensitive_header, \\"}],"source_content_type":"text/x-python","patch_set":1,"id":"2a07ee62_d25953e8","line":161,"updated":"2022-01-24 23:37:32.000000000","message":"nit: We could shift this down to be in the other import line.","commit_id":"361676424a2ec38fdc28e148a974bc90296ae913"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"29dd35fe3b0c3797fd58a822edab08707fddd016","unresolved":true,"context_lines":[{"line_number":158,"context_line":"    InternalError, MethodNotAllowed, S3ResponseBase, S3NotImplemented"},{"line_number":159,"context_line":"from swift.common.utils import get_logger, config_true_value, \\"},{"line_number":160,"context_line":"    config_positive_int_value, split_path, closing_if_possible, list_from_csv"},{"line_number":161,"context_line":"from swift.common.registry import register_swift_info"},{"line_number":162,"context_line":"from swift.common.middleware.s3api.utils import Config"},{"line_number":163,"context_line":"from swift.common.middleware.s3api.acl_handlers import get_acl_handler"},{"line_number":164,"context_line":"from swift.common.registry import register_sensitive_header, \\"}],"source_content_type":"text/x-python","patch_set":1,"id":"9d4ec215_b6b5cbb1","line":161,"in_reply_to":"2a07ee62_d25953e8","updated":"2022-01-26 22:43:08.000000000","message":"oh opps. That\u0027s what I get for blinding searching for each function call one at a time through the code and then not confirming the imports.\n\nThanks will fix.","commit_id":"361676424a2ec38fdc28e148a974bc90296ae913"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"41ab475e7a9f8dc58d48332580dacfeb8fb1d05c","unresolved":false,"context_lines":[{"line_number":158,"context_line":"    InternalError, MethodNotAllowed, S3ResponseBase, S3NotImplemented"},{"line_number":159,"context_line":"from swift.common.utils import get_logger, config_true_value, \\"},{"line_number":160,"context_line":"    config_positive_int_value, split_path, closing_if_possible, list_from_csv"},{"line_number":161,"context_line":"from swift.common.registry import register_swift_info"},{"line_number":162,"context_line":"from swift.common.middleware.s3api.utils import Config"},{"line_number":163,"context_line":"from swift.common.middleware.s3api.acl_handlers import get_acl_handler"},{"line_number":164,"context_line":"from swift.common.registry import register_sensitive_header, \\"}],"source_content_type":"text/x-python","patch_set":1,"id":"b8a87ba2_61b38cc5","line":161,"in_reply_to":"9d4ec215_b6b5cbb1","updated":"2022-01-27 22:20:28.000000000","message":"Done","commit_id":"361676424a2ec38fdc28e148a974bc90296ae913"}],"swift/common/registry.py":[{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"49445c099a576f665fb4058067710c08693cc37b","unresolved":true,"context_lines":[{"line_number":21,"context_line":"_swift_admin_info \u003d {}"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"def get_swift_info(admin\u003dFalse, disallowed_sections\u003dNone):"},{"line_number":25,"context_line":"    \"\"\""},{"line_number":26,"context_line":"    Returns information about the swift cluster that has been previously"},{"line_number":27,"context_line":"    registered with the register_swift_info call."}],"source_content_type":"text/x-python","patch_set":1,"id":"21df134c_a2e4183b","line":24,"updated":"2022-01-24 23:37:32.000000000","message":"I started playing with something similar -- was debating about sticking it in swift/common/middleware/__init__.py ... *shrug*","commit_id":"361676424a2ec38fdc28e148a974bc90296ae913"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"9dfb1bcad46c7f709547017f5b01c719bd1ec818","unresolved":false,"context_lines":[{"line_number":21,"context_line":"_swift_admin_info \u003d {}"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"def get_swift_info(admin\u003dFalse, disallowed_sections\u003dNone):"},{"line_number":25,"context_line":"    \"\"\""},{"line_number":26,"context_line":"    Returns information about the swift cluster that has been previously"},{"line_number":27,"context_line":"    registered with the register_swift_info call."}],"source_content_type":"text/x-python","patch_set":1,"id":"288ecaea_4e1fedad","line":24,"in_reply_to":"21df134c_a2e4183b","updated":"2022-02-03 06:11:49.000000000","message":"Ack","commit_id":"361676424a2ec38fdc28e148a974bc90296ae913"}],"swift/common/utils.py":[{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"49445c099a576f665fb4058067710c08693cc37b","unresolved":true,"context_lines":[{"line_number":90,"context_line":"from swift.common.linkat import linkat"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"# For backwards compatability with 3rd party middlewares"},{"line_number":93,"context_line":"from swift.common.registry import register_swift_info, get_swift_info # noqa"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"# logging doesn\u0027t import patched as cleanly as one would like"},{"line_number":96,"context_line":"from logging.handlers import SysLogHandler"}],"source_content_type":"text/x-python","patch_set":1,"id":"93ed94e0_31fdf584","line":93,"updated":"2022-01-24 23:37:32.000000000","message":"+1","commit_id":"361676424a2ec38fdc28e148a974bc90296ae913"}],"test/unit/common/middleware/test_tempurl.py":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"ed98978c87f441aaf95383f57133b1fe52a9140c","unresolved":true,"context_lines":[{"line_number":207,"context_line":"        for sig in (sig1, sig2):"},{"line_number":208,"context_line":"            self.assert_valid_sig(expires, path, account_keys, sig, environ)"},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"    def test_signature_trim(self):"},{"line_number":211,"context_line":"        # Insert proxy logging into the pipeline"},{"line_number":212,"context_line":"        p_logging \u003d proxy_logging.filter_factory({})(self.app)"},{"line_number":213,"context_line":"        self.auth \u003d tempauth.filter_factory({\u0027reseller_prefix\u0027: \u0027\u0027})("}],"source_content_type":"text/x-python","patch_set":5,"id":"9edca8a8_bffb7887","line":210,"updated":"2022-02-03 14:42:08.000000000","message":"should this be here?","commit_id":"b6302ab71910dba9241b293d0f5ae706d0b65e15"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"b4ffd558daa42848577a3fbf9272070c7d89c94a","unresolved":false,"context_lines":[{"line_number":207,"context_line":"        for sig in (sig1, sig2):"},{"line_number":208,"context_line":"            self.assert_valid_sig(expires, path, account_keys, sig, environ)"},{"line_number":209,"context_line":""},{"line_number":210,"context_line":"    def test_signature_trim(self):"},{"line_number":211,"context_line":"        # Insert proxy logging into the pipeline"},{"line_number":212,"context_line":"        p_logging \u003d proxy_logging.filter_factory({})(self.app)"},{"line_number":213,"context_line":"        self.auth \u003d tempauth.filter_factory({\u0027reseller_prefix\u0027: \u0027\u0027})("}],"source_content_type":"text/x-python","patch_set":5,"id":"d182d10b_c29905be","line":210,"in_reply_to":"9edca8a8_bffb7887","updated":"2022-02-03 14:42:52.000000000","message":"Done","commit_id":"b6302ab71910dba9241b293d0f5ae706d0b65e15"}],"test/unit/common/test_registry.py":[{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"49445c099a576f665fb4058067710c08693cc37b","unresolved":true,"context_lines":[{"line_number":18,"context_line":"import unittest"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"class TestSwiftInfo(unittest.TestCase):"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    def tearDown(self):"},{"line_number":24,"context_line":"        registry._swift_info \u003d {}"}],"source_content_type":"text/x-python","patch_set":1,"id":"db106665_8181ae90","line":21,"updated":"2022-01-24 23:37:32.000000000","message":"This definitely makes it more obvious that we\u0027ll want to add tests for the register_sensitive_* methods :P","commit_id":"361676424a2ec38fdc28e148a974bc90296ae913"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"9dfb1bcad46c7f709547017f5b01c719bd1ec818","unresolved":false,"context_lines":[{"line_number":18,"context_line":"import unittest"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"class TestSwiftInfo(unittest.TestCase):"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    def tearDown(self):"},{"line_number":24,"context_line":"        registry._swift_info \u003d {}"}],"source_content_type":"text/x-python","patch_set":1,"id":"896d3f05_0d9bd520","line":21,"in_reply_to":"031a4f57_bf365a0d","updated":"2022-02-03 06:11:49.000000000","message":"Added some basic sensitive registration tests.","commit_id":"361676424a2ec38fdc28e148a974bc90296ae913"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"29dd35fe3b0c3797fd58a822edab08707fddd016","unresolved":true,"context_lines":[{"line_number":18,"context_line":"import unittest"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"class TestSwiftInfo(unittest.TestCase):"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    def tearDown(self):"},{"line_number":24,"context_line":"        registry._swift_info \u003d {}"}],"source_content_type":"text/x-python","patch_set":1,"id":"031a4f57_bf365a0d","line":21,"in_reply_to":"db106665_8181ae90","updated":"2022-01-26 22:43:08.000000000","message":"lol, yup.\n\nWanted to confirm this way forward before falling too far down the rabbit hole :)","commit_id":"361676424a2ec38fdc28e148a974bc90296ae913"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"ed98978c87f441aaf95383f57133b1fe52a9140c","unresolved":true,"context_lines":[{"line_number":18,"context_line":"import unittest"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"class TestSwiftInfo(unittest.TestCase):"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    def tearDown(self):"},{"line_number":24,"context_line":"        registry._swift_info \u003d {}"}],"source_content_type":"text/x-python","patch_set":5,"id":"8375079a_48da7b4f","line":21,"updated":"2022-02-03 14:42:08.000000000","message":"we should check the imports are still available from utils","commit_id":"b6302ab71910dba9241b293d0f5ae706d0b65e15"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"b4ffd558daa42848577a3fbf9272070c7d89c94a","unresolved":false,"context_lines":[{"line_number":18,"context_line":"import unittest"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"class TestSwiftInfo(unittest.TestCase):"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    def tearDown(self):"},{"line_number":24,"context_line":"        registry._swift_info \u003d {}"}],"source_content_type":"text/x-python","patch_set":5,"id":"bb752ae9_f5e99d34","line":21,"in_reply_to":"8375079a_48da7b4f","updated":"2022-02-03 14:42:52.000000000","message":"Done","commit_id":"b6302ab71910dba9241b293d0f5ae706d0b65e15"}]}
