A library that makes consuming a REST API easier and more convenient
Project description
Slumber
Slumber is a Python library that provides a convenient yet powerful object-oriented interface to ReSTful APIs. It acts as a wrapper around the excellent requests library and abstracts away the handling of URLs, serialization, and request processing.
Getting Help
Visit IRC channel (#slumber on irc.freenode.net) to get help, bounce ideas or generally shoot the breeze.
QuickStart
Install Slumber:
$ pip install slumber
Install Optional Requirement:
pip install pyyaml
Use Slumber!
Requirements
Slumber requires the following modules.
Python 2.6+
requests
pyyaml (If you are using the optional YAML serialization)
Changelog
development version
0.7.1
Correct support for UTF encoded responses.
0.6.2
Further Python 3 compatibility fixes, many thanks to Alexander Shchepetilnikov (irqed)
0.6.1
Remove simplejson dependency.
Support range now Python 2.6 - Python 3.4
0.6.0
All HTTP methods support multipart/form-data. The new files parameter is directly passed to requests. Thanks to Philip Neustrom and Diego Gaustein.
0.5.2
Now compatible with requests 1.0 thanks to Matias Saguir.
Fix bug when using default serializer. Thanks to Andy McKay
0.4.2
Support decoded unicode url fragments - Thanks @collinwat
0.4.1
Added a session kwarg to slumber.API allowing passing a requests session that will be used instead of the slumber created one
0.4.0
(Backwards Incompatible) Switched from httplib2 to requests
(Backwards Incompatible) Removed the Meta class Magic
(Backwards Incompatible) Removed the ability to subclass slumber.API to specify defaults
(Backwards Incompatible) New Syntax for Specifying Authentication
0.3.1
Fix regression where pre 0.3 urls were assumed to end in slash, and 0.3.0 presumed to end in not slash. Urls are now assumed to end in a slash, and if you don’t want this behavior you can disable it by the append_slash kwarg/Meta option (set to False to disable it).
Fix regression caused by a mistyped variable name.
0.3.0
Allowed nesting resources infinitely to allow more complex api usage.
Cleaned up the Meta class and allow subclassing slumber.API
(Backwards Incompatible) Cleaned up the exception names.
(Backwards Incompatible) Renamed the slumber.API serialization kwarg from default_format to format to be more consistent
Improved the documentation
Added Some Tests (This could still be better)
0.2.5
Fixed https urls and the accidental force to port 80
Fixed the assumption that all urls end in a trailing slash
0.2.4
Fixed Including of Changelog.rst
0.2.3
Updated the docs to include a section about url parameters
0.2
(Backwards Incompatible) Move specifying a non default serializer from api.resource.get(format="yaml") to api.resource(format="yaml").get()
Reworked the internal Resource api to not clobber any kwargs passed to it. This fixes a bug where you couldn’t use format or url as the name for one of the url parameters.
0.1.3
Fix for Resource.post() not passing kwargs to Resource.get()
0.1.2
Initial public release of Slumber
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file slumber-0.7.1.tar.gz
.
File metadata
- Download URL: slumber-0.7.1.tar.gz
- Upload date:
- Size: 10.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 96899ce914f8d7862ce34f4e50af3a82e35588ab61b4912b85844479f4d177cb |
|
MD5 | 58fe531e23b7324b9fbd3faa89a115e2 |
|
BLAKE2b-256 | 173a6d42c6a5909207aa2487fda0c6f09c7dac259e5154d6ad74ec160db69660 |
File details
Details for the file slumber-0.7.1-py2-none-any.whl
.
File metadata
- Download URL: slumber-0.7.1-py2-none-any.whl
- Upload date:
- Size: 9.7 kB
- Tags: Python 2
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 298d0461657337416aa53c9fe54864cb5960a009beceb2058b17fa98dfb01e9b |
|
MD5 | a20e57de50bf26358982099f82d76b5f |
|
BLAKE2b-256 | 9c538e2cb7501c17f9367b02a8ce62cb463824f9c5f7884e4fe6c5f13cb79858 |