)]}'
{"swift/common/middleware/s3api/s3api.py":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"1d67007898eefd3c39b582fb132e0584d5b2e6ee","unresolved":true,"context_lines":[{"line_number":281,"context_line":""},{"line_number":282,"context_line":"        self.logger \u003d get_logger("},{"line_number":283,"context_line":"            conf, log_route\u003dconf.get(\u0027log_name\u0027, \u0027s3api\u0027))"},{"line_number":284,"context_line":"        self.check_pipeline(self.conf)"},{"line_number":285,"context_line":""},{"line_number":286,"context_line":"    def __call__(self, env, start_response):"},{"line_number":287,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"f80903c4_6c9e9e55","line":284,"updated":"2021-01-19 17:08:49.000000000","message":"N.B. we\u0027re passing in self.conf (which we\u0027ve explicitly added a __file__ attrbiute) instead of the wsgi conf which (probably?) comes with a __file__ key.","commit_id":"d502ca592cafecde881824cd3047f7b68bfe07f4"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"5e303a7622f3ff9542eb3306a508ef057fc0008e","unresolved":true,"context_lines":[{"line_number":339,"context_line":"        if conf.get(\u0027__file__\u0027, None) is None:"},{"line_number":340,"context_line":"            return"},{"line_number":341,"context_line":""},{"line_number":342,"context_line":"        ctx \u003d loadcontext(loadwsgi.APP, conf.__file__)"},{"line_number":343,"context_line":"        pipeline \u003d str(PipelineWrapper(ctx)).split(\u0027 \u0027)"},{"line_number":344,"context_line":""},{"line_number":345,"context_line":"        # Add compatible with 3rd party middleware."}],"source_content_type":"text/x-python","patch_set":1,"id":"21f67c6f_becd8df8","line":342,"updated":"2021-01-19 15:24:30.000000000","message":"so this would like... attribute error?  why not just use conf[\u0027__file__\u0027]","commit_id":"d502ca592cafecde881824cd3047f7b68bfe07f4"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"486daaae075062493833547391b7a692679579ee","unresolved":true,"context_lines":[{"line_number":339,"context_line":"        if conf.get(\u0027__file__\u0027, None) is None:"},{"line_number":340,"context_line":"            return"},{"line_number":341,"context_line":""},{"line_number":342,"context_line":"        ctx \u003d loadcontext(loadwsgi.APP, conf.__file__)"},{"line_number":343,"context_line":"        pipeline \u003d str(PipelineWrapper(ctx)).split(\u0027 \u0027)"},{"line_number":344,"context_line":""},{"line_number":345,"context_line":"        # Add compatible with 3rd party middleware."}],"source_content_type":"text/x-python","patch_set":1,"id":"6cc67489_c97bc44a","line":342,"in_reply_to":"21f67c6f_becd8df8","updated":"2021-01-19 16:18:21.000000000","message":"conf \u003d self.conf which is a Config() instance that provides Namespace-like getters. conf[\u0027__file__\u0027] works too but all/most other lookups on self.conf use a getter.\n\nSo, now i think about it, I guess there\u0027s no need to pass conf as an arg. And I wonder if we could just use Namespace.","commit_id":"d502ca592cafecde881824cd3047f7b68bfe07f4"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"63f2a3d3e5ff11402f02d10cf6b2ac9941a246c9","unresolved":true,"context_lines":[{"line_number":355,"context_line":"                                \u0027to support multi-part upload, please add it \u0027"},{"line_number":356,"context_line":"                                \u0027in pipeline\u0027)"},{"line_number":357,"context_line":""},{"line_number":358,"context_line":"        if not conf.auth_pipeline_check:"},{"line_number":359,"context_line":"            self.logger.debug(\u0027Skip pipeline auth check.\u0027)"},{"line_number":360,"context_line":"            return"},{"line_number":361,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1b240ca2_2ce4b783","line":358,"updated":"2021-01-19 17:12:47.000000000","message":"i guess i wouldn\u0027t complain if this default changed for some reason - but i doubt it matters","commit_id":"d502ca592cafecde881824cd3047f7b68bfe07f4"}]}
