#36098: TypeError: object of type 'IPv6Address' has no len() when running tests
with GeoDjango
-------------------------------------+-------------------------------------
               Reporter:  Natalia    |          Owner:  Natalia Bidart
  Bidart                             |
                   Type:  Bug        |         Status:  assigned
              Component:  GIS        |        Version:  5.1
               Severity:  Release    |       Keywords:
  blocker                            |
           Triage Stage:             |      Has patch:  0
  Unreviewed                         |
    Needs documentation:  0          |    Needs tests:  0
Patch needs improvement:  0          |  Easy pickings:  0
                  UI/UX:  0          |
-------------------------------------+-------------------------------------
 Following the security release for 5.1.5, 5.0.11 and 4.2.18, there seems
 to be an issue with the GeoDjango tests:
 {{{
 Traceback (most recent call last):
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/core/validators.py", line 305, in
 validate_ipv4_address
     ipaddress.IPv4Address(value)
   File "/usr/lib/python3.10/ipaddress.py", line 1305, in __init__
     self._ip = self._ip_int_from_string(addr_str)
   File "/usr/lib/python3.10/ipaddress.py", line 1192, in
 _ip_int_from_string
     raise AddressValueError("Expected 4 octets in %r" % ip_str)
 ipaddress.AddressValueError: Expected 4 octets in '::ffff:27d:a0d8'

 During handling of the above exception, another exception occurred:

 Traceback (most recent call last):
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/core/validators.py", line 325, in
 validate_ipv46_address
     validate_ipv4_address(value)
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/core/validators.py", line 307, in
 validate_ipv4_address
     raise ValidationError(
 django.core.exceptions.ValidationError: ['Enter a valid IPv4 address.']

 During handling of the above exception, another exception occurred:

 Traceback (most recent call last):
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/tests/gis_tests/test_geoip2.py", line 131, in
 test_country
     self.assertEqual(g.country(query), self.expected_country)
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/contrib/gis/geoip2.py", line 207, in country
     response = self._query(query, require_city=False)
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/contrib/gis/geoip2.py", line 157, in _query
     validate_ipv46_address(query)
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/core/validators.py", line 328, in
 validate_ipv46_address
     validate_ipv6_address(value)
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/core/validators.py", line 315, in
 validate_ipv6_address
     if not is_valid_ipv6_address(value):
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/utils/ipv6.py", line 59, in
 is_valid_ipv6_address
     _ipv6_address_from_str(ip_str)
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/utils/ipv6.py", line 10, in
 _ipv6_address_from_str
     if len(ip_str) > max_length:
 TypeError: object of type 'IPv6Address' has no len()

 ======================================================================
 ERROR [0.003s]: test_country_using_city_database
 (gis_tests.test_geoip2.GeoIP2Test) (query=IPv6Address('::ffff:27d:a0d8'))
 ----------------------------------------------------------------------
 Traceback (most recent call last):
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/core/validators.py", line 305, in
 validate_ipv4_address
     ipaddress.IPv4Address(value)
   File "/usr/lib/python3.10/ipaddress.py", line 1305, in __init__
     self._ip = self._ip_int_from_string(addr_str)
   File "/usr/lib/python3.10/ipaddress.py", line 1192, in
 _ip_int_from_string
     raise AddressValueError("Expected 4 octets in %r" % ip_str)
 ipaddress.AddressValueError: Expected 4 octets in '::ffff:27d:a0d8'

 During handling of the above exception, another exception occurred:

 Traceback (most recent call last):
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/core/validators.py", line 325, in
 validate_ipv46_address
     validate_ipv4_address(value)
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/core/validators.py", line 307, in
 validate_ipv4_address
     raise ValidationError(
 django.core.exceptions.ValidationError: ['Enter a valid IPv4 address.']

 During handling of the above exception, another exception occurred:

 Traceback (most recent call last):
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/tests/gis_tests/test_geoip2.py", line 145, in
 test_country_using_city_database
     self.assertEqual(g.country(query), self.expected_country)
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/contrib/gis/geoip2.py", line 207, in country
     response = self._query(query, require_city=False)
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/contrib/gis/geoip2.py", line 157, in _query
     validate_ipv46_address(query)
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/core/validators.py", line 328, in
 validate_ipv46_address
     validate_ipv6_address(value)
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/core/validators.py", line 315, in
 validate_ipv6_address
     if not is_valid_ipv6_address(value):
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/utils/ipv6.py", line 59, in
 is_valid_ipv6_address
     _ipv6_address_from_str(ip_str)
   File "/home/jenkins/workspace/pull-requests-
 focal/database/mysql_gis/label/focal-
 pr/python/python3.10/django/utils/ipv6.py", line 10, in
 _ipv6_address_from_str
     if len(ip_str) > max_length:
 TypeError: object of type 'IPv6Address' has no len()
 }}}
-- 
Ticket URL: <https://code.djangoproject.com/ticket/36098>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/django-updates/0107019466d5bf9f-91f980f7-fd46-4c5a-b9a7-01fe81386a1c-000000%40eu-central-1.amazonses.com.

Reply via email to