Projet

Général

Profil

0001-python3-remove-dict.iteritems-in-py-files-and-django.patch

Paul Marillonnet, 06 mars 2019 17:57

Télécharger (20,7 ko)

Voir les différences:

Subject: [PATCH] python3: remove dict.iteritems in py files and django
 templates (#31149)

 src/authentic2/api_views.py                          |  4 ++--
 src/authentic2/auth2_auth/auth2_ssl/util.py          |  2 +-
 src/authentic2/backends/ldap_backend.py              |  6 +++---
 src/authentic2/decorators.py                         |  2 +-
 src/authentic2/forms/widgets.py                      |  2 +-
 src/authentic2/idp/saml/common.py                    |  2 +-
 src/authentic2/management/commands/slapd-shell.py    |  4 ++--
 src/authentic2/manager/forms.py                      |  2 +-
 src/authentic2/saml/management/commands/mapping.py   | 10 +++++-----
 src/authentic2/saml/models.py                        |  6 +++---
 src/authentic2/saml/shibboleth/afp_parser.py         |  2 +-
 src/authentic2/templates/authentic2/accounts.html    |  2 +-
 src/authentic2/templates/authentic2/login.html       |  6 +++---
 src/authentic2/utils.py                              | 12 ++++++------
 src/authentic2_idp_cas/views.py                      |  2 +-
 src/authentic2_idp_oidc/__init__.py                  |  4 ++--
 .../management/commands/provision.py                 |  8 ++++----
 src/django_rbac/backends.py                          |  4 ++--
 tests/test_all.py                                    |  2 +-
 tests/test_idp_oidc.py                               |  4 ++--
 20 files changed, 43 insertions(+), 43 deletions(-)
src/authentic2/api_views.py
388 388
        is_verified = validated_data.pop('is_verified', {})
389 389
        self.check_perm('custom_user.add_user', validated_data.get('ou'))
390 390
        instance = super(BaseUserSerializer, self).create(validated_data)
391
        for key, value in attributes.iteritems():
391
        for key, value in attributes.items():
392 392
            if is_verified.get(key):
393 393
                setattr(instance.verified_attributes, key, value)
394 394
            else:
......
430 430
        if 'ou' in validated_data:
431 431
            self.check_perm('custom_user.change_user', validated_data.get('ou'))
432 432
        super(BaseUserSerializer, self).update(instance, validated_data)
433
        for key, value in attributes.iteritems():
433
        for key, value in attributes.items():
434 434
            if is_verified.get(key):
435 435
                setattr(instance.verified_attributes, key, value)
436 436
            else:
src/authentic2/auth2_auth/auth2_ssl/util.py
52 52
        pass
53 53

  
54 54
    def read_env(self, env):
55
        for attr, keys in X509_KEYS.iteritems():
55
        for attr, keys in X509_KEYS.items():
56 56
            if isinstance(keys, six.string_types):
57 57
                keys = [keys]
58 58
            for key in keys:
src/authentic2/backends/ldap_backend.py
205 205
    elif isinstance(d, (list, tuple)):
206 206
        return d.__class__(map_text(x) for x in d)
207 207
    elif isinstance(d, dict):
208
        return {map_text(k): map_text(v) for k, v in d.iteritems()}
208
        return {map_text(k): map_text(v) for k, v in d.items()}
209 209
    raise NotImplementedError
210 210

  
211 211

  
......
932 932
            return None
933 933
        attribute_map = cls.normalize_ldap_results(results[0][1])
934 934
        # add mandatory attributes
935
        for key, mandatory_values in mandatory_attributes_values.iteritems():
935
        for key, mandatory_values in mandatory_attributes_values.items():
936 936
            key = force_text(key)
937 937
            old = attribute_map.setdefault(key, [])
938 938
            new = set(old) | set(mandatory_values)
......
1184 1184
        if not block['url']:
1185 1185
            raise ImproperlyConfigured("block['url'] must contain at least one url")
1186 1186
        for url in map_text(block['url']):
1187
            for key, value in block['global_ldap_options'].iteritems():
1187
            for key, value in block['global_ldap_options'].items():
1188 1188
                ldap.set_option(key, value)
1189 1189
            conn = LDAPObject(url)
1190 1190
            if block['timeout'] > 0:
src/authentic2/decorators.py
166 166
                continue
167 167
            parts.append(unicode(arg))
168 168

  
169
        for kw, arg in sorted(kwargs.iteritems(), key=lambda x: x[0]):
169
        for kw, arg in sorted(kwargs.items(), key=lambda x: x[0]):
170 170
            if kw not in self.kwargs:
171 171
                continue
172 172
            parts.append(u'%s-%s' % (unicode(kw), unicode(arg)))
src/authentic2/forms/widgets.py
102 102

  
103 103
    def get_format(self):
104 104
        format = get_format(self.format_name)[0]
105
        for py, js in DATE_FORMAT_PY_JS_MAPPING.iteritems():
105
        for py, js in DATE_FORMAT_PY_JS_MAPPING.items():
106 106
            format = format.replace(py, js)
107 107
        return format
108 108

  
src/authentic2/idp/saml/common.py
12 12
    if not login_url:
13 13
        login_url = settings.LOGIN_URL
14 14
    data = { redirect_field_name: next }
15
    for k, v in other_keys.iteritems():
15
    for k, v in other_keys.items():
16 16
        data[k] = v
17 17
    return HttpResponseRedirect('%s?%s' % (login_url, urlencode(data)))
18 18

  
src/authentic2/management/commands/slapd-shell.py
43 43
                    print 'info: invalid filter'
44 44
                    print
45 45
                    return
46
                for user_attribute, ldap_attribute in MAPPING.iteritems():
46
                for user_attribute, ldap_attribute in MAPPING.items():
47 47
                    if ldap_attribute == m.group(1):
48 48
                        break
49 49
                else:
......
68 68
                qs = qs.filter(**{user_attribute: value.decode('utf-8')})
69 69
            for user in qs:
70 70
                o = {}
71
                for user_attribute, ldap_attribute in MAPPING.iteritems():
71
                for user_attribute, ldap_attribute in MAPPING.items():
72 72
                    o[ldap_attribute] = [unicode(getattr(user, user_attribute)).encode('utf-8')]
73 73
                o['objectClass'] = ['inetOrgPerson']
74 74
                dn = 'uid=%s,%s' % (escape_dn_chars(o['uid'][0]), attrs['suffix'])
src/authentic2/manager/forms.py
77 77
    def __init__(self, *args, **kwargs):
78 78
        super(LimitQuerysetFormMixin, self).__init__(*args, **kwargs)
79 79
        if self.request and not self.request.user.is_anonymous():
80
            for name, field in self.fields.iteritems():
80
            for name, field in self.fields.items():
81 81
                qs = getattr(field, 'queryset', None)
82 82
                if not qs:
83 83
                    continue
src/authentic2/saml/management/commands/mapping.py
21 21

  
22 22

  
23 23
def get_def_name_from_oid(oid):
24
    for key, value in ATTRIBUTE_MAPPING.iteritems():
24
    for key, value in ATTRIBUTE_MAPPING.items():
25 25
        if value['oid'] == oid:
26 26
            return key
27 27

  
28 28

  
29 29
def get_definition_from_oid(oid):
30
    for key, value in ATTRIBUTE_MAPPING.iteritems():
30
    for key, value in ATTRIBUTE_MAPPING.items():
31 31
        if value['oid'] == oid:
32 32
            return value
33 33

  
34 34

  
35 35
def get_full_definition(name):
36
    for key, value in ATTRIBUTE_MAPPING.iteritems():
36
    for key, value in ATTRIBUTE_MAPPING.items():
37 37
        if key == name:
38 38
            return value
39 39

  
40 40

  
41 41
def get_definition_from_alias(alias):
42
    for key, value in ATTRIBUTE_MAPPING.iteritems():
42
    for key, value in ATTRIBUTE_MAPPING.items():
43 43
        if 'alias' in value and alias in value['alias']:
44 44
            return value
45 45

  
46 46

  
47 47
def get_def_name_from_alias(alias):
48
    for key, value in ATTRIBUTE_MAPPING.iteritems():
48
    for key, value in ATTRIBUTE_MAPPING.items():
49 49
        if 'alias' in value and alias in value['alias']:
50 50
            return key
51 51

  
src/authentic2/saml/models.py
112 112
}
113 113

  
114 114
NAME_ID_FORMATS_CHOICES = \
115
        tuple([(x, y['caption']) for x, y in NAME_ID_FORMATS.iteritems()])
