)]}'
{"keystone/assignment/core.py":[{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"34be22da31eb177585088967b58f62a480671c70","unresolved":false,"context_lines":[{"line_number":1647,"context_line":""},{"line_number":1648,"context_line":"    @abc.abstractmethod"},{"line_number":1649,"context_line":"    def get_implied_role(self, prior_role_id, implied_role_id):"},{"line_number":1650,"context_line":"        \"\"\"Fetche a role inference rule."},{"line_number":1651,"context_line":""},{"line_number":1652,"context_line":"        :raises keystone.exception.ImpliedRoleNotFound: If the implied role"},{"line_number":1653,"context_line":"            doesn\u0027t exist."}],"source_content_type":"text/x-python","patch_set":3,"id":"1a122d0e_06873fd8","line":1650,"updated":"2016-04-21 15:44:58.000000000","message":"Out of scope for this patch: Fetch*","commit_id":"2c4f948db025fb276dfe32eb428a0a68ed879f57"}],"keystone/common/wsgi.py":[{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"34be22da31eb177585088967b58f62a480671c70","unresolved":false,"context_lines":[{"line_number":153,"context_line":"        return cls(**local_config)"},{"line_number":154,"context_line":""},{"line_number":155,"context_line":"    def __call__(self, environ, start_response):"},{"line_number":156,"context_line":"        r\"\"\"Provide subclasses how to implement __call__, probably like this."},{"line_number":157,"context_line":""},{"line_number":158,"context_line":"        @webob.dec.wsgify()"},{"line_number":159,"context_line":"        def __call__(self, req):"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a122d0e_4685b7ab","line":156,"updated":"2016-04-21 15:44:58.000000000","message":"This needs to be re-written to actually make sense with a period.","commit_id":"2c4f948db025fb276dfe32eb428a0a68ed879f57"}],"keystone/tests/unit/test_sql_migrate_extensions.py":[{"author":{"_account_id":9234,"name":"Steve Heyman","email":"steve@heyman.com","username":"hockeynut"},"change_message_id":"dfe2c1fb2ab45f056a4b42d192a520aaa0de68df","unresolved":false,"context_lines":[{"line_number":12,"context_line":"# License for the specific language governing permissions and limitations"},{"line_number":13,"context_line":"# under the License."},{"line_number":14,"context_line":"\"\"\""},{"line_number":15,"context_line":"To run these tests against a live database."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"1. Modify the file `keystone/tests/unit/config_files/backend_sql.conf` to use"},{"line_number":18,"context_line":"   the connection for your live database."}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_5eaf657c","line":15,"updated":"2016-04-20 23:03:05.000000000","message":"this one should probably still be a colon.  Maybe add a line before this \"Tests for SQL migration extensions.\"","commit_id":"e425f5531130daf19dc85befe048731fbe28c5b2"}],"keystone/tests/unit/test_sql_upgrade.py":[{"author":{"_account_id":9234,"name":"Steve Heyman","email":"steve@heyman.com","username":"hockeynut"},"change_message_id":"dfe2c1fb2ab45f056a4b42d192a520aaa0de68df","unresolved":false,"context_lines":[{"line_number":12,"context_line":"# License for the specific language governing permissions and limitations"},{"line_number":13,"context_line":"# under the License."},{"line_number":14,"context_line":"\"\"\""},{"line_number":15,"context_line":"To run these tests against a live database."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"1. Modify the file ``keystone/tests/unit/config_files/backend_sql.conf`` to use"},{"line_number":18,"context_line":"   the connection for your live database."}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_7ec86155","line":15,"updated":"2016-04-20 23:03:05.000000000","message":"this one should probably still be a colon.  Maybe add a line before this \"Tests for SQL migration extensions.\"","commit_id":"e425f5531130daf19dc85befe048731fbe28c5b2"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"1d5c66af26574c1a3539d9f5b873314627204694","unresolved":false,"context_lines":[{"line_number":12,"context_line":"# License for the specific language governing permissions and limitations"},{"line_number":13,"context_line":"# under the License."},{"line_number":14,"context_line":"\"\"\""},{"line_number":15,"context_line":"Test for SQL migration extensions."},{"line_number":16,"context_line":"To run these tests against a live database."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"1. Modify the file ``keystone/tests/unit/config_files/backend_sql.conf`` to use"}],"source_content_type":"text/x-python","patch_set":2,"id":"1a122d0e_41cf8055","line":15,"range":{"start_line":15,"start_character":0,"end_line":15,"end_character":34},"updated":"2016-04-21 06:31:46.000000000","message":"i think you need a new line after","commit_id":"88183650ff41cb28eeb0c699997482750bbdbce4"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"1d5c66af26574c1a3539d9f5b873314627204694","unresolved":false,"context_lines":[{"line_number":13,"context_line":"# under the License."},{"line_number":14,"context_line":"\"\"\""},{"line_number":15,"context_line":"Test for SQL migration extensions."},{"line_number":16,"context_line":"To run these tests against a live database."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"1. Modify the file ``keystone/tests/unit/config_files/backend_sql.conf`` to use"},{"line_number":19,"context_line":"   the connection for your live database."}],"source_content_type":"text/x-python","patch_set":2,"id":"1a122d0e_81d518e6","line":16,"range":{"start_line":16,"start_character":42,"end_line":16,"end_character":43},"updated":"2016-04-21 06:31:46.000000000","message":"change this to a colon:","commit_id":"88183650ff41cb28eeb0c699997482750bbdbce4"}],"keystone/tests/unit/test_v3_federation.py":[{"author":{"_account_id":9234,"name":"Steve Heyman","email":"steve@heyman.com","username":"hockeynut"},"change_message_id":"dfe2c1fb2ab45f056a4b42d192a520aaa0de68df","unresolved":false,"context_lines":[{"line_number":2125,"context_line":"        self.federation_api.update_mapping(self.mapping[\u0027id\u0027], rules)"},{"line_number":2126,"context_line":""},{"line_number":2127,"context_line":"    def test_empty_blacklist_passess_all_values(self):"},{"line_number":2128,"context_line":"        \"\"\"Test a mapping with empty blacklist specifieod."},{"line_number":2129,"context_line":""},{"line_number":2130,"context_line":"        Not adding a ``blacklist`` keyword to the mapping rules has the same"},{"line_number":2131,"context_line":"        effect as adding an empty ``blacklist``."}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_9efbbd78","line":2128,"updated":"2016-04-20 23:03:05.000000000","message":"typo","commit_id":"e425f5531130daf19dc85befe048731fbe28c5b2"}],"keystone/tests/unit/test_validation.py":[{"author":{"_account_id":9234,"name":"Steve Heyman","email":"steve@heyman.com","username":"hockeynut"},"change_message_id":"dfe2c1fb2ab45f056a4b42d192a520aaa0de68df","unresolved":false,"context_lines":[{"line_number":1025,"context_line":"            self.create_service_validator.validate(request_to_validate)"},{"line_number":1026,"context_line":""},{"line_number":1027,"context_line":"    def test_validate_service_create_fails_with_invalid_enabled(self):"},{"line_number":1028,"context_line":"        \"\"\"Exception raised when boolean-like parameters as `enabled`."},{"line_number":1029,"context_line":""},{"line_number":1030,"context_line":"        On service create, make sure an exception is raised if `enabled` is"},{"line_number":1031,"context_line":"        not a boolean value."}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_1e15ed9a","line":1028,"updated":"2016-04-20 23:03:05.000000000","message":"not your change, but \"as\" doesn\u0027t make sense in that sentence.  Maybe it should be \"are\"?","commit_id":"e425f5531130daf19dc85befe048731fbe28c5b2"}]}
