Python-arango

Latest version: v8.1.4

Safety actively analyzes 706267 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 8 of 13

5.0.0

Breaking Changes

* Breaking changes to `arango.ArangoClient`:
* Replaced parameters `protocol`, `host` and `port` with `hosts` and `host_resolver`. Example:

python
from arango import ArangoClient

OLD
client = ArangoClient(protocol='http', host='localhost', port=8529)

NEW (single host)
client = ArangoClient(hosts='http://localhost:8529')

NEW (multiple hosts with "roundrobin" or "random" host resolver)
client = ArangoClient(hosts=['http://host1:8529', 'http://host2:8529'], host_resolver='roundrobin')


* Replaced properties `protocol`, `host`, `port` and `base_url` with `hosts`. Example:

python
from arango import ArangoClient

OLD
client = ArangoClient(protocol='http', host='localhost', port=8529)
client.protocol
client.host
client.port
client.base_url

NEW
client = ArangoClient(hosts='http://localhost:8529')
client.hosts

* Breaking changes to transactions:
* Changed the parameters in `Database.begin_transaction`.
* Context managers are no longer offered (you must commit the transaction yourself).
* On API execution, results are now returned immediately instead of `TransactionJob` objects.
* To abort transactions, you must call `TransactionDatabase.abort_transaction` method.
* Removed exception `arango.exceptions.TransactionStateError`.
* Removed exception `arango.exceptions.TransactionJobResultError`.
* See examples [here](https://python-driver-for-arangodb.readthedocs.io/en/5.0.0/transaction.html).


* Breaking changes to `AQLQueryCache` (`Database.aql.cache`):
* Renamed parameter `limit` to `max_results` in method `AQLQueryCache.configure`.
* Renamed field `limit` to `max_results` in the result of method `AQLQueryCache.properties`.
* See examples [here](https://python-driver-for-arangodb.readthedocs.io/en/5.0.0/aql.html#aql-query-cache).

* Breaking changes to `arango.request.Request`:
* Removed properties `read`, `write` and `command`.
* The content of property `data` is no longer serialized.

* Removed method `Database.ping` (all it did was send a get API call which you can always do yourself).

* Changed the abstract class for custom HTTP clients ([arango.http.HTTPClient](https://python-driver-for-arangodb.readthedocs.io/en/5.0.0/specs.html#arango.http.HTTPClient)). See new examples of defining your HTTP clients [here](https://python-driver-for-arangodb.readthedocs.io/en/5.0.0/http.html).

New Features

* Python 3.7 is officially supported
* Added support for load balancing multiple hosts/coordinators in a cluster (available host resolving techniques are "roundrobin" or "random"). See API specification [here](https://python-driver-for-arangodb.readthedocs.io/en/5.0.0/specs.html#arango.client.ArangoClient).
* Added support for [new transaction REST API](https://python-driver-for-arangodb.readthedocs.io/en/5.0.0/transaction.html).
* Added support for [ArangoSearch views](https://python-driver-for-arangodb.readthedocs.io/en/5.0.0/view.html).
* Added support for [analyzers](https://python-driver-for-arangodb.readthedocs.io/en/5.0.0/analyzer.html).
* Added support for named indexes (new parameter `name`).
* Added support for adding indexes asynchronously (new parameter `in_background`).
* Added support for new TTL index.
* Added support for [custom JSON serializers and de-serializers](https://python-driver-for-arangodb.readthedocs.io/en/5.0.0/serializer.html).
* Added new parameter `name_filter` to method [Database.foxx.run_tests](https://python-driver-for-arangodb.readthedocs.io/en/5.0.0/specs.html#arango.foxx.Foxx.run_tests).
* Added new method [Collection.recalculate_count](https://python-driver-for-arangodb.readthedocs.io/en/5.0.0/specs.html#arango.collection.StandardCollection.recalculate_count).
* Added new method [Collection.responsible_shard](https://python-driver-for-arangodb.readthedocs.io/en/5.0.0/specs.html#arango.collection.StandardCollection.responsible_shard).
* Added more fields in the result of method [AQLQueryCache.properties](https://python-driver-for-arangodb.readthedocs.io/en/5.0.0/specs.html#arango.aql.AQLQueryCache.properties) and [AQLQueryCache.configure](https://python-driver-for-arangodb.readthedocs.io/en/5.0.0/specs.html#arango.aql.AQLQueryCache.configure).

4.4.0

* Added new parameters `stream` and `skip_inaccessible_cols` to method `AQL.execute`.

4.3.0

* Added support for ArangoDB version **3.4**.
* Added new method `db.status`.
* Added new method `db.aql.entries`.
* Changed the output format of `db.aql.functions`, `db.aql.create_function` and `db.aql.delete_function` to account for ArangoDB 3.4 API changes.
* Added new view management methods `db.views`, `db.view`, `db.create_view`, `db.update_view`, `db.replace_view`, `db.delete_view` and `db.rename_view`.
* Added new parameters `overwrite`, `return_old`, `return_new` to various document management methods.

4.2.1

* Fixed a bug in `Cursor.close`. Now it properly returns None when the cursor result set is smaller than the batch_size or in transactions.

4.2.0

* Removed the arbitrary default value of 100 for the `limit` parameter (now there is no threshold if it is not set) in following simple query methods:
* `Collection.all`
* `Collection.find`
* `Collection.find_near`
* `Collection.find_in_box`
* `Collection.find_in_range`
* `Collection.find_by_text`
* Added support for ArangoDB version **3.3.9**.

4.1.0

* Added new parameters `shard_like`, `sync_replication` and `enforce_replication_factor` to method `Database.create_collection`.
* Updated Travis CI script to halt on sphinx documentation build failures.

Page 8 of 13

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.