)]}'
{"nova/conf/console.py":[{"author":{"_account_id":19590,"name":"Sarafraj Singh","email":"Sarafraj.Singh@intel.com","username":"sarafrajsingh"},"change_message_id":"a836003730cf4a9247cd9ae5bd438f31c7a49cda","unresolved":false,"context_lines":[{"line_number":22,"context_line":"    cfg.ListOpt(\u0027console_allowed_origins\u0027,"},{"line_number":23,"context_line":"                default\u003d[],"},{"line_number":24,"context_line":"                help\u003d\"\"\""},{"line_number":25,"context_line":"This option represents list of allowed connections from other origin hostnames"},{"line_number":26,"context_line":"for access to console proxy servers. It is mainly used by a websocket proxy in"},{"line_number":27,"context_line":"cross-site web socket connections."},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"* Possible values"}],"source_content_type":"text/x-python","patch_set":1,"id":"9abb7d3a_3f3193a3","line":26,"range":{"start_line":25,"start_character":31,"end_line":26,"end_character":13},"updated":"2016-05-27 18:24:24.000000000","message":"This sentence is confusing. Maybe something like \"allowed origin hostname connections to access\"","commit_id":"f71c82597b4eca12504f5f9cea76506de7e55f7e"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"c2a1407693e09f3dce96ce55ed0382ba8df95629","unresolved":false,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":"  An empty list (default) or list of allowed origin hostnames."},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"* Services which consumes this:"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"  ``nova-console``"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"* Related options:"},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5a9d85d2_24633bb3","line":35,"range":{"start_line":33,"start_character":0,"end_line":35,"end_character":18},"updated":"2016-06-20 17:08:55.000000000","message":"This section is no longer required.","commit_id":"ce1e0dccfb183d84587503b3377b61ca78ba8ba4"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"c2a1407693e09f3dce96ce55ed0382ba8df95629","unresolved":false,"context_lines":[{"line_number":50,"context_line":""},{"line_number":51,"context_line":"  \u0027console\u0027 (default) or Any string representing topic exchange name."},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"* Services which consumes this:"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"  ``nova-compute``"},{"line_number":56,"context_line":"  ``nova-console``"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"* Related options:"},{"line_number":59,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5a9d85d2_645d43e9","line":56,"range":{"start_line":53,"start_character":0,"end_line":56,"end_character":18},"updated":"2016-06-20 17:08:55.000000000","message":"This section is no longer required.","commit_id":"ce1e0dccfb183d84587503b3377b61ca78ba8ba4"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"c2a1407693e09f3dce96ce55ed0382ba8df95629","unresolved":false,"context_lines":[{"line_number":72,"context_line":"  \u0027nova.console.xvp.XVPConsoleProxy\u0027 (default) or"},{"line_number":73,"context_line":"  A string representing fully classified class name of console driver."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"* Services which consumes this:"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"  ``nova-console``"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"* Related options:"},{"line_number":80,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5a9d85d2_c472377c","line":77,"range":{"start_line":75,"start_character":0,"end_line":77,"end_character":18},"updated":"2016-06-20 17:08:55.000000000","message":"This section is no longer required.","commit_id":"ce1e0dccfb183d84587503b3377b61ca78ba8ba4"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"c2a1407693e09f3dce96ce55ed0382ba8df95629","unresolved":false,"context_lines":[{"line_number":88,"context_line":""},{"line_number":89,"context_line":"* Possible values"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"  Any string representing hostname."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"* Services which consumes this:"},{"line_number":94,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5a9d85d2_641423f5","line":91,"range":{"start_line":91,"start_character":2,"end_line":91,"end_character":35},"updated":"2016-06-20 17:08:55.000000000","message":"What about default value?","commit_id":"ce1e0dccfb183d84587503b3377b61ca78ba8ba4"},{"author":{"_account_id":18335,"name":"Pushkar Umaranikar","email":"pushkar.umaranikar@intel.com","username":"pushkarumaranikar"},"change_message_id":"0f02b99b69dd19e7542d2fb838752eacec9978a7","unresolved":false,"context_lines":[{"line_number":88,"context_line":""},{"line_number":89,"context_line":"* Possible values"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"  Any string representing hostname."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"* Services which consumes this:"},{"line_number":94,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5a9d85d2_88bcb86d","line":91,"range":{"start_line":91,"start_character":2,"end_line":91,"end_character":35},"in_reply_to":"5a9d85d2_641423f5","updated":"2016-06-20 20:58:33.000000000","message":"There is no fix default value. Hostname obtained from socket.gethostname() represents default value.","commit_id":"ce1e0dccfb183d84587503b3377b61ca78ba8ba4"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"e48b4edaadb0a20c0bcbfb10e28b484f22206ba0","unresolved":false,"context_lines":[{"line_number":88,"context_line":""},{"line_number":89,"context_line":"* Possible values"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"  Any string representing hostname."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"* Services which consumes this:"},{"line_number":94,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5a9d85d2_21cadb6e","line":91,"range":{"start_line":91,"start_character":2,"end_line":91,"end_character":35},"in_reply_to":"5a9d85d2_88bcb86d","updated":"2016-06-21 13:48:01.000000000","message":"So - there is a default value - default value is current hostname :)","commit_id":"ce1e0dccfb183d84587503b3377b61ca78ba8ba4"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"c2a1407693e09f3dce96ce55ed0382ba8df95629","unresolved":false,"context_lines":[{"line_number":90,"context_line":""},{"line_number":91,"context_line":"  Any string representing hostname."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"* Services which consumes this:"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"  ``nova-console``"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"* Related options"},{"line_number":98,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5a9d85d2_a46f2b91","line":95,"range":{"start_line":93,"start_character":0,"end_line":95,"end_character":18},"updated":"2016-06-20 17:08:55.000000000","message":"This section is no longer required.","commit_id":"ce1e0dccfb183d84587503b3377b61ca78ba8ba4"},{"author":{"_account_id":19741,"name":"Hieu LE","email":"hieulq2@viettel.com.vn","username":"hieulq"},"change_message_id":"e7d667de80542a5b35366e4c3104d4b37f29d7d5","unresolved":false,"context_lines":[{"line_number":38,"context_line":"    cfg.StrOpt(\u0027console_topic\u0027,"},{"line_number":39,"context_line":"                default\u003d\u0027console\u0027,"},{"line_number":40,"context_line":"                help\u003d\"\"\""},{"line_number":41,"context_line":"This option represents the messagee queue topic name used by nova-console"},{"line_number":42,"context_line":"service when communicating via the AMQP server. The Nova API uses a message"},{"line_number":43,"context_line":"queue to communicate with nova-console to retrieve a console for that host."},{"line_number":44,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"3aaa91ec_2ff985c9","line":41,"updated":"2016-06-21 16:28:20.000000000","message":"typo","commit_id":"b94a2f5b4a02e14a889f3b6fdaad3b46d4407d6e"},{"author":{"_account_id":19741,"name":"Hieu LE","email":"hieulq2@viettel.com.vn","username":"hieulq"},"change_message_id":"e7d667de80542a5b35366e4c3104d4b37f29d7d5","unresolved":false,"context_lines":[{"line_number":40,"context_line":"                help\u003d\"\"\""},{"line_number":41,"context_line":"This option represents the messagee queue topic name used by nova-console"},{"line_number":42,"context_line":"service when communicating via the AMQP server. The Nova API uses a message"},{"line_number":43,"context_line":"queue to communicate with nova-console to retrieve a console for that host."},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"Possible values"},{"line_number":46,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"3aaa91ec_2fcea583","line":43,"updated":"2016-06-21 16:28:20.000000000","message":"a console URL","commit_id":"b94a2f5b4a02e14a889f3b6fdaad3b46d4407d6e"},{"author":{"_account_id":19741,"name":"Hieu LE","email":"hieulq2@viettel.com.vn","username":"hieulq"},"change_message_id":"e7d667de80542a5b35366e4c3104d4b37f29d7d5","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":"Possible values"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"  * \u0027console\u0027 (default) or Any string representing topic exchange name."},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"Related options:"},{"line_number":50,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"3aaa91ec_8fba39bf","line":47,"range":{"start_line":47,"start_character":27,"end_line":47,"end_character":28},"updated":"2016-06-21 16:28:20.000000000","message":"nit: I think we need to use lower letter to make the sentence look more comfortable","commit_id":"b94a2f5b4a02e14a889f3b6fdaad3b46d4407d6e"},{"author":{"_account_id":19741,"name":"Hieu LE","email":"hieulq2@viettel.com.vn","username":"hieulq"},"change_message_id":"e7d667de80542a5b35366e4c3104d4b37f29d7d5","unresolved":false,"context_lines":[{"line_number":61,"context_line":"Possible values"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"  * \u0027nova.console.xvp.XVPConsoleProxy\u0027 (default) or"},{"line_number":64,"context_line":"    A string representing fully classified class name of console driver."},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"Related options:"},{"line_number":67,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"3aaa91ec_0fce495a","line":64,"range":{"start_line":64,"start_character":4,"end_line":64,"end_character":5},"updated":"2016-06-21 16:28:20.000000000","message":"nit: same as above","commit_id":"b94a2f5b4a02e14a889f3b6fdaad3b46d4407d6e"},{"author":{"_account_id":19741,"name":"Hieu LE","email":"hieulq2@viettel.com.vn","username":"hieulq"},"change_message_id":"e7d667de80542a5b35366e4c3104d4b37f29d7d5","unresolved":false,"context_lines":[{"line_number":75,"context_line":""},{"line_number":76,"context_line":"Possible values"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"  * Current hostname (default) or Any string representing hostname."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"Related options"},{"line_number":81,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"3aaa91ec_8f087993","line":78,"range":{"start_line":78,"start_character":34,"end_line":78,"end_character":35},"updated":"2016-06-21 16:28:20.000000000","message":"nit: same as above","commit_id":"b94a2f5b4a02e14a889f3b6fdaad3b46d4407d6e"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"4afc016ccf546dfc8e839cba929622af362f191e","unresolved":false,"context_lines":[{"line_number":22,"context_line":"    cfg.ListOpt(\u0027console_allowed_origins\u0027,"},{"line_number":23,"context_line":"                default\u003d[],"},{"line_number":24,"context_line":"                help\u003d\"\"\""},{"line_number":25,"context_line":"This option represents list of allowed origin hostname connections to access"},{"line_number":26,"context_line":"the console proxy servers. It is mainly used by a websocket proxy in"},{"line_number":27,"context_line":"cross-site web socket connections."},{"line_number":28,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"dada55a8_02e00595","line":25,"range":{"start_line":25,"start_character":0,"end_line":25,"end_character":11},"updated":"2016-07-21 15:14:57.000000000","message":"You can delete this ;)","commit_id":"05e7d5f9477d7c1505c1a738bc58b3c572d1388d"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"4afc016ccf546dfc8e839cba929622af362f191e","unresolved":false,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":"  * An empty list (default) or list of allowed origin hostnames."},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"Related options:"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"  * None"},{"line_number":36,"context_line":"\"\"\"),"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"    cfg.StrOpt(\u0027console_topic\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"dada55a8_02d645f0","line":35,"range":{"start_line":33,"start_character":0,"end_line":35,"end_character":8},"updated":"2016-07-21 15:14:57.000000000","message":"Drop this.","commit_id":"05e7d5f9477d7c1505c1a738bc58b3c572d1388d"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"4afc016ccf546dfc8e839cba929622af362f191e","unresolved":false,"context_lines":[{"line_number":38,"context_line":"    cfg.StrOpt(\u0027console_topic\u0027,"},{"line_number":39,"context_line":"                default\u003d\u0027console\u0027,"},{"line_number":40,"context_line":"                help\u003d\"\"\""},{"line_number":41,"context_line":"This option represents the message queue topic name used by nova-console"},{"line_number":42,"context_line":"service when communicating via the AMQP server. The Nova API uses a message"},{"line_number":43,"context_line":"queue to communicate with nova-console to retrieve a console URL for that"},{"line_number":44,"context_line":"host."}],"source_content_type":"text/x-python","patch_set":5,"id":"dada55a8_82ea3572","line":41,"range":{"start_line":41,"start_character":0,"end_line":41,"end_character":11},"updated":"2016-07-21 15:14:57.000000000","message":"You can delete this ;)","commit_id":"05e7d5f9477d7c1505c1a738bc58b3c572d1388d"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"4afc016ccf546dfc8e839cba929622af362f191e","unresolved":false,"context_lines":[{"line_number":47,"context_line":""},{"line_number":48,"context_line":"  * \u0027console\u0027 (default) or any string representing topic exchange name."},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"Related options:"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"  * None"},{"line_number":53,"context_line":"\"\"\"),"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"    cfg.StrOpt(\u0027console_driver\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"dada55a8_62074182","line":52,"range":{"start_line":50,"start_character":0,"end_line":52,"end_character":8},"updated":"2016-07-21 15:14:57.000000000","message":"Ditto","commit_id":"05e7d5f9477d7c1505c1a738bc58b3c572d1388d"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"4afc016ccf546dfc8e839cba929622af362f191e","unresolved":false,"context_lines":[{"line_number":64,"context_line":"  * \u0027nova.console.xvp.XVPConsoleProxy\u0027 (default) or"},{"line_number":65,"context_line":"    a string representing fully classified class name of console driver."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"Related options:"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"  * None"},{"line_number":70,"context_line":"\"\"\"),"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    cfg.StrOpt(\u0027console_public_hostname\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"dada55a8_a2fdb96f","line":69,"range":{"start_line":67,"start_character":0,"end_line":69,"end_character":8},"updated":"2016-07-21 15:14:57.000000000","message":"Ditto","commit_id":"05e7d5f9477d7c1505c1a738bc58b3c572d1388d"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"4afc016ccf546dfc8e839cba929622af362f191e","unresolved":false,"context_lines":[{"line_number":72,"context_line":"    cfg.StrOpt(\u0027console_public_hostname\u0027,"},{"line_number":73,"context_line":"                default\u003dsocket.gethostname(),"},{"line_number":74,"context_line":"                help\u003d\"\"\""},{"line_number":75,"context_line":"Publicly visible name for this console host."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Possible values"},{"line_number":78,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"dada55a8_82a19548","line":75,"range":{"start_line":75,"start_character":0,"end_line":75,"end_character":44},"updated":"2016-07-21 15:14:57.000000000","message":"Publicly? Where? Can you extend this message a bit so it is more informative? \n\nThere is an option `console_host` in compute - is it related?","commit_id":"05e7d5f9477d7c1505c1a738bc58b3c572d1388d"},{"author":{"_account_id":18335,"name":"Pushkar Umaranikar","email":"pushkar.umaranikar@intel.com","username":"pushkarumaranikar"},"change_message_id":"f03c2c56c28c988e84bd959c15282bbeed49319c","unresolved":false,"context_lines":[{"line_number":72,"context_line":"    cfg.StrOpt(\u0027console_public_hostname\u0027,"},{"line_number":73,"context_line":"                default\u003dsocket.gethostname(),"},{"line_number":74,"context_line":"                help\u003d\"\"\""},{"line_number":75,"context_line":"Publicly visible name for this console host."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Possible values"},{"line_number":78,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"dada55a8_c0577700","line":75,"range":{"start_line":75,"start_character":0,"end_line":75,"end_character":44},"in_reply_to":"dada55a8_82a19548","updated":"2016-07-25 18:02:30.000000000","message":"I think \"public\" is self explanatory. Please let me know if I am missing any other details.\nI think \"console_host\" from compute is a console proxy host name.","commit_id":"05e7d5f9477d7c1505c1a738bc58b3c572d1388d"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"4afc016ccf546dfc8e839cba929622af362f191e","unresolved":false,"context_lines":[{"line_number":78,"context_line":""},{"line_number":79,"context_line":"  * Current hostname (default) or any string representing hostname."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"Related options"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"  * None"},{"line_number":84,"context_line":"\"\"\"),"},{"line_number":85,"context_line":"]"},{"line_number":86,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"dada55a8_e2fb3177","line":83,"range":{"start_line":81,"start_character":0,"end_line":83,"end_character":8},"updated":"2016-07-21 15:14:57.000000000","message":"Ditto","commit_id":"05e7d5f9477d7c1505c1a738bc58b3c572d1388d"},{"author":{"_account_id":14511,"name":"Maciej Szankin","email":"maciej+review@szankin.pl","username":"mszankin"},"change_message_id":"e470836cffd950b7d77d82457966d7ef14c05f7c","unresolved":false,"context_lines":[{"line_number":66,"context_line":""},{"line_number":67,"context_line":"  * Current hostname (default) or any string representing hostname."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"Related options"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"  * None"},{"line_number":72,"context_line":"\"\"\"),"},{"line_number":73,"context_line":"]"},{"line_number":74,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"dada55a8_aa74a7fd","line":71,"range":{"start_line":69,"start_character":0,"end_line":71,"end_character":8},"updated":"2016-07-26 15:58:42.000000000","message":"Drop","commit_id":"5bab930f7bab36c6fa57b0ae04191dc503325808"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"9b8fd8bc6e9d354ec4bb764b8c6b3dd5f6d18ef7","unresolved":false,"context_lines":[{"line_number":28,"context_line":""},{"line_number":29,"context_line":"Possible values"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"  * An empty list (default) or list of allowed origin hostnames."},{"line_number":32,"context_line":"\"\"\"),"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    cfg.StrOpt(\u0027console_topic\u0027,"}],"source_content_type":"text/x-python","patch_set":9,"id":"bacf61ea_8c8739b4","line":31,"updated":"2016-08-05 10:13:48.000000000","message":"Its not clear how to use this setting from the description. There are more details here:\nhttps://github.com/openstack/nova/commit/95f1d47bb54cf18b3c8cdf8d36c261b977afd017\n\nBasically, by default check the origin header (if present) matches the host header, to prevent cross-site requests. In some cases, you want to relax that check, and instead specify other hostnames that are allowed in the origin header, instead of just matching the host header. This list allows you to specify if any values other than the host are allowed in the origin header.","commit_id":"dbe511de73170bde9c64c6dc6ae394bfe772d562"},{"author":{"_account_id":18335,"name":"Pushkar Umaranikar","email":"pushkar.umaranikar@intel.com","username":"pushkarumaranikar"},"change_message_id":"3068f6df387a54b0f7ce830f3f882bc9266668d6","unresolved":false,"context_lines":[{"line_number":28,"context_line":""},{"line_number":29,"context_line":"Possible values"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"  * An empty list (default) or list of allowed origin hostnames."},{"line_number":32,"context_line":"\"\"\"),"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    cfg.StrOpt(\u0027console_topic\u0027,"}],"source_content_type":"text/x-python","patch_set":9,"id":"9ad45d7e_797db8b0","line":31,"in_reply_to":"bacf61ea_8c8739b4","updated":"2016-08-09 17:49:59.000000000","message":"Done","commit_id":"dbe511de73170bde9c64c6dc6ae394bfe772d562"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"9b8fd8bc6e9d354ec4bb764b8c6b3dd5f6d18ef7","unresolved":false,"context_lines":[{"line_number":41,"context_line":""},{"line_number":42,"context_line":"Possible values"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"  * \u0027console\u0027 (default) or any string representing topic exchange name."},{"line_number":45,"context_line":"\"\"\"),"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    cfg.StrOpt(\u0027console_driver\u0027,"}],"source_content_type":"text/x-python","patch_set":9,"id":"bacf61ea_2cbd6d68","line":44,"updated":"2016-08-05 10:13:48.000000000","message":"I think we should add a TODO to deprecate this one.","commit_id":"dbe511de73170bde9c64c6dc6ae394bfe772d562"},{"author":{"_account_id":18335,"name":"Pushkar Umaranikar","email":"pushkar.umaranikar@intel.com","username":"pushkarumaranikar"},"change_message_id":"3068f6df387a54b0f7ce830f3f882bc9266668d6","unresolved":false,"context_lines":[{"line_number":41,"context_line":""},{"line_number":42,"context_line":"Possible values"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"  * \u0027console\u0027 (default) or any string representing topic exchange name."},{"line_number":45,"context_line":"\"\"\"),"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    cfg.StrOpt(\u0027console_driver\u0027,"}],"source_content_type":"text/x-python","patch_set":9,"id":"9ad45d7e_d94ae482","line":44,"in_reply_to":"bacf61ea_2cbd6d68","updated":"2016-08-09 17:49:59.000000000","message":"Done","commit_id":"dbe511de73170bde9c64c6dc6ae394bfe772d562"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"9b8fd8bc6e9d354ec4bb764b8c6b3dd5f6d18ef7","unresolved":false,"context_lines":[{"line_number":44,"context_line":"  * \u0027console\u0027 (default) or any string representing topic exchange name."},{"line_number":45,"context_line":"\"\"\"),"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    cfg.StrOpt(\u0027console_driver\u0027,"},{"line_number":48,"context_line":"                default\u003d\u0027nova.console.xvp.XVPConsoleProxy\u0027,"},{"line_number":49,"context_line":"                help\u003d\"\"\""},{"line_number":50,"context_line":"Nova-console proxy is used to set up multi-tenant VM console access."}],"source_content_type":"text/x-python","patch_set":9,"id":"bacf61ea_eca7d54d","line":47,"updated":"2016-08-05 10:13:48.000000000","message":"I think we should add a TODO to move this config option to stevedore plugin system.","commit_id":"dbe511de73170bde9c64c6dc6ae394bfe772d562"},{"author":{"_account_id":18335,"name":"Pushkar Umaranikar","email":"pushkar.umaranikar@intel.com","username":"pushkarumaranikar"},"change_message_id":"3068f6df387a54b0f7ce830f3f882bc9266668d6","unresolved":false,"context_lines":[{"line_number":44,"context_line":"  * \u0027console\u0027 (default) or any string representing topic exchange name."},{"line_number":45,"context_line":"\"\"\"),"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    cfg.StrOpt(\u0027console_driver\u0027,"},{"line_number":48,"context_line":"                default\u003d\u0027nova.console.xvp.XVPConsoleProxy\u0027,"},{"line_number":49,"context_line":"                help\u003d\"\"\""},{"line_number":50,"context_line":"Nova-console proxy is used to set up multi-tenant VM console access."}],"source_content_type":"text/x-python","patch_set":9,"id":"9ad45d7e_19459c6f","line":47,"in_reply_to":"bacf61ea_eca7d54d","updated":"2016-08-09 17:49:59.000000000","message":"Done","commit_id":"dbe511de73170bde9c64c6dc6ae394bfe772d562"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"9b8fd8bc6e9d354ec4bb764b8c6b3dd5f6d18ef7","unresolved":false,"context_lines":[{"line_number":74,"context_line":""},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"def list_opts():"},{"line_number":77,"context_line":"    return {\"DEFAULT\": console_opts}"}],"source_content_type":"text/x-python","patch_set":9,"id":"bacf61ea_2fbd5f68","line":77,"updated":"2016-08-05 10:13:48.000000000","message":"We should add a TODO saying about adding a new group for these.","commit_id":"dbe511de73170bde9c64c6dc6ae394bfe772d562"},{"author":{"_account_id":18335,"name":"Pushkar Umaranikar","email":"pushkar.umaranikar@intel.com","username":"pushkarumaranikar"},"change_message_id":"3068f6df387a54b0f7ce830f3f882bc9266668d6","unresolved":false,"context_lines":[{"line_number":74,"context_line":""},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"def list_opts():"},{"line_number":77,"context_line":"    return {\"DEFAULT\": console_opts}"}],"source_content_type":"text/x-python","patch_set":9,"id":"9ad45d7e_595f1441","line":77,"in_reply_to":"bacf61ea_2fbd5f68","updated":"2016-08-09 17:49:59.000000000","message":"Done","commit_id":"dbe511de73170bde9c64c6dc6ae394bfe772d562"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"23d83915755b39a406e14bc53d27d5807b3b661c","unresolved":false,"context_lines":[{"line_number":33,"context_line":"  * An empty list (default) or list of allowed origin hostnames."},{"line_number":34,"context_line":"\"\"\"),"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"# TODO(pumaranikar): We can deprecate this option."},{"line_number":37,"context_line":"    cfg.StrOpt(\u0027console_topic\u0027,"},{"line_number":38,"context_line":"                default\u003d\u0027console\u0027,"},{"line_number":39,"context_line":"                help\u003d\"\"\""}],"source_content_type":"text/x-python","patch_set":10,"id":"9ad45d7e_ad9de567","line":36,"range":{"start_line":36,"start_character":21,"end_line":36,"end_character":50},"updated":"2016-08-10 21:47:26.000000000","message":"nice to add the reason of the deprecation.","commit_id":"8bbb3fcc116d3da482bfaa3234f3eafad06e3efb"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"634c0d8f5ce635c01c3a5b6be77c6a259250efaa","unresolved":false,"context_lines":[{"line_number":33,"context_line":"  * An empty list (default) or list of allowed origin hostnames."},{"line_number":34,"context_line":"\"\"\"),"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"# TODO(pumaranikar): We can deprecate this option."},{"line_number":37,"context_line":"    cfg.StrOpt(\u0027console_topic\u0027,"},{"line_number":38,"context_line":"                default\u003d\u0027console\u0027,"},{"line_number":39,"context_line":"                help\u003d\"\"\""}],"source_content_type":"text/x-python","patch_set":10,"id":"9a89bdaa_5c55be4d","line":36,"range":{"start_line":36,"start_character":21,"end_line":36,"end_character":50},"in_reply_to":"9ad45d7e_ad9de567","updated":"2016-09-13 12:29:04.000000000","message":"+1","commit_id":"8bbb3fcc116d3da482bfaa3234f3eafad06e3efb"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"482cf29eaa3b6ccf71a9b6e00537f6e62b2d4686","unresolved":false,"context_lines":[{"line_number":47,"context_line":"  * \u0027console\u0027 (default) or any string representing topic exchange name."},{"line_number":48,"context_line":"\"\"\"),"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"# TODO(pumaranikar): Move this config to stevedoor plugin system."},{"line_number":51,"context_line":"    cfg.StrOpt(\u0027console_driver\u0027,"},{"line_number":52,"context_line":"                default\u003d\u0027nova.console.xvp.XVPConsoleProxy\u0027,"},{"line_number":53,"context_line":"                help\u003d\"\"\""}],"source_content_type":"text/x-python","patch_set":10,"id":"9ad45d7e_e6b9e016","line":50,"range":{"start_line":50,"start_character":41,"end_line":50,"end_character":50},"updated":"2016-08-10 11:15:05.000000000","message":"Nit: my mistake, its stevedore.","commit_id":"8bbb3fcc116d3da482bfaa3234f3eafad06e3efb"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"23d83915755b39a406e14bc53d27d5807b3b661c","unresolved":false,"context_lines":[{"line_number":47,"context_line":"  * \u0027console\u0027 (default) or any string representing topic exchange name."},{"line_number":48,"context_line":"\"\"\"),"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"# TODO(pumaranikar): Move this config to stevedoor plugin system."},{"line_number":51,"context_line":"    cfg.StrOpt(\u0027console_driver\u0027,"},{"line_number":52,"context_line":"                default\u003d\u0027nova.console.xvp.XVPConsoleProxy\u0027,"},{"line_number":53,"context_line":"                help\u003d\"\"\""}],"source_content_type":"text/x-python","patch_set":10,"id":"9ad45d7e_cd95b933","line":50,"range":{"start_line":50,"start_character":41,"end_line":50,"end_character":50},"in_reply_to":"9ad45d7e_e6b9e016","updated":"2016-08-10 21:47:26.000000000","message":"nice catch, better to avoid another patch which is just for this typo..","commit_id":"8bbb3fcc116d3da482bfaa3234f3eafad06e3efb"}]}
