)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"c1de292f6fdffd8261ae9587a6abcab8d2611f24","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Adds dynamic checking for mapped tokens"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Avoids having to manually add protocols to check if is a federation"},{"line_number":10,"context_line":"token. This check is done by using a list of federation methods present"},{"line_number":11,"context_line":"at keystone.conf file."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":11,"id":"5a890539_ba341a4b","line":9,"updated":"2014-11-19 09:52:30.000000000","message":"nit: ..to check if it is....","commit_id":"789afccfaa5d4057bcef74577fd6cd3e5d6b2de2"}],"etc/keystone.conf.sample":[{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"e72245dda51dffa8b5127f9ae220607285078a75","unresolved":false,"context_lines":[{"line_number":483,"context_line":"# List of mapped authentication methods. It must be a subset"},{"line_number":484,"context_line":"# of \u0027methods\u0027 list. Examples: \u0027saml2, oidc\u0027 (list value)"},{"line_number":485,"context_line":"#mapped_methods\u003d"},{"line_number":486,"context_line":""},{"line_number":487,"context_line":"# The password auth plugin module. (string value)"},{"line_number":488,"context_line":"#password\u003dkeystone.auth.plugins.password.Password"},{"line_number":489,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":15,"id":"5a890539_950c513d","line":486,"updated":"2014-11-20 18:32:46.000000000","message":"Was this edited by hand or did you generate it?","commit_id":"23b756f4f1d793fb1066a945e8f31909f7ca6f7e"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"6b60df310dec7145b326050d965c6af6da21888e","unresolved":false,"context_lines":[{"line_number":483,"context_line":"# List of mapped authentication methods. It must be a subset"},{"line_number":484,"context_line":"# of \u0027methods\u0027 list. Examples: \u0027saml2, oidc\u0027 (list value)"},{"line_number":485,"context_line":"#mapped_methods\u003d"},{"line_number":486,"context_line":""},{"line_number":487,"context_line":"# The password auth plugin module. (string value)"},{"line_number":488,"context_line":"#password\u003dkeystone.auth.plugins.password.Password"},{"line_number":489,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":15,"id":"5a890539_3531dd0b","line":486,"in_reply_to":"5a890539_950c513d","updated":"2014-11-20 18:48:42.000000000","message":"++ seems like we need to regenerate, since the help sentence has changed.","commit_id":"23b756f4f1d793fb1066a945e8f31909f7ca6f7e"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"a98f7caa7940fb88d215bb5d1abcf357b9fc3cd5","unresolved":false,"context_lines":[{"line_number":664,"context_line":"# Deprecated group/name - [DATABASE]/sql_max_pool_size"},{"line_number":665,"context_line":"#max_pool_size\u003d\u003cNone\u003e"},{"line_number":666,"context_line":""},{"line_number":667,"context_line":"# Maximum number of database connection retries during"},{"line_number":668,"context_line":"# startup. Set to -1 to specify an infinite retry count."},{"line_number":669,"context_line":"# (integer value)"},{"line_number":670,"context_line":"# Deprecated group/name - [DEFAULT]/sql_max_retries"}],"source_content_type":"application/octet-stream","patch_set":19,"id":"5a890539_f8c74110","line":667,"updated":"2014-11-20 23:37:45.000000000","message":"this was generated automatically \u003d(","commit_id":"ab3bdc086214ce04cbd58f3b9bcb1a704f090b8c"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"051ecb6fe94328daa42af3aa5ddbded2abf649a3","unresolved":false,"context_lines":[{"line_number":664,"context_line":"# Deprecated group/name - [DATABASE]/sql_max_pool_size"},{"line_number":665,"context_line":"#max_pool_size\u003d\u003cNone\u003e"},{"line_number":666,"context_line":""},{"line_number":667,"context_line":"# Maximum number of database connection retries during"},{"line_number":668,"context_line":"# startup. Set to -1 to specify an infinite retry count."},{"line_number":669,"context_line":"# (integer value)"},{"line_number":670,"context_line":"# Deprecated group/name - [DEFAULT]/sql_max_retries"}],"source_content_type":"application/octet-stream","patch_set":19,"id":"5a890539_e32f9286","line":667,"in_reply_to":"5a890539_58485587","updated":"2014-11-20 23:50:40.000000000","message":"++\n\nit happened because the removal from the mapped_methods config. Just hadn\u0027t noticed this before sending the review.","commit_id":"ab3bdc086214ce04cbd58f3b9bcb1a704f090b8c"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"18a7a644fc807a2a8e5e2439abcf050406c2e85c","unresolved":false,"context_lines":[{"line_number":664,"context_line":"# Deprecated group/name - [DATABASE]/sql_max_pool_size"},{"line_number":665,"context_line":"#max_pool_size\u003d\u003cNone\u003e"},{"line_number":666,"context_line":""},{"line_number":667,"context_line":"# Maximum number of database connection retries during"},{"line_number":668,"context_line":"# startup. Set to -1 to specify an infinite retry count."},{"line_number":669,"context_line":"# (integer value)"},{"line_number":670,"context_line":"# Deprecated group/name - [DEFAULT]/sql_max_retries"}],"source_content_type":"application/octet-stream","patch_set":19,"id":"5a890539_58485587","line":667,"in_reply_to":"5a890539_f8c74110","updated":"2014-11-20 23:46:04.000000000","message":"that\u0027s fine, sometimes this happens when someone changes code in keystone.common.config without updating this, file, can you revert the changes here and I\u0027ll do a sync in another commit","commit_id":"ab3bdc086214ce04cbd58f3b9bcb1a704f090b8c"}],"keystone/common/config.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"449d19656dc262578a2cacb3b3aa0974d1e3a2c5","unresolved":false,"context_lines":[{"line_number":771,"context_line":"                    help\u003d\u0027Default auth methods.\u0027),"},{"line_number":772,"context_line":"        # auth methods used for federation, they must be a subset of the"},{"line_number":773,"context_line":"        # methods conf"},{"line_number":774,"context_line":"        cfg.ListOpt(\u0027federation_methods\u0027, default\u003d[\u0027saml2\u0027, \u0027oic\u0027],"},{"line_number":775,"context_line":"                    help\u003d\u0027Default federation auth methods.\u0027),"},{"line_number":776,"context_line":"        cfg.StrOpt(\u0027password\u0027,"},{"line_number":777,"context_line":"                   default\u003d\u0027keystone.auth.plugins.password.Password\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a890539_22601435","line":774,"updated":"2014-11-09 01:01:24.000000000","message":"i\u0027d prefer oidc","commit_id":"11b645fc45f655768c9959b1aa2eb392a903080f"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"006eeffa1cb2499643e3e252a5d43d7374face36","unresolved":false,"context_lines":[{"line_number":771,"context_line":"                    help\u003d\u0027Default auth methods.\u0027),"},{"line_number":772,"context_line":"        # auth methods used for federation, they must be a subset of the"},{"line_number":773,"context_line":"        # methods conf"},{"line_number":774,"context_line":"        cfg.ListOpt(\u0027federation_methods\u0027, default\u003d[\u0027saml2\u0027, \u0027oic\u0027],"},{"line_number":775,"context_line":"                    help\u003d\u0027Default federation auth methods.\u0027),"},{"line_number":776,"context_line":"        cfg.StrOpt(\u0027password\u0027,"},{"line_number":777,"context_line":"                   default\u003d\u0027keystone.auth.plugins.password.Password\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a890539_024b18b1","line":774,"in_reply_to":"5a890539_22601435","updated":"2014-11-09 01:15:42.000000000","message":"typo here, will fix \u003d)","commit_id":"11b645fc45f655768c9959b1aa2eb392a903080f"},{"author":{"_account_id":9098,"name":"Nathan Kinder","email":"nkinder@redhat.com","username":"nkinder"},"change_message_id":"812a0bcc59e7fc6f06002199a489d11031c57a98","unresolved":false,"context_lines":[{"line_number":771,"context_line":"                    help\u003d\u0027Default auth methods.\u0027),"},{"line_number":772,"context_line":"        # auth methods used for federation, they must be a subset of the"},{"line_number":773,"context_line":"        # methods conf"},{"line_number":774,"context_line":"        cfg.ListOpt(\u0027federation_methods\u0027, default\u003d[\u0027saml2\u0027, \u0027oidc\u0027],"},{"line_number":775,"context_line":"                    help\u003d\u0027Default federation auth methods.\u0027),"},{"line_number":776,"context_line":"        cfg.StrOpt(\u0027password\u0027,"},{"line_number":777,"context_line":"                   default\u003d\u0027keystone.auth.plugins.password.Password\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_6c412e0b","line":774,"updated":"2014-11-09 17:07:50.000000000","message":"I\u0027m a bit undecided on what the default should be for the new option.  It feels a bit odd to list methods that aren\u0027t even enabled by default, but it does improve usability for the common cases when one enables \u0027saml2\u0027 or \u0027oidc\u0027 since there is one less step to take in the configuration.\n\nI\u0027m OK with what you have, or with an empty list by default.  I\u0027d like to see what others think about the default setting.","commit_id":"0d4118b2095a3f754815df365b5e7e6535f26fa0"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"8eb49bd80dfa018ff446acda2363d72bbc431f57","unresolved":false,"context_lines":[{"line_number":771,"context_line":"                    help\u003d\u0027Default auth methods.\u0027),"},{"line_number":772,"context_line":"        # auth methods used for federation, they must be a subset of the"},{"line_number":773,"context_line":"        # methods conf"},{"line_number":774,"context_line":"        cfg.ListOpt(\u0027federation_methods\u0027, default\u003d[\u0027saml2\u0027, \u0027oidc\u0027],"},{"line_number":775,"context_line":"                    help\u003d\u0027Default federation auth methods.\u0027),"},{"line_number":776,"context_line":"        cfg.StrOpt(\u0027password\u0027,"},{"line_number":777,"context_line":"                   default\u003d\u0027keystone.auth.plugins.password.Password\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_409513e3","line":774,"in_reply_to":"5a890539_2c600635","updated":"2014-11-10 09:49:21.000000000","message":"how about listing them in the help message?","commit_id":"0d4118b2095a3f754815df365b5e7e6535f26fa0"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"9423750bc4fdad9a4ac5fedf5036acf36fe177d0","unresolved":false,"context_lines":[{"line_number":771,"context_line":"                    help\u003d\u0027Default auth methods.\u0027),"},{"line_number":772,"context_line":"        # auth methods used for federation, they must be a subset of the"},{"line_number":773,"context_line":"        # methods conf"},{"line_number":774,"context_line":"        cfg.ListOpt(\u0027federation_methods\u0027, default\u003d[\u0027saml2\u0027, \u0027oidc\u0027],"},{"line_number":775,"context_line":"                    help\u003d\u0027Default federation auth methods.\u0027),"},{"line_number":776,"context_line":"        cfg.StrOpt(\u0027password\u0027,"},{"line_number":777,"context_line":"                   default\u003d\u0027keystone.auth.plugins.password.Password\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_fe73ffe4","line":774,"in_reply_to":"5a890539_409513e3","updated":"2014-11-10 11:45:06.000000000","message":"++ for leaving it empty and list on the help message","commit_id":"0d4118b2095a3f754815df365b5e7e6535f26fa0"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"1ef1d512e919f91a4b6fdd98f3e9a9539a073759","unresolved":false,"context_lines":[{"line_number":771,"context_line":"                    help\u003d\u0027Default auth methods.\u0027),"},{"line_number":772,"context_line":"        # auth methods used for federation, they must be a subset of the"},{"line_number":773,"context_line":"        # methods conf"},{"line_number":774,"context_line":"        cfg.ListOpt(\u0027federation_methods\u0027, default\u003d[\u0027saml2\u0027, \u0027oidc\u0027],"},{"line_number":775,"context_line":"                    help\u003d\u0027Default federation auth methods.\u0027),"},{"line_number":776,"context_line":"        cfg.StrOpt(\u0027password\u0027,"},{"line_number":777,"context_line":"                   default\u003d\u0027keystone.auth.plugins.password.Password\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_2c600635","line":774,"in_reply_to":"5a890539_6c412e0b","updated":"2014-11-10 08:28:24.000000000","message":"they shouldn\u0027t be enabled as federation in general is an extension.","commit_id":"0d4118b2095a3f754815df365b5e7e6535f26fa0"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"5330d2cc4d7b5588db01251a264791a3520c73f8","unresolved":false,"context_lines":[{"line_number":774,"context_line":"        cfg.ListOpt(\u0027federation_methods\u0027, default\u003d[],"},{"line_number":775,"context_line":"                    help\u003d\u0027Default federation auth methods. A value is \u0027"},{"line_number":776,"context_line":"                         \u0027required in order to check mapped tokens. For \u0027"},{"line_number":777,"context_line":"                         \u0027example: saml2, oidc\u0027),"},{"line_number":778,"context_line":"        cfg.StrOpt(\u0027password\u0027,"},{"line_number":779,"context_line":"                   default\u003d\u0027keystone.auth.plugins.password.Password\u0027,"},{"line_number":780,"context_line":"                   help\u003d\u0027The password auth plugin module.\u0027),"}],"source_content_type":"text/x-python","patch_set":6,"id":"5a890539_f8da2ae8","line":777,"updated":"2014-11-10 18:08:37.000000000","message":"I would change it to:\n\n\"List of federation authentication methods. It must be a subset of \u0027methods\u0027 list. Examples: \u0027saml2, oidc\u0027\".","commit_id":"e33d099633ecaf8cf3caa76f8af5c2973cd7a0fc"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"57686ae50d168af0fb98767171746899561316b7","unresolved":false,"context_lines":[{"line_number":774,"context_line":"        cfg.ListOpt(\u0027federation_methods\u0027, default\u003d[],"},{"line_number":775,"context_line":"                    help\u003d\u0027Default federation auth methods. A value is \u0027"},{"line_number":776,"context_line":"                         \u0027required in order to check mapped tokens. For \u0027"},{"line_number":777,"context_line":"                         \u0027example: saml2, oidc\u0027),"},{"line_number":778,"context_line":"        cfg.StrOpt(\u0027password\u0027,"},{"line_number":779,"context_line":"                   default\u003d\u0027keystone.auth.plugins.password.Password\u0027,"},{"line_number":780,"context_line":"                   help\u003d\u0027The password auth plugin module.\u0027),"}],"source_content_type":"text/x-python","patch_set":6,"id":"5a890539_78639a1a","line":777,"in_reply_to":"5a890539_f8da2ae8","updated":"2014-11-10 18:13:16.000000000","message":"++","commit_id":"e33d099633ecaf8cf3caa76f8af5c2973cd7a0fc"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"6f7544d71c17735fbefbd1b095d71f8d1b8657b8","unresolved":false,"context_lines":[{"line_number":771,"context_line":"                    help\u003d\u0027Default auth methods.\u0027),"},{"line_number":772,"context_line":"        # auth methods used for federation, they must be a subset of the"},{"line_number":773,"context_line":"        # methods conf"},{"line_number":774,"context_line":"        cfg.ListOpt(\u0027federation_methods\u0027, default\u003d[],"},{"line_number":775,"context_line":"                    help\u003d\u0027List of federation authentication methods. It must \u0027"},{"line_number":776,"context_line":"                         \u0027be a subset of \\\u0027methods\\\u0027 list. Examples: \u0027"},{"line_number":777,"context_line":"                         \u0027\\\u0027saml2, oidc\\\u0027\u0027),"}],"source_content_type":"text/x-python","patch_set":10,"id":"5a890539_bc2be492","line":774,"updated":"2014-11-13 11:05:10.000000000","message":"it just hit me, maybe it\u0027d be better to call it \u0027mapped_methods\u0027 ? I think at the end we decide here whether mapping engine will be used or not?","commit_id":"3ba21517c0f9298174d1dc20090be758b13ff6f7"},{"author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"change_message_id":"a7e269b558fcffbbf9fcb165b8493bc07f6373d3","unresolved":false,"context_lines":[{"line_number":771,"context_line":"                    help\u003d\u0027Default auth methods.\u0027),"},{"line_number":772,"context_line":"        # auth methods used for federation, they must be a subset of the"},{"line_number":773,"context_line":"        # methods conf"},{"line_number":774,"context_line":"        cfg.ListOpt(\u0027mapped_methods\u0027, default\u003d[],"},{"line_number":775,"context_line":"                    help\u003d\u0027List of mapped authentication methods. It must \u0027"},{"line_number":776,"context_line":"                         \u0027be a subset of \\\u0027methods\\\u0027 list. Examples: \u0027"},{"line_number":777,"context_line":"                         \u0027\\\u0027saml2, oidc\\\u0027\u0027),"}],"source_content_type":"text/x-python","patch_set":11,"id":"5a890539_fdccdc8c","line":774,"updated":"2014-11-19 09:57:56.000000000","message":"Why is it empty by default? As far as I understand, it was [\u0027saml2\u0027, \u0027oidc\u0027] before the change. How will it behave if the user leaves it as is?","commit_id":"789afccfaa5d4057bcef74577fd6cd3e5d6b2de2"},{"author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"change_message_id":"792ebd11df7614cbaea7547eacb097238ba9736d","unresolved":false,"context_lines":[{"line_number":771,"context_line":"                    help\u003d\u0027Default auth methods.\u0027),"},{"line_number":772,"context_line":"        # auth methods used for federation, they must be a subset of the"},{"line_number":773,"context_line":"        # methods conf"},{"line_number":774,"context_line":"        cfg.ListOpt(\u0027mapped_methods\u0027, default\u003d[],"},{"line_number":775,"context_line":"                    help\u003d\u0027List of mapped authentication methods. It must \u0027"},{"line_number":776,"context_line":"                         \u0027be a subset of \\\u0027methods\\\u0027 list. Examples: \u0027"},{"line_number":777,"context_line":"                         \u0027\\\u0027saml2, oidc\\\u0027\u0027),"}],"source_content_type":"text/x-python","patch_set":11,"id":"5a890539_8e99dc21","line":774,"in_reply_to":"5a890539_18f45686","updated":"2014-11-19 11:23:57.000000000","message":"Well, OK. I wonder why they where there before this patch.","commit_id":"789afccfaa5d4057bcef74577fd6cd3e5d6b2de2"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"ca517916dc739d1a1baf494e4b0ef8a0839bf201","unresolved":false,"context_lines":[{"line_number":771,"context_line":"                    help\u003d\u0027Default auth methods.\u0027),"},{"line_number":772,"context_line":"        # auth methods used for federation, they must be a subset of the"},{"line_number":773,"context_line":"        # methods conf"},{"line_number":774,"context_line":"        cfg.ListOpt(\u0027mapped_methods\u0027, default\u003d[],"},{"line_number":775,"context_line":"                    help\u003d\u0027List of mapped authentication methods. It must \u0027"},{"line_number":776,"context_line":"                         \u0027be a subset of \\\u0027methods\\\u0027 list. Examples: \u0027"},{"line_number":777,"context_line":"                         \u0027\\\u0027saml2, oidc\\\u0027\u0027),"}],"source_content_type":"text/x-python","patch_set":11,"id":"5a890539_18f45686","line":774,"in_reply_to":"5a890539_fdccdc8c","updated":"2014-11-19 10:22:34.000000000","message":"since whole federation is an extension we don\u0027t want users to have it enable (and more importantly install all dependencies) by default.\nTherefore, no federation protocols should be enable in a fresh keystone insallation.","commit_id":"789afccfaa5d4057bcef74577fd6cd3e5d6b2de2"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"c1de292f6fdffd8261ae9587a6abcab8d2611f24","unresolved":false,"context_lines":[{"line_number":773,"context_line":"        # methods conf"},{"line_number":774,"context_line":"        cfg.ListOpt(\u0027mapped_methods\u0027, default\u003d[],"},{"line_number":775,"context_line":"                    help\u003d\u0027List of mapped authentication methods. It must \u0027"},{"line_number":776,"context_line":"                         \u0027be a subset of \\\u0027methods\\\u0027 list. Examples: \u0027"},{"line_number":777,"context_line":"                         \u0027\\\u0027saml2, oidc\\\u0027\u0027),"},{"line_number":778,"context_line":"        cfg.StrOpt(\u0027password\u0027,"},{"line_number":779,"context_line":"                   default\u003d\u0027keystone.auth.plugins.password.Password\u0027,"}],"source_content_type":"text/x-python","patch_set":11,"id":"5a890539_da02c66e","line":776,"updated":"2014-11-19 09:52:30.000000000","message":"I\u0027m not sure this sentence (\"It must be a subset of....\") will be particularly meaningful to a cloud deployer.  The examples are good...but maybe write it as something like  [saml2, odic]","commit_id":"789afccfaa5d4057bcef74577fd6cd3e5d6b2de2"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"3940fb674c25aa3cae98c955bfeda2388693c5e1","unresolved":false,"context_lines":[{"line_number":773,"context_line":"        # methods conf"},{"line_number":774,"context_line":"        cfg.ListOpt(\u0027mapped_methods\u0027, default\u003d[],"},{"line_number":775,"context_line":"                    help\u003d\u0027List of mapped authentication methods. It must \u0027"},{"line_number":776,"context_line":"                         \u0027be a subset of \\\u0027methods\\\u0027 list. Examples: \u0027"},{"line_number":777,"context_line":"                         \u0027\\\u0027saml2, oidc\\\u0027\u0027),"},{"line_number":778,"context_line":"        cfg.StrOpt(\u0027password\u0027,"},{"line_number":779,"context_line":"                   default\u003d\u0027keystone.auth.plugins.password.Password\u0027,"}],"source_content_type":"text/x-python","patch_set":11,"id":"5a890539_5a2ec8a6","line":776,"in_reply_to":"5a890539_da02c66e","updated":"2014-11-19 19:20:53.000000000","message":"changed a little bit.","commit_id":"789afccfaa5d4057bcef74577fd6cd3e5d6b2de2"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"6545d231635bd77bf6b5f5da421a207ee18183d8","unresolved":false,"context_lines":[{"line_number":774,"context_line":"        cfg.ListOpt(\u0027mapped_methods\u0027, default\u003d[],"},{"line_number":775,"context_line":"                    help\u003d\u0027List of authentication methods where mapping engine \u0027"},{"line_number":776,"context_line":"                         \u0027will be used. Must be a subset of \\\u0027methods\\\u0027 list. \u0027"},{"line_number":777,"context_line":"                         \u0027Examples: [saml2, oidc]\u0027),"},{"line_number":778,"context_line":"        cfg.StrOpt(\u0027password\u0027,"},{"line_number":779,"context_line":"                   default\u003d\u0027keystone.auth.plugins.password.Password\u0027,"},{"line_number":780,"context_line":"                   help\u003d\u0027The password auth plugin module.\u0027),"}],"source_content_type":"text/x-python","patch_set":16,"id":"5a890539_4bbfa660","line":777,"updated":"2014-11-20 19:44:38.000000000","message":"should the examples have quotes around them? \n\nlike [\u0027saml2\u0027, \u0027oidc\u0027] - i\u0027m not sure?","commit_id":"688da707e35791cfbaff17bd95c91d6a3512a4e7"},{"author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"change_message_id":"24be584b5397fe68a65dc2c3524294757e950585","unresolved":false,"context_lines":[{"line_number":774,"context_line":"        cfg.ListOpt(\u0027mapped_methods\u0027, default\u003d[],"},{"line_number":775,"context_line":"                    help\u003d\u0027List of authentication methods where mapping engine \u0027"},{"line_number":776,"context_line":"                         \u0027will be used. Must be a subset of \\\u0027methods\\\u0027 list. \u0027"},{"line_number":777,"context_line":"                         \u0027Examples: [saml2, oidc]\u0027),"},{"line_number":778,"context_line":"        cfg.StrOpt(\u0027password\u0027,"},{"line_number":779,"context_line":"                   default\u003d\u0027keystone.auth.plugins.password.Password\u0027,"},{"line_number":780,"context_line":"                   help\u003d\u0027The password auth plugin module.\u0027),"}],"source_content_type":"text/x-python","patch_set":16,"id":"5a890539_8644251c","line":777,"in_reply_to":"5a890539_4bbfa660","updated":"2014-11-20 19:51:03.000000000","message":"I guess they should be comma-separated, like in \"[auth] methods\"","commit_id":"688da707e35791cfbaff17bd95c91d6a3512a4e7"}],"keystone/tests/config_files/test_auth_plugin.conf":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"f0f476ba3180a674e41c9794c15b482d746c92c5","unresolved":false,"context_lines":[{"line_number":1,"context_line":"[auth]"},{"line_number":2,"context_line":"methods \u003d external,password,token,simple_challenge_response,saml2,openid,x509"},{"line_number":3,"context_line":"federation_methods \u003d saml2,openid,x509"},{"line_number":4,"context_line":"simple_challenge_response \u003d keystone.tests.test_auth_plugin.SimpleChallengeResponse"},{"line_number":5,"context_line":"saml2 \u003d keystone.auth.plugins.mapped.Mapped"},{"line_number":6,"context_line":"openid \u003d keystone.auth.plugins.mapped.Mapped"}],"source_content_type":"text/plain","patch_set":7,"id":"5a890539_6e5e70eb","line":3,"updated":"2014-11-10 19:29:49.000000000","message":"should be able to undo this change if you change tests/core.py","commit_id":"4f78705c1614ab75b3a4a11b2fc1301714d39f0e"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"f48f0b77d3b1926126b0a53c7628de155706f8b3","unresolved":false,"context_lines":[{"line_number":1,"context_line":"[auth]"},{"line_number":2,"context_line":"methods \u003d external,password,token,simple_challenge_response,saml2,openid,x509"},{"line_number":3,"context_line":"federation_methods \u003d saml2,openid,x509"},{"line_number":4,"context_line":"simple_challenge_response \u003d keystone.tests.test_auth_plugin.SimpleChallengeResponse"},{"line_number":5,"context_line":"saml2 \u003d keystone.auth.plugins.mapped.Mapped"},{"line_number":6,"context_line":"openid \u003d keystone.auth.plugins.mapped.Mapped"}],"source_content_type":"text/plain","patch_set":7,"id":"5a890539_89947638","line":3,"in_reply_to":"5a890539_6e5e70eb","updated":"2014-11-10 20:50:12.000000000","message":"Done","commit_id":"4f78705c1614ab75b3a4a11b2fc1301714d39f0e"}],"keystone/tests/core.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"6cd442a117c6cefdb474b08291c58ec2356f6dff","unresolved":false,"context_lines":[{"line_number":387,"context_line":"        self.config_fixture.config("},{"line_number":388,"context_line":"            group\u003d\u0027saml\u0027, certfile\u003dsigning_certfile, keyfile\u003dsigning_keyfile)"},{"line_number":389,"context_line":"        self.config_fixture.config("},{"line_number":390,"context_line":"            group\u003d\u0027auth\u0027, mapped_methods\u003d[\u0027saml2\u0027, \u0027oidc\u0027])"},{"line_number":391,"context_line":"        self.config_fixture.config("},{"line_number":392,"context_line":"            default_log_levels\u003d["},{"line_number":393,"context_line":"                \u0027amqp\u003dWARN\u0027,"}],"source_content_type":"text/x-python","patch_set":14,"id":"5a890539_a27116e0","line":390,"updated":"2014-11-20 16:23:45.000000000","message":"we should move this to test_v3_federation.py since it\u0027s only used there, and we don\u0027t create an unnecessary dependency.","commit_id":"f860ba47e4919209a8baabbc832a5aaab902d5ca"}],"keystone/tests/test_v3_federation.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"f0f476ba3180a674e41c9794c15b482d746c92c5","unresolved":false,"context_lines":[{"line_number":56,"context_line":"    EXTENSION_NAME \u003d \u0027federation\u0027"},{"line_number":57,"context_line":"    EXTENSION_TO_ADD \u003d \u0027federation_extension\u0027"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    # NOTE(marek-denis): Enable auth configuration from test_auth_plugin.conf"},{"line_number":60,"context_line":"    def config_files(self):"},{"line_number":61,"context_line":"        config_files \u003d super(FederationTests,"},{"line_number":62,"context_line":"                             self).config_files()"}],"source_content_type":"text/x-python","patch_set":7,"id":"5a890539_eec34088","line":59,"updated":"2014-11-10 19:29:49.000000000","message":"I think we want to avoid relying on .conf files for tests, so let\u0027s not pull this in. We can add a new section for [federation_methods] around here: https://github.com/openstack/keystone/blob/0e9aefe73baf06997067e06f2485b883a1c29e6c/keystone/tests/core.py#L379-L381","commit_id":"4f78705c1614ab75b3a4a11b2fc1301714d39f0e"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"f48f0b77d3b1926126b0a53c7628de155706f8b3","unresolved":false,"context_lines":[{"line_number":56,"context_line":"    EXTENSION_NAME \u003d \u0027federation\u0027"},{"line_number":57,"context_line":"    EXTENSION_TO_ADD \u003d \u0027federation_extension\u0027"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    # NOTE(marek-denis): Enable auth configuration from test_auth_plugin.conf"},{"line_number":60,"context_line":"    def config_files(self):"},{"line_number":61,"context_line":"        config_files \u003d super(FederationTests,"},{"line_number":62,"context_line":"                             self).config_files()"}],"source_content_type":"text/x-python","patch_set":7,"id":"5a890539_698f4a24","line":59,"in_reply_to":"5a890539_eec34088","updated":"2014-11-10 20:50:12.000000000","message":"Done","commit_id":"4f78705c1614ab75b3a4a11b2fc1301714d39f0e"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"6cd442a117c6cefdb474b08291c58ec2356f6dff","unresolved":false,"context_lines":[{"line_number":920,"context_line":"        r \u003d api.federated_authentication(context, self.IDP, self.PROTOCOL)"},{"line_number":921,"context_line":"        return r"},{"line_number":922,"context_line":""},{"line_number":923,"context_line":"    def test_is_mapped_token_success(self):"},{"line_number":924,"context_line":"        \"\"\"Test proper configuration of CONF.auth.mapped_methods"},{"line_number":925,"context_line":""},{"line_number":926,"context_line":"        Make sure the token will be marked as \u0027mapped\u0027 if its auth method"}],"source_content_type":"text/x-python","patch_set":14,"id":"5a890539_ad3bc7c6","line":923,"updated":"2014-11-20 16:23:45.000000000","message":"we should move these all to a unit test. under tests.unit.federation.test_common.py or something","commit_id":"f860ba47e4919209a8baabbc832a5aaab902d5ca"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"6cd442a117c6cefdb474b08291c58ec2356f6dff","unresolved":false,"context_lines":[{"line_number":929,"context_line":"        \"\"\""},{"line_number":930,"context_line":"        auth_methods \u003d [\u0027saml2\u0027]"},{"line_number":931,"context_line":"        token_provider \u003d uuid_provider.Provider()"},{"line_number":932,"context_line":"        self.assertEqual(set(auth_methods),"},{"line_number":933,"context_line":"                         token_provider._is_mapped_token(auth_methods))"},{"line_number":934,"context_line":""},{"line_number":935,"context_line":"    def test_is_mapped_token_wrong_auth_methods(self):"}],"source_content_type":"text/x-python","patch_set":14,"id":"5a890539_8d67ebe9","line":932,"updated":"2014-11-20 16:23:45.000000000","message":"if is_mapped returned a boolean, these would be easier to evaluate.","commit_id":"f860ba47e4919209a8baabbc832a5aaab902d5ca"}],"keystone/token/providers/common.py":[{"author":{"_account_id":9098,"name":"Nathan Kinder","email":"nkinder@redhat.com","username":"nkinder"},"change_message_id":"812a0bcc59e7fc6f06002199a489d11031c57a98","unresolved":false,"context_lines":[{"line_number":420,"context_line":"        return token_id, token_data"},{"line_number":421,"context_line":""},{"line_number":422,"context_line":"    def _is_mapped_token(self, token_method_names):"},{"line_number":423,"context_line":"        protocols \u003d CONF.auth.federation_methods"},{"line_number":424,"context_line":"        if protocols:"},{"line_number":425,"context_line":"            token_method_names \u003d set(token_method_names)"},{"line_number":426,"context_line":"            for protocol in protocols:"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_4c3c7294","line":423,"updated":"2014-11-09 17:07:50.000000000","message":"(nit) I think you should call this something other than \u0027protocols\u0027, such as \u0027mapped_methods\u0027.","commit_id":"0d4118b2095a3f754815df365b5e7e6535f26fa0"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"1ef1d512e919f91a4b6fdd98f3e9a9539a073759","unresolved":false,"context_lines":[{"line_number":420,"context_line":"        return token_id, token_data"},{"line_number":421,"context_line":""},{"line_number":422,"context_line":"    def _is_mapped_token(self, token_method_names):"},{"line_number":423,"context_line":"        protocols \u003d CONF.auth.federation_methods"},{"line_number":424,"context_line":"        if protocols:"},{"line_number":425,"context_line":"            token_method_names \u003d set(token_method_names)"},{"line_number":426,"context_line":"            for protocol in protocols:"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_a57329b0","line":423,"in_reply_to":"5a890539_4c3c7294","updated":"2014-11-10 08:28:24.000000000","message":"++","commit_id":"0d4118b2095a3f754815df365b5e7e6535f26fa0"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"9423750bc4fdad9a4ac5fedf5036acf36fe177d0","unresolved":false,"context_lines":[{"line_number":420,"context_line":"        return token_id, token_data"},{"line_number":421,"context_line":""},{"line_number":422,"context_line":"    def _is_mapped_token(self, token_method_names):"},{"line_number":423,"context_line":"        protocols \u003d CONF.auth.federation_methods"},{"line_number":424,"context_line":"        if protocols:"},{"line_number":425,"context_line":"            token_method_names \u003d set(token_method_names)"},{"line_number":426,"context_line":"            for protocol in protocols:"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_3e7e67af","line":423,"in_reply_to":"5a890539_a57329b0","updated":"2014-11-10 11:45:06.000000000","message":"will rename the variable","commit_id":"0d4118b2095a3f754815df365b5e7e6535f26fa0"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"f0f476ba3180a674e41c9794c15b482d746c92c5","unresolved":false,"context_lines":[{"line_number":419,"context_line":"        token_data[\u0027access\u0027][\u0027token\u0027][\u0027id\u0027] \u003d token_id"},{"line_number":420,"context_line":"        return token_id, token_data"},{"line_number":421,"context_line":""},{"line_number":422,"context_line":"    def _is_mapped_token(self, token_method_names):"},{"line_number":423,"context_line":"        mapped_methods \u003d CONF.auth.federation_methods"},{"line_number":424,"context_line":"        if mapped_methods:"},{"line_number":425,"context_line":"            token_method_names \u003d set(token_method_names)"}],"source_content_type":"text/x-python","patch_set":7,"id":"5a890539_ee4a6026","line":422,"updated":"2014-11-10 19:29:49.000000000","message":"add some comments/docstring here explaining what the function does, it\u0027s a bit cryptic in it\u0027s current state","commit_id":"4f78705c1614ab75b3a4a11b2fc1301714d39f0e"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"f48f0b77d3b1926126b0a53c7628de155706f8b3","unresolved":false,"context_lines":[{"line_number":419,"context_line":"        token_data[\u0027access\u0027][\u0027token\u0027][\u0027id\u0027] \u003d token_id"},{"line_number":420,"context_line":"        return token_id, token_data"},{"line_number":421,"context_line":""},{"line_number":422,"context_line":"    def _is_mapped_token(self, token_method_names):"},{"line_number":423,"context_line":"        mapped_methods \u003d CONF.auth.federation_methods"},{"line_number":424,"context_line":"        if mapped_methods:"},{"line_number":425,"context_line":"            token_method_names \u003d set(token_method_names)"}],"source_content_type":"text/x-python","patch_set":7,"id":"5a890539_2976223f","line":422,"in_reply_to":"5a890539_ee4a6026","updated":"2014-11-10 20:50:12.000000000","message":"Done","commit_id":"4f78705c1614ab75b3a4a11b2fc1301714d39f0e"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"7ecff9e0df2547d6c22d6db07c74aa4eeecc4016","unresolved":false,"context_lines":[{"line_number":432,"context_line":"            token_method_names \u003d set(token_method_names)"},{"line_number":433,"context_line":"            # Checks if one of the mapped_methods are in the token"},{"line_number":434,"context_line":"            # method names"},{"line_number":435,"context_line":"            for method in mapped_methods:"},{"line_number":436,"context_line":"                if method in token_method_names:"},{"line_number":437,"context_line":"                    return True"},{"line_number":438,"context_line":"        return False"}],"source_content_type":"text/x-python","patch_set":8,"id":"5a890539_a983f2ca","line":435,"updated":"2014-11-10 21:02:19.000000000","message":"might be worth trying to make mapped_methods a set, and then comparing the two sets... since that will return a boolean too. if you think it\u0027s worth it, then change the patch, but i\u0027m okay with this","commit_id":"4adee0466dd4a3697d16b11701150c0ae2bb66cf"},{"author":{"_account_id":8978,"name":"Marek Denis","email":"marek.denis+openstack@gmail.com","username":"marek-denis"},"change_message_id":"202d0639ab13577456e829d7f98be06a207ce940","unresolved":false,"context_lines":[{"line_number":432,"context_line":"            token_method_names \u003d set(token_method_names)"},{"line_number":433,"context_line":"            # Checks if one of the mapped_methods are in the token"},{"line_number":434,"context_line":"            # method names"},{"line_number":435,"context_line":"            for method in mapped_methods:"},{"line_number":436,"context_line":"                if method in token_method_names:"},{"line_number":437,"context_line":"                    return True"},{"line_number":438,"context_line":"        return False"}],"source_content_type":"text/x-python","patch_set":8,"id":"5a890539_f1440476","line":435,"in_reply_to":"5a890539_a983f2ca","updated":"2014-11-10 22:30:06.000000000","message":"i had thought the same but didn\u0027t want to be too picky, especially since the \u0027problem domain\u0027 is small.\n\nif mapped_methods:\n    token_method_names \u003d set(token_method_names)\n    mapped_methods \u003d set(mapped_methods)\n    return token_methods.intersection(mapped_methods)\nreturn False","commit_id":"4adee0466dd4a3697d16b11701150c0ae2bb66cf"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"076be69c0e2fe7d6b2ae29ed04145ccc7494a671","unresolved":false,"context_lines":[{"line_number":432,"context_line":"            token_method_names \u003d set(token_method_names)"},{"line_number":433,"context_line":"            # Checks if one of the mapped_methods are in the token"},{"line_number":434,"context_line":"            # method names"},{"line_number":435,"context_line":"            for method in mapped_methods:"},{"line_number":436,"context_line":"                if method in token_method_names:"},{"line_number":437,"context_line":"                    return True"},{"line_number":438,"context_line":"        return False"}],"source_content_type":"text/x-python","patch_set":8,"id":"5a890539_3413da5d","line":435,"in_reply_to":"5a890539_f1440476","updated":"2014-11-10 22:32:47.000000000","message":"hmm... just learned something new about Python \u003dP (Java guy here), will update.","commit_id":"4adee0466dd4a3697d16b11701150c0ae2bb66cf"},{"author":{"_account_id":13055,"name":"Alexander Makarov","email":"ajiekcahdp.makapob@gmail.com","username":"amakarov"},"change_message_id":"c3e07289482e7b565919a156e6466bd50ca6edca","unresolved":false,"context_lines":[{"line_number":427,"context_line":"        :returns: if the token is using mapped methods"},{"line_number":428,"context_line":"        \"\"\""},{"line_number":429,"context_line":""},{"line_number":430,"context_line":"        mapped_methods \u003d CONF.auth.federation_methods"},{"line_number":431,"context_line":"        if mapped_methods:"},{"line_number":432,"context_line":"            # Checks if one of the mapped_methods are in the token"},{"line_number":433,"context_line":"            # method names"}],"source_content_type":"text/x-python","patch_set":10,"id":"5a890539_91c44a60","line":430,"updated":"2014-11-13 14:19:39.000000000","message":"+1 to Marek Denis about naming if federation_methods are not used elsewhere.","commit_id":"3ba21517c0f9298174d1dc20090be758b13ff6f7"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"6cd442a117c6cefdb474b08291c58ec2356f6dff","unresolved":false,"context_lines":[{"line_number":433,"context_line":"            # method names"},{"line_number":434,"context_line":"            token_method_names \u003d set(token_method_names)"},{"line_number":435,"context_line":"            mapped_methods \u003d set(mapped_methods)"},{"line_number":436,"context_line":"            return token_method_names.intersection(mapped_methods)"},{"line_number":437,"context_line":"        return False"},{"line_number":438,"context_line":""},{"line_number":439,"context_line":"    def issue_v3_token(self, user_id, method_names, expires_at\u003dNone,"}],"source_content_type":"text/x-python","patch_set":14,"id":"5a890539_8d128b56","line":436,"updated":"2014-11-20 16:23:45.000000000","message":"do you think we should wrap this with bool() ?\n\nwhenever i see a is_xyz method, i think it returns a boolean.","commit_id":"f860ba47e4919209a8baabbc832a5aaab902d5ca"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"e72245dda51dffa8b5127f9ae220607285078a75","unresolved":false,"context_lines":[{"line_number":419,"context_line":"        token_data[\u0027access\u0027][\u0027token\u0027][\u0027id\u0027] \u003d token_id"},{"line_number":420,"context_line":"        return token_id, token_data"},{"line_number":421,"context_line":""},{"line_number":422,"context_line":"    def _is_mapped_token(self, token_method_names):"},{"line_number":423,"context_line":"        \"\"\"Checks if the provided token is using mapped methods."},{"line_number":424,"context_line":""},{"line_number":425,"context_line":"        :param token_method_names: the methods from the token."}],"source_content_type":"text/x-python","patch_set":15,"id":"5a890539_7558c5fa","line":422,"updated":"2014-11-20 18:32:46.000000000","message":"The _is prefix on the method name signals to me that this returns a boolean value, but it actually doesn\u0027t. I\u0027d suggest changing the name to reflect that is returns a set of the mapped methods. Also it would probably be better to return an empty set instead of a False. (Unless of course you really want this to be used like a boolean and then it should return True/False.","commit_id":"23b756f4f1d793fb1066a945e8f31909f7ca6f7e"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"6b60df310dec7145b326050d965c6af6da21888e","unresolved":false,"context_lines":[{"line_number":419,"context_line":"        token_data[\u0027access\u0027][\u0027token\u0027][\u0027id\u0027] \u003d token_id"},{"line_number":420,"context_line":"        return token_id, token_data"},{"line_number":421,"context_line":""},{"line_number":422,"context_line":"    def _is_mapped_token(self, token_method_names):"},{"line_number":423,"context_line":"        \"\"\"Checks if the provided token is using mapped methods."},{"line_number":424,"context_line":""},{"line_number":425,"context_line":"        :param token_method_names: the methods from the token."}],"source_content_type":"text/x-python","patch_set":15,"id":"5a890539_953e11d9","line":422,"in_reply_to":"5a890539_7558c5fa","updated":"2014-11-20 18:48:42.000000000","message":"I\u0027d go with the second: keep the method name as it is and make sure it returns only booleans. Will fix, thanks.","commit_id":"23b756f4f1d793fb1066a945e8f31909f7ca6f7e"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"6545d231635bd77bf6b5f5da421a207ee18183d8","unresolved":false,"context_lines":[{"line_number":433,"context_line":"            # method names"},{"line_number":434,"context_line":"            token_method_names \u003d set(token_method_names)"},{"line_number":435,"context_line":"            mapped_methods \u003d set(mapped_methods)"},{"line_number":436,"context_line":"            if token_method_names.intersection(mapped_methods):"},{"line_number":437,"context_line":"                return True"},{"line_number":438,"context_line":"        return False"},{"line_number":439,"context_line":""}],"source_content_type":"text/x-python","patch_set":16,"id":"5a890539_eb577224","line":436,"updated":"2014-11-20 19:44:38.000000000","message":"what happens if there is no intersection? what is returned?\n\n  return bool(token_method_names.intersection(mapped_methods)) \n\nmight be better","commit_id":"688da707e35791cfbaff17bd95c91d6a3512a4e7"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"17b5e78ff3603c6e06eb989124b9bd4d569856a2","unresolved":false,"context_lines":[{"line_number":447,"context_line":"            trust \u003d self.trust_api.get_trust(metadata_ref[\u0027trust_id\u0027])"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"        token_ref \u003d None"},{"line_number":450,"context_line":"        if self._is_mapped_token(method_names):"},{"line_number":451,"context_line":"            token_ref \u003d self._handle_mapped_tokens("},{"line_number":452,"context_line":"                auth_context, project_id, domain_id)"},{"line_number":453,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"5a890539_49716ddf","line":450,"updated":"2014-11-20 21:06:06.000000000","message":"ayoung, what do you think of changing it to:\n\n  if federation.IDENTITY_PROVIDER in auth_context:\n    token_ref \u003d self._handle_mapped_tokens(blah)\n\nWhich i\u0027d be interested in seeing the result of, seems like it\u0027ll work!","commit_id":"100baaaed40e95a0eb550996e1db1cd917ea630c"},{"author":{"_account_id":11022,"name":"Rodrigo Duarte Sousa","email":"rodrigodsousa@gmail.com","username":"rodrigods"},"change_message_id":"2d46da322ac2c73b136f91a8ab8ae1fd89d1b089","unresolved":false,"context_lines":[{"line_number":447,"context_line":"            trust \u003d self.trust_api.get_trust(metadata_ref[\u0027trust_id\u0027])"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"        token_ref \u003d None"},{"line_number":450,"context_line":"        if self._is_mapped_token(method_names):"},{"line_number":451,"context_line":"            token_ref \u003d self._handle_mapped_tokens("},{"line_number":452,"context_line":"                auth_context, project_id, domain_id)"},{"line_number":453,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"5a890539_0f99251f","line":450,"in_reply_to":"5a890539_49716ddf","updated":"2014-11-20 22:04:24.000000000","message":"think that needs both idp and protocol, will test here and submit if seems to do the job","commit_id":"100baaaed40e95a0eb550996e1db1cd917ea630c"}]}
