wand.compat
— Compatibility layer¶
This module provides several subtle things to support multiple Python versions (2.6, 2.7, 3.3+) and VM implementations (CPython, PyPy).
- wand.compat.abc = <module 'collections.abc' from '/home/user/.pyenv/versions/3.7.17/lib/python3.7/collections/abc.py'>¶
(
module
) Module containing abstract base classes.collections
in Python 2 andcollections.abc
in Python 3.
- wand.compat.binary(string, var=None)¶
Makes
string
tostr
in Python 2. Makesstring
tobytes
in Python 3.- Parameters:
string (
bytes
,str
,unicode
) – a string to cast it tobinary_type
var (
str
) – an optional variable name to be used for error message
- wand.compat.binary_type¶
(
type
) Type for representing binary data.str
in Python 2 andbytes
in Python 3.
- wand.compat.encode_filename(filename)¶
If
filename
is atext_type
, encode it tobinary_type
according to filesystem’s default encoding.Changed in version 0.5.3: Added support for PEP-519 https://github.com/emcconville/wand/pull/339