Metadata-Version: 2.0
Name: deezer-python
Version: 0.4.0
Summary: A friendly wrapper library for the Deezer API
Home-page: https://github.com/browniebroke/deezer-python
Author: Bruno Alla
Author-email: alla.brunoo@gmail.com
License: MIT
Download-URL: https://github.com/browniebroke/deezer-python/tarball/0.4.0
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Natural Language :: English
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.2
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Dist: tornado

deezer-python
=============
|build| |coverage| |docs| |pypi| |landscape|

A friendly wrapper around the `Deezer API`_.

Installation
------------

The package is published on the `Python index <https://pypi.python.org/pypi/deezer-python/>`_ simply run the following:

::

    pip install deezer-python

And that's it!

Basic Use
---------

So far you can only retrieve the data for the public objects, for which no login is required.
The objects are translated to python resources, which are basically python objects encapsulating 
the json dictionary returned by the API.

.. code-block:: python

    >>> client = deezer.Client()
    >>> client.get_album(12).title
    u'Monkey Business'

You also can use AsyncClient with tornado.

.. code-block:: python

    >>> from tornado.gen import coroutine
    >>> from tornado.ioloop import IOLoop
    >>> from deezer import AsyncClient
    >>>
    >>>
    >>> @coroutine
    ... def main():
    ...     client = AsyncClient()
    ...     album = yield client.get_album(12)
    ...     print(album.title)
    ...
    >>> IOLoop.instance().run_sync(main)
    Monkey Business

See the whole API on the `Sphinx`_ generated `documentation`_.

Authentication
--------------

Not supported by this package. There are excellent other python modules to
handle that. There is the excellent `Python Social Auth`_, it doesn't support
Deezer, but it's very easily extensible to support it, and if you do write a
back-end for it, I'd encourage you to submit a pull request there.

Running Tests
-------------

Tests are run using `Tox`_, that you would need to have installed in
your environment. Then simply run:

::

    % tox [-e py35]
    py35 runtests: commands[0] | python -m coverage run -m unittest discover
    ................................
    ----------------------------------------------------------------------
    Ran 32 tests in 1.319s

    OK
    py35 runtests: commands[1] | python /Users/Bruno/Documents/Workspace/deezer-python/run_coveralls.py
    _____________ summary _____________
    py35: commands succeeded
    congratulations :)


Create a New Release
--------------------

This project is configured to use `bumpversion
<https://github.com/peritus/bumpversion>`_, only prerequisite
is to have it installed. When the tests have passed and you're happy with the code base, just need to run::

  $ bumpversion [major|minor|patch]

Depending on which digit of the version needs to be updated, and then push with tags::

  $ git push --tags

Travis will take care of creating the release, and upload it to PyPi.


.. |build| image:: https://travis-ci.org/browniebroke/deezer-python.svg
    :target: https://travis-ci.org/browniebroke/deezer-python
    :alt: Build status
.. |coverage| image:: https://codecov.io/gh/browniebroke/deezer-python/branch/master/graph/badge.svg
    :target: https://codecov.io/gh/browniebroke/deezer-python
    :alt: Test coverage percentage
.. |docs| image:: https://readthedocs.org/projects/deezer-python/badge/?version=latest
    :target: https://readthedocs.org/projects/deezer-python/?badge=latest
    :alt: Documentation Status
.. |pypi| image:: https://badge.fury.io/py/deezer-python.svg
    :target: http://badge.fury.io/py/deezer-python
    :alt: PyPi Status
.. |landscape| image:: https://landscape.io/github/browniebroke/deezer-python/master/landscape.svg?style=flat
   :target: https://landscape.io/github/browniebroke/deezer-python/master
   :alt: Code Health    
.. _Deezer API: http://developers.deezer.com/api
.. _Sphinx: http://sphinx-doc.org/
.. _documentation: http://deezer-python.readthedocs.org/
.. _Tox: http://tox.readthedocs.io/en/stable/index.html
.. _Python Social Auth: https://github.com/omab/python-social-auth


.. :changelog:

History
=======

Unreleased
----------

0.4.0 (2016-12-08)
------------------

- Add the `chart`_ resource. Thanks to `Pascal`_.
- Documentation updates regarding changelog and list of authors.

0.3.0 (2016-11-09)
------------------

- Enriching the API for resources to get related resources as iterators.
  Thanks to `Pascal`_.

0.2.3 (2016-11-07)
------------------

- Drop support for Python 3.2. It should still work, but we are not testing
  it anymore, as this version as reached end of life.

0.2.2 (2015-09-14)
------------------

- Python 3.5 support
- Various doc updates

0.2.0 (2015-01-31)
------------------

- Enriching the API for resources to get artists for a genre,
  top tracks of an artist, etc... Thanks to `Misuzu`_.

0.1.0 (2014-11-22)
------------------

- Initial release.

.. _Misuzu: https://github.com/misuzu
.. _Pascal: https://github.com/pfouque
.. _chart: https://developers.deezer.com/api/chart


Credits
=======

“deezer-python” is written and maintained by Bruno Alla.


Contributors
------------

Other people contributed to this project:

- `Misuzu <https://github.com/misuzu>`_
- `Pascal <https://github.com/pfouque>`_

Please add yourself here alphabetically when you submit your first pull request.


