# \[ANN\] Python asyncio bindings - asyncio-foundationdb

**URL:** <https://forums.foundationdb.org/t/ann-python-asyncio-bindings-asyncio-foundationdb/605>\
**Category:** Using FoundationDB\
**Tags:** bindings\
**Created:** [August 1, 2018, 9:57am UTC](https://forums.foundationdb.org/t/ann-python-asyncio-bindings-asyncio-foundationdb/605 "2018-08-01T09:57:00Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![amirouche](https://sea1.discourse-cdn.com/foundationdb/user_avatar/forums.foundationdb.org/amirouche/32/2096_2.png) [@amirouche](https://forums.foundationdb.org/u/amirouche)\
**Post date:** [August 1, 2018, 9:57am UTC](https://forums.foundationdb.org/t/ann-python-asyncio-bindings-asyncio-foundationdb/605/1 "2018-08-01T09:57:00Z")

</div>

You can:

```auto
$ pip install asyncio-foundationdb

```

The repository is [over the rainbow](https://github.com/amirouche/asyncio-foundationdb).

It’s tested with CPython 3.5 and CPython 3.6, it should work with PyPy3 6.0.0

ChangeLog:

- 2018/09/19: v0.2.1:
  - Continous Integration, drop `async_generator` in `Transaction.get_range`
  - Coverage at 68%

- 2018/09/22: v0.3.1
  - Rename asyncio-foundationdb, the package is still named `found`
  - Fix bug where is was not possible to use `@transactional` with methods
  - Add sparky layer
  - bring back `api_version`, now you have to call it with the version of the API (currently `510`)
  - Rely on official bindings to provide `tuple` and `Subspace` as of right now depends on 5.1
  - Disable tests with CPython 3.7 because [fdb doesn’t support it](https://travis-ci.org/amirouche/found/jobs/431912201)
  - Coverage is at 80%

- 2018/09/26: v0.4.0
  - sparky: reduce disk usage
  - fix critical bug where `get_range` returned nothing in some cases
  - remove `Transaction.range` shorthand
  - add `Database.get`, `Database.set` and `Database.get_range`
  - add all atomic operations on `Transaction`

Feedback and feature request very welcomely.

---

<div class="post-metadata">

**Author:** ![amirouche](https://sea1.discourse-cdn.com/foundationdb/user_avatar/forums.foundationdb.org/amirouche/32/2096_2.png) [@amirouche](https://forums.foundationdb.org/u/amirouche)\
**Post date:** [November 17, 2018, 7:17pm UTC](https://forums.foundationdb.org/t/ann-python-asyncio-bindings-asyncio-foundationdb/605/3 "2018-11-17T19:17:26Z")

</div>

- 2018/11/17: v0.5.0

---

<div class="post-metadata">

**Author:** ![amirouche](https://sea1.discourse-cdn.com/foundationdb/user_avatar/forums.foundationdb.org/amirouche/32/2096_2.png) [@amirouche](https://forums.foundationdb.org/u/amirouche)\
**Post date:** [July 17, 2021, 11:41am UTC](https://forums.foundationdb.org/t/ann-python-asyncio-bindings-asyncio-foundationdb/605/4 "2021-07-17T11:41:10Z")

</div>

I restarted work on this. I revamped the API and the branch called `rework` is 20% faster than `master` (using CPython 3.9, there is no advantage in performance for PyPy at least in terms of wall clock time)

Now is a good time if you want to contribute.

> **[amirouche/asyncio-foundationdb - asyncio-foundationdb](https://github.com/amirouche/asyncio-foundationdb/tree/rework#asyncio-foundationdb)**
>
> rework
