** Description changed: + + SRU Template + + [Impact] + + * django-python is unable to use ipv6 formatted ipv4 addresses. + For example, Addresses of the form "::ffff:169.254.169.254" are perfectly valid, but not supported. This package is a dependency of maas and openstack among others, thus will limit deployments. + + * The upstream fix is available, simple, and provides an updated + testcase to cover and regress-test. + + [Test Case] + + * The updated unit test case is probably the simplest way to verify. + * See tests/README.rst: Updated test case will fail without the accompanied fix. + + $ PYTHONPATH=..:$PYTHONPATH ./runtests.py requests + Testing against Django installed in '/home/jgrimm/work/sru/django-python/python-django-1.8.7/django' + Creating test database for alias 'default'... + Creating test database for alias 'other'... + ........................................... + ---------------------------------------------------------------------- + PYTHONPATH=..:$PYTHONPATH ./runtests.py requests + Testing against Django installed in '/home/jgrimm/work/sru/django-python/python-django-1.8.7/django' + Creating test database for alias 'default'... + Creating test database for alias 'other'... + ........................................... + ---------------------------------------------------------------------- + Ran 43 tests in 0.016s + OK + + [Regression Potential] + + * Low potential for regression as host regex becomes more permissive. + * Full unit test additionally run to ensure no new failures. + + [Other Info] + + * Backported from upstream with no modifications required. + + + + -- original bug description -- + Addresses of the form "::ffff:169.254.169.254" are perfectly valid, but not supported by django's http.request. The following diff addresses the problem. --- django/http/request.py 2015-11-24 10:21:15.000000000 -0700 +++ django/http/request.py.new 2016-08-10 13:12:17.459998895 -0600 @@ -23,7 +23,7 @@ - ) - - RAISE_ERROR = object() + ) + + RAISE_ERROR = object() -host_validation_re = re.compile(r"^([a-z0-9.-]+|\[[a-f0-9]*:[a-f0-9:]+\])(:\d+)?$") +host_validation_re = re.compile(r"^([a-z0-9.-]+|\[[a-f0-9]*:[a-f0-9\.:]+\])(:\d+)?$") - - - class UnreadablePostError(IOError): + + class UnreadablePostError(IOError):
** Changed in: python-django (Ubuntu Xenial) Importance: Undecided => Low ** Changed in: python-django (Ubuntu Xenial) Importance: Low => Medium -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1611923 Title: http.request does not support ipv6-formatted ipv4 addresses To manage notifications about this bug go to: https://bugs.launchpad.net/django/+bug/1611923/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
