Async library for accessing Swagger-enabled APIs
Project description
Aiobravado
About
Aiobravado is the asyncio version of the bravado library for use with the OpenAPI Specification (previously known as Swagger).
aiobravado requires Python 3.5+ and allows you to use asynchronous programming when interacting with OpenAPI-enabled services. Here’s the breakdown of bravado packages and their use case:
bravado - Library to dynamically interact with OpenAPI/Swagger-enabled services. Supports Python 2.7+.
fido - HTTP client to enable asynchronous network requests for bravado. Supports Python 2.7+. Depends on twisted. Spins up a separate thread to handle network requests.
bravado-asyncio - asyncio-powered asynchronous HTTP client for bravado. Requires Python 3.5+. It is the default HTTP client for aiobravado, but can be used with bravado as well.
aiobravado - asyncio-enabled library to dynamically interact with OpenAPI/Swagger-enabled services. Supports basically all of the features of bravado. Requires Python 3.5+. No additional threads are created.
Example Usage
from aiobravado.client import SwaggerClient
client = await SwaggerClient.from_url('http://petstore.swagger.io/v2/swagger.json')
pet = await client.pet.getPetById(petId=42).result(timeout=5)
Documentation
More documentation is available at http://aiobravado.readthedocs.org
Installation
# To install aiobravado
$ pip install aiobravado
# To install aiobravado with optional packages recommended by aiohttp
$ pip install aiobravado[aiohttp_extras]
Development
Code is documented using Sphinx.
virtualenv is recommended to keep dependencies and libraries isolated.
Setup
# Run tests
tox
# Install git pre-commit hooks
tox -e pre-commit install
Contributing
Fork it ( http://github.com/sjaensch/aiobravado/fork )
Create your feature branch (git checkout -b my-new-feature)
Add your modifications
Add short summary of your modifications on changelog.rst under Upcoming release. Add that entry at the top of the file if it’s not there yet.
Commit your changes (git commit -m "Add some feature")
Push to the branch (git push origin my-new-feature)
Create new Pull Request
License
Copyright (c) 2013, Digium, Inc. All rights reserved. Copyright (c) 2014-2015, Yelp, Inc. All rights reserved.
Aiobravado is licensed with a BSD 3-Clause License.
Project details
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 aiobravado-0.9.3.tar.gz
.
File metadata
- Download URL: aiobravado-0.9.3.tar.gz
- Upload date:
- Size: 14.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d03b4a8f9fc08e07da6cb341796f605891b6c111c226504185ec1ee71586428e |
|
MD5 | 80d028a3fdd3f6c5e30c0c9a3f6b1bcd |
|
BLAKE2b-256 | 579c36c2eeb68d525d2df91b5913321626650eb2a1ff3fad493f38421e3078b0 |
File details
Details for the file aiobravado-0.9.3-py3-none-any.whl
.
File metadata
- Download URL: aiobravado-0.9.3-py3-none-any.whl
- Upload date:
- Size: 18.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bf7b43bee0bc0c7756a3294fb2af5f7c9a8dd5e5c3252890739c84d1f0356d51 |
|
MD5 | e1db03f0f1949c03f8e41ad7c2231b54 |
|
BLAKE2b-256 | e2922cba66c6e470e2a68347e5789e89f79ac4cdbf0fff2dab5c2ec809780090 |