115
        tuple([(x, y['caption']) for x, y in NAME_ID_FORMATS.items()])
116 116

  
117 117
ACCEPTED_NAME_ID_FORMAT_LENGTH = \
118
        sum([len(x) for x, y in NAME_ID_FORMATS.iteritems()]) + \
118
        sum([len(x) for x, y in NAME_ID_FORMATS.items()]) + \
119 119
        len(NAME_ID_FORMATS) - 1
120 120

  
121 121
def saml2_urn_to_nidformat(urn, accepted=()):
122
    for x, y in NAME_ID_FORMATS.iteritems():
122
    for x, y in NAME_ID_FORMATS.items():
123 123
        if accepted and not x in accepted:
124 124
            continue
125 125
        if y['samlv2'] == urn:
src/authentic2/saml/shibboleth/afp_parser.py
64 64
if __name__ == '__main__':
65 65
    import sys
66 66

  
67
    for key, values in parse_attribute_filters_file(sys.argv[1]).iteritems():
67
    for key, values in parse_attribute_filters_file(sys.argv[1]).items():
68 68
        print '-', key, ':'
69 69
        for value in values:
70 70
            print ' *', value
src/authentic2/templates/authentic2/accounts.html
55 55
                <form method="post" action="{{ federation.url }}">
56 56
                  {% csrf_token %}
