Code Monkey home page Code Monkey logo

python-mpd2's Introduction

python-mpd2

Build Status

python-mpd2 is a Python library which provides a client interface for the Music Player Daemon.

Difference with python-mpd

python-mpd2 is a fork of python-mpd. While 0.4.x was backwards compatible with python-mpd, starting with 0.5 provides enhanced features which are NOT backward compatibles with the original python-mpd package. (see PORTING.txt for more information)

The following features were added:

  • Python 3 support (but you need at least Python 3.6)
  • asyncio/twisted support
  • support for the client-to-client protocol
  • support for new commands from MPD (seekcur, prio, prioid, config, searchadd, searchaddpl, listfiles, rangeid, addtagid, cleartagid, mount, umount, listmounts, listneighbors)
  • remove deprecated commands (volume)
  • explicitly declared MPD commands (which is handy when using for example IPython)
  • a test suite
  • API documentation to add new commands (see Future Compatible)
  • support for Unicode strings in all commands (optionally in python2, default in python3 - see Unicode Handling)
  • configureable timeouts
  • support for logging
  • improved support for sticker
  • improved support for ranges

Getting the latest source code

If you would like to use the latest source code, you can grab a copy of the development version from Git by running the command:

$ git clone https://github.com/Mic92/python-mpd2.git

Getting the latest release

The latest stable release of python-mpd2 can be found on PyPI

PyPI:

$ pip install python-mpd2

Installation in Linux/BSD distributions

Until Linux distributions adapt this package, here are some ready to use packages to test your applications:

See INSTALL.rst

Installing from source

To install python-mpd2 from source, simply run the command:

$ python setup.py install

You can use the --help switch to setup.py for a complete list of commands and their options. See the Installing Python Modules document for more details.

Documentation

Documentation

Getting Started

Command Reference

Examples

Testing

Just run:

$ python setup.py test

This will install Tox. Tox will take care of testing against all the supported Python versions (at least available) on our computer, with the required dependencies

If you have nix, you can also use the provided default.nix to bring all supported python versions in scope using nix-shell. In that case run tox directly instead of using setup.py:

$ nix-shell --command 'tox'

Building Documentation

Install Sphinx:

$ easy_install -U Sphinx

Change to the source directory and run:

$ python ./setup.py build_sphinx

The command reference is generated from the official mpd protocol documentation. In order to update it, install python-lxml and run the following command:

$ python ./doc/generate_command_reference.py > ./doc/topics/commands.rst

Contacting the author

Just contact me (Mic92) on Github or via email ([email protected]).

python-mpd2's People

Contributors

mic92 avatar rnixx avatar chrysn avatar multani avatar glen3b avatar mgrachten avatar francois2metz avatar mineo avatar laurentb avatar supermihi avatar smcv avatar mafrosis avatar btall avatar divinedominion avatar xcant avatar frewsxcv avatar cykerway avatar dbrgn avatar jpstotz avatar maksbotan avatar auchter avatar rvl avatar equalsraf avatar sylvainde avatar chme avatar slekwati avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.