Enterprise ready Python OData client
Project description
[![Build Status](https://travis-ci.org/SAP/python-pyodata.svg?branch=master)](https://travis-ci.org/SAP/python-pyodata)
# Python OData Client - pyodata
Python OData client which provides comfortable Python agnostic
way for communication with OData services.
The goal of this Python module is to hide all OData protocol implementation
details.
## Requirements
- [Python >= 3.6](https://www.python.org/downloads/release/python-368/)
## Download and Installation
You can make use of [pip](https://packaging.python.org/tutorials/installing-packages/#installing-from-vcs)
to install the pyodata module automatically:
```bash
pip install -e git+https://github.com/SAP/python-pyodata.git
```
## Configuration
You can start building your OData projects straight away after installing the
Python module without any additional configuration steps needed.
## Limitations
There have been no limitations discovered yet.
## Known Issues
There are no known issues at this time.
## How to obtain support
We accept bug reports, feature requests, questions and comments via [GitHub issues](https://github.com/SAP/python-pyodata/issues)
## Usage
The only thing you need to do is to import the _pyodata_ Python module.
```python
import requests
import pyodata
SERVICE_URL = 'http://services.odata.org/V2/Northwind/Northwind.svc/'
# Create instance of OData client
client = pyodata.Client(SERVICE_URL, requests.Session())
```
Find more sophisticated examples in the [USAGE](USAGE.md) section.
## Contributing
Before contributing, please, make yourself familiar with git. You can [try git
online](https://try.github.io/). Things would be easier for all of us if you do
your changes on a branch. Use a single commit for every logical reviewable
change, without unrelated modifications (that will help us if need to revert a
particular commit). Please avoid adding commits fixing your previous
commits, do amend or rebase instead.
Every commit must have either comprehensive commit message saying what is being
changed and why or a link (an issue number on Github) to a bug report where
this information is available. It is also useful to include notes about
negative decisions - i.e. why you decided to not do particular things. Please
bare in mind that other developers might not understand what the original
problem was.
### Full example
Here's an example workflow for a project `PyOData` hosted on Github
Your username is `yourname` and you're submitting a basic bugfix or feature.
* Hit 'fork' on Github, creating e.g. `yourname/PyOData`.
* `git clone git@github.com:yourname/PyOData`
* `git checkout -b foo_the_bars` to create new local branch named foo_the_bars
* Hack, hack, hack
* Run `python -m pytest` or `make check`
* `git status`
* `git add`
* `git commit -s -m "Foo the bars"`
* `git push -u origin HEAD` to create foo_the_bars branch in your fork
* Visit your fork at Github and click handy "Pull request" button.
* In the description field, write down issue number (if submitting code fixing
an existing issue) or describe the issue + your fix (if submitting a wholly
new bugfix).
* Hit 'submit'! And please be patient - the maintainers will get to you when
they can.
## License
Copyright (c) 2019 SAP SE or an SAP affiliate company. All rights reserved.
This file is licensed under the Apache Software License, v. 2 except as noted
otherwise in [the LICENSE file](LICENSE)
# Python OData Client - pyodata
Python OData client which provides comfortable Python agnostic
way for communication with OData services.
The goal of this Python module is to hide all OData protocol implementation
details.
## Requirements
- [Python >= 3.6](https://www.python.org/downloads/release/python-368/)
## Download and Installation
You can make use of [pip](https://packaging.python.org/tutorials/installing-packages/#installing-from-vcs)
to install the pyodata module automatically:
```bash
pip install -e git+https://github.com/SAP/python-pyodata.git
```
## Configuration
You can start building your OData projects straight away after installing the
Python module without any additional configuration steps needed.
## Limitations
There have been no limitations discovered yet.
## Known Issues
There are no known issues at this time.
## How to obtain support
We accept bug reports, feature requests, questions and comments via [GitHub issues](https://github.com/SAP/python-pyodata/issues)
## Usage
The only thing you need to do is to import the _pyodata_ Python module.
```python
import requests
import pyodata
SERVICE_URL = 'http://services.odata.org/V2/Northwind/Northwind.svc/'
# Create instance of OData client
client = pyodata.Client(SERVICE_URL, requests.Session())
```
Find more sophisticated examples in the [USAGE](USAGE.md) section.
## Contributing
Before contributing, please, make yourself familiar with git. You can [try git
online](https://try.github.io/). Things would be easier for all of us if you do
your changes on a branch. Use a single commit for every logical reviewable
change, without unrelated modifications (that will help us if need to revert a
particular commit). Please avoid adding commits fixing your previous
commits, do amend or rebase instead.
Every commit must have either comprehensive commit message saying what is being
changed and why or a link (an issue number on Github) to a bug report where
this information is available. It is also useful to include notes about
negative decisions - i.e. why you decided to not do particular things. Please
bare in mind that other developers might not understand what the original
problem was.
### Full example
Here's an example workflow for a project `PyOData` hosted on Github
Your username is `yourname` and you're submitting a basic bugfix or feature.
* Hit 'fork' on Github, creating e.g. `yourname/PyOData`.
* `git clone git@github.com:yourname/PyOData`
* `git checkout -b foo_the_bars` to create new local branch named foo_the_bars
* Hack, hack, hack
* Run `python -m pytest` or `make check`
* `git status`
* `git add`
* `git commit -s -m "Foo the bars"`
* `git push -u origin HEAD` to create foo_the_bars branch in your fork
* Visit your fork at Github and click handy "Pull request" button.
* In the description field, write down issue number (if submitting code fixing
an existing issue) or describe the issue + your fix (if submitting a wholly
new bugfix).
* Hit 'submit'! And please be patient - the maintainers will get to you when
they can.
## License
Copyright (c) 2019 SAP SE or an SAP affiliate company. All rights reserved.
This file is licensed under the Apache Software License, v. 2 except as noted
otherwise in [the LICENSE file](LICENSE)
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
pyodata-1.1.1.tar.gz
(34.5 kB
view details)
Built Distribution
pyodata-1.1.1-py3-none-any.whl
(33.8 kB
view details)
File details
Details for the file pyodata-1.1.1.tar.gz
.
File metadata
- Download URL: pyodata-1.1.1.tar.gz
- Upload date:
- Size: 34.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.18.4 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.31.1 CPython/3.7.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4a205842d01cfbde98880b730b49068fe05453b9fe47d989150fb7b3ab43ce38 |
|
MD5 | e981ae468a20dcd2d6062903acda54f6 |
|
BLAKE2b-256 | 91a3af49584c1b0b3b00266b3928dbbcd084e2d8ad23118f80690b8f6603a0cb |
File details
Details for the file pyodata-1.1.1-py3-none-any.whl
.
File metadata
- Download URL: pyodata-1.1.1-py3-none-any.whl
- Upload date:
- Size: 33.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.18.4 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.31.1 CPython/3.7.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8b1940426ab5c1af379c2ddd8592e918b3aa10df1b125bf5f1d8e1cb0d2c95a8 |
|
MD5 | e1eacae2b40dadb3569caf1b175d33ff |
|
BLAKE2b-256 | 96aead64d3cf487fb2712937280c6d7acddc2b9437f29a27f873e0fa4bb40266 |