DO NOT MERGE - qt-qpr1-dev-plus-aosp-without-vendor@5915889 into stage-aosp-master
am: 917fd112a2

Change-Id: Ief1a2a709a2eb1eb2a682b2125ad25b371942715
tree: e9fb14bd73b8f85c9c77b77ad76e7870a356acf0
  1. .dockerignore
  2. .gitignore
  3. .travis.yml
  4. Android.bp
  5. LICENSE
  6. MANIFEST.in
  7. METADATA
  8. MODULE_LICENSE_PSF
  9. Makefile
  10. OTHER_BACKPORTS.md
  11. README.md
  12. TEST_MAPPING
  13. ipaddress.py
  14. setup.cfg
  15. setup.py
  16. test-python2.6.Dockerfile
  17. test-python2.7.Dockerfile
  18. test-python3.2.Dockerfile
  19. test-python3.3.Dockerfile
  20. test_ipaddress.py
README.md

ipaddress

Python 3.3+'s ipaddress for Python 2.6, 2.7, 3.2.

This repository tracks the latest version from cpython, e.g. ipaddress from cpython 3.8 as of writing.

Note that just like in Python 3.3+ you must use character strings and not byte strings for textual IP address representations:

>>> from __future__ import unicode_literals
>>> ipaddress.ip_address('1.2.3.4')
IPv4Address(u'1.2.3.4')

or

>>> ipaddress.ip_address(u'1.2.3.4')
IPv4Address(u'1.2.3.4')

but not:

>>> ipaddress.ip_address(b'1.2.3.4')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "ipaddress.py", line 163, in ip_address
    ' a unicode object?' % address)
ipaddress.AddressValueError: '1.2.3.4' does not appear to be an IPv4 or IPv6 address. Did you pass in a bytes (str in Python 2) instead of a unicode object?