)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"dd996c924551e3577ce9fc68414f9871c1c05e9f","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"In doing so, removes some of the stricter testing for"},{"line_number":12,"context_line":"the token_format  config value, which is deprecated."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: Idf14ab6c6dd3a3cab42c35771416d9096ea4d900"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"1ae5cdf2_4e15f199","line":13,"updated":"2014-06-10 07:01:40.000000000","message":"DocImpact, I presume there\u0027s a BP for reference","commit_id":"6547d910555391c01a7d879732dcd033517e8ba6"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"a267c5788b56626af9d2e84d1f628d18fe753f0a","unresolved":false,"context_lines":[{"line_number":16,"context_line":"DocImpact  Changes the default Token Provider to PKIZ"},{"line_number":17,"context_line":"           If only token_format\u003dUUID is set, Keystone"},{"line_number":18,"context_line":"           willnot start with a warning about provider"},{"line_number":19,"context_line":"           mismatch"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Change-Id: Idf14ab6c6dd3a3cab42c35771416d9096ea4d900"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"1ae5cdf2_fe572700","line":19,"updated":"2014-06-10 21:30:08.000000000","message":"s/willnot/will not/","commit_id":"96bb5eb307fb9b401191380d51134f3fdab44e7c"}],"keystone/common/config.py":[{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"dd996c924551e3577ce9fc68414f9871c1c05e9f","unresolved":false,"context_lines":[{"line_number":183,"context_line":"                   help\u003d\u0027Amount of time a token should remain valid \u0027"},{"line_number":184,"context_line":"                        \u0027(in seconds).\u0027),"},{"line_number":185,"context_line":"        cfg.StrOpt(\u0027provider\u0027,"},{"line_number":186,"context_line":"                   default\u003d\u0027keystone.token.providers.pkiz.Provider\u0027,"},{"line_number":187,"context_line":"                   help\u003d\u0027Controls the token construction, validation, and \u0027"},{"line_number":188,"context_line":"                        \u0027revocation operations. Core providers are \u0027"},{"line_number":189,"context_line":"                        \u0027\"keystone.token.providers.pki.Provider\", \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"1ae5cdf2_6e838dcc","line":186,"updated":"2014-06-10 07:01:40.000000000","message":"I presume we have a corresponding patch for tempest?","commit_id":"6547d910555391c01a7d879732dcd033517e8ba6"}],"keystone/tests/test_token_provider.py":[{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"dd996c924551e3577ce9fc68414f9871c1c05e9f","unresolved":false,"context_lines":[{"line_number":752,"context_line":"        self.assertEqual(token.provider.Manager.get_token_provider(),"},{"line_number":753,"context_line":"                         token.provider.PKI_PROVIDER)"},{"line_number":754,"context_line":""},{"line_number":755,"context_line":"    def test_uuid_token_format_and_no_provider(self):"},{"line_number":756,"context_line":"        self.config_fixture.config(group\u003d\u0027signing\u0027, token_format\u003d\u0027UUID\u0027)"},{"line_number":757,"context_line":"        self.assertEqual(token.provider.Manager.get_token_provider(),"},{"line_number":758,"context_line":"                         token.provider.UUID_PROVIDER)"}],"source_content_type":"text/x-python","patch_set":2,"id":"1ae5cdf2_993901db","side":"PARENT","line":755,"updated":"2014-06-10 07:01:40.000000000","message":"why remove this test? It was specifically designed to ensure backward compatibility.","commit_id":"66823ebcb714a41c09495e120c1c8b7465f43cf9"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"a267c5788b56626af9d2e84d1f628d18fe753f0a","unresolved":false,"context_lines":[{"line_number":752,"context_line":"        self.assertEqual(token.provider.Manager.get_token_provider(),"},{"line_number":753,"context_line":"                         token.provider.PKI_PROVIDER)"},{"line_number":754,"context_line":""},{"line_number":755,"context_line":"    def test_uuid_token_format_and_no_provider(self):"},{"line_number":756,"context_line":"        self.config_fixture.config(group\u003d\u0027signing\u0027, token_format\u003d\u0027UUID\u0027)"},{"line_number":757,"context_line":"        self.assertEqual(token.provider.Manager.get_token_provider(),"},{"line_number":758,"context_line":"                         token.provider.UUID_PROVIDER)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_5e3c9bbf","side":"PARENT","line":755,"updated":"2014-06-10 21:30:08.000000000","message":"I still don\u0027t understand why this test is being removed. This test case should pass even with the current changes.","commit_id":"2401888639e9ed142b760187871344753487c1d8"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"c1f57a107a32e66d71c32c4a252e7a1a2b506d75","unresolved":false,"context_lines":[{"line_number":752,"context_line":"        self.assertEqual(token.provider.Manager.get_token_provider(),"},{"line_number":753,"context_line":"                         token.provider.PKI_PROVIDER)"},{"line_number":754,"context_line":""},{"line_number":755,"context_line":"    def test_uuid_token_format_and_no_provider(self):"},{"line_number":756,"context_line":"        self.config_fixture.config(group\u003d\u0027signing\u0027, token_format\u003d\u0027UUID\u0027)"},{"line_number":757,"context_line":"        self.assertEqual(token.provider.Manager.get_token_provider(),"},{"line_number":758,"context_line":"                         token.provider.UUID_PROVIDER)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_fc01ea6a","side":"PARENT","line":755,"in_reply_to":"1ae5cdf2_5e3c9bbf","updated":"2014-06-11 02:23:24.000000000","message":"++","commit_id":"2401888639e9ed142b760187871344753487c1d8"},{"author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"change_message_id":"149612d17c02d34454a95efeb33f7042528c4eb8","unresolved":false,"context_lines":[{"line_number":752,"context_line":"        self.assertEqual(token.provider.Manager.get_token_provider(),"},{"line_number":753,"context_line":"                         token.provider.PKI_PROVIDER)"},{"line_number":754,"context_line":""},{"line_number":755,"context_line":"    def test_uuid_token_format_and_no_provider(self):"},{"line_number":756,"context_line":"        self.config_fixture.config(group\u003d\u0027signing\u0027, token_format\u003d\u0027UUID\u0027)"},{"line_number":757,"context_line":"        self.assertEqual(token.provider.Manager.get_token_provider(),"},{"line_number":758,"context_line":"                         token.provider.UUID_PROVIDER)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_e6d83855","side":"PARENT","line":755,"in_reply_to":"1ae5cdf2_5e3c9bbf","updated":"2014-06-12 17:25:54.000000000","message":"Because we are no longer defaulting token.Provider \u003d None.","commit_id":"2401888639e9ed142b760187871344753487c1d8"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"c78cc4adfdec79e03528d9fa2bf500c0e129e847","unresolved":false,"context_lines":[{"line_number":755,"context_line":"    def test_uuid_token_format_and_no_provider(self):"},{"line_number":756,"context_line":"        self.config_fixture.config(group\u003d\u0027signing\u0027, token_format\u003d\u0027UUID\u0027)"},{"line_number":757,"context_line":"        self.assertEqual(token.provider.Manager.get_token_provider(),"},{"line_number":758,"context_line":"                         token.provider.UUID_PROVIDER)"},{"line_number":759,"context_line":""},{"line_number":760,"context_line":"    def test_default_providers_without_token_format(self):"},{"line_number":761,"context_line":"        self.config_fixture.config(group\u003d\u0027token\u0027,"}],"source_content_type":"text/x-python","patch_set":8,"id":"1ae5cdf2_3db3940b","side":"PARENT","line":758,"updated":"2014-06-17 05:30:40.000000000","message":"If I understand grenade tests correctly, one of its criteria is new code must work with old config. If that\u0027s the case, it is certainly possible that old config would only set token format. Until we actually remove token_format support, this test should stay.","commit_id":"e3d52279d75b2c96239a274bb10ad1415f1caa0d"},{"author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"change_message_id":"0e8c8b07ed46e63faae476aaa06d3836ec13fdb5","unresolved":false,"context_lines":[{"line_number":755,"context_line":"    def test_uuid_token_format_and_no_provider(self):"},{"line_number":756,"context_line":"        self.config_fixture.config(group\u003d\u0027signing\u0027, token_format\u003d\u0027UUID\u0027)"},{"line_number":757,"context_line":"        self.assertEqual(token.provider.Manager.get_token_provider(),"},{"line_number":758,"context_line":"                         token.provider.UUID_PROVIDER)"},{"line_number":759,"context_line":""},{"line_number":760,"context_line":"    def test_default_providers_without_token_format(self):"},{"line_number":761,"context_line":"        self.config_fixture.config(group\u003d\u0027token\u0027,"}],"source_content_type":"text/x-python","patch_set":8,"id":"1ae5cdf2_1f1a3e18","side":"PARENT","line":758,"in_reply_to":"1ae5cdf2_3db3940b","updated":"2014-06-17 13:20:31.000000000","message":"Will not match this test.  If that configuration comes across, then the token_format must match the Token Provider.  token Provider will never be \u0027None\u0027.  If it is unset, the token Provider will have the default value of pkiz.Provider","commit_id":"e3d52279d75b2c96239a274bb10ad1415f1caa0d"}],"keystone/token/provider.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"c1f57a107a32e66d71c32c4a252e7a1a2b506d75","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"1ae5cdf2_3c8432b0","updated":"2014-06-11 02:23:24.000000000","message":"why was any of this changed?","commit_id":"96bb5eb307fb9b401191380d51134f3fdab44e7c"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"c1f57a107a32e66d71c32c4a252e7a1a2b506d75","unresolved":false,"context_lines":[{"line_number":42,"context_line":"VERSIONS \u003d frozenset([V2, V3])"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"# default token providers"},{"line_number":45,"context_line":"PKIZ_PROVIDER \u003d \u0027keystone.token.providers.pkiz.Provider\u0027"},{"line_number":46,"context_line":"PKI_PROVIDER \u003d \u0027keystone.token.providers.pki.Provider\u0027"},{"line_number":47,"context_line":"UUID_PROVIDER \u003d \u0027keystone.token.providers.uuid.Provider\u0027"},{"line_number":48,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_dce8ae7e","line":45,"updated":"2014-06-11 02:23:24.000000000","message":"this variable was introduced and is not used.","commit_id":"96bb5eb307fb9b401191380d51134f3fdab44e7c"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"c1f57a107a32e66d71c32c4a252e7a1a2b506d75","unresolved":false,"context_lines":[{"line_number":76,"context_line":"        ``provider`` instead."},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        \"\"\""},{"line_number":79,"context_line":"        if CONF.signing.token_format is None:"},{"line_number":80,"context_line":"            return CONF.token.provider"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"        formats \u003d {\u0027PKI\u0027: PKI_PROVIDER,"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_bc63e23f","line":79,"updated":"2014-06-11 02:23:24.000000000","message":"suggest keeping the old comment or adding a new one, saying that token_format is deprecated.","commit_id":"96bb5eb307fb9b401191380d51134f3fdab44e7c"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"c1f57a107a32e66d71c32c4a252e7a1a2b506d75","unresolved":false,"context_lines":[{"line_number":78,"context_line":"        \"\"\""},{"line_number":79,"context_line":"        if CONF.signing.token_format is None:"},{"line_number":80,"context_line":"            return CONF.token.provider"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"        formats \u003d {\u0027PKI\u0027: PKI_PROVIDER,"},{"line_number":83,"context_line":"                   \u0027UUID\u0027: UUID_PROVIDER}"},{"line_number":84,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_bc98421c","line":81,"updated":"2014-06-11 02:23:24.000000000","message":"i think you are missing an else block? \nand lines 81-89 should be in it?","commit_id":"96bb5eb307fb9b401191380d51134f3fdab44e7c"},{"author":{"_account_id":2218,"name":"Adam Young","email":"adam@younglogic.com","username":"ayoung"},"change_message_id":"3ae624f408f3fecbd0554fe6bded1bceeeb3b68f","unresolved":false,"context_lines":[{"line_number":78,"context_line":"        \"\"\""},{"line_number":79,"context_line":"        if CONF.signing.token_format is None:"},{"line_number":80,"context_line":"            return CONF.token.provider"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"        formats \u003d {\u0027PKI\u0027: PKI_PROVIDER,"},{"line_number":83,"context_line":"                   \u0027UUID\u0027: UUID_PROVIDER}"},{"line_number":84,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":3,"id":"1ae5cdf2_e694b838","line":81,"in_reply_to":"1ae5cdf2_bc98421c","updated":"2014-06-16 02:57:59.000000000","message":"No.  The configuration no longer defaults to None.  While a user might be able to somehow configure that, it would be bogus, and they would get a startup error.","commit_id":"96bb5eb307fb9b401191380d51134f3fdab44e7c"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"edb31aaf07758210e93eed4725a127c0e83d6abe","unresolved":false,"context_lines":[{"line_number":43,"context_line":""},{"line_number":44,"context_line":"# default token providers"},{"line_number":45,"context_line":"PKI_PROVIDER \u003d \u0027keystone.token.providers.pki.Provider\u0027"},{"line_number":46,"context_line":"# NOTE(ayoung) this is only used in testing.  It can be removed"},{"line_number":47,"context_line":"# once UUID tokens are deprecated."},{"line_number":48,"context_line":"PKIZ_PROVIDER \u003d \u0027keystone.token.providers.pkiz.Provider\u0027"},{"line_number":49,"context_line":"UUID_PROVIDER \u003d \u0027keystone.token.providers.uuid.Provider\u0027"}],"source_content_type":"text/x-python","patch_set":8,"id":"1ae5cdf2_cbe3cfa2","line":46,"updated":"2014-06-17 03:12:58.000000000","message":"thanks for the note!","commit_id":"6ab7026bf2b212eac56df4f32f0cb6226a9acb58"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"be237c70ea4abcc562fb4e7f520f5069d7350d5e","unresolved":false,"context_lines":[{"line_number":115,"context_line":"                      \u0027conflicts with keystone.conf [token] provider\u0027))"},{"line_number":116,"context_line":"            return mapped"},{"line_number":117,"context_line":"        else:"},{"line_number":118,"context_line":"            return CONF.token.provider"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"    def __init__(self):"},{"line_number":121,"context_line":"        super(Manager, self).__init__(self.get_token_provider())"}],"source_content_type":"text/x-python","patch_set":12,"id":"1ae5cdf2_5db83cc7","line":118,"updated":"2014-06-17 19:09:14.000000000","message":"This code makes me think we\u0027re doing it wrong. Why do we need to detect and raise an exception on a conflict? Is it _that_ important to do so? I would say we get the same benefit from something simple such as: http://paste.openstack.org/show/84322/\n\nif we also changed the default provider to PKIZ.","commit_id":"71f43db07f672bc2a4208a52d5bc373d347ea372"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"52b165243052e19a58076936f8168c2f64eb3036","unresolved":false,"context_lines":[{"line_number":86,"context_line":""},{"line_number":87,"context_line":"        # NOTE(gyee): we are deprecating CONF.signing.token_format. This"},{"line_number":88,"context_line":"        # code is to ensure the token provider configuration agrees with"},{"line_number":89,"context_line":"        # CONF.signing.token_format."},{"line_number":90,"context_line":"        if CONF.signing.token_format:"},{"line_number":91,"context_line":"            try:"},{"line_number":92,"context_line":"                LOG.warn(_(\u0027[signing] token_format is deprecated. \u0027"}],"source_content_type":"text/x-python","patch_set":13,"id":"1ae5cdf2_f4875510","line":89,"updated":"2014-06-18 00:08:19.000000000","message":"this NOTE is no longer applicable","commit_id":"982538a91cf977d20c7e98ca303cd029842612ea"},{"author":{"_account_id":1916,"name":"Guang Yee","email":"gyee@suse.com","username":"guang-yee"},"change_message_id":"52b165243052e19a58076936f8168c2f64eb3036","unresolved":false,"context_lines":[{"line_number":91,"context_line":"            try:"},{"line_number":92,"context_line":"                LOG.warn(_(\u0027[signing] token_format is deprecated. \u0027"},{"line_number":93,"context_line":"                           \u0027Please change to seting the [token] provider \u0027"},{"line_number":94,"context_line":"                           \u0027configuration value instead\u0027))"},{"line_number":95,"context_line":"                mapped \u003d _FORMAT_TO_PROVIDER[CONF.signing.token_format]"},{"line_number":96,"context_line":"            except KeyError:"},{"line_number":97,"context_line":"                raise exception.UnexpectedError("}],"source_content_type":"text/x-python","patch_set":13,"id":"1ae5cdf2_1492014b","line":94,"updated":"2014-06-18 00:08:19.000000000","message":"this LOG statement should be outside of the try:except block","commit_id":"982538a91cf977d20c7e98ca303cd029842612ea"}]}
