12345678910111213141516171819202122232425262728 |
- """
- Helper functions, constants, and types to aid with Python v2.7 - v3.x and
- PyMongo v2.7 - v3.x support.
- """
- import pymongo
- import six
- IS_PYMONGO_3 = pymongo.version_tuple[0] >= 3
- # six.BytesIO resolves to StringIO.StringIO in Py2 and io.BytesIO in Py3.
- StringIO = six.BytesIO
- # Additionally for Py2, try to use the faster cStringIO, if available
- if not six.PY3:
- try:
- import cStringIO
- except ImportError:
- pass
- else:
- StringIO = cStringIO.StringIO
- if six.PY3:
- from collections.abc import Hashable
- else:
- # raises DeprecationWarnings in Python >=3.7
- from collections import Hashable
|