Metadata-Version: 2.4
Name: pycouchdb
Version: 1.17.0
Summary: Modern pure python CouchDB Client.
Project-URL: Homepage, https://github.com/histrio/py-couchdb
Project-URL: Documentation, https://pycouchdb.readthedocs.io/en/latest/
Project-URL: Repository, https://github.com/histrio/py-couchdb
Author-email: Andrey Antukh <niwi@niwi.be>
Maintainer-email: Rinat Sabitov <rinat.sabitov@gmail.com>
License: BSD-3-Clause
License-File: LICENSE
Keywords: couchdb,database
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Utilities
Requires-Python: >=3.9
Requires-Dist: chardet>=5.2.0
Requires-Dist: requests>=2.32.5
Provides-Extra: dev
Requires-Dist: bandit>=1.7.0; extra == 'dev'
Requires-Dist: black>=23.0.0; extra == 'dev'
Requires-Dist: coverage>=7.0.0; extra == 'dev'
Requires-Dist: factory-boy>=3.3.0; extra == 'dev'
Requires-Dist: faker>=19.0.0; extra == 'dev'
Requires-Dist: flake8>=7.0.0; extra == 'dev'
Requires-Dist: freezegun>=1.2.0; extra == 'dev'
Requires-Dist: isort>=5.12.0; extra == 'dev'
Requires-Dist: mypy>=1.0.0; extra == 'dev'
Requires-Dist: pytest-benchmark>=4.0.0; extra == 'dev'
Requires-Dist: pytest-cov>=5.0.0; extra == 'dev'
Requires-Dist: pytest-doctestplus>=0.13.0; extra == 'dev'
Requires-Dist: pytest-html>=4.0.0; extra == 'dev'
Requires-Dist: pytest-mock>=3.10.0; extra == 'dev'
Requires-Dist: pytest-timeout>=2.1.0; extra == 'dev'
Requires-Dist: pytest-xdist>=3.0.0; extra == 'dev'
Requires-Dist: pytest>=8.0.0; extra == 'dev'
Requires-Dist: requests-mock>=1.11.0; extra == 'dev'
Requires-Dist: responses>=0.25.0; extra == 'dev'
Provides-Extra: docs
Requires-Dist: sphinx<9,>=7.4; extra == 'docs'
Provides-Extra: release
Requires-Dist: twine>=6.0; extra == 'release'
Description-Content-Type: text/markdown

# py-couchdb

[![CI](https://github.com/histrio/py-couchdb/actions/workflows/main.yml/badge.svg?branch=master)](https://github.com/histrio/py-couchdb/actions/workflows/main.yml)
![PyPI](https://img.shields.io/pypi/v/pycouchdb)
![PyPI - Downloads](https://img.shields.io/pypi/dm/pycouchdb)
[![codecov](https://codecov.io/github/histrio/py-couchdb/graph/badge.svg?token=eXN16KQiEq)](https://codecov.io/github/histrio/py-couchdb)
[![Documentation Status](https://readthedocs.org/projects/pycouchdb/badge/?version=latest)](https://pycouchdb.readthedocs.io/en/latest/?badge=latest)



Modern pure python [CouchDB](https://couchdb.apache.org/) Client.

Currently there are several libraries in python to connect to couchdb. **Why one more?**
It's very simple.

All seems not be maintained, all libraries used standard Python libraries for http requests.



## Advantages of py-couchdb

- Use [requests](http://docs.python-requests.org/en/latest/) for http requests (much faster than the standard library)
- CouchDB 2.x and CouchDB 3.x compatible
- Also compatible with pypy.


Example:

```python
>>> import pycouchdb
>>> server = pycouchdb.Server("http://admin:admin@localhost:5984/")
>>> server.info()['version']
'1.2.1'
```


## Installation

To install py-couchdb, simply:

```bash
pip install pycouchdb
```

## Documentation

Documentation is available at http://pycouchdb.readthedocs.org.

## Logging

py-couchdb is silent by default. Enable its standard-library logger from your
application when needed:

```python
import logging

logging.basicConfig(level=logging.INFO)
logging.getLogger("pycouchdb").setLevel(logging.DEBUG)
```

DEBUG records include safe HTTP and database-operation metadata; INFO records
summarize bulk results. Request and response bodies, credentials, headers,
hostnames, and query parameter values are never logged. See the
[logging guide](https://pycouchdb.readthedocs.io/en/latest/logging.html) for
formatting and `dictConfig` examples.


## Test

To test py-couchdb, simply run:

``` bash
pytest -v --doctest-modules --cov pycouchdb
```
