)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"bbd0b0f4a0130345cd4d84f06ca3594fa1c886df","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Rudolf Vriend \u003crudolf.vriend@sap.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-02-05 19:58:53 +0100"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Adds user_description_name mapping support to the ldap backend"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The LDAP backend supports mapping between LDAP and keystone user attributes via the \u0027user_\u003cattribute\u003e_name\u0027 settings in the ldap driver configuration."},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5a5ae5dd_f8057410","line":7,"range":{"start_line":7,"start_character":50,"end_line":7,"end_character":54},"updated":"2016-02-05 19:23:31.000000000","message":"LDAP","commit_id":"b90cf1b5489966602ab2f39b6bb6471c13fcbf97"},{"author":{"_account_id":18115,"name":"Rudolf Vriend","email":"rudolf.vriend@sap.com","username":"rudolf"},"change_message_id":"e19cdd7ded3fe5bd308894188bf7713327f91ca9","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Rudolf Vriend \u003crudolf.vriend@sap.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-02-05 19:58:53 +0100"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Adds user_description_name mapping support to the ldap backend"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The LDAP backend supports mapping between LDAP and keystone user attributes via the \u0027user_\u003cattribute\u003e_name\u0027 settings in the ldap driver configuration."},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5a5ae5dd_7812e458","line":7,"updated":"2016-02-05 21:21:23.000000000","message":"user_description_attribute","commit_id":"b90cf1b5489966602ab2f39b6bb6471c13fcbf97"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"c818ae5b26660fe3a9fa8958a35c8fb8859263f3","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Rudolf Vriend \u003crudolf.vriend@sap.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-02-05 19:58:53 +0100"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Adds user_description_name mapping support to the ldap backend"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The LDAP backend supports mapping between LDAP and keystone user attributes via the \u0027user_\u003cattribute\u003e_name\u0027 settings in the ldap driver configuration."},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5a5ae5dd_fbe32ed7","line":7,"range":{"start_line":7,"start_character":5,"end_line":7,"end_character":26},"updated":"2016-02-05 20:21:57.000000000","message":"user_description_attribute","commit_id":"b90cf1b5489966602ab2f39b6bb6471c13fcbf97"},{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"bbd0b0f4a0130345cd4d84f06ca3594fa1c886df","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Adds user_description_name mapping support to the ldap backend"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The LDAP backend supports mapping between LDAP and keystone user attributes via the \u0027user_\u003cattribute\u003e_name\u0027 settings in the ldap driver configuration."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"The current implementation is incomplete, since there is no support for specifying a \u0027user_description_attribute\u0027 setting."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5a5ae5dd_25044516","line":9,"range":{"start_line":9,"start_character":124,"end_line":9,"end_character":128},"updated":"2016-02-05 19:23:31.000000000","message":"LDAP","commit_id":"b90cf1b5489966602ab2f39b6bb6471c13fcbf97"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"c818ae5b26660fe3a9fa8958a35c8fb8859263f3","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Adds user_description_name mapping support to the ldap backend"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The LDAP backend supports mapping between LDAP and keystone user attributes via the \u0027user_\u003cattribute\u003e_name\u0027 settings in the ldap driver configuration."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"The current implementation is incomplete, since there is no support for specifying a \u0027user_description_attribute\u0027 setting."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5a5ae5dd_bbe936b9","line":9,"range":{"start_line":9,"start_character":85,"end_line":9,"end_character":106},"updated":"2016-02-05 20:21:57.000000000","message":"user_\u003cattribute\u003e_attribute","commit_id":"b90cf1b5489966602ab2f39b6bb6471c13fcbf97"},{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"bbd0b0f4a0130345cd4d84f06ca3594fa1c886df","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"The current implementation is incomplete, since there is no support for specifying a \u0027user_description_attribute\u0027 setting."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This change adds support to the ldap backend for mapping of user description attributes via a \u0027user_description_attribute\u0027 configuration."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: I30b63306beae3379aa8c29d0df3f327369d3f2a6"},{"line_number":16,"context_line":"Closes-Bug: #1542417"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5a5ae5dd_45014105","line":13,"range":{"start_line":13,"start_character":32,"end_line":13,"end_character":36},"updated":"2016-02-05 19:23:31.000000000","message":"LDAP","commit_id":"b90cf1b5489966602ab2f39b6bb6471c13fcbf97"},{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"bbd0b0f4a0130345cd4d84f06ca3594fa1c886df","unresolved":false,"context_lines":[{"line_number":11,"context_line":"The current implementation is incomplete, since there is no support for specifying a \u0027user_description_attribute\u0027 setting."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This change adds support to the ldap backend for mapping of user description attributes via a \u0027user_description_attribute\u0027 configuration."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: I30b63306beae3379aa8c29d0df3f327369d3f2a6"},{"line_number":16,"context_line":"Closes-Bug: #1542417"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5a5ae5dd_c514514e","line":14,"updated":"2016-02-05 19:23:31.000000000","message":"Can you shorten these to 72 characters?","commit_id":"b90cf1b5489966602ab2f39b6bb6471c13fcbf97"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"c818ae5b26660fe3a9fa8958a35c8fb8859263f3","unresolved":false,"context_lines":[{"line_number":11,"context_line":"The current implementation is incomplete, since there is no support for specifying a \u0027user_description_attribute\u0027 setting."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This change adds support to the ldap backend for mapping of user description attributes via a \u0027user_description_attribute\u0027 configuration."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: I30b63306beae3379aa8c29d0df3f327369d3f2a6"},{"line_number":16,"context_line":"Closes-Bug: #1542417"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5a5ae5dd_5bd36204","line":14,"in_reply_to":"5a5ae5dd_c514514e","updated":"2016-02-05 20:21:57.000000000","message":"++","commit_id":"b90cf1b5489966602ab2f39b6bb6471c13fcbf97"}],"doc/source/configuration.rst":[{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"c818ae5b26660fe3a9fa8958a35c8fb8859263f3","unresolved":false,"context_lines":[{"line_number":1742,"context_line":"  user_objectclass           \u003d person"},{"line_number":1743,"context_line":"  user_id_attribute          \u003d cn"},{"line_number":1744,"context_line":"  user_name_attribute        \u003d cn"},{"line_number":1745,"context_line":"  user_description_attribute \u003d displayName"},{"line_number":1746,"context_line":"  user_mail_attribute        \u003d mail"},{"line_number":1747,"context_line":"  user_enabled_attribute     \u003d userAccountControl"},{"line_number":1748,"context_line":"  user_enabled_mask          \u003d 2"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5a5ae5dd_fb31ee5a","line":1745,"range":{"start_line":1745,"start_character":31,"end_line":1745,"end_character":42},"updated":"2016-02-05 20:21:57.000000000","message":"Why displayName ? Shouldn\u0027t this be the LDAP \u0027description\u0027 attribute ?","commit_id":"b90cf1b5489966602ab2f39b6bb6471c13fcbf97"},{"author":{"_account_id":18115,"name":"Rudolf Vriend","email":"rudolf.vriend@sap.com","username":"rudolf"},"change_message_id":"e19cdd7ded3fe5bd308894188bf7713327f91ca9","unresolved":false,"context_lines":[{"line_number":1742,"context_line":"  user_objectclass           \u003d person"},{"line_number":1743,"context_line":"  user_id_attribute          \u003d cn"},{"line_number":1744,"context_line":"  user_name_attribute        \u003d cn"},{"line_number":1745,"context_line":"  user_description_attribute \u003d displayName"},{"line_number":1746,"context_line":"  user_mail_attribute        \u003d mail"},{"line_number":1747,"context_line":"  user_enabled_attribute     \u003d userAccountControl"},{"line_number":1748,"context_line":"  user_enabled_mask          \u003d 2"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5a5ae5dd_768bd5c3","line":1745,"in_reply_to":"5a5ae5dd_fb31ee5a","updated":"2016-02-05 21:21:23.000000000","message":"No. It illustrates the exact use-case why this bug has been filed \u0026 fixed: allow mapping of a AD \u0027displayName\u0027 attribute keystone user.description (see the section before: \u0027In case of Active Directory...\u0027)","commit_id":"b90cf1b5489966602ab2f39b6bb6471c13fcbf97"},{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"cdbbb3258080fccf19039f2bb6b8b0d85c605a94","unresolved":false,"context_lines":[{"line_number":1742,"context_line":"  user_objectclass           \u003d person"},{"line_number":1743,"context_line":"  user_id_attribute          \u003d cn"},{"line_number":1744,"context_line":"  user_name_attribute        \u003d cn"},{"line_number":1745,"context_line":"  user_description_attribute \u003d displayName"},{"line_number":1746,"context_line":"  user_mail_attribute        \u003d mail"},{"line_number":1747,"context_line":"  user_enabled_attribute     \u003d userAccountControl"},{"line_number":1748,"context_line":"  user_enabled_mask          \u003d 2"}],"source_content_type":"text/x-rst","patch_set":2,"id":"5a5ae5dd_9b3eba89","line":1745,"range":{"start_line":1745,"start_character":31,"end_line":1745,"end_character":42},"updated":"2016-02-05 20:15:14.000000000","message":"shouldn\u0027t this be description?","commit_id":"6353d5eed43c1df7cf5fa46454d51e7f15464127"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"6081925063e8f61d04fa4d11bce93ca3beff85f4","unresolved":false,"context_lines":[{"line_number":1742,"context_line":"  user_objectclass           \u003d person"},{"line_number":1743,"context_line":"  user_id_attribute          \u003d cn"},{"line_number":1744,"context_line":"  user_name_attribute        \u003d cn"},{"line_number":1745,"context_line":"  user_description_attribute \u003d displayName"},{"line_number":1746,"context_line":"  user_mail_attribute        \u003d mail"},{"line_number":1747,"context_line":"  user_enabled_attribute     \u003d userAccountControl"},{"line_number":1748,"context_line":"  user_enabled_mask          \u003d 2"}],"source_content_type":"text/x-rst","patch_set":2,"id":"5a5ae5dd_3b7c66b4","line":1745,"range":{"start_line":1745,"start_character":31,"end_line":1745,"end_character":42},"in_reply_to":"5a5ae5dd_9b3eba89","updated":"2016-02-05 20:24:31.000000000","message":"++ Why displayName ? Shouldn\u0027t this be the LDAP \u0027description\u0027 attribute ?","commit_id":"6353d5eed43c1df7cf5fa46454d51e7f15464127"}],"keystone/common/config.py":[{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"c818ae5b26660fe3a9fa8958a35c8fb8859263f3","unresolved":false,"context_lines":[{"line_number":601,"context_line":"                        \u0027WARNING: must not be a multivalued attribute.\u0027),"},{"line_number":602,"context_line":"        cfg.StrOpt(\u0027user_name_attribute\u0027, default\u003d\u0027sn\u0027,"},{"line_number":603,"context_line":"                   help\u003d\u0027LDAP attribute mapped to user name.\u0027),"},{"line_number":604,"context_line":"        cfg.StrOpt(\u0027user_description_attribute\u0027, default\u003d\u0027description\u0027,"},{"line_number":605,"context_line":"                   help\u003d\u0027LDAP attribute mapped to user description.\u0027),"},{"line_number":606,"context_line":"        cfg.StrOpt(\u0027user_mail_attribute\u0027, default\u003d\u0027mail\u0027,"},{"line_number":607,"context_line":"                   help\u003d\u0027LDAP attribute mapped to user email.\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a5ae5dd_1b472abd","line":604,"range":{"start_line":604,"start_character":57,"end_line":604,"end_character":70},"updated":"2016-02-05 20:21:57.000000000","message":"Shouldn\u0027t default be None, i.e no description?\n\nDoes this mean a user who doesn\u0027t have a description will have its description read as \u0027description\u0027 from a GET /v3/users call ?","commit_id":"b90cf1b5489966602ab2f39b6bb6471c13fcbf97"},{"author":{"_account_id":18115,"name":"Rudolf Vriend","email":"rudolf.vriend@sap.com","username":"rudolf"},"change_message_id":"e19cdd7ded3fe5bd308894188bf7713327f91ca9","unresolved":false,"context_lines":[{"line_number":601,"context_line":"                        \u0027WARNING: must not be a multivalued attribute.\u0027),"},{"line_number":602,"context_line":"        cfg.StrOpt(\u0027user_name_attribute\u0027, default\u003d\u0027sn\u0027,"},{"line_number":603,"context_line":"                   help\u003d\u0027LDAP attribute mapped to user name.\u0027),"},{"line_number":604,"context_line":"        cfg.StrOpt(\u0027user_description_attribute\u0027, default\u003d\u0027description\u0027,"},{"line_number":605,"context_line":"                   help\u003d\u0027LDAP attribute mapped to user description.\u0027),"},{"line_number":606,"context_line":"        cfg.StrOpt(\u0027user_mail_attribute\u0027, default\u003d\u0027mail\u0027,"},{"line_number":607,"context_line":"                   help\u003d\u0027LDAP attribute mapped to user email.\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a5ae5dd_d1a73309","line":604,"in_reply_to":"5a5ae5dd_1b472abd","updated":"2016-02-05 21:21:23.000000000","message":"No. It simply means that when no user_description_attribute configuration has been set in the keystone.con (or domain specific .conf), it will fallback to the default attribute name \u0027description\u0027.","commit_id":"b90cf1b5489966602ab2f39b6bb6471c13fcbf97"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"6081925063e8f61d04fa4d11bce93ca3beff85f4","unresolved":false,"context_lines":[{"line_number":601,"context_line":"                        \u0027WARNING: must not be a multivalued attribute.\u0027),"},{"line_number":602,"context_line":"        cfg.StrOpt(\u0027user_name_attribute\u0027, default\u003d\u0027sn\u0027,"},{"line_number":603,"context_line":"                   help\u003d\u0027LDAP attribute mapped to user name.\u0027),"},{"line_number":604,"context_line":"        cfg.StrOpt(\u0027user_description_attribute\u0027, default\u003d\u0027description\u0027,"},{"line_number":605,"context_line":"                   help\u003d\u0027LDAP attribute mapped to user description.\u0027),"},{"line_number":606,"context_line":"        cfg.StrOpt(\u0027user_mail_attribute\u0027, default\u003d\u0027mail\u0027,"},{"line_number":607,"context_line":"                   help\u003d\u0027LDAP attribute mapped to user email.\u0027),"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a5ae5dd_fb69eef9","line":604,"range":{"start_line":604,"start_character":58,"end_line":604,"end_character":69},"updated":"2016-02-05 20:24:31.000000000","message":"Shouldn\u0027t default be None, i.e no description?\n\nDoes this mean a user who doesn\u0027t have a description will have its description read as \u0027description\u0027 from a GET /v3/users call ?","commit_id":"6353d5eed43c1df7cf5fa46454d51e7f15464127"}],"keystone/tests/unit/core.py":[{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"8aa7603b8a12cbdc61b65b17487132cfd792c900","unresolved":false,"context_lines":[{"line_number":331,"context_line":"        \u0027domain_id\u0027: domain_id,"},{"line_number":332,"context_line":"        \u0027email\u0027: uuid.uuid4().hex,"},{"line_number":333,"context_line":"        \u0027password\u0027: uuid.uuid4().hex,"},{"line_number":334,"context_line":"        \u0027description\u0027: uuid.uuid4().hex,"},{"line_number":335,"context_line":"    }"},{"line_number":336,"context_line":"    if project_id:"},{"line_number":337,"context_line":"        ref[\u0027default_project_id\u0027] \u003d project_id"}],"source_content_type":"text/x-python","patch_set":8,"id":"dae33548_4756abce","line":334,"updated":"2016-02-17 21:11:33.000000000","message":"since description is optional this shouldn\u0027t be in new_user_ref() because that affects all tests.","commit_id":"33dc70774c52b50bb0e89005090d05eb99bcda31"},{"author":{"_account_id":18115,"name":"Rudolf Vriend","email":"rudolf.vriend@sap.com","username":"rudolf"},"change_message_id":"c8c64a573bcbfcfbbfba537c5f4f1c50c84f90f2","unresolved":false,"context_lines":[{"line_number":331,"context_line":"        \u0027domain_id\u0027: domain_id,"},{"line_number":332,"context_line":"        \u0027email\u0027: uuid.uuid4().hex,"},{"line_number":333,"context_line":"        \u0027password\u0027: uuid.uuid4().hex,"},{"line_number":334,"context_line":"        \u0027description\u0027: uuid.uuid4().hex,"},{"line_number":335,"context_line":"    }"},{"line_number":336,"context_line":"    if project_id:"},{"line_number":337,"context_line":"        ref[\u0027default_project_id\u0027] \u003d project_id"}],"source_content_type":"text/x-python","patch_set":8,"id":"dae33548_e64a4654","line":334,"in_reply_to":"dae33548_0b2adcda","updated":"2016-02-18 10:49:39.000000000","message":"Hm. You haven\u0027t convinced me, since IMHO user.description isn\u0027t more optional than any of the other entity descriptions that are part of their respective new_\u003centity\u003e_ref implementations. And after all: all the tests are green even with this change.. But for the sake of getting on with this patch I\u0027ll remove it ;)","commit_id":"33dc70774c52b50bb0e89005090d05eb99bcda31"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"c21efd509e2437e44198551ad55d5ef93f0fdfb9","unresolved":false,"context_lines":[{"line_number":331,"context_line":"        \u0027domain_id\u0027: domain_id,"},{"line_number":332,"context_line":"        \u0027email\u0027: uuid.uuid4().hex,"},{"line_number":333,"context_line":"        \u0027password\u0027: uuid.uuid4().hex,"},{"line_number":334,"context_line":"        \u0027description\u0027: uuid.uuid4().hex,"},{"line_number":335,"context_line":"    }"},{"line_number":336,"context_line":"    if project_id:"},{"line_number":337,"context_line":"        ref[\u0027default_project_id\u0027] \u003d project_id"}],"source_content_type":"text/x-python","patch_set":8,"id":"dae33548_0b2adcda","line":334,"in_reply_to":"dae33548_4756abce","updated":"2016-02-18 07:03:33.000000000","message":"++\n\njust add it to where you need it..\n\n  user_ref \u003d unit.new_user_ref(domain_id)\n  user_ref[\u0027description\u0027] \u003d some random string (uuid.uuid4().hex)","commit_id":"33dc70774c52b50bb0e89005090d05eb99bcda31"}],"keystone/tests/unit/default_fixtures.py":[{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"8aa7603b8a12cbdc61b65b17487132cfd792c900","unresolved":false,"context_lines":[{"line_number":63,"context_line":"        \u0027tenants\u0027: [\u0027bar\u0027],"},{"line_number":64,"context_line":"        \u0027enabled\u0027: True,"},{"line_number":65,"context_line":"        \u0027email\u0027: \u0027foo@bar.com\u0027,"},{"line_number":66,"context_line":"        \u0027description\u0027: \u0027foo user\u0027,"},{"line_number":67,"context_line":"    }, {"},{"line_number":68,"context_line":"        \u0027id\u0027: \u0027two\u0027,"},{"line_number":69,"context_line":"        \u0027name\u0027: \u0027TWO\u0027,"}],"source_content_type":"text/x-python","patch_set":8,"id":"dae33548_c76abb80","line":66,"updated":"2016-02-17 21:11:33.000000000","message":"let\u0027s not change all tests just for a change to ldap.","commit_id":"33dc70774c52b50bb0e89005090d05eb99bcda31"},{"author":{"_account_id":18115,"name":"Rudolf Vriend","email":"rudolf.vriend@sap.com","username":"rudolf"},"change_message_id":"c8c64a573bcbfcfbbfba537c5f4f1c50c84f90f2","unresolved":false,"context_lines":[{"line_number":63,"context_line":"        \u0027tenants\u0027: [\u0027bar\u0027],"},{"line_number":64,"context_line":"        \u0027enabled\u0027: True,"},{"line_number":65,"context_line":"        \u0027email\u0027: \u0027foo@bar.com\u0027,"},{"line_number":66,"context_line":"        \u0027description\u0027: \u0027foo user\u0027,"},{"line_number":67,"context_line":"    }, {"},{"line_number":68,"context_line":"        \u0027id\u0027: \u0027two\u0027,"},{"line_number":69,"context_line":"        \u0027name\u0027: \u0027TWO\u0027,"}],"source_content_type":"text/x-python","patch_set":8,"id":"dae33548_06c00a4f","line":66,"in_reply_to":"dae33548_0b713c0f","updated":"2016-02-18 10:49:39.000000000","message":"same here: description is part of the other entities fixtures.. but I\u0027ll remove it.","commit_id":"33dc70774c52b50bb0e89005090d05eb99bcda31"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"c21efd509e2437e44198551ad55d5ef93f0fdfb9","unresolved":false,"context_lines":[{"line_number":63,"context_line":"        \u0027tenants\u0027: [\u0027bar\u0027],"},{"line_number":64,"context_line":"        \u0027enabled\u0027: True,"},{"line_number":65,"context_line":"        \u0027email\u0027: \u0027foo@bar.com\u0027,"},{"line_number":66,"context_line":"        \u0027description\u0027: \u0027foo user\u0027,"},{"line_number":67,"context_line":"    }, {"},{"line_number":68,"context_line":"        \u0027id\u0027: \u0027two\u0027,"},{"line_number":69,"context_line":"        \u0027name\u0027: \u0027TWO\u0027,"}],"source_content_type":"text/x-python","patch_set":8,"id":"dae33548_0b713c0f","line":66,"in_reply_to":"dae33548_c76abb80","updated":"2016-02-18 07:03:33.000000000","message":"agreed, this is a bit invasive, just change what you need for the tests","commit_id":"33dc70774c52b50bb0e89005090d05eb99bcda31"}],"keystone/tests/unit/test_backend_ldap.py":[{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"c818ae5b26660fe3a9fa8958a35c8fb8859263f3","unresolved":false,"context_lines":[{"line_number":1369,"context_line":"                                 domain_id\u003dCONF.identity.default_domain_id)"},{"line_number":1370,"context_line":"        user \u003d self.identity_api.create_user(user)"},{"line_number":1371,"context_line":"        dn, attrs \u003d self.identity_api.driver.user._ldap_get(user[\u0027id\u0027])"},{"line_number":1372,"context_line":"        self.assertThat([user[\u0027description\u0027]], matchers.Equals(attrs[\u0027displayName\u0027]))"},{"line_number":1373,"context_line":""},{"line_number":1374,"context_line":"    def test_user_extra_attribute_mapping_description_is_returned(self):"},{"line_number":1375,"context_line":"        # Given a mapping like description:description, the description is"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a5ae5dd_7bdadee9","line":1372,"updated":"2016-02-05 20:21:57.000000000","message":"Why are you changing this existing test ? If you want to do it here, please add the description attr without removing name","commit_id":"b90cf1b5489966602ab2f39b6bb6471c13fcbf97"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"6081925063e8f61d04fa4d11bce93ca3beff85f4","unresolved":false,"context_lines":[{"line_number":1369,"context_line":"                                 domain_id\u003dCONF.identity.default_domain_id)"},{"line_number":1370,"context_line":"        user \u003d self.identity_api.create_user(user)"},{"line_number":1371,"context_line":"        dn, attrs \u003d self.identity_api.driver.user._ldap_get(user[\u0027id\u0027])"},{"line_number":1372,"context_line":"        self.assertThat([user[\u0027description\u0027]], matchers.Equals(attrs[\u0027displayName\u0027]))"},{"line_number":1373,"context_line":""},{"line_number":1374,"context_line":"    def test_user_extra_attribute_mapping_description_is_returned(self):"},{"line_number":1375,"context_line":"        # Given a mapping like description:description, the description is"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a5ae5dd_3ba54646","line":1372,"updated":"2016-02-05 20:24:31.000000000","message":"Why are you changing this existing test ? If you want to do it here, please add the description attr without removing name","commit_id":"6353d5eed43c1df7cf5fa46454d51e7f15464127"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"eb6b63afdaf0078657be28b7b50a502b53e2d9ef","unresolved":false,"context_lines":[{"line_number":1369,"context_line":"                                 domain_id\u003dCONF.identity.default_domain_id)"},{"line_number":1370,"context_line":"        user \u003d self.identity_api.create_user(user)"},{"line_number":1371,"context_line":"        dn, attrs \u003d self.identity_api.driver.user._ldap_get(user[\u0027id\u0027])"},{"line_number":1372,"context_line":"        self.assertThat([user[\u0027description\u0027]], matchers.Equals(attrs[\u0027displayName\u0027]))"},{"line_number":1373,"context_line":""},{"line_number":1374,"context_line":"    def test_user_extra_attribute_mapping_description_is_returned(self):"},{"line_number":1375,"context_line":"        # Given a mapping like description:description, the description is"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a5ae5dd_f664a522","line":1372,"in_reply_to":"5a5ae5dd_16a8618c","updated":"2016-02-05 20:51:53.000000000","message":"In the previous test, I understand L1365 as mapping the LDAP \"description\" to keystone user\u0027s \"name\".\n\nNow it\u0027s mapping LDAP\u0027s \"displayName\" on keystone user\u0027s \"description\". I don\u0027t see why the previous test should fail\n\nAm I missing something ?","commit_id":"6353d5eed43c1df7cf5fa46454d51e7f15464127"},{"author":{"_account_id":17123,"name":"Tom Cocozzello (tjcocozz)","email":"tjcocozz@us.ibm.com","username":"tcocozzello"},"change_message_id":"cd110f84375ec96bb3983bbfea49f2074d8b44ce","unresolved":false,"context_lines":[{"line_number":1369,"context_line":"                                 domain_id\u003dCONF.identity.default_domain_id)"},{"line_number":1370,"context_line":"        user \u003d self.identity_api.create_user(user)"},{"line_number":1371,"context_line":"        dn, attrs \u003d self.identity_api.driver.user._ldap_get(user[\u0027id\u0027])"},{"line_number":1372,"context_line":"        self.assertThat([user[\u0027description\u0027]], matchers.Equals(attrs[\u0027displayName\u0027]))"},{"line_number":1373,"context_line":""},{"line_number":1374,"context_line":"    def test_user_extra_attribute_mapping_description_is_returned(self):"},{"line_number":1375,"context_line":"        # Given a mapping like description:description, the description is"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a5ae5dd_16a8618c","line":1372,"in_reply_to":"5a5ae5dd_3ba54646","updated":"2016-02-05 20:41:20.000000000","message":"Samuel, I think this has to be changed because description is no longer an additional attribute so it had to be changed to displayName.","commit_id":"6353d5eed43c1df7cf5fa46454d51e7f15464127"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"b0843c929b4c97206c12bcb2ae86d3811db8d9dc","unresolved":false,"context_lines":[{"line_number":1362,"context_line":"    def test_user_extra_attribute_mapping(self):"},{"line_number":1363,"context_line":"        self.config_fixture.config("},{"line_number":1364,"context_line":"            group\u003d\u0027ldap\u0027,"},{"line_number":1365,"context_line":"            user_additional_attribute_mapping\u003d[\u0027displayName:name\u0027])"},{"line_number":1366,"context_line":"        self.load_backends()"},{"line_number":1367,"context_line":"        user \u003d self.new_user_ref(name\u003d\u0027EXTRA_ATTRIBUTES\u0027,"},{"line_number":1368,"context_line":"                                 password\u003d\u0027extra\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"5a5ae5dd_68cc20bb","line":1365,"range":{"start_line":1365,"start_character":48,"end_line":1365,"end_character":59},"updated":"2016-02-08 11:38:47.000000000","message":"nit: I think why (as others commented) this is confusing is because by choosing to keep the example extra attribute as displayName, a review thinks it is directly to do with this change. If it where mobileNumber of something else, this wouldn\u0027t be confusing","commit_id":"63e4f256d0fbbb9fc735cbe17b0ac9a6534ba7f2"},{"author":{"_account_id":18115,"name":"Rudolf Vriend","email":"rudolf.vriend@sap.com","username":"rudolf"},"change_message_id":"61e64163c83106c192ec953fdb03482c4f96e570","unresolved":false,"context_lines":[{"line_number":1362,"context_line":"    def test_user_extra_attribute_mapping(self):"},{"line_number":1363,"context_line":"        self.config_fixture.config("},{"line_number":1364,"context_line":"            group\u003d\u0027ldap\u0027,"},{"line_number":1365,"context_line":"            user_additional_attribute_mapping\u003d[\u0027displayName:name\u0027])"},{"line_number":1366,"context_line":"        self.load_backends()"},{"line_number":1367,"context_line":"        user \u003d self.new_user_ref(name\u003d\u0027EXTRA_ATTRIBUTES\u0027,"},{"line_number":1368,"context_line":"                                 password\u003d\u0027extra\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"dae33548_4b737615","line":1365,"in_reply_to":"5a5ae5dd_68cc20bb","updated":"2016-02-17 13:42:47.000000000","message":"Hm. I hoped it was less confusing than before. Just had to take care that a \u0027extra\u0027 target attribute name was used. Since description isn\u0027t an extra attribute anymore after this fix, I chose displayName, as it is a pretty common setup for AD users and as such maybe represents a common use-case.","commit_id":"63e4f256d0fbbb9fc735cbe17b0ac9a6534ba7f2"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"dac0c6bea0f9f44c73f32c0ff38aeb77d0dec9e2","unresolved":false,"context_lines":[{"line_number":1394,"context_line":"        # TODO(rudolfvriend): the result of this test is misleading, since it"},{"line_number":1395,"context_line":"        # doesn\u0027t test the general mapping behavior due to the unfortunate"},{"line_number":1396,"context_line":"        # description:description test mapping which just happens to pass"},{"line_number":1397,"context_line":"        # because of a coding issue."},{"line_number":1398,"context_line":""},{"line_number":1399,"context_line":"        self.config_fixture.config("},{"line_number":1400,"context_line":"            group\u003d\u0027ldap\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"dae33548_d4d0ccf8","line":1397,"range":{"start_line":1397,"start_character":23,"end_line":1397,"end_character":36},"updated":"2016-02-17 12:01:07.000000000","message":"probably good to be more specific on what the issue is.  Is this TODO meant to indicate that we should fix it? If so, maybe we should raise a bug for it?","commit_id":"63e4f256d0fbbb9fc735cbe17b0ac9a6534ba7f2"},{"author":{"_account_id":18115,"name":"Rudolf Vriend","email":"rudolf.vriend@sap.com","username":"rudolf"},"change_message_id":"61e64163c83106c192ec953fdb03482c4f96e570","unresolved":false,"context_lines":[{"line_number":1394,"context_line":"        # TODO(rudolfvriend): the result of this test is misleading, since it"},{"line_number":1395,"context_line":"        # doesn\u0027t test the general mapping behavior due to the unfortunate"},{"line_number":1396,"context_line":"        # description:description test mapping which just happens to pass"},{"line_number":1397,"context_line":"        # because of a coding issue."},{"line_number":1398,"context_line":""},{"line_number":1399,"context_line":"        self.config_fixture.config("},{"line_number":1400,"context_line":"            group\u003d\u0027ldap\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"dae33548_5c57be25","line":1397,"in_reply_to":"dae33548_d4d0ccf8","updated":"2016-02-17 13:42:47.000000000","message":"The test somewhat suggests that it is testing general LDAP additional_attribute_mapping functionality for user.description. But it isn\u0027t and just happens to pass because of the unfortunate test mapping \u0027description:description\u0027. If you choose any non 1:1 mapping it will fail. See https://bugs.launchpad.net/keystone/+bug/1542417/comments/3 for details.\nTODO is meant in such a way, that the test probably should be made more robust (ie. use a \u0027my_description:description\u0027 mapping) in combination with adding general *_additional_attribute mapping support after LDAP reads (somewhere around https://github.com/openstack/keystone/blob/master/keystone/common/ldap/core.py#L1359). Or if the *_additional_attribute config is indeed meant to be for LDAP create only (which is not documented), dump the test when removing the other LDAP write artifacts.","commit_id":"63e4f256d0fbbb9fc735cbe17b0ac9a6534ba7f2"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"b0843c929b4c97206c12bcb2ae86d3811db8d9dc","unresolved":false,"context_lines":[{"line_number":1398,"context_line":""},{"line_number":1399,"context_line":"        self.config_fixture.config("},{"line_number":1400,"context_line":"            group\u003d\u0027ldap\u0027,"},{"line_number":1401,"context_line":"            user_additional_attribute_mapping\u003d[\u0027description:description\u0027])"},{"line_number":1402,"context_line":"        self.load_backends()"},{"line_number":1403,"context_line":""},{"line_number":1404,"context_line":"        user \u003d self.new_user_ref(domain_id\u003dCONF.identity.default_domain_id,"}],"source_content_type":"text/x-python","patch_set":7,"id":"5a5ae5dd_c89e7462","line":1401,"range":{"start_line":1401,"start_character":48,"end_line":1401,"end_character":71},"updated":"2016-02-08 11:38:47.000000000","message":"I\u0027d like to see a test that has the description in bot haha extra_attribute_mapping and explicitly in the new user)_description_attribute - to make sure such a duplicate setup is benign. The reason is that this will be the case if the admin sets up the new admin and forgets to remove the old one.","commit_id":"63e4f256d0fbbb9fc735cbe17b0ac9a6534ba7f2"},{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"dac0c6bea0f9f44c73f32c0ff38aeb77d0dec9e2","unresolved":false,"context_lines":[{"line_number":1398,"context_line":""},{"line_number":1399,"context_line":"        self.config_fixture.config("},{"line_number":1400,"context_line":"            group\u003d\u0027ldap\u0027,"},{"line_number":1401,"context_line":"            user_additional_attribute_mapping\u003d[\u0027description:description\u0027])"},{"line_number":1402,"context_line":"        self.load_backends()"},{"line_number":1403,"context_line":""},{"line_number":1404,"context_line":"        user \u003d self.new_user_ref(domain_id\u003dCONF.identity.default_domain_id,"}],"source_content_type":"text/x-python","patch_set":7,"id":"dae33548_b480a8f8","line":1401,"in_reply_to":"5a5ae5dd_792f143f","updated":"2016-02-17 12:01:07.000000000","message":"I didn\u0027t think LDAP write has been deprecated for user and groups? In addition, as far as I can tell, the existing extra_attribute_mapping IS used on get as well as create, so I think both will be evaluated (maybe I\u0027m misreading the code of the ldap calls in keystone/common/ldap/core.py). Further, Not quite sure of the relevance of bug 1336769...since the fix for this is a documentation fix to config.py.  I\u0027m sure I\u0027m just being dumb here and need more explanation!","commit_id":"63e4f256d0fbbb9fc735cbe17b0ac9a6534ba7f2"},{"author":{"_account_id":18115,"name":"Rudolf Vriend","email":"rudolf.vriend@sap.com","username":"rudolf"},"change_message_id":"f96d1613954ba1c168ac898c92d63363e5b2e190","unresolved":false,"context_lines":[{"line_number":1398,"context_line":""},{"line_number":1399,"context_line":"        self.config_fixture.config("},{"line_number":1400,"context_line":"            group\u003d\u0027ldap\u0027,"},{"line_number":1401,"context_line":"            user_additional_attribute_mapping\u003d[\u0027description:description\u0027])"},{"line_number":1402,"context_line":"        self.load_backends()"},{"line_number":1403,"context_line":""},{"line_number":1404,"context_line":"        user \u003d self.new_user_ref(domain_id\u003dCONF.identity.default_domain_id,"}],"source_content_type":"text/x-python","patch_set":7,"id":"5a5ae5dd_792f143f","line":1401,"in_reply_to":"5a5ae5dd_c89e7462","updated":"2016-02-08 12:37:31.000000000","message":"Not sure if I understand your comment. The current test covers  the case where \u0027user_addtitonal_attribute_mapping \u003d description:description\u0027 and \u0027user_description_attribute \u003d description\u0027.\nSetting \u0027user_additional_attribute_mapping\u0027 to anything else will be ignored because of bug 1336769. \nSo I see no potential negative interference with the new user_description_attribute extension, even if set to a conflicting mapping since only user_description_attribute will be evaulated after LDAP get.\nFixing 1336769 (and the test) makes no sense, since LDAP write has been deprecated.\nDid I mis anything?","commit_id":"63e4f256d0fbbb9fc735cbe17b0ac9a6534ba7f2"},{"author":{"_account_id":18115,"name":"Rudolf Vriend","email":"rudolf.vriend@sap.com","username":"rudolf"},"change_message_id":"61e64163c83106c192ec953fdb03482c4f96e570","unresolved":false,"context_lines":[{"line_number":1398,"context_line":""},{"line_number":1399,"context_line":"        self.config_fixture.config("},{"line_number":1400,"context_line":"            group\u003d\u0027ldap\u0027,"},{"line_number":1401,"context_line":"            user_additional_attribute_mapping\u003d[\u0027description:description\u0027])"},{"line_number":1402,"context_line":"        self.load_backends()"},{"line_number":1403,"context_line":""},{"line_number":1404,"context_line":"        user \u003d self.new_user_ref(domain_id\u003dCONF.identity.default_domain_id,"}],"source_content_type":"text/x-python","patch_set":7,"id":"dae33548_d70d69e9","line":1401,"in_reply_to":"dae33548_b480a8f8","updated":"2016-02-17 13:42:47.000000000","message":"At least that\u0027s how I interpreted https://github.com/openstack/keystone/blob/master/releasenotes/notes/deprecated-as-of-mitaka-8534e43fa40c1d09.yaml#L13.\n\nThe extra_attribute_mapping is used on get in the LDAP query. It is IGNORED in https://github.com/openstack/keystone/blob/master/keystone/common/ldap/core.py#L1323 (except for the \u0027special cases\u0027 where someone happens to use a 1:1 mapping of standard attribute names). Hence the mapping doesn\u0027t work in the cases where you actually want to map something not 1:1 on user retrieval from a LDAP backend (like mapping user.description to the LDAP backends displayName attribute).","commit_id":"63e4f256d0fbbb9fc735cbe17b0ac9a6534ba7f2"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"8aa7603b8a12cbdc61b65b17487132cfd792c900","unresolved":false,"context_lines":[{"line_number":1362,"context_line":"    def test_user_extra_attribute_mapping(self):"},{"line_number":1363,"context_line":"        self.config_fixture.config("},{"line_number":1364,"context_line":"            group\u003d\u0027ldap\u0027,"},{"line_number":1365,"context_line":"            user_additional_attribute_mapping\u003d[\u0027displayName:name\u0027])"},{"line_number":1366,"context_line":"        self.load_backends()"},{"line_number":1367,"context_line":"        user \u003d self.new_user_ref(name\u003d\u0027EXTRA_ATTRIBUTES\u0027,"},{"line_number":1368,"context_line":"                                 password\u003d\u0027extra\u0027,"}],"source_content_type":"text/x-python","patch_set":8,"id":"dae33548_27128709","line":1365,"updated":"2016-02-17 21:11:33.000000000","message":"that this test is changing means that the proposed change ot the code is not backwards compatible. What if deployments were using description:name? That needs to continue to work.","commit_id":"33dc70774c52b50bb0e89005090d05eb99bcda31"},{"author":{"_account_id":18115,"name":"Rudolf Vriend","email":"rudolf.vriend@sap.com","username":"rudolf"},"change_message_id":"c8c64a573bcbfcfbbfba537c5f4f1c50c84f90f2","unresolved":false,"context_lines":[{"line_number":1362,"context_line":"    def test_user_extra_attribute_mapping(self):"},{"line_number":1363,"context_line":"        self.config_fixture.config("},{"line_number":1364,"context_line":"            group\u003d\u0027ldap\u0027,"},{"line_number":1365,"context_line":"            user_additional_attribute_mapping\u003d[\u0027displayName:name\u0027])"},{"line_number":1366,"context_line":"        self.load_backends()"},{"line_number":1367,"context_line":"        user \u003d self.new_user_ref(name\u003d\u0027EXTRA_ATTRIBUTES\u0027,"},{"line_number":1368,"context_line":"                                 password\u003d\u0027extra\u0027,"}],"source_content_type":"text/x-python","patch_set":8,"id":"dae33548_86c89a56","line":1365,"in_reply_to":"dae33548_27128709","updated":"2016-02-18 10:49:39.000000000","message":"Done","commit_id":"33dc70774c52b50bb0e89005090d05eb99bcda31"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"c21efd509e2437e44198551ad55d5ef93f0fdfb9","unresolved":false,"context_lines":[{"line_number":1391,"context_line":"        # Given a mapping like description:description, the description is"},{"line_number":1392,"context_line":"        # returned."},{"line_number":1393,"context_line":""},{"line_number":1394,"context_line":"        # TODO(rudolfvriend): the result of this test is misleading, since it"},{"line_number":1395,"context_line":"        # doesn\u0027t test the general mapping behavior due to the unfortunate"},{"line_number":1396,"context_line":"        # description:description test mapping which just happens to pass"},{"line_number":1397,"context_line":"        # because of a coding issue."},{"line_number":1398,"context_line":""},{"line_number":1399,"context_line":"        self.config_fixture.config("},{"line_number":1400,"context_line":"            group\u003d\u0027ldap\u0027,"}],"source_content_type":"text/x-python","patch_set":8,"id":"dae33548_abd3f0d3","line":1397,"range":{"start_line":1394,"start_character":8,"end_line":1397,"end_character":36},"updated":"2016-02-18 07:03:33.000000000","message":"thank for agreeing to fix this test too ^_^","commit_id":"33dc70774c52b50bb0e89005090d05eb99bcda31"},{"author":{"_account_id":18115,"name":"Rudolf Vriend","email":"rudolf.vriend@sap.com","username":"rudolf"},"change_message_id":"c8c64a573bcbfcfbbfba537c5f4f1c50c84f90f2","unresolved":false,"context_lines":[{"line_number":1394,"context_line":"        # TODO(rudolfvriend): the result of this test is misleading, since it"},{"line_number":1395,"context_line":"        # doesn\u0027t test the general mapping behavior due to the unfortunate"},{"line_number":1396,"context_line":"        # description:description test mapping which just happens to pass"},{"line_number":1397,"context_line":"        # because of a coding issue."},{"line_number":1398,"context_line":""},{"line_number":1399,"context_line":"        self.config_fixture.config("},{"line_number":1400,"context_line":"            group\u003d\u0027ldap\u0027,"}],"source_content_type":"text/x-python","patch_set":8,"id":"dae33548_c6a4624c","line":1397,"in_reply_to":"dae33548_abd3f0d3","updated":"2016-02-18 10:49:39.000000000","message":"first I would need a hint if it is indeed expected behavior that *_additional_attributes is evaluated on CREATE only ;) Depending on the answer, we can either drop this test soon and  forget about it or invest in adding support for *_additional_attributes to https://github.com/openstack/keystone/blob/master/keystone/common/ldap/core.py#L1323 (but that would be another issue and is not directly related to this bugfix).","commit_id":"33dc70774c52b50bb0e89005090d05eb99bcda31"}],"releasenotes/notes/bug-1542417-d630b7886bb0b369.yaml":[{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"b0843c929b4c97206c12bcb2ae86d3811db8d9dc","unresolved":false,"context_lines":[{"line_number":10,"context_line":"    user retrieval from LDAP."},{"line_number":11,"context_line":"    If this is undesired behavior for your setup, please add \u0027description\u0027"},{"line_number":12,"context_line":"    to the \u0027user_attribute_ignore\u0027 LDAP driver config setting."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"    The default mapping of the description attribute is set to \u0027description\u0027."},{"line_number":15,"context_line":"    Please adjust the LDAP driver config setting \u0027user_description_attribute\u0027"},{"line_number":16,"context_line":"    if your LDAP uses a different attribute name (for instance to \u0027displayName\u0027"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"5a5ae5dd_28f868c2","line":13,"updated":"2016-02-08 11:38:47.000000000","message":"Presumably, today, if people want to map a description, it will be in the extra_attribute_mapping? Maybe we should advise them that they can take it out of there now.","commit_id":"63e4f256d0fbbb9fc735cbe17b0ac9a6534ba7f2"},{"author":{"_account_id":18115,"name":"Rudolf Vriend","email":"rudolf.vriend@sap.com","username":"rudolf"},"change_message_id":"f96d1613954ba1c168ac898c92d63363e5b2e190","unresolved":false,"context_lines":[{"line_number":10,"context_line":"    user retrieval from LDAP."},{"line_number":11,"context_line":"    If this is undesired behavior for your setup, please add \u0027description\u0027"},{"line_number":12,"context_line":"    to the \u0027user_attribute_ignore\u0027 LDAP driver config setting."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"    The default mapping of the description attribute is set to \u0027description\u0027."},{"line_number":15,"context_line":"    Please adjust the LDAP driver config setting \u0027user_description_attribute\u0027"},{"line_number":16,"context_line":"    if your LDAP uses a different attribute name (for instance to \u0027displayName\u0027"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"5a5ae5dd_fe7a0abc","line":13,"in_reply_to":"5a5ae5dd_28f868c2","updated":"2016-02-08 12:37:31.000000000","message":"Done","commit_id":"63e4f256d0fbbb9fc735cbe17b0ac9a6534ba7f2"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"c21efd509e2437e44198551ad55d5ef93f0fdfb9","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - \u003e"},{"line_number":4,"context_line":"    [`bug 1542417 \u003chttps://bugs.launchpad.net/keystone/+bug/1542417\u003e`_]"},{"line_number":5,"context_line":"    Added support for a \u0027user_description_attribute\u0027 mapping"},{"line_number":6,"context_line":"    to the LDAP driver configuration."},{"line_number":7,"context_line":"upgrade:"},{"line_number":8,"context_line":"  - \u003e"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"dae33548_0b065c51","line":5,"range":{"start_line":5,"start_character":24,"end_line":5,"end_character":52},"updated":"2016-02-18 07:03:33.000000000","message":"single quotes don\u0027t render into anything special when the docs are generated, i suggest you use a single backtick ( ` ) or double backtick instead","commit_id":"33dc70774c52b50bb0e89005090d05eb99bcda31"},{"author":{"_account_id":18115,"name":"Rudolf Vriend","email":"rudolf.vriend@sap.com","username":"rudolf"},"change_message_id":"c8c64a573bcbfcfbbfba537c5f4f1c50c84f90f2","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - \u003e"},{"line_number":4,"context_line":"    [`bug 1542417 \u003chttps://bugs.launchpad.net/keystone/+bug/1542417\u003e`_]"},{"line_number":5,"context_line":"    Added support for a \u0027user_description_attribute\u0027 mapping"},{"line_number":6,"context_line":"    to the LDAP driver configuration."},{"line_number":7,"context_line":"upgrade:"},{"line_number":8,"context_line":"  - \u003e"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"dae33548_11e326da","line":5,"in_reply_to":"dae33548_0b065c51","updated":"2016-02-18 10:49:39.000000000","message":"Done","commit_id":"33dc70774c52b50bb0e89005090d05eb99bcda31"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"99e07e37cbaa73e4b7466681801ea7c8bee81baf","unresolved":false,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - \u003e"},{"line_number":4,"context_line":"    [`bug 1542417 \u003chttps://bugs.launchpad.net/keystone/+bug/1542417\u003e`_]"},{"line_number":5,"context_line":"    Added support for a \"user_description_attribute\" mapping"},{"line_number":6,"context_line":"    to the LDAP driver configuration."},{"line_number":7,"context_line":"upgrade:"},{"line_number":8,"context_line":"  - \u003e"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"dae33548_b92b2581","line":5,"range":{"start_line":5,"start_character":24,"end_line":5,"end_character":52},"updated":"2016-02-18 17:30:41.000000000","message":"these still aren\u0027t backticks, it should be:\n\n  ``user_description_attribute``\n\nbut it\u0027s fine, before we release, i plan on cleaning up all the notes.","commit_id":"448778a51126a79676e9f9ffcc9eaf4c06288a73"}]}
