Skip to content

Releases: arangodb/python-arango

7.0.0

20 Feb 04:09
Compare
Choose a tag to compare
  • Added strict type hinting. Your code completion in IDEs should be even better now!
  • Removed deprecated parameter read_collections from Database.aql.execute.
  • Removed deprecated parameter write_collections from Database.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

15 Nov 22:05
Compare
Choose a tag to compare
  • Properly handle foxx configuration and dependencies.
  • Support modifying/deleting schemas (example).

6.0.0

28 Aug 17:13
Compare
Choose a tag to compare
  • 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

08 Mar 02:00
Compare
Choose a tag to compare

5.3.0

28 Feb 08:37
Compare
Choose a tag to compare

5.2.1

31 Oct 10:16
Compare
Choose a tag to compare
  • Fixed KeyError bug in format_index function.

5.2.0

22 Sep 04:12
Compare
Choose a tag to compare
  • 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

25 Aug 13:13
Compare
Choose a tag to compare
  • Fixed a bug where exception objects from bulk operations (Collection.insert_many, Collection.update_many, Collection.replace_many, Collection.delete_many) were not populated properly. Properties such as error_message and error_code now have correct values.

5.0.0

22 Aug 11:46
Compare
Choose a tag to compare

Breaking Changes

  • Breaking changes to arango.ArangoClient:

    • Replaced parameters protocol, host and port with hosts and host_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, port and base_url with hosts. 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 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.
  • 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.
  • 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). See new examples of defining your HTTP clients here.

New Features

4.4.0

04 Jan 13:28
Compare
Choose a tag to compare
  • Added new parameters stream and skip_inaccessible_cols to method AQL.execute.