Releases: arangodb/arangodb-java-driver
Releases · arangodb/arangodb-java-driver
Version 6.24.0
Version 7.0.0
Detailed changes documentation is available here.
Added
- added
ArangoDB.Builder.loadProperties(ArangoConfigProperties)
to register custom configuration suppliers - added
ArangoConfigProperties.fromFile()
to load properties from local files - added support to
HTTP/2
communication protocol - added optional transitive dependency on
io.vertx:vertx-web-client
(can be excluded if using VST only) - added transitive dependency on Jackson Core, Databind and Annotations
- added wrapper class for raw JSON content (
RawJson
) - added wrapper class for content already encoded as byte array (
RawBytes
) - added support for Jackson types (
JsonNode
,ArrayNode
,ObjectNode
, ...) - added support for Jackson annotations in data types
- added new user data custom serializer API based on
ArangoSerde
- added new user data custom serializer implementation based on Jackson (
JacksonSerde
), supporting bothJSON
andVPACK
- added methods and parameters targets to meta binding annotations
- added overloaded methods for CRUD operations allowing specifying the return type
- added API to support CRUD operations from raw data (
RawBytes
andRawJson
) containing multiple documents - added
BaseDocument#removeAttribute(String)
andBaseEdgeDocument#removeAttribute(String)
- added request id to
ArangoDBException
- shaded version of the driver (
com.arangodb:arangodb-java-driver-shaded
) - added
ArangoEdgeCollection.drop()
andArangoVertexCollection.drop(VertexCollectionDropOptions)
Fixed
- removed
--allow-incomplete-classpath
from native image configuration (#397) - ability to control whether
null
values are included in the serialization (#389) - added support to
DocumentCreateOptions#keepNull
(#374) - allow specifying the return type on insertDocuments (#373)
- credentials logging (#410)
- fixed
ArangoCollection.rename()
andArangoView.rename()
thread safety
Changed
- configuration properties from local files are not loaded automatically anymore
ArangoDB.execute()
accepts now target deserialization typeRequest<T>
andResponse<T>
support now generic body type- removed default host configuration (
127.0.0.1:8529
) - changed http client library to Vert.x WebClient
- changed default communication protocol from
VST
toHTTP/2
- changed default content-type format from
VPACK
toJSON
- changed internal serialization, now based on Jackson API
VPACK
support is now provided byJacksonSerde
including the optional dependency
com.arangodb:jackson-dataformat-velocypack
(VPACK
dataformat backend for Jackson)- data objects passed as arguments to API methods are treated as immutable and the related metadata fields are not
updated in place anymore (updated metadata can be found in the returned object) - changed some API signatures which were using unnecessary generics from
ArangoCollection
,ArangoVertexCollection
andArangoEdgeCollection
- changed
ArangoCursor#getStats()
return type - replication factor is now represented by a new interface (
ReplicationFactor
) with
implementations:NumericReplicationFactor
andSatelliteReplicationFactor
- all data definition classes are now
final
(packagescom.arangodb.entity
andcom.arangodb.model
) BaseDocument
andBaseEdgeDocument
are nowfinal
BaseDocument#getProperties()
andBaseEdgeDocument#getProperties()
return now an unmodifiable mapBaseDocument
andBaseEdgeDocument
are not serializable anymore (using Java serialization)- removed
throws ArangoDBException
from API method signatures (unchecked exception) - removed passwords from debug level requests logs (#410)
- JPMS: explicit automatic module name
- updated
ArangoGraph.replaceEdgeDefinition()
- CRUD methods to insert and replace multiple documents have now covariant argument types
- changed order of arguments in
ArangoDatabase.query()
overloads ArangoCollection.rename()
andArangoView.rename()
do not change the collection or view name of the API class instance
Removed
- removed user data custom serializer API based on
ArangoSerialization
(in favor ofArangoSerde
) - removed user data custom serializer implementation
ArangoJack
(in favor ofJacksonSerde
) - removed support for interpreting raw strings as JSON (in favor of
RawJson
) - removed support of data type
VPackSlice
(in favor of Jackson types:JsonNode
,ArrayNode
,ObjectNode
, ...) - removed client APIs already deprecated in Java Driver version
6
- removed deprecated server APIs:
MMFiles
related APIsArangoDatabase.executeTraversal()
ArangoDB.getLogs()
minReplicationFactor
in collections and graphsoverwrite
flag inDocumentCreateOptions
hash
andskipList
indexes
- removed
ArangoCursorInitializer
- removed Asynchronous API (
com.arangodb.async
) - removed
ArangoDatabase.getDocument()
- removed automatic type inference in CRUD methods operating on multiple documents
- removed
DbName
in favor of plain strings
Version 6.23.0
- deprecated
DbName
in favor of plain strings
Versoin 7.0.0-RC.5
Version 6.22.0
- added support to
forceOneShardAttributeValue
query parameter (DE-541. #491)
Version 7.0.0-RC.4
Version 7.0.0-RC.3
Version 6.21.0
- added
x-arango-driver
header (DE-479)
Version 7.0.0-ALPHA.1
Detailed changes documentation is available here.
Changed
- configuration properties from local files are not loaded automatically anymore
ArangoDB.execute()
accepts now target deserialization typeRequest<T>
andResponse<T>
support now generic body type- removed default host configuration (
127.0.0.1:8529
) - changed http client library to Vert.x WebClient
- changed default communication protocol from
VST
toHTTP/2
- changed default content-type format from
VPACK
toJSON
- changed internal serialization, now based on Jackson API
VPACK
support is now provided byJacksonSerde
including the optional dependency
com.arangodb:jackson-dataformat-velocypack
(VPACK
dataformat backend for Jackson)- data objects passed as arguments to API methods are treated as immutable and the related metadata fields are not
updated in place anymore (updated metadata can be found in the returned object) - changed some API signatures which were using unnecessary generics from
ArangoCollection
,ArangoVertexCollection
andArangoEdgeCollection
- changed
ArangoCursor#getStats()
to return untyped map - replication factor is now represented by a new interface (
ReplicationFactor
) with
implementations:NumericReplicationFactor
andSatelliteReplicationFactor
- all data definition classes are now
final
(packagescom.arangodb.entity
andcom.arangodb.model
) BaseDocument
andBaseEdgeDocument
are nowfinal
BaseDocument#getProperties()
andBaseEdgeDocument#getProperties()
return now an unmodifiable map- removed
throws ArangoDBException
from API method signatures (unchecked exception) - removed passwords from debug level requests logs (#410)
- JPMS: explicit automatic module name
Added
- added
ArangoDB.Builder.loadProperties(ArangoConfigProperties)
to register custom configuration suppliers - added
ArangoConfigProperties.fromFile()
to load properties from local files - added support to
HTTP/2
communication protocol - added optional transitive dependency on
io.vertx:vertx-web-client
(can be excluded if using VST only) - added transitive dependency on Jackson Core, Databind and Annotations
- added wrapper class for raw JSON content (
RawJson
) - added wrapper class for content already encoded as byte array (
RawBytes
) - added support for Jackson types (
JsonNode
,ArrayNode
,ObjectNode
, ...) - added support for Jackson annotations in data types
- added new user data custom serializer API based on
ArangoSerde
- added new user data custom serializer implementation based on Jackson (
JacksonSerde
), supporting bothJSON
andVPACK
) - added methods and parameters targets to meta binding annotations
- added overloaded methods for CRUD operations allowing specifying the return type
- added API to support CRUD operations from raw data (
RawBytes
andRawJson
) containing multiple documents - added
BaseDocument#removeAttribute(String)
andBaseEdgeDocument#removeAttribute(String)
- added request id to
ArangoDBException
- shaded version of the driver (
com.arangodb:arangodb-java-driver-shaded
)
Fixed
- removed
--allow-incomplete-classpath
from native image configuration (#397) - ability to control whether
null
values are included in the serialization (#389) - added support to
DocumentCreateOptions#keepNull
(#374) - allow specifying the return type on insertDocuments (#373)
- credentials logging (#410)
Removed
- removed user data custom serializer API based on
ArangoSerialization
(in favor ofArangoSerde
) - removed user data custom serializer implementation
ArangoJack
(in favor ofJacksonSerde
) - removed support for interpreting raw strings as JSON (in favor of
RawJson
) - removed support of data type
VPackSlice
(in favor of Jackson types:JsonNode
,ArrayNode
,ObjectNode
, ...) - removed client APIs already deprecated in Java Driver version
6
- removed deprecated server APIs:
MMFiles
related APIsArangoDatabase.executeTraversal()
ArangoDB.getLogs()
minReplicationFactor
in collections and graphsoverwrite
flag inDocumentCreateOptions
- removed
ArangoCursorInitializer
Version 7.0.0-SNAPSHOT-1
Detailed changes documentation is available here.
Changed
- configuration properties from local files are not loaded automatically anymore
ArangoDB.execute()
accepts now target deserialization typeRequest<T>
andResponse<T>
support now generic body type- removed default host configuration (
127.0.0.1:8529
) - changed http client library to Vert.x WebClient
- changed default communication protocol from
VST
toHTTP/2
- changed default content-type format from
VPACK
toJSON
- changed internal serialization, now based on Jackson API
VPACK
support is now provided byJacksonSerde
including the optional dependency
com.arangodb:jackson-dataformat-velocypack
(VPACK
dataformat backend for Jackson)- data objects passed as arguments to API methods are treated as immutable and the related metadata fields are not
updated in place anymore (updated metadata can be found in the returned object) - changed some API signatures which were using unnecessary generics from
ArangoCollection
,ArangoVertexCollection
andArangoEdgeCollection
- changed
ArangoCursor#getStats()
to return untyped map - replication factor is now represented by a new interface (
ReplicationFactor
) with
implementations:NumericReplicationFactor
andSatelliteReplicationFactor
- all data definition classes are now
final
(packagescom.arangodb.entity
andcom.arangodb.model
) BaseDocument
andBaseEdgeDocument
are nowfinal
BaseDocument#getProperties()
andBaseEdgeDocument#getProperties()
return now an unmodifiable map- removed
throws ArangoDBException
from API method signatures (unchecked exception) - removed passwords from debug level requests logs (#410)
- JPMS: explicit automatic module name
Added
- added
ArangoDB.Builder.loadProperties(ConfigPropertiesProvider)
to register custom configuration providers - added
FileConfigPropertiesProvider
to load properties from local files - added support to
HTTP/2
communication protocol - added optional transitive dependency on
io.vertx:vertx-web-client
(can be excluded if using VST only) - added transitive dependency on Jackson Core, Databind and Annotations
- added wrapper class for raw JSON content (
RawJson
) - added wrapper class for content already encoded as byte array (
RawBytes
) - added support for Jackson types (
JsonNode
,ArrayNode
,ObjectNode
, ...) - added support for Jackson annotations in data types
- added new user data custom serializer API based on
ArangoSerde
- added new user data custom serializer implementation based on Jackson (
JacksonSerde
), supporting bothJSON
andVPACK
) - added methods and parameters targets to meta binding annotations
- added overloaded methods for CRUD operations allowing specifying the return type
- added API to support CRUD operations from raw data (
RawBytes
andRawJson
) containing multiple documents - added
BaseDocument#removeAttribute(String)
andBaseEdgeDocument#removeAttribute(String)
- added request id to
ArangoDBException
- shaded version of the driver (
com.arangodb:arangodb-java-driver-shaded
)
Fixed
- removed
--allow-incomplete-classpath
from native image configuration (#397) - ability to control whether
null
values are included in the serialization (#389) - added support to
DocumentCreateOptions#keepNull
(#374) - allow specifying the return type on insertDocuments (#373)
- credentials logging (#410)
Removed
- removed user data custom serializer API based on
ArangoSerialization
(in favor ofArangoSerde
) - removed user data custom serializer implementation
ArangoJack
(in favor ofJacksonSerde
) - removed support for interpreting raw strings as JSON (in favor of
RawJson
) - removed support of data type
VPackSlice
(in favor of Jackson types:JsonNode
,ArrayNode
,ObjectNode
, ...) - removed client APIs already deprecated in Java Driver version
6
- removed deprecated server APIs:
MMFiles
related APIsArangoDatabase.executeTraversal()
ArangoDB.getLogs()
minReplicationFactor
in collections and graphsoverwrite
flag inDocumentCreateOptions
- removed
ArangoCursorInitializer