Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduce pyproject.toml + poetry #346

Closed
wants to merge 14 commits into from
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,22 @@

## [Unreleased]

## [0.3.3] - ???

### Changed

- introduce the `pyproject.toml` file backended with `poetry` manager. Pull request [#346](https://github.com/xzkostyan/clickhouse-sqlalchemy/pull/346) by [stankudrow](https://github.com/stankudrow). Solves issue [#345](https://github.com/xzkostyan/clickhouse-sqlalchemy/issues/345). Thanks to [DaniilAnichin](https://github.com/DaniilAnichin).

## [0.3.2] - 2024-06-12

### Added

- ``quantile`` and ``quantileIf`` functions. Pull request [#303](https://github.com/xzkostyan/clickhouse-sqlalchemy/pull/303) by [aronbierbaum](https://github.com/aronbierbaum).
- ``AggregateFunction`` and ``SimpleAggregateFunction`` aggregate types. Pull request [#297](https://github.com/xzkostyan/clickhouse-sqlalchemy/pull/297) by [aronbierbaum](https://github.com/aronbierbaum).
- Date32 type. Pull request [#307](https://github.com/xzkostyan/clickhouse-sqlalchemy/pull/307) by [BTheunissen](https://github.com/BTheunissen). Solves issue [#302](https://github.com/xzkostyan/clickhouse-sqlalchemy/issues/302).

### Fixed

- Broken nested Map types. Pull request [#315](https://github.com/xzkostyan/clickhouse-sqlalchemy/pull/315) by [aksenof](https://github.com/aksenof). Solves issue [#314](https://github.com/xzkostyan/clickhouse-sqlalchemy/issues/314).

## [0.3.1] - 2024-03-14
Expand Down
21 changes: 8 additions & 13 deletions clickhouse_sqlalchemy/__init__.py
Original file line number Diff line number Diff line change
@@ -1,15 +1,10 @@

from .ext.declarative import get_declarative_base
from .orm.session import make_session
from .sql import Table, MaterializedView, select


VERSION = (0, 3, 2)
__version__ = '.'.join(str(x) for x in VERSION)


__all__ = (
'get_declarative_base',
'make_session',
'Table', 'MaterializedView', 'select'
from clickhouse_sqlalchemy.ext.declarative import ( # noqa: F401
get_declarative_base,
)
from clickhouse_sqlalchemy.orm.session import make_session # noqa: F401
from clickhouse_sqlalchemy.sql import ( # noqa: F401
Table,
MaterializedView,
select,
)
22 changes: 9 additions & 13 deletions clickhouse_sqlalchemy/drivers/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,15 @@

from sqlalchemy import schema, types as sqltypes, util as sa_util, text
from sqlalchemy.engine import default, reflection
from sqlalchemy.sql import (
compiler, elements
)
from sqlalchemy.util import (
warn,
)

from .compilers.ddlcompiler import ClickHouseDDLCompiler
from .compilers.sqlcompiler import ClickHouseSQLCompiler
from .compilers.typecompiler import ClickHouseTypeCompiler
from .reflection import ClickHouseInspector
from .util import get_inner_spec, parse_arguments
from .. import types
from sqlalchemy.sql import compiler, elements
from sqlalchemy.util import warn

from clickhouse_sqlalchemy.drivers.compilers.ddlcompiler import ClickHouseDDLCompiler
from clickhouse_sqlalchemy.drivers.compilers.sqlcompiler import ClickHouseSQLCompiler
from clickhouse_sqlalchemy.drivers.compilers.typecompiler import ClickHouseTypeCompiler
from clickhouse_sqlalchemy.drivers.reflection import ClickHouseInspector
from clickhouse_sqlalchemy.drivers.util import get_inner_spec, parse_arguments
from clickhouse_sqlalchemy import types

# Column specifications
colspecs = {}
Expand Down
6 changes: 3 additions & 3 deletions clickhouse_sqlalchemy/engines/__init__.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@

from .mergetree import (
from clickhouse_sqlalchemy.engines.mergetree import ( # noqa: F401
MergeTree, AggregatingMergeTree, GraphiteMergeTree, CollapsingMergeTree,
VersionedCollapsingMergeTree, ReplacingMergeTree, SummingMergeTree
)
from .misc import (
from clickhouse_sqlalchemy.engines.misc import ( # noqa: F401
Distributed, View, MaterializedView,
Buffer, TinyLog, Log, Memory, Null, File
)
from .replicated import (
from clickhouse_sqlalchemy.engines.replicated import ( # noqa: F401
ReplicatedMergeTree, ReplicatedAggregatingMergeTree,
ReplicatedCollapsingMergeTree, ReplicatedVersionedCollapsingMergeTree,
ReplicatedReplacingMergeTree, ReplicatedSummingMergeTree
Expand Down
6 changes: 2 additions & 4 deletions clickhouse_sqlalchemy/exceptions.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@


class DatabaseException(Exception):
def __init__(self, orig):
super().__init__(orig)
self.orig = orig
super(DatabaseException, self).__init__(orig)

def __str__(self):
return 'Orig exception: {}'.format(self.orig)
return f"Original exception: {self.orig}"
5 changes: 1 addition & 4 deletions clickhouse_sqlalchemy/orm/__init__.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,2 @@

from .session import make_session


__all__ = ('make_session', )
from clickhouse_sqlalchemy.orm.session import make_session # noqa: F401
13 changes: 8 additions & 5 deletions clickhouse_sqlalchemy/sql/__init__.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@

from .schema import Table, MaterializedView
from .selectable import Select, select


__all__ = ('Table', 'MaterializedView', 'Select', 'select')
from clickhouse_sqlalchemy.sql.schema import ( # noqa: F401
Table,
MaterializedView,
)
from clickhouse_sqlalchemy.sql.selectable import ( # noqa: F401
Select,
select,
)
121 changes: 42 additions & 79 deletions clickhouse_sqlalchemy/types/__init__.py
Original file line number Diff line number Diff line change
@@ -1,79 +1,42 @@
__all__ = [
'String',
'Int',
'Float',
'Boolean',
'Array',
'Nullable',
'UUID',
'LowCardinality',
'Int8',
'UInt8',
'Int16',
'UInt16',
'Int32',
'UInt32',
'Int64',
'UInt64',
'Int128',
'UInt128',
'Int256',
'UInt256',
'Float32',
'Float64',
'Date',
'Date32',
'DateTime',
'DateTime64',
'Enum',
'Enum8',
'Enum16',
'Decimal',
'IPv4',
'IPv6',
'JSON',
'Nested',
'Tuple',
'Map',
'AggregateFunction',
'SimpleAggregateFunction',
]

from .common import String
from .common import Int
from .common import Float
from .common import Boolean
from .common import Array
from .common import Nullable
from .common import UUID
from .common import LowCardinality
from .common import Int8
from .common import UInt8
from .common import Int16
from .common import UInt16
from .common import Int32
from .common import UInt32
from .common import Int64
from .common import UInt64
from .common import Int128
from .common import UInt128
from .common import Int256
from .common import UInt256
from .common import Float32
from .common import Float64
from .common import Date
from .common import Date32
from .common import DateTime
from .common import DateTime64
from .common import Enum
from .common import Enum8
from .common import Enum16
from .common import Decimal
from .common import JSON
from .common import Tuple
from .common import Map
from .common import AggregateFunction
from .common import SimpleAggregateFunction
from .ip import IPv4
from .ip import IPv6
from .nested import Nested
from clickhouse_sqlalchemy.types.common import ( # noqa: F401
String,
Int,
Float,
Boolean,
Array,
Nullable,
UUID,
LowCardinality,
Int8,
UInt8,
Int16,
UInt16,
Int32,
UInt32,
Int64,
UInt64,
Int128,
UInt128,
Int256,
UInt256,
Float32,
Float64,
Date,
Date32,
DateTime,
DateTime64,
Enum,
Enum8,
Enum16,
Decimal,
JSON,
Tuple,
Map,
AggregateFunction,
SimpleAggregateFunction,
)
from clickhouse_sqlalchemy.types.ip import ( # noqa: F401
IPv4,
IPv6,
)
from clickhouse_sqlalchemy.types.nested import Nested # noqa: F401
Loading