===================
pyspotify 2.x is a full rewrite of pyspotify. While pyspotify 1.x is a
CPython C extension, pyspotify 2.x uses `CFFI
<https://cffi.readthedocs.io/>`__ to wrap the libspotify C library. It works
on CPython 2.7 and 3.2+, as well as PyPy 2.6+. pyspotify 2.0 makes 100% of the
libspotify 12.1.51 API available from Python, going far beyond the API coverage
of pyspotify 1.x.
The following are the changes since pyspotify 2.0.0b5.
Dependency changes
------------------
- Require cffi >= 1.0. (Fixes: :issue:`133`, :issue:`160`)
- If you're using pyspotify with PyPy you need version 2.6 or newer as older
versions of PyPy come with a too old cffi version. For PyPy3, you'll probably
need the yet to be released PyPy3 2.5.
ALSA sink
---------
- Changed the :class:`spotify.AlsaSink` keyword argument ``card`` to ``device``
to align with pyalsaaudio 0.8.
- Updated to work with pyalsaaudio 0.8 which changed the signature of
:class:`alsaaudio.PCM`. :class:`spotify.AlsaSink` still works with
pyalsaaudio 0.7, but 0.8 is recommended at least for Python 3 users, as it
fixes a memory leak present on Python 3 (see :issue:`127`). (Fixes:
:issue:`162`)