57 57
                  <span class="name">{{ federation.name }}</span>
58
                  {% for key, value in federation.hidden_inputs.iteritems %}
58
                  {% for key, value in federation.hidden_inputs.items %}
59 59
                    <input type="hidden" name="{{ key }}" value="{{ value }}"/>
60 60
                  {% endfor %}
61 61
                  {% for button_name, button_label in federation.buttons %}
src/authentic2/templates/authentic2/login.html
16 16

  
17 17
{% block content %}
18 18
  <div id="a2-login-forms">
19
    {% for id, login_block in blocks.iteritems %}
19
    {% for id, login_block in blocks.items %}
20 20
      {% if not login_block.is_hidden %}
21 21
        <span id="css-tab{{ forloop.counter }}"></span>
22 22
      {% endif %}
23 23
    {% endfor %}
24 24

  
25 25
    {% if blocks|length != 1 %}
26
      {% for id, login_block in blocks.iteritems %}
26
      {% for id, login_block in blocks.items %}
27 27
        {% if not login_block.is_hidden %}
28 28
          <a class="css-tab-link css-tab{{ forloop.counter }} {% if forloop.first %}css-tab-default{% endif %}" href="#css-tab{{ forloop.counter }}">
29 29
              {{ login_block.name }}
......
32 32
      {% endfor %}
33 33
    {% endif %}
34 34

  
35
    {% for id, login_block in blocks.iteritems %}
35
    {% for id, login_block in blocks.items %}
36 36
      <div class="css-tab-content css-tab{{ forloop.counter }} {% if forloop.first %}css-tab-default{% endif %}">
37 37
        {{ login_block.content|safe }}
38 38
      </div>
src/authentic2/utils.py
278 278
    url_params = QueryDict(query_string=query_string, mutable=True)
279 279
    if keep_params:
280 280
        assert request is not None, 'missing request'
281
        for key, value in request.GET.iteritems():
281
        for key, value in request.GET.items():
282 282
            if exclude and key in exclude:
283 283
                continue
284 284
            if include and key not in include:
285 285
                continue
286 286
            url_params.setlist(key, request.GET.getlist(key))
287 287
    if params:
288
        for key, value in params.iteritems():
288
        for key, value in params.items():
289 289
            if value is None:
290 290
                url_params.pop(key, None)
291 291
            elif isinstance(value, (tuple, list)):
......
293 293
            else:
294 294
                url_params[key] = value
295 295
    if append:
296
        for key, value in append.iteritems():
296
        for key, value in append.items():
297 297
            if value is None:
298 298
                continue
299 299
            elif isinstance(value, (tuple, list)):
......
779 779

  
780 780
def lower_keys(d):
781 781
    '''Convert all keys in dictionary d to lowercase'''
782
    return dict((key.lower(), value) for key, value in d.iteritems())
782
    return dict((key.lower(), value) for key, value in d.items())
783 783

  
784 784

  
785 785
def to_dict_of_set(d):
786 786
    '''Convert a dictionary of sequence into a dictionary of sets'''
787
    return dict((k, set(v)) for k, v in d.iteritems())
787
    return dict((k, set(v)) for k, v in d.items())
788 788

  
789 789

  
790 790
def switch_user(request, new_user):
......
844 844

  
845 845
def utf8_encode(v):
846 846
    if isinstance(v, dict):
847
        return dict((utf8_encode(a), utf8_encode(b)) for a, b in v.iteritems())
847
        return dict((utf8_encode(a), utf8_encode(b)) for a, b in v.items())
848 848
    if isinstance(v, (list, tuple)):
849 849
        return type(v)(utf8_encode(a) for a in v)
