)]}'
{"keystoneauth1/loading/adapter.py":[{"author":{"_account_id":5046,"name":"Lance Bragstad","email":"lbragstad@redhat.com","username":"ldbragst"},"change_message_id":"97923136b1c52a1d1d60a96506bf6fa08d2b176f","unresolved":false,"context_lines":[{"line_number":153,"context_line":"            # produce a string"},{"line_number":154,"context_line":"            kwargs.setdefault(\u0027interface\u0027, c.interface[0])"},{"line_number":155,"context_line":"        else:"},{"line_number":156,"context_line":"            kwargs.setdefault(\u0027interface\u0027, c.interface)"},{"line_number":157,"context_line":""},{"line_number":158,"context_line":"        kwargs.setdefault(\u0027service_type\u0027, c.service_type)"},{"line_number":159,"context_line":"        kwargs.setdefault(\u0027service_name\u0027, c.service_name)"}],"source_content_type":"text/x-python","patch_set":6,"id":"1f1a1f67_f7732fb0","line":156,"updated":"2017-07-14 19:26:32.000000000","message":"How long do we have to keep this kind of compatibility around for keystoneauth? Is this something we can flag for removal after a few releases or do we expect to always support a single interface?","commit_id":"3782b52ca29cd86159f874d2c5fe1a6d09cbf444"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"361a3d990c9d57590c4d6e6eabe137c1be3d29c4","unresolved":false,"context_lines":[{"line_number":69,"context_line":"                cfg.StrOpt(\u0027service-name\u0027,"},{"line_number":70,"context_line":"                           help\u003d\u0027The default service_name for endpoint URL \u0027"},{"line_number":71,"context_line":"                                \u0027discovery.\u0027),"},{"line_number":72,"context_line":"                cfg.ListOpt(\u0027interface\u0027,"},{"line_number":73,"context_line":"                            help\u003d\u0027The default interface for endpoint URL \u0027"},{"line_number":74,"context_line":"                                 \u0027discovery. Can also be a list of interfaces \u0027"},{"line_number":75,"context_line":"                                 \u0027 in order of preference.\u0027),"},{"line_number":76,"context_line":"                cfg.StrOpt(\u0027region-name\u0027,"},{"line_number":77,"context_line":"                           help\u003d\u0027The default region_name for endpoint URL \u0027"},{"line_number":78,"context_line":"                                \u0027discovery.\u0027),"}],"source_content_type":"text/x-python","patch_set":7,"id":"1f1a1f67_122359aa","line":75,"range":{"start_line":72,"start_character":15,"end_line":75,"end_character":61},"updated":"2017-07-14 19:55:34.000000000","message":"Please do not change from stropt to listopt. This should be a now \"deprecated\" option (that warns) and is converted to a proper list-opt that is new. This is for formality and ensuring that we\u0027re not changing a class type which... unfortunately is a public interface for KSA.\n\nNew opt could be \"interface_list\" \"valid_interfaces\", etc. (name doesn\u0027t matter to me as long as it is documented)","commit_id":"0b3ea3386c666d7435bb4073138c004e61981bdc"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"c812c388cd1df10a59162f2f435bc9a3a6b87136","unresolved":false,"context_lines":[{"line_number":77,"context_line":"                           help\u003d\u0027The default interface for endpoint URL \u0027"},{"line_number":78,"context_line":"                                \u0027discovery.\u0027,"},{"line_number":79,"context_line":"                           deprecated_for_removal\u003dTrue,"},{"line_number":80,"context_line":"                           deprecated_since\u003d\u00273.0\u0027,"},{"line_number":81,"context_line":"                           deprecated_reason\u003d\u0027interface can be requested as a \u0027"},{"line_number":82,"context_line":"                                             \u0027list. Please use \u0027"},{"line_number":83,"context_line":"                                             \u0027valid-interfaces instead.\u0027),"}],"source_content_type":"text/x-python","patch_set":9,"id":"1f1a1f67_c90e4a8c","line":80,"range":{"start_line":80,"start_character":45,"end_line":80,"end_character":48},"updated":"2017-07-15 20:57:20.000000000","message":"I\u0027m not totally on board with releasing this as a 3.0. We\u0027re working really hard to not break backwards compatibility, and releasing a new major version signals that we gave up on that. I\u0027d like to keep the versioning consistent with semantic versioning definitions.","commit_id":"98b7292aaddd3f3a2ee85f15651955eb7a6e5f96"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"9c7d542dc2743ddb0b444a903f95d48472655d57","unresolved":false,"context_lines":[{"line_number":77,"context_line":"                           help\u003d\u0027The default interface for endpoint URL \u0027"},{"line_number":78,"context_line":"                                \u0027discovery.\u0027,"},{"line_number":79,"context_line":"                           deprecated_for_removal\u003dTrue,"},{"line_number":80,"context_line":"                           deprecated_since\u003d\u00273.0\u0027,"},{"line_number":81,"context_line":"                           deprecated_reason\u003d\u0027interface can be requested as a \u0027"},{"line_number":82,"context_line":"                                             \u0027list. Please use \u0027"},{"line_number":83,"context_line":"                                             \u0027valid-interfaces instead.\u0027),"}],"source_content_type":"text/x-python","patch_set":9,"id":"1f1a1f67_881a6c6c","line":80,"range":{"start_line":80,"start_character":45,"end_line":80,"end_character":48},"in_reply_to":"1f1a1f67_9f2520ae","updated":"2017-07-17 17:38:08.000000000","message":"In KSA, we have more than anything else, used major versions as an indicator of major development (added features). The contract of KSA says we will not break APIs (except major security concerns). Even if the interface was unintentional.\n\n1.0 was initial release, 2.0 was major changes (nothing breaking), this is likewise major changes.","commit_id":"98b7292aaddd3f3a2ee85f15651955eb7a6e5f96"},{"author":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"change_message_id":"1d3cc0cddef48a8a55b8d8e26d4f04c3da03111d","unresolved":false,"context_lines":[{"line_number":77,"context_line":"                           help\u003d\u0027The default interface for endpoint URL \u0027"},{"line_number":78,"context_line":"                                \u0027discovery.\u0027,"},{"line_number":79,"context_line":"                           deprecated_for_removal\u003dTrue,"},{"line_number":80,"context_line":"                           deprecated_since\u003d\u00273.0\u0027,"},{"line_number":81,"context_line":"                           deprecated_reason\u003d\u0027interface can be requested as a \u0027"},{"line_number":82,"context_line":"                                             \u0027list. Please use \u0027"},{"line_number":83,"context_line":"                                             \u0027valid-interfaces instead.\u0027),"}],"source_content_type":"text/x-python","patch_set":9,"id":"1f1a1f67_9f2520ae","line":80,"range":{"start_line":80,"start_character":45,"end_line":80,"end_character":48},"in_reply_to":"1f1a1f67_c90e4a8c","updated":"2017-07-16 01:23:55.000000000","message":"Putting 3.0 here was based on IRC discussion between morgan and lbragstad about it being so much new features that a 3.0 might be worthwhile even though it would not be incompatible.\n\nI will defer to y\u0027all on this one.","commit_id":"98b7292aaddd3f3a2ee85f15651955eb7a6e5f96"},{"author":{"_account_id":8482,"name":"Colleen Murphy","email":"colleen@gazlene.net","username":"krinkle"},"change_message_id":"c812c388cd1df10a59162f2f435bc9a3a6b87136","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                                \u0027discovery.\u0027,"},{"line_number":79,"context_line":"                           deprecated_for_removal\u003dTrue,"},{"line_number":80,"context_line":"                           deprecated_since\u003d\u00273.0\u0027,"},{"line_number":81,"context_line":"                           deprecated_reason\u003d\u0027interface can be requested as a \u0027"},{"line_number":82,"context_line":"                                             \u0027list. Please use \u0027"},{"line_number":83,"context_line":"                                             \u0027valid-interfaces instead.\u0027),"},{"line_number":84,"context_line":"                cfg.ListOpt(\u0027valid-interfaces\u0027,"},{"line_number":85,"context_line":"                            help\u003d\u0027List of interfaces, in order of preference, \u0027"}],"source_content_type":"text/x-python","patch_set":9,"id":"1f1a1f67_09c8c21f","line":82,"range":{"start_line":81,"start_character":46,"end_line":82,"end_character":50},"updated":"2017-07-15 20:57:20.000000000","message":"The wording here is a little clunky, because `interface` is specifically not a list. Maybe \"Using valid-interfaces is preferable because it is capable of accepting a list of possible interfaces.\"","commit_id":"98b7292aaddd3f3a2ee85f15651955eb7a6e5f96"},{"author":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"change_message_id":"1d3cc0cddef48a8a55b8d8e26d4f04c3da03111d","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                                \u0027discovery.\u0027,"},{"line_number":79,"context_line":"                           deprecated_for_removal\u003dTrue,"},{"line_number":80,"context_line":"                           deprecated_since\u003d\u00273.0\u0027,"},{"line_number":81,"context_line":"                           deprecated_reason\u003d\u0027interface can be requested as a \u0027"},{"line_number":82,"context_line":"                                             \u0027list. Please use \u0027"},{"line_number":83,"context_line":"                                             \u0027valid-interfaces instead.\u0027),"},{"line_number":84,"context_line":"                cfg.ListOpt(\u0027valid-interfaces\u0027,"},{"line_number":85,"context_line":"                            help\u003d\u0027List of interfaces, in order of preference, \u0027"}],"source_content_type":"text/x-python","patch_set":9,"id":"1f1a1f67_7f3c84c7","line":82,"range":{"start_line":81,"start_character":46,"end_line":82,"end_character":50},"in_reply_to":"1f1a1f67_09c8c21f","updated":"2017-07-16 01:23:55.000000000","message":"Nod. I\u0027ll fix it up once we figure out the deprecated_since line.\n\nWe could always just leave out deprecated_since ...","commit_id":"98b7292aaddd3f3a2ee85f15651955eb7a6e5f96"}]}
