)]}'
{"keystone/common/controller.py":[{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"a4e77add3af30316115913e48e870f54e8749a31","unresolved":false,"context_lines":[{"line_number":74,"context_line":"def _build_policy_check_credentials(self, action, context, kwargs):"},{"line_number":75,"context_line":"    kwargs_str \u003d \u0027, \u0027.join([\u0027%s\u003d%s\u0027 % (k, kwargs[k]) for k in kwargs])"},{"line_number":76,"context_line":"    kwargs_str \u003d strutils.mask_password(kwargs_str)"},{"line_number":77,"context_line":"    msg \u003d \"RBAC: Authorizing %(action)s(%(kwargs)s)\""},{"line_number":78,"context_line":"    LOG.debug(msg, {\u0027action\u0027: action, \u0027kwargs\u0027: kwargs_str})"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    return context[\u0027environment\u0027].get(authorization.AUTH_CONTEXT_ENV, {})"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa7ab95a_e64c76ca","line":77,"updated":"2016-08-29 11:24:38.000000000","message":"Don\u0027t change to double quotes here. We favor single quotes where possible.","commit_id":"7d89259018ce78b85a1aa58e14983fa34f79e7d9"},{"author":{"_account_id":18338,"name":"Ron De Rose","email":"ronald.de.rose@intel.com","username":"derosenet"},"change_message_id":"b9b6f8287898c8a98edaaaa4a57d2b52193afc94","unresolved":false,"context_lines":[{"line_number":74,"context_line":"def _build_policy_check_credentials(self, action, context, kwargs):"},{"line_number":75,"context_line":"    kwargs_str \u003d \u0027, \u0027.join([\u0027%s\u003d%s\u0027 % (k, kwargs[k]) for k in kwargs])"},{"line_number":76,"context_line":"    kwargs_str \u003d strutils.mask_password(kwargs_str)"},{"line_number":77,"context_line":"    msg \u003d \"RBAC: Authorizing %(action)s(%(kwargs)s)\""},{"line_number":78,"context_line":"    LOG.debug(msg, {\u0027action\u0027: action, \u0027kwargs\u0027: kwargs_str})"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    return context[\u0027environment\u0027].get(authorization.AUTH_CONTEXT_ENV, {})"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa7ab95a_b1b29104","line":77,"in_reply_to":"fa7ab95a_e64c76ca","updated":"2016-08-29 17:05:56.000000000","message":"++","commit_id":"7d89259018ce78b85a1aa58e14983fa34f79e7d9"}],"keystone/common/fernet_utils.py":[{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"a4e77add3af30316115913e48e870f54e8749a31","unresolved":false,"context_lines":[{"line_number":257,"context_line":"        if len(keys) !\u003d self.max_active_keys:"},{"line_number":258,"context_line":"            # Once the number of keys matches max_active_keys, this log entry"},{"line_number":259,"context_line":"            # is too repetitive to be useful."},{"line_number":260,"context_line":"            msg \u003d \"Loaded %(count)d Fernet keys from %(dir)s, but \" \\"},{"line_number":261,"context_line":"                  \"`[fernet_tokens] max_active_keys \u003d %(max)d`; \" \\"},{"line_number":262,"context_line":"                  \"perhaps there have not been enough key rotations \" \\"},{"line_number":263,"context_line":"                  \"to reach `max_active_keys` yet?\""}],"source_content_type":"text/x-python","patch_set":1,"id":"fa7ab95a_86d48abd","line":260,"updated":"2016-08-29 11:24:38.000000000","message":"same ... also no ending \\. If you need to have a multiline statement it need parans.","commit_id":"7d89259018ce78b85a1aa58e14983fa34f79e7d9"},{"author":{"_account_id":18338,"name":"Ron De Rose","email":"ronald.de.rose@intel.com","username":"derosenet"},"change_message_id":"b9b6f8287898c8a98edaaaa4a57d2b52193afc94","unresolved":false,"context_lines":[{"line_number":257,"context_line":"        if len(keys) !\u003d self.max_active_keys:"},{"line_number":258,"context_line":"            # Once the number of keys matches max_active_keys, this log entry"},{"line_number":259,"context_line":"            # is too repetitive to be useful."},{"line_number":260,"context_line":"            msg \u003d \"Loaded %(count)d Fernet keys from %(dir)s, but \" \\"},{"line_number":261,"context_line":"                  \"`[fernet_tokens] max_active_keys \u003d %(max)d`; \" \\"},{"line_number":262,"context_line":"                  \"perhaps there have not been enough key rotations \" \\"},{"line_number":263,"context_line":"                  \"to reach `max_active_keys` yet?\""}],"source_content_type":"text/x-python","patch_set":1,"id":"fa7ab95a_d19c755f","line":260,"in_reply_to":"fa7ab95a_86d48abd","updated":"2016-08-29 17:05:56.000000000","message":"++ single quotes...","commit_id":"7d89259018ce78b85a1aa58e14983fa34f79e7d9"}],"keystone/identity/backends/ldap/core.py":[{"author":{"_account_id":18338,"name":"Ron De Rose","email":"ronald.de.rose@intel.com","username":"derosenet"},"change_message_id":"b9b6f8287898c8a98edaaaa4a57d2b52193afc94","unresolved":false,"context_lines":[{"line_number":205,"context_line":"            try:"},{"line_number":206,"context_line":"                users.append(self.user.get_filtered(user_id))"},{"line_number":207,"context_line":"            except exception.UserNotFound:"},{"line_number":208,"context_line":"                msg \u003d (\"Group member \u0027%(user_key)s\u0027 not found in\""},{"line_number":209,"context_line":"                       \" \u0027%(group_id)s\u0027. The user should be removed\""},{"line_number":210,"context_line":"                       \" from the group. The user will be ignored.\")"},{"line_number":211,"context_line":"                LOG.debug(msg, dict(user_key\u003duser_key, group_id\u003dgroup_id))"},{"line_number":212,"context_line":"        return users"},{"line_number":213,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"fa7ab95a_f18b39c1","line":210,"range":{"start_line":208,"start_character":15,"end_line":210,"end_character":68},"updated":"2016-08-29 17:05:56.000000000","message":"Use single quotes and use ` for quoting within the text.","commit_id":"7d89259018ce78b85a1aa58e14983fa34f79e7d9"}],"keystone/policy/backends/rules.py":[{"author":{"_account_id":18338,"name":"Ron De Rose","email":"ronald.de.rose@intel.com","username":"derosenet"},"change_message_id":"b9b6f8287898c8a98edaaaa4a57d2b52193afc94","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"class Policy(base.PolicyDriverV8):"},{"line_number":73,"context_line":"    def enforce(self, credentials, action, target):"},{"line_number":74,"context_line":"        msg \u003d \"enforce %(action)s: %(credentials)s\""},{"line_number":75,"context_line":"        LOG.debug(msg, {"},{"line_number":76,"context_line":"            \u0027action\u0027: action,"},{"line_number":77,"context_line":"            \u0027credentials\u0027: credentials})"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa7ab95a_11d17dfa","line":74,"range":{"start_line":74,"start_character":14,"end_line":74,"end_character":51},"updated":"2016-08-29 17:05:56.000000000","message":"Use single quotes","commit_id":"7d89259018ce78b85a1aa58e14983fa34f79e7d9"}],"keystone/tests/unit/test_sql_banned_operations.py":[{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"a4e77add3af30316115913e48e870f54e8749a31","unresolved":false,"context_lines":[{"line_number":6,"context_line":"#"},{"line_number":7,"context_line":"#      http://www.apache.org/licenses/LICENSE-2.0"},{"line_number":8,"context_line":"#"},{"line_number":9,"context_line":"# Unless required by applicable law or agreed to in writing, software"},{"line_number":10,"context_line":"# distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT"},{"line_number":11,"context_line":"# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the"},{"line_number":12,"context_line":"# License for the specific language governing permissions and limitations"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa7ab95a_86b9ea7b","line":9,"updated":"2016-08-29 11:24:38.000000000","message":"I\u0027m not sure what any of this has to do with the indent explained in the commit message.","commit_id":"7d89259018ce78b85a1aa58e14983fa34f79e7d9"},{"author":{"_account_id":18338,"name":"Ron De Rose","email":"ronald.de.rose@intel.com","username":"derosenet"},"change_message_id":"b9b6f8287898c8a98edaaaa4a57d2b52193afc94","unresolved":false,"context_lines":[{"line_number":6,"context_line":"#"},{"line_number":7,"context_line":"#      http://www.apache.org/licenses/LICENSE-2.0"},{"line_number":8,"context_line":"#"},{"line_number":9,"context_line":"# Unless required by applicable law or agreed to in writing, software"},{"line_number":10,"context_line":"# distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT"},{"line_number":11,"context_line":"# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the"},{"line_number":12,"context_line":"# License for the specific language governing permissions and limitations"}],"source_content_type":"text/x-python","patch_set":1,"id":"fa7ab95a_b158d18b","line":9,"in_reply_to":"fa7ab95a_86b9ea7b","updated":"2016-08-29 17:05:56.000000000","message":"Yeah, why are you modifying this module?","commit_id":"7d89259018ce78b85a1aa58e14983fa34f79e7d9"}],"keystone/token/persistence/backends/kvs.py":[{"author":{"_account_id":18338,"name":"Ron De Rose","email":"ronald.de.rose@intel.com","username":"derosenet"},"change_message_id":"b9b6f8287898c8a98edaaaa4a57d2b52193afc94","unresolved":false,"context_lines":[{"line_number":180,"context_line":"                    continue"},{"line_number":181,"context_line":""},{"line_number":182,"context_line":"                if expires \u003c current_time:"},{"line_number":183,"context_line":"                    msg \u003d (\"Token `%(token_id)s` is expired, \""},{"line_number":184,"context_line":"                           \"removing from `%(user_key)s`.\")"},{"line_number":185,"context_line":"                    LOG.debug(msg, {\u0027token_id\u0027: item_id, \u0027user_key\u0027: user_key})"},{"line_number":186,"context_line":"                    continue"},{"line_number":187,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"fa7ab95a_f1609903","line":184,"range":{"start_line":183,"start_character":19,"end_line":184,"end_character":59},"updated":"2016-08-29 17:05:56.000000000","message":"Use single quotes","commit_id":"7d89259018ce78b85a1aa58e14983fa34f79e7d9"}]}