850 850
    if isinstance(v, unicode):
src/authentic2_idp_cas/views.py
294 294
                values[slug].update(normalized)
295 295
        if values:
296 296
            attributes_elt = ET.SubElement(success, ATTRIBUTES_ELT)
297
        for key, values in values.iteritems():
297
        for key, values in values.items():
298 298
            for value in values:
299 299
                attribute_elt = ET.SubElement(attributes_elt, '{%s}%s' % (CAS_NAMESPACE, key))
300 300
                attribute_elt.text = unicode(value)
src/authentic2_idp_oidc/__init__.py
19 19
        fragments = []
20 20

  
21 21
        oidc_sessions = get_oidc_sessions(request)
22
        for key, value in oidc_sessions.iteritems():
22
        for key, value in oidc_sessions.items():
23 23
            if 'frontchannel_logout_uri' not in value:
24 24
                continue
25 25
            ctx = {
......
31 31
                render_to_string(
32 32
                    'authentic2_idp_oidc/logout_fragment.html',
33 33
                    ctx))
34
        return fragments
34
        return fragments
src/authentic2_provisionning_ldap/management/commands/provision.py
114 114
                ctx['user'] = user
115 115
                ctx = get_attributes(ctx)
116 116
                ldap_attributes = {}
117
                for ldap_attribute, a2_attributes in attribute_mapping.iteritems():
117
                for ldap_attribute, a2_attributes in attribute_mapping.items():
118 118
                    if not isinstance(a2_attributes, (tuple, list)):
119 119
                        a2_attributes = [a2_attributes]
120 120
                    for a2_attribute in a2_attributes:
121 121
                        self.add_values(ldap_attributes, ldap_attribute, ctx.get(a2_attribute))
122
                for ldap_attribute, values in static_attributes.iteritems():
122
                for ldap_attribute, values in static_attributes.items():
123 123
                    self.add_values(ldap_attributes, ldap_attribute, values)
124
                for ldap_attribute, fmt_tpls in format_mapping.iteritems():
124
                for ldap_attribute, fmt_tpls in format_mapping.items():
125 125
                    for fmt_tpl in fmt_tpls:
126 126
                        self.add_values(ldap_attributes, ldap_attribute,
127 127
                                [fmt_tpl.format(**ctx)])
......
146 146
                    del ldap_users[dn]
147 147
                    continue
148 148
                existing_dn.add(dn)
149
            for dn, ldap_attributes in ldap_users.iteritems():
149
            for dn, ldap_attributes in ldap_users.items():
150 150
                if dn in existing_dn:
151 151
                    modlist = []
152 152
                    for key, values in ldap_attributes:
src/django_rbac/backends.py
148 148
        cache = self.get_permission_cache(user_obj)
149 149
        if perm_or_perms & cache.get('__all__', set()):
150 150
            return True
151
        for key, value in cache.iteritems():
151
        for key, value in cache.items():
152 152
            if isinstance(value, bool):
153 153
                continue
154 154
            elif key == '__all__':
......
181 181
        if perm_or_perms & cache.get('__all__', set()):
182 182
            return True
183 183
        q = []
184
        for key, value in cache.iteritems():
184
        for key, value in cache.items():
185 185
            if isinstance(value, bool):
186 186
                continue
187 187
            elif key == '__all__':
tests/test_all.py
247 247
                  'national_number': 'xx20153566342yy'}
248 248
        if form.prefix:
249 249
            kwargs = dict(('%s-%s' % (form.prefix, k), v)
250
                          for k, v in kwargs.iteritems())
250
                          for k, v in kwargs.items())
251 251

  
252 252
        response = self.client.post(reverse('profile_edit'), kwargs)
253 253

  
tests/test_idp_oidc.py
118 118
    response.form.set('ou', get_default_ou().pk)
119 119
    response.form.set('unauthorized_url', 'https://example.com/southpark/')
120 120
    response.form.set('redirect_uris', 'https://example.com/callbac%C3%A9')
121
    for key, value in request.param.iteritems():
121
    for key, value in request.param.items():
122 122
        response.form.set(key, value)
123 123
    response = response.form.submit().follow()
124 124
    assert OIDCClient.objects.count() == 1
......
324 324
    location = urlparse.urlparse(response['Location'])
325 325
    query = location.fragment if fragment else location.query
326 326
    query = urlparse.parse_qs(query)
327
    for key, value in kwargs.iteritems():
327
    for key, value in kwargs.items():
328 328
        if value is None:
329 329
            assert key in query
330 330
        elif isinstance(value, list):
331
-