- Temporarily restrict SQLAlchemy version <1.4
- Fix handling of PCT-encoded parts in DSN
- Fix Pool explicit parameters precedence over ones from DSN
- Fix DBException message parser for Clickhouse 21.9
- Check and fix untyped definitions
- Mark package as typed
- Switch to
limit_by
provided by new version ofclickhouse_sqlalchemy
(incompatible interface) - Fix type annotations
- Add support for
DateTime
with timezone
- Richer exception interface to simplify debugging huge inserts
- Add support for
LIMIT BY
clause - Add support for parameters in DSN
- Add
session_timeout
parameter toconnect
- Add
timeout
parameter toPool.acquire()
andPool.release()
methods for interface compatibility with other drivers (like asyncpg)
- Fix DBException message parser for Clickhouse 20.3
- Fix Decimal64 support for Clickhouse 20.1.2.4
- Retry query if it failed due to broken connection or session state
- Wrap all protocol-related errors into
ProtocolError
- Log SQL queries (separate logger is used for flexibility)
- Basic support for AggregateFunction with gentle reminder that you probably
forget to use
finalizeAggregation()
or one of*Merge()
functions aiochsa.__version__
- Add support for
FINAL
hint
- Patch compiler from
clickhouse_sqlalchemy
in subclass instead of depending on fork (that caused problems when installing from PyPI) - Add support for
SimpleAggregateFunction()
types - Compatibility with Python 3.8
- Pass INSERT values in JSONEachRow format instead of inlining (that makes driver about 10x times faster)
- Column defaults now are ignored
- Statement fragment in string representation of exception
- Remove dependency on
aiochclient
- More careful cleanup of resources
- Switch from TSVWithNamesAndTypes to JSONCompact
- Add support for custom type converters
- Parse code, display text and stack trace from error responses
- Richer
Record
interface mimicking both dict and tuple (like in asyncpg)
- Initial public release