3.0.0
Features
- Support datetime.date objects as a DateType
- Add Cluster.update_view_metadata
- QueryTrace option to populate partial trace sessions
- Attach column names to ResultSet
- Change default consistency level to LOCAL_ONE
Bug Fixes
- Properly SerDes nested collections when protocol_version < 3
- Evict UDTs from UserType cache on change
- Make sure query strings are always encoded UTF-8
- Track previous value of columns at instantiation in CQLengine
- UDT CQL encoding does not work for unicode values
- NetworkTopologyStrategy#make_token_replica_map does not account
for multiple racks in a DC
- Cython integer overflow on decimal type deserialization
- Query trace: if session hasn't been logged, query trace can
throw exception
3.0.0rc1
Features
- Process Modernized Schema Tables for Cassandra 3.0
- Remove deprecated features
- Don't assign trace data to Statements
- Normalize results return
- Process Materialized View Metadata/Events
- Remove blist as soft dependency
- Change default consistency level to LOCAL_QUORUM
- Normalize CQL query/export in metadata model
Bug Fixes
- Implementation of named arguments bind is non-pythonic
- CQL encoding is incorrect for NaN and Infinity floats
- Protocol downgrade issue with C* 2.0.x, 2.1.x, and python3,
with non-default logging
- ValueError when accessing usertype with non-alphanumeric
field names
- NumpyProtocolHandler does not play well with PagedResult
2.7.2
Bug Fixes
- Resolve CQL export error for UDF with zero parameters
- Remove futures dep. for Python 3
Problems found with existing distfiles:
distfiles/D6.data.ros.gz
distfiles/cstore0.2.tar.gz
distfiles/data4.tar.gz
distfiles/sphinx-2.2.7-release.tar.gz
No changes made to the cstore or mariadb55-client distinfo files.
Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden). All existing
SHA1 digests retained for now as an audit trail.
2.7.1
Bug Fixes
- Explicitly include extension source files in Manifest
2.7.0
Cython is introduced, providing compiled extensions for core modules,
and extensions for optimized results deserialization.
Features
- General Performance Improvements for Throughput
- Improve synchronous request performance with Timers
- Enable C Extensions for PyPy Runtime
- Refactor SerDes functionality for pluggable interface
- Cython SerDes Extension
- Accept iterators/generators for execute_concurrent()
- cythonize existing modules
- Pure Python murmur3 implementation
- Make driver tolerant of inconsistent metadata
Bug Fixes
- Drop Events out-of-order Cause KeyError on Processing
- DowngradingConsistencyRetryPolicy doesn't check response count on write
timeouts
- Blocking connect does not use connect_timeout
- Properly protect partition key in CQL export
- Trigger error callbacks on timeout
2.6.0
Bug Fixes
- Output proper CQL for compact tables with no clustering columns
2.6.0c2
Features
- Automatic Protocol Version Downgrade
- cqlengine Python 2.6 compatibility
- Double-dollar string quote UDF body
- Set models.DEFAULT_KEYSPACE when calling set_session
Bug Fixes
- Avoid stall while connecting to mixed version cluster
- Make SSL work with AsyncoreConnection in python 2.6.9
- Fix Murmur3Token.from_key() on Windows
- Fix cqlengine TimeUUID rounding error for Windows
- Avoid invalid compaction options in CQL export for non-SizeTiered
2.6.0c1
This release adds support for Cassandra 2.2 features, including
version 4 of the native protocol.
Features
- Default load balancing policy to TokenAware(DCAware)
- Configuration option for connection timeout
- Support User Defined Function and Aggregate metadata in C* 2.2
- Surface request client in QueryTrace for C* 2.2+
- Implement new request failure messages in protocol v4+
- Metadata model now maps index meta by index name
- Support new types in C* 2.2: date, time, smallint, tinyint
- cqle: add Double column type and remove Float overload
- Use partition key column information in prepared response for protocol v4+
- Support message custom payloads in protocol v4+
- Deprecate refresh_schema and replace with functions for specific entities
- Save trace id even when trace complete times out
- Warn when registering client UDT class for protocol < v3
- Support client warnings returned with messages in protocol v4+
- Ability to distinguish between NULL and UNSET values in protocol v4+
- Expose CQL keywords in API
Bug Fixes
- IPv6 address support on Windows
- Convert exceptions during automatic re-preparation to nice exceptions
- cqle: Quote keywords properly in table management functions
- Don't default to GeventConnection when gevent is loaded, but
not monkey-patched
- Pass dynamic host from SaslAuthProvider to SaslAuthenticator
- Make protocol read_inet work for Windows
- cqle: Correct encoding for nested types
- Update list of CQL keywords used quoting identifiers
- Make ConstantReconnectionPolicy work with infinite retries
- Accept UUIDs with uppercase hex as valid in cqlengine
2.5.0
- Integrated cqlengine object mapping package
- Utility functions for converting timeuuids and datetime (PYTHON-99)
- Schema metadata fetch window randomized, config options added (PYTHON-202)
- Support for new Date and Time Cassandra types (PYTHON-190)
- Fix index target for collection indexes (full(), keys()) (PYTHON-222)
- Thread exception during GIL cleanup (PYTHON-229)
- Workaround for rounding anomaly in datetime.utcfromtime (Python 3.4)
(PYTHON-230)
- Normalize text serialization for lookup in OrderedMap (PYTHON-231)
- Support reading CompositeType data (PYTHON-234)
- Preserve float precision in CQL encoding (PYTHON-243)
2.1.4
- SaslAuthenticator for Kerberos support (PYTHON-109)
- Heartbeat for network device keepalive and detecting failures on idle
connections (PYTHON-197)
- Support nested, frozen collections for Cassandra 2.1.3+ (PYTHON-186)
- Schema agreement wait bypass config, new call for synchronous schema
refresh (PYTHON-205)
- Add eventlet connection support (PYTHON-194)
- Schema meta fix for complex thrift tables (PYTHON-191)
- Support for 'unknown' replica placement strategies in schema meta
(PYTHON-192)
- Resolve stream ID leak on set_keyspace (PYTHON-195)
- Remove implicit timestamp scaling on serialization of numeric
timestamps (PYTHON-204)
- Resolve stream id collision when using SASL auth (PYTHON-210)
- Correct unhexlify usage for user defined type meta in Python3 (PYTHON-208)
Python client driver for Apache Cassandra. This driver works exclusively
with the Cassandra Query Language v3 (CQL3) and Cassandra's native protocol.
Cassandra versions 1.2 through 2.1 are supported.