)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"e880220bb38d036f8bee332ccd0188da1c15fbc1","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Allow to list containers of other accounts"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"You must be a ResellerAdmin for this to be permitted, of course."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: Id2924179465c6d7f3070ded7d98339f1db94cfe9"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"bf51134e_7d777aa1","line":9,"range":{"start_line":9,"start_character":0,"end_line":9,"end_character":64},"updated":"2020-06-24 10:27:58.000000000","message":"Just for my general culture, I suppose it\u0027s depend on the passed `identity_client`, isn\u0027t?","commit_id":"9489dee73199c17a3eb82bfe5b1f679893638871"}],"openstackclient/api/api.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"7e53a3409d3a10b8e0c5642212332b840e05d9fd","unresolved":true,"context_lines":[{"line_number":63,"context_line":"            The API-specific portion of the URL path"},{"line_number":64,"context_line":"        :param Session session:"},{"line_number":65,"context_line":"            HTTP client session"},{"line_number":66,"context_line":"        :param string endpoint:"},{"line_number":67,"context_line":"            Overriding endpoint used for 3rd Party Authentication"},{"line_number":68,"context_line":"        :param kwargs:"},{"line_number":69,"context_line":"            keyword arguments passed to requests.request()."}],"source_content_type":"text/x-python","patch_set":3,"id":"c23bfc05_be32bc42","line":66,"updated":"2021-06-15 10:57:17.000000000","message":"An alternative idea: why not support absolute URLs? So just check if URL has a schema, if it does - do not prepend endpoint.","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"a094777d7d501a2281f48f4ccc3ea4725808c7d1","unresolved":true,"context_lines":[{"line_number":63,"context_line":"            The API-specific portion of the URL path"},{"line_number":64,"context_line":"        :param Session session:"},{"line_number":65,"context_line":"            HTTP client session"},{"line_number":66,"context_line":"        :param string endpoint:"},{"line_number":67,"context_line":"            Overriding endpoint used for 3rd Party Authentication"},{"line_number":68,"context_line":"        :param kwargs:"},{"line_number":69,"context_line":"            keyword arguments passed to requests.request()."}],"source_content_type":"text/x-python","patch_set":3,"id":"69eca9a6_ca52630d","line":66,"in_reply_to":"c23bfc05_be32bc42","updated":"2021-07-02 23:58:06.000000000","message":"This is a little implicit in my view. But let\u0027s give it a try.","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"7e53a3409d3a10b8e0c5642212332b840e05d9fd","unresolved":true,"context_lines":[{"line_number":192,"context_line":"            ret \u003d self._request("},{"line_number":193,"context_line":"                \u0027POST\u0027,"},{"line_number":194,"context_line":"                path,"},{"line_number":195,"context_line":"                json\u003dbody,"},{"line_number":196,"context_line":"                params\u003dparams,"},{"line_number":197,"context_line":"            )"},{"line_number":198,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"e6369642_36523736","line":195,"updated":"2021-06-15 10:57:17.000000000","message":"I think endpoint has to be supported here as well for consistency","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"a094777d7d501a2281f48f4ccc3ea4725808c7d1","unresolved":true,"context_lines":[{"line_number":192,"context_line":"            ret \u003d self._request("},{"line_number":193,"context_line":"                \u0027POST\u0027,"},{"line_number":194,"context_line":"                path,"},{"line_number":195,"context_line":"                json\u003dbody,"},{"line_number":196,"context_line":"                params\u003dparams,"},{"line_number":197,"context_line":"            )"},{"line_number":198,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":3,"id":"8a395f8c_728e7d5e","line":195,"in_reply_to":"e6369642_36523736","updated":"2021-07-02 23:58:06.000000000","message":"Let\u0027s just do this: switch to your suggestion with absolute URL, and so this layer will support it when the outside shell wants to do it.","commit_id":"43142c374b1359786bc7f24857242d1918570105"}],"openstackclient/object/v1/container.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"533da49bfa23ada7240cd994107ad3021d2ee946","unresolved":true,"context_lines":[{"line_number":174,"context_line":"            if svc.type \u003d\u003d \u0027object-store\u0027:"},{"line_number":175,"context_line":"                swift_svc \u003d svc"},{"line_number":176,"context_line":"                break"},{"line_number":177,"context_line":"        if not swift_svc:"},{"line_number":178,"context_line":"            raise ValueError(\u0027Service object-store not found\u0027)"},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"        eps \u003d identity_client.endpoints.list()"}],"source_content_type":"text/x-python","patch_set":2,"id":"455826b9_daf7e579","line":177,"range":{"start_line":177,"start_character":8,"end_line":177,"end_character":25},"updated":"2020-12-22 12:34:53.000000000","message":"nit: simply \u0027else\u0027 would work here too\n\nhttps://docs.python.org/3/tutorial/controlflow.html#break-and-continue-statements-and-else-clauses-on-loops","commit_id":"9489dee73199c17a3eb82bfe5b1f679893638871"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"533da49bfa23ada7240cd994107ad3021d2ee946","unresolved":true,"context_lines":[{"line_number":189,"context_line":"            if ep.interface !\u003d \u0027public\u0027:"},{"line_number":190,"context_line":"                continue"},{"line_number":191,"context_line":"            swift_ep \u003d ep"},{"line_number":192,"context_line":"        if not swift_ep:"},{"line_number":193,"context_line":"            raise ValueError(\u0027Endpoint for %s not found\u0027 % (swift_svc.type,))"},{"line_number":194,"context_line":""},{"line_number":195,"context_line":"        return swift_ep.url"}],"source_content_type":"text/x-python","patch_set":2,"id":"50678812_9219c4ad","line":192,"updated":"2020-12-22 12:34:53.000000000","message":"ditto","commit_id":"9489dee73199c17a3eb82bfe5b1f679893638871"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"7e53a3409d3a10b8e0c5642212332b840e05d9fd","unresolved":true,"context_lines":[{"line_number":153,"context_line":"            help\u003d_(\u0027Object endpoint region name to use for listings\u0027),"},{"line_number":154,"context_line":"        )"},{"line_number":155,"context_line":"        parser.add_argument("},{"line_number":156,"context_line":"            \u0027--target\u0027,"},{"line_number":157,"context_line":"            help\u003d_(\"Account to list, or \u0027*\u0027 (asterisk) for all accounts\"),"},{"line_number":158,"context_line":"        )"},{"line_number":159,"context_line":"        return parser"}],"source_content_type":"text/x-python","patch_set":3,"id":"d5a38b7c_48ee2653","line":156,"updated":"2021-06-15 10:57:17.000000000","message":"Is there a precedent for --target? It feels that --account would be more obvious.","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"7e53a3409d3a10b8e0c5642212332b840e05d9fd","unresolved":true,"context_lines":[{"line_number":154,"context_line":"        )"},{"line_number":155,"context_line":"        parser.add_argument("},{"line_number":156,"context_line":"            \u0027--target\u0027,"},{"line_number":157,"context_line":"            help\u003d_(\"Account to list, or \u0027*\u0027 (asterisk) for all accounts\"),"},{"line_number":158,"context_line":"        )"},{"line_number":159,"context_line":"        return parser"},{"line_number":160,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"d2c51e6e_0abfcb1e","line":157,"updated":"2021-06-15 10:57:17.000000000","message":"Not sure what OSC standards are, I\u0027d have --account\u003dsomething and --all-accounts rather than use *. Or is there a precedent for * as well?","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"a094777d7d501a2281f48f4ccc3ea4725808c7d1","unresolved":true,"context_lines":[{"line_number":154,"context_line":"        )"},{"line_number":155,"context_line":"        parser.add_argument("},{"line_number":156,"context_line":"            \u0027--target\u0027,"},{"line_number":157,"context_line":"            help\u003d_(\"Account to list, or \u0027*\u0027 (asterisk) for all accounts\"),"},{"line_number":158,"context_line":"        )"},{"line_number":159,"context_line":"        return parser"},{"line_number":160,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"fe6ab33f_a99000b0","line":157,"in_reply_to":"d2c51e6e_0abfcb1e","updated":"2021-07-02 23:58:06.000000000","message":"You\u0027re right --all-accounts would be better. Even leaving precedent aside, an asterisk has a couple of problems. First, it is difficult to discover in --help. Second, it is deceptive because it looks like a glob, but --target\u003d\u0027a*\u0027 will not work. Interferes with shell, too, which is inconvenient.","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"7e53a3409d3a10b8e0c5642212332b840e05d9fd","unresolved":true,"context_lines":[{"line_number":164,"context_line":"    #  - Find the service ID for Swift"},{"line_number":165,"context_line":"    #  - Obtain the list of endpoints"},{"line_number":166,"context_line":"    #  - Match the endpoint we need"},{"line_number":167,"context_line":"    def _get_swift_endpoint_url(self, identity_client, region):"},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"        svcs \u003d identity_client.services.list()"},{"line_number":170,"context_line":"        swift_svc \u003d None"}],"source_content_type":"text/x-python","patch_set":3,"id":"e30dc35a_8f7ec67a","line":167,"updated":"2021-06-15 10:57:17.000000000","message":"Cannot use use openstacksdk to get the endpoint URL? something like client_manager.object_store.get_endpoint(region\u003d...)?","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"7bd27ce13f3c30cc30f7ed9ecb21b2dfaa934bab","unresolved":true,"context_lines":[{"line_number":164,"context_line":"    #  - Find the service ID for Swift"},{"line_number":165,"context_line":"    #  - Obtain the list of endpoints"},{"line_number":166,"context_line":"    #  - Match the endpoint we need"},{"line_number":167,"context_line":"    def _get_swift_endpoint_url(self, identity_client, region):"},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"        svcs \u003d identity_client.services.list()"},{"line_number":170,"context_line":"        swift_svc \u003d None"}],"source_content_type":"text/x-python","patch_set":3,"id":"6d5fae95_bf0bb364","line":167,"in_reply_to":"e30dc35a_8f7ec67a","updated":"2021-07-16 19:24:03.000000000","message":"I\u0027ll need more handholding here. I\u0027m going to re-upload as-is, but if you can explain just how to accomplish this, I\u0027m ready to listen.","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"7e53a3409d3a10b8e0c5642212332b840e05d9fd","unresolved":true,"context_lines":[{"line_number":166,"context_line":"    #  - Match the endpoint we need"},{"line_number":167,"context_line":"    def _get_swift_endpoint_url(self, identity_client, region):"},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"        svcs \u003d identity_client.services.list()"},{"line_number":170,"context_line":"        swift_svc \u003d None"},{"line_number":171,"context_line":"        for svc in svcs:"},{"line_number":172,"context_line":"            if not svc.enabled:"}],"source_content_type":"text/x-python","patch_set":3,"id":"cd62728b_fd96ee9a","line":169,"updated":"2021-06-15 10:57:17.000000000","message":"You should be able to filter services by service type, I think.","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"7bd27ce13f3c30cc30f7ed9ecb21b2dfaa934bab","unresolved":true,"context_lines":[{"line_number":166,"context_line":"    #  - Match the endpoint we need"},{"line_number":167,"context_line":"    def _get_swift_endpoint_url(self, identity_client, region):"},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"        svcs \u003d identity_client.services.list()"},{"line_number":170,"context_line":"        swift_svc \u003d None"},{"line_number":171,"context_line":"        for svc in svcs:"},{"line_number":172,"context_line":"            if not svc.enabled:"}],"source_content_type":"text/x-python","patch_set":3,"id":"5e6d0377_ab3f1dbb","line":169,"in_reply_to":"cd62728b_fd96ee9a","updated":"2021-07-16 19:24:03.000000000","message":"I tried, but everything I found pre-interpolates.","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"7e53a3409d3a10b8e0c5642212332b840e05d9fd","unresolved":true,"context_lines":[{"line_number":177,"context_line":"        if not swift_svc:"},{"line_number":178,"context_line":"            raise ValueError(\u0027Service object-store not found\u0027)"},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"        eps \u003d identity_client.endpoints.list()"},{"line_number":181,"context_line":"        swift_ep \u003d None"},{"line_number":182,"context_line":"        for ep in eps:"},{"line_number":183,"context_line":"            if not ep.enabled:"}],"source_content_type":"text/x-python","patch_set":3,"id":"0f87f8c5_d0236da5","line":180,"updated":"2021-06-15 10:57:17.000000000","message":"Same re server-side filtering.","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"7e53a3409d3a10b8e0c5642212332b840e05d9fd","unresolved":true,"context_lines":[{"line_number":190,"context_line":"                continue"},{"line_number":191,"context_line":"            swift_ep \u003d ep"},{"line_number":192,"context_line":"        if not swift_ep:"},{"line_number":193,"context_line":"            raise ValueError(\u0027Endpoint for %s not found\u0027 % (swift_svc.type,))"},{"line_number":194,"context_line":""},{"line_number":195,"context_line":"        return swift_ep.url"},{"line_number":196,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"81d6b5d4_e6b74b86","line":193,"updated":"2021-06-15 10:57:17.000000000","message":"nit: \"for %s service\"\n\nnit #2: no need for a tuple","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"7bd27ce13f3c30cc30f7ed9ecb21b2dfaa934bab","unresolved":false,"context_lines":[{"line_number":190,"context_line":"                continue"},{"line_number":191,"context_line":"            swift_ep \u003d ep"},{"line_number":192,"context_line":"        if not swift_ep:"},{"line_number":193,"context_line":"            raise ValueError(\u0027Endpoint for %s not found\u0027 % (swift_svc.type,))"},{"line_number":194,"context_line":""},{"line_number":195,"context_line":"        return swift_ep.url"},{"line_number":196,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"52e703f4_e203e582","line":193,"in_reply_to":"81d6b5d4_e6b74b86","updated":"2021-07-16 19:24:03.000000000","message":"Done","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"7e53a3409d3a10b8e0c5642212332b840e05d9fd","unresolved":true,"context_lines":[{"line_number":226,"context_line":"            #     interface\u003dinstance.interface,"},{"line_number":227,"context_line":"            # )"},{"line_number":228,"context_line":"            #"},{"line_number":229,"context_line":"            # But alas, that returns our endpoint already interpolated."},{"line_number":230,"context_line":"            # And, we don\u0027t know how to supply a different project ID."},{"line_number":231,"context_line":""},{"line_number":232,"context_line":"            endpoint_url \u003d self._get_swift_endpoint_url("}],"source_content_type":"text/x-python","patch_set":3,"id":"ae6783d3_3d352b8d","line":229,"updated":"2021-06-15 10:57:17.000000000","message":"Let\u0027s fix openstacksdk/keystoneauth then to provide such an option?","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"change_message_id":"244dc0b6da97b12113756a90e1f1eeb3e430fe78","unresolved":true,"context_lines":[{"line_number":234,"context_line":""},{"line_number":235,"context_line":"            if parsed_args.target \u003d\u003d \u0027*\u0027:"},{"line_number":236,"context_line":"                # Compiling a list of users may end poorly when you have"},{"line_number":237,"context_line":"                # tens of millions of them in the cluster at a large telco."},{"line_number":238,"context_line":"                # We may need to consider some sort of iterator later."},{"line_number":239,"context_line":"                data \u003d []"},{"line_number":240,"context_line":"                projects \u003d identity_client.projects.list()"}],"source_content_type":"text/x-python","patch_set":3,"id":"542aaf8e_e9c5b5c1","line":237,"updated":"2021-06-11 12:50:08.000000000","message":"actually you don\u0027t need to be a large telco. Even with like 100 domains each 10 projects (sounds reasonable?) you might end up doing over 1000 API queries in one CLI operation. It will never work reasonably, since even the pagination doesn\u0027t work as expected anymore (you try passing given limit/marker into every project).","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"7bd27ce13f3c30cc30f7ed9ecb21b2dfaa934bab","unresolved":true,"context_lines":[{"line_number":234,"context_line":""},{"line_number":235,"context_line":"            if parsed_args.target \u003d\u003d \u0027*\u0027:"},{"line_number":236,"context_line":"                # Compiling a list of users may end poorly when you have"},{"line_number":237,"context_line":"                # tens of millions of them in the cluster at a large telco."},{"line_number":238,"context_line":"                # We may need to consider some sort of iterator later."},{"line_number":239,"context_line":"                data \u003d []"},{"line_number":240,"context_line":"                projects \u003d identity_client.projects.list()"}],"source_content_type":"text/x-python","patch_set":3,"id":"4b6526db_48ab5350","line":237,"in_reply_to":"3fcec1ca_752fe5db","updated":"2021-07-16 19:24:03.000000000","message":"Remember we\u0027re not using any domains.","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"7e53a3409d3a10b8e0c5642212332b840e05d9fd","unresolved":true,"context_lines":[{"line_number":234,"context_line":""},{"line_number":235,"context_line":"            if parsed_args.target \u003d\u003d \u0027*\u0027:"},{"line_number":236,"context_line":"                # Compiling a list of users may end poorly when you have"},{"line_number":237,"context_line":"                # tens of millions of them in the cluster at a large telco."},{"line_number":238,"context_line":"                # We may need to consider some sort of iterator later."},{"line_number":239,"context_line":"                data \u003d []"},{"line_number":240,"context_line":"                projects \u003d identity_client.projects.list()"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fcec1ca_752fe5db","line":237,"in_reply_to":"542aaf8e_e9c5b5c1","updated":"2021-06-15 10:57:17.000000000","message":"I definitely have a use case for manipulating containers from another account. But I wonder how useful it is to list containers from all accounts..","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"change_message_id":"244dc0b6da97b12113756a90e1f1eeb3e430fe78","unresolved":true,"context_lines":[{"line_number":237,"context_line":"                # tens of millions of them in the cluster at a large telco."},{"line_number":238,"context_line":"                # We may need to consider some sort of iterator later."},{"line_number":239,"context_line":"                data \u003d []"},{"line_number":240,"context_line":"                projects \u003d identity_client.projects.list()"},{"line_number":241,"context_line":"                for project in projects:"},{"line_number":242,"context_line":""},{"line_number":243,"context_line":"                    # Skipping special users. Coincidentally, they are not"}],"source_content_type":"text/x-python","patch_set":3,"id":"e8965e35_6ddd4907","line":240,"updated":"2021-06-11 12:50:08.000000000","message":"ugh, are you sure you are able to list projects? From Keystone pov you can normally only list projects in the domain you are authorized against. You will most likely not have any other projects. As a Reseller you might be able to list projects/domains through Swift API, but I have never tried that.","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"7e53a3409d3a10b8e0c5642212332b840e05d9fd","unresolved":true,"context_lines":[{"line_number":237,"context_line":"                # tens of millions of them in the cluster at a large telco."},{"line_number":238,"context_line":"                # We may need to consider some sort of iterator later."},{"line_number":239,"context_line":"                data \u003d []"},{"line_number":240,"context_line":"                projects \u003d identity_client.projects.list()"},{"line_number":241,"context_line":"                for project in projects:"},{"line_number":242,"context_line":""},{"line_number":243,"context_line":"                    # Skipping special users. Coincidentally, they are not"}],"source_content_type":"text/x-python","patch_set":3,"id":"49ab46d5_7d4050e2","line":240,"in_reply_to":"e8965e35_6ddd4907","updated":"2021-06-15 10:57:17.000000000","message":"I suspect you\u0027re right.","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":27900,"name":"Artem Goncharov","email":"artem.goncharov@gmail.com","username":"gtema"},"change_message_id":"244dc0b6da97b12113756a90e1f1eeb3e430fe78","unresolved":true,"context_lines":[{"line_number":245,"context_line":"                    if project.is_domain:"},{"line_number":246,"context_line":"                        continue"},{"line_number":247,"context_line":""},{"line_number":248,"context_line":"                    endpoint \u003d endpoint_url % {\u0027tenant_id\u0027: project.id}"},{"line_number":249,"context_line":"                    dv \u003d self.app.client_manager.object_store.container_list("},{"line_number":250,"context_line":"                        endpoint\u003dendpoint,"},{"line_number":251,"context_line":"                        **kwargs"}],"source_content_type":"text/x-python","patch_set":3,"id":"e8fc6fec_09bb1489","line":248,"updated":"2021-06-11 12:50:08.000000000","message":"tenant_id? is it really so? It may be project_id in different installations","commit_id":"43142c374b1359786bc7f24857242d1918570105"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"7bd27ce13f3c30cc30f7ed9ecb21b2dfaa934bab","unresolved":true,"context_lines":[{"line_number":245,"context_line":"                    if project.is_domain:"},{"line_number":246,"context_line":"                        continue"},{"line_number":247,"context_line":""},{"line_number":248,"context_line":"                    endpoint \u003d endpoint_url % {\u0027tenant_id\u0027: project.id}"},{"line_number":249,"context_line":"                    dv \u003d self.app.client_manager.object_store.container_list("},{"line_number":250,"context_line":"                        endpoint\u003dendpoint,"},{"line_number":251,"context_line":"                        **kwargs"}],"source_content_type":"text/x-python","patch_set":3,"id":"d843cfa4_e4217ab9","line":248,"in_reply_to":"e8fc6fec_09bb1489","updated":"2021-07-16 19:24:03.000000000","message":"Never seen or heard one of those, but okay, I\u0027ll add project_id.","commit_id":"43142c374b1359786bc7f24857242d1918570105"}]}
