Releases: aerospike/aerospike-client-nodejs
Releases · aerospike/aerospike-client-nodejs
v2.0.2 / 2016-04-29
v2.0.1 / 2016-04-27
- Improvements
- Optimize callback handler performance. #119
- Removed some unused async C++ helper functions; minor code cleanup
- Fixes
- Ensure callbacks are always called asynchronously, even for param errors
raised by the client itself. #120
- Ensure callbacks are always called asynchronously, even for param errors
- Tests
- Complete tests for writing bins with specific data types
- Extend query/scan performance tests
- Documentation
- Minor JSDoc documentation fixes
v2.0.0 / 2016-04-19
- Improvements
- Performance: Use asynchronous client commands of the new Aerospike C/C++ client library
version 4.0. - Follow Node.js error-first callback conventions: The client now returns
null
as the first parameter (error
) in most callbacks when the command
was executed successfully. See backward incompatible API changes for more details. #105,
PR #106. Thanks to @eljefedelrodeodeljefe! - Added support for pluggable callback handler logic for backwards
compatibility with legacy error callback semantics. - Added new
batchRead
command to support reading different
namespaces/bins for each key in a batch. This method requires Aerospike
server version >= 3.6.0. The batchGet/batchExists/batchSelect client
commands deprecated but still supported for backwards compatibility. - Added
isConnected
client method to check cluster connection status. #108 - Added support for creating secondary indexes on list and map values;
requires Aerospike server version >= 3.8. [CLIENT-684] - Added new filter predicates in the
Aerospike.filter
module:- contains() to match on list/map membership for integer & string values #74
- geoWithinRadius() to match on geospatial locations within a given radius
from another point (incl. geospatial locations in lists and maps) - geoContainsPoint() to match on geospatial regions that include given
lng/lat coordinates (incl. geospatial regions in lists and maps) - geoContains() is deprecated and has been replaced by
geoContainsGeoJSONPoint() - geoWithin() is deprecated and has been replaced by
geoWithinGeoJSONRegion()
- Added new Scan API implementation via
Client#scan
. - Added new Query API with support for query aggregation using Stream UDFs as well as background queries using Record UDFs #65
- Added new
Job
class to query status of long-running background tasks, including scans, queries and index creation. - Added new
Key
,Double
andGeoJSON
classes replacing existingaerospike.key()
,aerospike.Double()
andaerospike.GeoJSON()
functions. - Added
Aerospike.info
module withparseInfo
utility method to parse info
string returned by Aerospike cluster nodes usingClient#info
method. - Added missing status codes to
Aerospike.status
. - Added support for set compression threshold policy for write operations,
retry policy for read operations, and ttl policy for apply operations. - Improvements to the client's mocha test suite, incl. performance improvements by re-using a single client connection for all tests.
- Performance: Use asynchronous client commands of the new Aerospike C/C++ client library
- Fixes
- Fix possible memory corruption parsing UDF module or function names.
- Node segfaults when trying to query the aerospike client after closing the
connection. #88
- Changes
- Drop support for Node.js v0.10. The Aerospike Node.js client now requires
Node.js v0.12 or later. - Several client commands have been renamed and the old method names have been deprecated; please refer to the full list of backward incompatible changes for details.
- Drop support for Node.js v0.10. The Aerospike Node.js client now requires
- Documentation
- JSDoc-style annotations have been added throughout the library code and new
API documentation is generated from the source code using JSDoc v3. The generated API docs are hosted
at http://www.aerospike.com/apidocs/nodejs/.
- JSDoc-style annotations have been added throughout the library code and new
v2.0.0-alpha.3 / 2016-04-18
- Improvements
- Added new filter predicates in the
Aerospike.filter
module:- contains() to match on list/map membership for integer & string values
- geoWithinRadius() to match on geospatial locations within a given radius
from another point (incl. geospatial locations in lists and maps) - geoContainsPoint() to match on geospatial regions that include given
lng/lat coordinates (incl. geospatial regions in lists and maps) - geoContains() is deprecated and has been replaced by
geoContainsGeoJSONPoint() - geoWithin() is deprecated and has been replaced by
geoWithinGeoJSONRegion()
- New async. implementation for Query#foreach (renamed from Query#execute).
- Added support for background queries with Record UDF via Query#background.
- Support aborting background queries via RecordStream#abort.
- Consolidated ScanTask, IndexTask into new Job class with support for
querying background queries as well. - Combined Scan#applyEach and Scan#background to reduce chance of mis-use.
(Record UDF can only be applied on background scan.)
- Added new filter predicates in the
- Fixes
- Ensure callbacks are always called asynchronously, even for param errors
raised by the client itself. - Fix possible memory corruption parsing UDF module or function names.
- Ensure callbacks are always called asynchronously, even for param errors
v2.0.0-alpha.2 / 2016-04-12
- Improvements
- Added support for complex secondary indexes on list and map values;
requires Aerospike server version >= 3.8. [CLIENT-684] - Added
Aerospike.info
module withparseInfo
utility method to parse info
string returned by Aerospike cluster nodes usingClient#info
method. - Added IndexTask class returned by
Client#createIndex
to replace
Client#createIndexWait
;IndexTask#waitUntilDone
polls for task
completion asynchronously. - Added new Scan API implementation via
Client#scan
.
- Added support for complex secondary indexes on list and map values;
v2.0.0-alpha.1 / 2016-03-30
- Improvements
- Use asynchronous client commands of the new Aerospike C/C++ client library
version 4.0. - Follow Node.js error-first callback conventions: The client now returns
null as the first parameter (error
) in most callbacks when the command
was executed successfully. See
backward incompatible API changes
for more details. #105,
PR #106. Thanks to
@eljefedelrodeodeljefe! - Add support for pluggable callback handler logic for backwards
compatibility with legacy error callback semantics. - The
Key
,Double
andGeoJSON
functions can be used as
Constructors now to create instances of the respective data types, e.g.
var key = new Key(ns, set, 'mykey1')
. Use of theDouble
andGeoJSON
functions as well as thekey
function as regular functions without thenew
keyword is deprecated but still supported for backwards compatibility. - The new
batchRead
command was added to support reading different
namespaces/bins for each key in a batch. This method requires Aerospike
server version >= 3.6.0. The batchGet/batchExists/batchSelect client
commands deprecated but still supported for backwards compatibility. - Added
isConnected
client method to check cluster connection status. - Improvements to the client's mocha test suite, incl. performance
improvements by re-using a single client connection for all tests. - Add missing status codes to
Aerospike.status
. - Added support for set compression threshold policy for write operations,
retry policy for read operations, and ttl policy for apply operations.
- Use asynchronous client commands of the new Aerospike C/C++ client library
- Fixes
- Node segfault when trying to query the aerospike client after closing the
connection. #88
- Node segfault when trying to query the aerospike client after closing the
- Changes
- Drop support for Node.js v0.10. The Aerospike Node.js client now requires
Node.js v0.12 or later. - The
add
client command was renamed toincr
; theadd
function
is maintained as an alias for the newincr
function for backwards
compatibility but is deprecated. - The
execute
client command was renamed toapply
; theexecute
function
is maintained as an alias for the newapply
function for backwards
compatibility but is deprecated.
- Drop support for Node.js v0.10. The Aerospike Node.js client now requires
- Documentation
- JSDoc-style annotations have been added throughout the library code and new
API documentation is generated from the source code using JSDoc v3. This is
work-in-progress and will be completed before v2.0.0-final is released.
- JSDoc-style annotations have been added throughout the library code and new
1.0.57 / 2016-03-18
- Improvements
- Update build script to support Fedora 23 as well as Korora 22/23.
#113,
#115 - Update Aerospike C client library to v4.0.3.
- Optionally read hosts config from
AEROSPIKE_HOSTS
environment variable.
Thanks to @mrbar42! - Collect TPS stats in benchmarks.
- Update Travis CI config to test latest Node.js release & add badge. Thanks
to @revington!
- Update build script to support Fedora 23 as well as Korora 22/23.
- Fixes
- Fix replica policy value overwriting gen policy [CLIENT-699]
- Fix lists being returned as bytes in listGetRange/listPopRange operations
(via C client library v4.0.3).
1.0.56 / 2016-02-11
- Improvements
- Support
operator.incr()
operation on double values. - Refactor test suite to improve performance and maintainability.
- Support
- Fixes
- Fix segfault when
client.connect()
is called without callback function.
- Fix segfault when
- Documentation
- Fix wrong method name in llist documentation. Thanks to @srinivasiyer!
- Update build dependencies for CentOS/RHEL 6.
- Clarify supported data types and (lack of) automatic data type conversions.
- Update supported Node.js versions.
1.0.55 / 2016-01-15
Features and Fixes
New Features:
- Operations on list. For more information click here. Requires server version 3.7 or later.
Improvements:
- Update C client version to 3.1.25
- Enhance benchmark to send alerts when memory leak occurs
- Return client error if one or more of the operations passed to client.operate produces a type error
- Specify license in npm package
Fixes:
- Minor fixes for examples