Releases: arangodb/python-arango
Releases · arangodb/python-arango
7.0.0
- Added strict type hinting. Your code completion in IDEs should be even better now!
- Removed deprecated parameter
read_collectionsfromDatabase.aql.execute. - Removed deprecated parameter
write_collectionsfromDatabase.aql.execute. - Completely dropped support for Python 2.7 and Python 3.5.
- Renamed some internal classes.
- Moved from Travis CI to GitHub Actions.
- Added retries and timeout to the default HTTP client.
- VertexCollection and EdgeCollection now have access to more methods like
insert_many,import_bulk(on parity with StandardCollection). NOTE: The newly exposed multi-document operations do not provide the same transactional guarantees and validations that single-document operations do.
6.1.0
6.0.0
- Added support for ArangoDB version 3.7.
- Added support for schema validation.
- Added hot backup API (enterprise edition only).
- Added support for other API changes. See ArangoDB 3.7 REST API changelog for more information.
- Removed support for MMFiles.
- Removed support for Python 2.7.
5.4.0
- Added new Foxx management methods db.foxx.update_service_with_file and db.foxx.replace_service_with_file.
- Cursors now raise
CursorCountErroron statements likelen(cursor)orbool(cursor)when count was never enabled (e.g. during AQL execution).
5.3.0
- Added support for ArangoDB version 3.6.
- Added new method db.metrics.
- Added new method db.foxx.create_service_with_file.
- Added new Python package dependency requests_toolbelt.
- Added new parameters
return_oldandreturn_newin vertex and edge management methods. - Added new parameters to db.create_database.
5.2.1
5.2.0
- Fixed a bug where some of the outputs from ArangoDB were not formatted corrected.
- Added support for Replication API.
- Added support for Cluster API.
- Added new methods to WAL API.
5.1.0
5.0.0
Breaking Changes
-
Breaking changes to
arango.ArangoClient:-
Replaced parameters
protocol,hostandportwithhostsandhost_resolver. Example: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,portandbase_urlwithhosts. Example: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
TransactionJobobjects. - To abort transactions, you must call
TransactionDatabase.abort_transactionmethod. - Removed exception
arango.exceptions.TransactionStateError. - Removed exception
arango.exceptions.TransactionJobResultError. - See examples here.
- Changed the parameters in
-
Breaking changes to
AQLQueryCache(Database.aql.cache):- Renamed parameter
limittomax_resultsin methodAQLQueryCache.configure. - Renamed field
limittomax_resultsin the result of methodAQLQueryCache.properties. - See examples here.
- Renamed parameter
-
Breaking changes to
arango.request.Request:- Removed properties
read,writeandcommand. - The content of property
datais no longer serialized.
- Removed properties
-
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). See new examples of defining your HTTP clients here.
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.
- Added support for new transaction REST API.
- Added support for ArangoSearch views.
- Added support for analyzers.
- 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.
- Added new parameter
name_filterto method Database.foxx.run_tests. - Added new method Collection.recalculate_count.
- Added new method Collection.responsible_shard.
- Added more fields in the result of method AQLQueryCache.properties and AQLQueryCache.configure.