)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"5494ed46cee39c6198ac55d054c7354d9419f3b9","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Use keystoneauth for Ironic and Swift clients"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch does not change the options in config file yet to showcase"},{"line_number":10,"context_line":"backward compatibility with old config options."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I1da93b59b2f4813c42008277bd6479dc6673e7f1"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":12,"id":"ba0121b8_0da34501","line":10,"updated":"2016-03-31 07:43:06.000000000","message":"+1, good idea","commit_id":"35f332539dc6a9b61c60b4314347ff0b2e7177a2"}],"devstack/plugin.sh":[{"author":{"_account_id":13636,"name":"aarefiev","display_name":"Anton","email":"arefyevanton@gmail.com","username":"aarefiev"},"change_message_id":"a2c8438a890415fa2becb878352121418c680b95","unresolved":false,"context_lines":[{"line_number":149,"context_line":"EOF"},{"line_number":150,"context_line":"}"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"function inspector_configure_auth_for {"},{"line_number":153,"context_line":"    inspector_iniset $1 auth_type password"},{"line_number":154,"context_line":"    inspector_iniset $1 auth_url \"$KEYSTONE_SERVICE_URI\""},{"line_number":155,"context_line":"    inspector_iniset $1 username $IRONIC_INSPECTOR_ADMIN_USER"}],"source_content_type":"text/x-sh","patch_set":3,"id":"7af24918_d44712ba","line":152,"range":{"start_line":152,"start_character":9,"end_line":152,"end_character":37},"updated":"2016-03-03 15:21:55.000000000","message":"what about insecure?","commit_id":"669148871c3341691a825b7dd23e19411015a997"}],"ironic_inspector/common/ironic.py":[{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"2e47bf75df983839ebcff880ef131a2d55a21467","unresolved":false,"context_lines":[{"line_number":61,"context_line":"        args \u003d {\u0027token\u0027: \u0027noauth\u0027,"},{"line_number":62,"context_line":"                \u0027endpoint\u0027: CONF.ironic.ironic_url}"},{"line_number":63,"context_line":"    else:"},{"line_number":64,"context_line":"        global IRONIC_SESSION"},{"line_number":65,"context_line":"        if not IRONIC_SESSION:"},{"line_number":66,"context_line":"            auth \u003d kaloading.load_auth_from_conf_options(CONF, \u0027keystone\u0027)"},{"line_number":67,"context_line":"            IRONIC_SESSION \u003d kaloading.load_session_from_conf_options("},{"line_number":68,"context_line":"                CONF, \u0027ironic\u0027, auth\u003dauth)"},{"line_number":69,"context_line":"        if token is None:"},{"line_number":70,"context_line":"            args \u003d {\u0027session\u0027: IRONIC_SESSION}"},{"line_number":71,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"7af24918_5268e4ba","line":68,"range":{"start_line":64,"start_character":8,"end_line":68,"end_character":42},"updated":"2016-03-01 11:42:37.000000000","message":"is it safe to cache the session? will it e.g. reauthenticate if the token expires?","commit_id":"bce11dbd4dfc723f22f4bb2eff1d649fa3b36c99"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"b249b8a35dbf3a47bbed3e9f4064563db3e4b707","unresolved":false,"context_lines":[{"line_number":61,"context_line":"        args \u003d {\u0027token\u0027: \u0027noauth\u0027,"},{"line_number":62,"context_line":"                \u0027endpoint\u0027: CONF.ironic.ironic_url}"},{"line_number":63,"context_line":"    else:"},{"line_number":64,"context_line":"        global IRONIC_SESSION"},{"line_number":65,"context_line":"        if not IRONIC_SESSION:"},{"line_number":66,"context_line":"            auth \u003d kaloading.load_auth_from_conf_options(CONF, \u0027keystone\u0027)"},{"line_number":67,"context_line":"            IRONIC_SESSION \u003d kaloading.load_session_from_conf_options("},{"line_number":68,"context_line":"                CONF, \u0027ironic\u0027, auth\u003dauth)"},{"line_number":69,"context_line":"        if token is None:"},{"line_number":70,"context_line":"            args \u003d {\u0027session\u0027: IRONIC_SESSION}"},{"line_number":71,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"7af24918_6f952e3f","line":68,"range":{"start_line":64,"start_character":8,"end_line":68,"end_character":42},"in_reply_to":"7af24918_5268e4ba","updated":"2016-03-01 14:09:26.000000000","message":"yes, when the session is using an appropriate auth plugin that is capable of re-auth (like *Password, but obviously not Token).\nThat\u0027s basically one of the reasons to use sessions in the first place :) - to not spam Keystone with get_token requests.","commit_id":"bce11dbd4dfc723f22f4bb2eff1d649fa3b36c99"},{"author":{"_account_id":13636,"name":"aarefiev","display_name":"Anton","email":"arefyevanton@gmail.com","username":"aarefiev"},"change_message_id":"a2c8438a890415fa2becb878352121418c680b95","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"IRONIC_SESSION \u003d None"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"kaloading.register_auth_conf_options(cfg.CONF, \u0027ironic\u0027)"},{"line_number":35,"context_line":"cfg.CONF.set_default(\"auth_type\", default\u003d\"password\", group\u003d\u0027ironic\u0027)"},{"line_number":36,"context_line":"kaloading.register_session_conf_options(cfg.CONF, \u0027ironic\u0027)"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"7af24918_e8e998b8","line":34,"range":{"start_line":34,"start_character":37,"end_line":34,"end_character":45},"updated":"2016-03-03 15:21:55.000000000","message":"nit: s/cfg.CONF/CONF","commit_id":"669148871c3341691a825b7dd23e19411015a997"},{"author":{"_account_id":13636,"name":"aarefiev","display_name":"Anton","email":"arefyevanton@gmail.com","username":"aarefiev"},"change_message_id":"a2c8438a890415fa2becb878352121418c680b95","unresolved":false,"context_lines":[{"line_number":32,"context_line":"IRONIC_SESSION \u003d None"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"kaloading.register_auth_conf_options(cfg.CONF, \u0027ironic\u0027)"},{"line_number":35,"context_line":"cfg.CONF.set_default(\"auth_type\", default\u003d\"password\", group\u003d\u0027ironic\u0027)"},{"line_number":36,"context_line":"kaloading.register_session_conf_options(cfg.CONF, \u0027ironic\u0027)"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"7af24918_88d9f424","line":35,"range":{"start_line":35,"start_character":0,"end_line":35,"end_character":8},"updated":"2016-03-03 15:21:55.000000000","message":"ditto","commit_id":"669148871c3341691a825b7dd23e19411015a997"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"39d80a9e094f6ce152806d8ea4a4e79f95058154","unresolved":false,"context_lines":[{"line_number":80,"context_line":"               help\u003d\u0027Ironic service type.\u0027),"},{"line_number":81,"context_line":"    cfg.StrOpt(\u0027os_endpoint_type\u0027,"},{"line_number":82,"context_line":"               default\u003d\u0027internalURL\u0027,"},{"line_number":83,"context_line":"               help\u003d\u0027Ironic endpoint type.\u0027),"},{"line_number":84,"context_line":"    cfg.IntOpt(\u0027retry_interval\u0027,"},{"line_number":85,"context_line":"               default\u003d2,"},{"line_number":86,"context_line":"               help\u003d\u0027Interval between retries in case of conflict error \u0027"}],"source_content_type":"text/x-python","patch_set":7,"id":"5aef4532_044e8a3a","line":83,"updated":"2016-03-09 14:00:22.000000000","message":"shouldn\u0027t all these parametes be deprecated in favor of keystoneauth ones?","commit_id":"06bbc80bc409df91f156933ea8f019eb21efad6c"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"d3f8a34acbda219f669b2e20fe098cae3422e75c","unresolved":false,"context_lines":[{"line_number":80,"context_line":"               help\u003d\u0027Ironic service type.\u0027),"},{"line_number":81,"context_line":"    cfg.StrOpt(\u0027os_endpoint_type\u0027,"},{"line_number":82,"context_line":"               default\u003d\u0027internalURL\u0027,"},{"line_number":83,"context_line":"               help\u003d\u0027Ironic endpoint type.\u0027),"},{"line_number":84,"context_line":"    cfg.IntOpt(\u0027retry_interval\u0027,"},{"line_number":85,"context_line":"               default\u003d2,"},{"line_number":86,"context_line":"               help\u003d\u0027Interval between retries in case of conflict error \u0027"}],"source_content_type":"text/x-python","patch_set":7,"id":"5aef4532_c2b61bf8","line":83,"in_reply_to":"5aef4532_044e8a3a","updated":"2016-03-10 10:03:21.000000000","message":"not all, service_type and endpoint_type should stay, as well as ironic_url for the case of standalone install","commit_id":"06bbc80bc409df91f156933ea8f019eb21efad6c"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"39d80a9e094f6ce152806d8ea4a4e79f95058154","unresolved":false,"context_lines":[{"line_number":135,"context_line":"        if not IRONIC_SESSION:"},{"line_number":136,"context_line":"            auth \u003d kaloading.load_auth_from_conf_options(CONF, IRONIC_GROUP)"},{"line_number":137,"context_line":"            IRONIC_SESSION \u003d kaloading.load_session_from_conf_options("},{"line_number":138,"context_line":"                CONF, IRONIC_GROUP, auth\u003dauth)"},{"line_number":139,"context_line":"        if token is None:"},{"line_number":140,"context_line":"            args \u003d {\u0027session\u0027: IRONIC_SESSION,"},{"line_number":141,"context_line":"                    \u0027region_name\u0027: CONF.ironic.os_region}"}],"source_content_type":"text/x-python","patch_set":7,"id":"5aef4532_e44a7e25","line":138,"updated":"2016-03-09 14:00:22.000000000","message":"I don\u0027t see the old family of parameters used here. How is backward compability working?","commit_id":"06bbc80bc409df91f156933ea8f019eb21efad6c"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"44a8bd69a53e85f8c2b598df937402b545256734","unresolved":false,"context_lines":[{"line_number":135,"context_line":"        if not IRONIC_SESSION:"},{"line_number":136,"context_line":"            auth \u003d kaloading.load_auth_from_conf_options(CONF, IRONIC_GROUP)"},{"line_number":137,"context_line":"            IRONIC_SESSION \u003d kaloading.load_session_from_conf_options("},{"line_number":138,"context_line":"                CONF, IRONIC_GROUP, auth\u003dauth)"},{"line_number":139,"context_line":"        if token is None:"},{"line_number":140,"context_line":"            args \u003d {\u0027session\u0027: IRONIC_SESSION,"},{"line_number":141,"context_line":"                    \u0027region_name\u0027: CONF.ironic.os_region}"}],"source_content_type":"text/x-python","patch_set":7,"id":"5aef4532_42e04b96","line":138,"in_reply_to":"5aef4532_6203c7b8","updated":"2016-03-10 10:05:37.000000000","message":"we should be backward-compatible with at least non-deprecated things..","commit_id":"06bbc80bc409df91f156933ea8f019eb21efad6c"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"d3f8a34acbda219f669b2e20fe098cae3422e75c","unresolved":false,"context_lines":[{"line_number":135,"context_line":"        if not IRONIC_SESSION:"},{"line_number":136,"context_line":"            auth \u003d kaloading.load_auth_from_conf_options(CONF, IRONIC_GROUP)"},{"line_number":137,"context_line":"            IRONIC_SESSION \u003d kaloading.load_session_from_conf_options("},{"line_number":138,"context_line":"                CONF, IRONIC_GROUP, auth\u003dauth)"},{"line_number":139,"context_line":"        if token is None:"},{"line_number":140,"context_line":"            args \u003d {\u0027session\u0027: IRONIC_SESSION,"},{"line_number":141,"context_line":"                    \u0027region_name\u0027: CONF.ironic.os_region}"}],"source_content_type":"text/x-python","patch_set":7,"id":"5aef4532_6203c7b8","line":138,"in_reply_to":"5aef4532_e44a7e25","updated":"2016-03-10 10:03:21.000000000","message":"yes, that was the question I wanted to discuss. Should I implement a backward-compat legacy auth loader?\n\nBTW, all relevant options are already marked as deprecated (in favor of [keystone_authtoken] section, which is wrong). Can we remove them here and implement a legacy loader based only on [keystone_authtoken] section?","commit_id":"06bbc80bc409df91f156933ea8f019eb21efad6c"},{"author":{"_account_id":13636,"name":"aarefiev","display_name":"Anton","email":"arefyevanton@gmail.com","username":"aarefiev"},"change_message_id":"a25f8b270a883544e8d787ea7b10222cfea9bb14","unresolved":false,"context_lines":[{"line_number":22,"context_line":"from ironic_inspector import utils"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"CONF \u003d cfg.CONF"},{"line_number":25,"context_line":"LOG \u003d log.getLogger(__name__)"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"# See http://specs.openstack.org/openstack/ironic-specs/specs/kilo/new-ironic-state-machine.html  # noqa"},{"line_number":28,"context_line":"VALID_STATES \u003d {\u0027enroll\u0027, \u0027manageable\u0027, \u0027inspecting\u0027, \u0027inspectfail\u0027}"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa0719c6_a53ab7cb","line":25,"range":{"start_line":25,"start_character":0,"end_line":25,"end_character":3},"updated":"2016-03-21 12:32:14.000000000","message":"looks like not used","commit_id":"2e1d006b347da4ac6d7c076f2990408c6fc5c6e6"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"b717c47a26a7eee520bae61a672cc2f62888f867","unresolved":false,"context_lines":[{"line_number":22,"context_line":"from ironic_inspector import utils"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"CONF \u003d cfg.CONF"},{"line_number":25,"context_line":"LOG \u003d log.getLogger(__name__)"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"# See http://specs.openstack.org/openstack/ironic-specs/specs/kilo/new-ironic-state-machine.html  # noqa"},{"line_number":28,"context_line":"VALID_STATES \u003d {\u0027enroll\u0027, \u0027manageable\u0027, \u0027inspecting\u0027, \u0027inspectfail\u0027}"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa0719c6_5e9cd70e","line":25,"range":{"start_line":25,"start_character":0,"end_line":25,"end_character":3},"in_reply_to":"fa0719c6_a53ab7cb","updated":"2016-03-23 12:01:11.000000000","message":"Done","commit_id":"2e1d006b347da4ac6d7c076f2990408c6fc5c6e6"},{"author":{"_account_id":13636,"name":"aarefiev","display_name":"Anton","email":"arefyevanton@gmail.com","username":"aarefiev"},"change_message_id":"a25f8b270a883544e8d787ea7b10222cfea9bb14","unresolved":false,"context_lines":[{"line_number":119,"context_line":""},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"def reset_ironic_session():"},{"line_number":122,"context_line":"    \"\"\"Use in tests.\"\"\""},{"line_number":123,"context_line":"    global IRONIC_SESSION"},{"line_number":124,"context_line":"    IRONIC_SESSION \u003d None"},{"line_number":125,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"fa0719c6_c5524bdd","line":122,"range":{"start_line":122,"start_character":7,"end_line":122,"end_character":21},"updated":"2016-03-21 12:32:14.000000000","message":"more meaningful doc string would be nice","commit_id":"2e1d006b347da4ac6d7c076f2990408c6fc5c6e6"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"b717c47a26a7eee520bae61a672cc2f62888f867","unresolved":false,"context_lines":[{"line_number":119,"context_line":""},{"line_number":120,"context_line":""},{"line_number":121,"context_line":"def reset_ironic_session():"},{"line_number":122,"context_line":"    \"\"\"Use in tests.\"\"\""},{"line_number":123,"context_line":"    global IRONIC_SESSION"},{"line_number":124,"context_line":"    IRONIC_SESSION \u003d None"},{"line_number":125,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"fa0719c6_be9d330c","line":122,"range":{"start_line":122,"start_character":7,"end_line":122,"end_character":21},"in_reply_to":"fa0719c6_c5524bdd","updated":"2016-03-23 12:01:11.000000000","message":"Done","commit_id":"2e1d006b347da4ac6d7c076f2990408c6fc5c6e6"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"5494ed46cee39c6198ac55d054c7354d9419f3b9","unresolved":false,"context_lines":[{"line_number":77,"context_line":"                    \u0027DEPRECATED: Use [keystone_authtoken] section for \u0027"},{"line_number":78,"context_line":"                    \u0027keystone token validation.\u0027,"},{"line_number":79,"context_line":"               deprecated_group\u003d\u0027discoverd\u0027,"},{"line_number":80,"context_line":"               deprecated_for_removal\u003dTrue),"},{"line_number":81,"context_line":"    cfg.StrOpt(\u0027auth_strategy\u0027,"},{"line_number":82,"context_line":"               default\u003d\u0027keystone\u0027,"},{"line_number":83,"context_line":"               choices\u003d(\u0027keystone\u0027, \u0027noauth\u0027),"}],"source_content_type":"text/x-python","patch_set":12,"id":"ba0121b8_4db1bd46","line":80,"updated":"2016-03-31 07:43:06.000000000","message":"might be good time to remove this option..","commit_id":"35f332539dc6a9b61c60b4314347ff0b2e7177a2"}],"ironic_inspector/common/keystone.py":[{"author":{"_account_id":13636,"name":"aarefiev","display_name":"Anton","email":"arefyevanton@gmail.com","username":"aarefiev"},"change_message_id":"a25f8b270a883544e8d787ea7b10222cfea9bb14","unresolved":false,"context_lines":[{"line_number":63,"context_line":"    \"\"\""},{"line_number":64,"context_line":"    LOG.warning(_LW(\"Group %s: Using legacy auth loader is deprecated. \""},{"line_number":65,"context_line":"                    \"Consider specifying appropriate keystone auth plugin as \""},{"line_number":66,"context_line":"                    \"\u0027auth_type\u0027 and corresponding plugin options.\") % group)"},{"line_number":67,"context_line":"    if legacy_opts:"},{"line_number":68,"context_line":"        for opt in legacy_opts:"},{"line_number":69,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa0719c6_6526df69","line":66,"range":{"start_line":66,"start_character":69,"end_line":66,"end_character":70},"updated":"2016-03-21 12:32:14.000000000","message":"nit % -\u003e ,","commit_id":"2e1d006b347da4ac6d7c076f2990408c6fc5c6e6"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"b717c47a26a7eee520bae61a672cc2f62888f867","unresolved":false,"context_lines":[{"line_number":63,"context_line":"    \"\"\""},{"line_number":64,"context_line":"    LOG.warning(_LW(\"Group %s: Using legacy auth loader is deprecated. \""},{"line_number":65,"context_line":"                    \"Consider specifying appropriate keystone auth plugin as \""},{"line_number":66,"context_line":"                    \"\u0027auth_type\u0027 and corresponding plugin options.\") % group)"},{"line_number":67,"context_line":"    if legacy_opts:"},{"line_number":68,"context_line":"        for opt in legacy_opts:"},{"line_number":69,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa0719c6_7ebefb65","line":66,"range":{"start_line":66,"start_character":69,"end_line":66,"end_character":70},"in_reply_to":"fa0719c6_6526df69","updated":"2016-03-23 12:01:11.000000000","message":"Done","commit_id":"2e1d006b347da4ac6d7c076f2990408c6fc5c6e6"}],"ironic_inspector/common/swift.py":[{"author":{"_account_id":13636,"name":"aarefiev","display_name":"Anton","email":"arefyevanton@gmail.com","username":"aarefiev"},"change_message_id":"a2c8438a890415fa2becb878352121418c680b95","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    cfg.StrOpt(\u0027container\u0027,"},{"line_number":42,"context_line":"               default\u003d\u0027ironic-inspector\u0027,"},{"line_number":43,"context_line":"               help\u003d\u0027Default Swift container to use when creating objects.\u0027),"},{"line_number":44,"context_line":"    cfg.StrOpt(\u0027username\u0027,"},{"line_number":45,"context_line":"               default\u003d\u0027\u0027,"},{"line_number":46,"context_line":"               help\u003d\u0027User name for accessing Swift API.\u0027),"},{"line_number":47,"context_line":"    cfg.StrOpt(\u0027password\u0027,"},{"line_number":48,"context_line":"               default\u003d\u0027\u0027,"},{"line_number":49,"context_line":"               help\u003d\u0027Password for accessing Swift API.\u0027,"},{"line_number":50,"context_line":"               secret\u003dTrue),"},{"line_number":51,"context_line":"    cfg.StrOpt(\u0027tenant_name\u0027,"},{"line_number":52,"context_line":"               default\u003d\u0027\u0027,"},{"line_number":53,"context_line":"               help\u003d\u0027Tenant name for accessing Swift API.\u0027),"},{"line_number":54,"context_line":"    cfg.StrOpt(\u0027os_auth_version\u0027,"},{"line_number":55,"context_line":"               default\u003d\u00272\u0027,"},{"line_number":56,"context_line":"               help\u003d\u0027Keystone authentication API version\u0027),"},{"line_number":57,"context_line":"    cfg.StrOpt(\u0027os_auth_url\u0027,"},{"line_number":58,"context_line":"               default\u003d\u0027\u0027,"},{"line_number":59,"context_line":"               help\u003d\u0027Keystone authentication URL\u0027),"},{"line_number":60,"context_line":"    cfg.StrOpt(\u0027os_service_type\u0027,"},{"line_number":61,"context_line":"               default\u003d\u0027object-store\u0027,"},{"line_number":62,"context_line":"               help\u003d\u0027Swift service type.\u0027),"}],"source_content_type":"text/x-python","patch_set":3,"id":"7af24918_fa05d710","side":"PARENT","line":59,"range":{"start_line":44,"start_character":3,"end_line":59,"end_character":50},"updated":"2016-03-03 15:21:55.000000000","message":"looks like this options should be deprecated first","commit_id":"b53b1c0ccbc1c1784a47c15c9f314d61b62f2be4"},{"author":{"_account_id":13636,"name":"aarefiev","display_name":"Anton","email":"arefyevanton@gmail.com","username":"aarefiev"},"change_message_id":"a2c8438a890415fa2becb878352121418c680b95","unresolved":false,"context_lines":[{"line_number":63,"context_line":""},{"line_number":64,"context_line":"OBJECT_NAME_PREFIX \u003d \u0027inspector_data\u0027"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"kaloading.register_auth_conf_options(cfg.CONF, \u0027swift\u0027)"},{"line_number":67,"context_line":"cfg.CONF.set_default(\"auth_type\", default\u003d\"password\", group\u003d\u0027swift\u0027)"},{"line_number":68,"context_line":"kaloading.register_session_conf_options(cfg.CONF, \u0027swift\u0027)"},{"line_number":69,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"7af24918_3470f6db","line":66,"range":{"start_line":66,"start_character":37,"end_line":66,"end_character":40},"updated":"2016-03-03 15:21:55.000000000","message":"ditto","commit_id":"669148871c3341691a825b7dd23e19411015a997"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"5494ed46cee39c6198ac55d054c7354d9419f3b9","unresolved":false,"context_lines":[{"line_number":106,"context_line":"class SwiftAPI(object):"},{"line_number":107,"context_line":"    \"\"\"API for communicating with Swift.\"\"\""},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"    def __init__(self):"},{"line_number":110,"context_line":"        \"\"\"Constructor for creating a SwiftAPI object."},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"        Authentification is loaded from config file."}],"source_content_type":"text/x-python","patch_set":12,"id":"ba0121b8_eda7f108","line":109,"updated":"2016-03-31 07:43:06.000000000","message":"not sure if it\u0027s a great idea to just remove these arguments.. but that\u0027s internal API, may be fine","commit_id":"35f332539dc6a9b61c60b4314347ff0b2e7177a2"}]}
