mirror of
https://github.com/hanzo-ds/connect.git
synced 2026-10-30 20:31:24 +00:00
Imports read `datastore_connect`, distribution `datastore-connect`, so nothing has to import another product's name to talk to Hanzo Datastore. Cut from upstream 0.8.17 — the version this stack already ran — rather than from upstream HEAD, so it is a PURE RENAME with no behaviour change. Forking from HEAD would have dragged versions along with the name (connect alone jumped 0.8.17 -> 1.6.0, a major), which is a different and much riskier change wearing a rename's clothes. X-ClickHouse-* headers are untouched: they are wire protocol the server sends and expects, and a different token shape from the module name.
29 lines
881 B
Python
29 lines
881 B
Python
from typing import Optional
|
|
|
|
from datastore_connect.dbapi.connection import Connection
|
|
|
|
|
|
apilevel = '2.0' # PEP 249 DB API level
|
|
threadsafety = 2 # PEP 249 Threads may share the module and connections.
|
|
paramstyle = 'pyformat' # PEP 249 Python extended format codes, e.g. ...WHERE name=%(name)s
|
|
|
|
|
|
class Error(Exception):
|
|
pass
|
|
|
|
|
|
def connect(host: Optional[str] = None,
|
|
database: Optional[str] = None,
|
|
username: Optional[str] = '',
|
|
password: Optional[str] = '',
|
|
port: Optional[int] = None,
|
|
**kwargs):
|
|
secure = kwargs.pop('secure', False)
|
|
return Connection(host=host,
|
|
database=database,
|
|
username=username,
|
|
password=password,
|
|
port=port,
|
|
secure=secure,
|
|
**kwargs)
|