sql-athame 0.4.0a11__tar.gz → 0.4.0a13__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/.bumpversion.cfg +1 -1
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/.github/workflows/test.yml +1 -0
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/LICENSE +1 -1
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/PKG-INFO +8 -5
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/README.md +7 -4
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/pyproject.toml +1 -5
- sql_athame-0.4.0a13/sql_athame/base.py +797 -0
- sql_athame-0.4.0a13/sql_athame/dataclasses.py +1621 -0
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/tests/test_asyncpg.py +75 -0
- sql_athame-0.4.0a13/tests/test_dataclasses.py +481 -0
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/uv.lock +351 -714
- sql_athame-0.4.0a11/sql_athame/base.py +0 -318
- sql_athame-0.4.0a11/sql_athame/dataclasses.py +0 -804
- sql_athame-0.4.0a11/tests/test_dataclasses.py +0 -204
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/.editorconfig +0 -0
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/.github/workflows/publish.yml +0 -0
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/.gitignore +0 -0
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/docker-compose.yml +0 -0
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/run +0 -0
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/sql_athame/__init__.py +0 -0
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/sql_athame/escape.py +0 -0
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/sql_athame/py.typed +0 -0
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/sql_athame/sqlalchemy.py +0 -0
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/sql_athame/types.py +0 -0
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/tests/__init__.py +0 -0
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/tests/test_basic.py +0 -0
- {sql_athame-0.4.0a11 → sql_athame-0.4.0a13}/tests/test_sqlalchemy.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: sql-athame
|
3
|
-
Version: 0.4.
|
3
|
+
Version: 0.4.0a13
|
4
4
|
Summary: Python tool for slicing and dicing SQL
|
5
5
|
Project-URL: homepage, https://github.com/bdowning/sql-athame
|
6
6
|
Project-URL: repository, https://github.com/bdowning/sql-athame
|
@@ -19,6 +19,9 @@ Python tool for slicing and dicing SQL. Its intended target is
|
|
19
19
|
Postgres with _asyncpg_, though it also includes support for rendering
|
20
20
|
to a SQLAlchemy `TextClause`.
|
21
21
|
|
22
|
+
_Note that current docstrings are autogenerated and have not been
|
23
|
+
carefully reviewed; take them with a grain of salt!_
|
24
|
+
|
22
25
|
## Base query builder
|
23
26
|
|
24
27
|
### Example
|
@@ -334,9 +337,9 @@ Requires SQLAlchemy to be installed, otherwise raises `ImportError`.
|
|
334
337
|
from dataclasses import dataclass, field
|
335
338
|
from datetime import date
|
336
339
|
from uuid import UUID, uuid4
|
337
|
-
from typing import Optional
|
340
|
+
from typing import Annotated, Optional
|
338
341
|
|
339
|
-
from sql_athame import ModelBase,
|
342
|
+
from sql_athame import ModelBase, ColumnInfo, sql
|
340
343
|
|
341
344
|
|
342
345
|
@dataclass
|
@@ -345,7 +348,7 @@ class Person(ModelBase, table_name="people", primary_key="id"):
|
|
345
348
|
name: str
|
346
349
|
birthday: date
|
347
350
|
title: Optional[str] = None
|
348
|
-
extra: Optional[dict
|
351
|
+
extra: Optional[Annotated[dict, ColumnInfo(type="JSONB")]] = None
|
349
352
|
|
350
353
|
|
351
354
|
>>> list(Person.create_table_sql())
|
@@ -398,4 +401,4 @@ TODO, for now read the [source](sql_athame/dataclasses.py).
|
|
398
401
|
MIT.
|
399
402
|
|
400
403
|
---
|
401
|
-
Copyright (c) 2019
|
404
|
+
Copyright (c) 2019–2025 Brian Downing
|
@@ -4,6 +4,9 @@ Python tool for slicing and dicing SQL. Its intended target is
|
|
4
4
|
Postgres with _asyncpg_, though it also includes support for rendering
|
5
5
|
to a SQLAlchemy `TextClause`.
|
6
6
|
|
7
|
+
_Note that current docstrings are autogenerated and have not been
|
8
|
+
carefully reviewed; take them with a grain of salt!_
|
9
|
+
|
7
10
|
## Base query builder
|
8
11
|
|
9
12
|
### Example
|
@@ -319,9 +322,9 @@ Requires SQLAlchemy to be installed, otherwise raises `ImportError`.
|
|
319
322
|
from dataclasses import dataclass, field
|
320
323
|
from datetime import date
|
321
324
|
from uuid import UUID, uuid4
|
322
|
-
from typing import Optional
|
325
|
+
from typing import Annotated, Optional
|
323
326
|
|
324
|
-
from sql_athame import ModelBase,
|
327
|
+
from sql_athame import ModelBase, ColumnInfo, sql
|
325
328
|
|
326
329
|
|
327
330
|
@dataclass
|
@@ -330,7 +333,7 @@ class Person(ModelBase, table_name="people", primary_key="id"):
|
|
330
333
|
name: str
|
331
334
|
birthday: date
|
332
335
|
title: Optional[str] = None
|
333
|
-
extra: Optional[dict
|
336
|
+
extra: Optional[Annotated[dict, ColumnInfo(type="JSONB")]] = None
|
334
337
|
|
335
338
|
|
336
339
|
>>> list(Person.create_table_sql())
|
@@ -383,4 +386,4 @@ TODO, for now read the [source](sql_athame/dataclasses.py).
|
|
383
386
|
MIT.
|
384
387
|
|
385
388
|
---
|
386
|
-
Copyright (c) 2019
|
389
|
+
Copyright (c) 2019–2025 Brian Downing
|
@@ -8,7 +8,7 @@ dependencies = [
|
|
8
8
|
"typing-extensions",
|
9
9
|
]
|
10
10
|
name = "sql-athame"
|
11
|
-
version = "0.4.0-alpha-
|
11
|
+
version = "0.4.0-alpha-13"
|
12
12
|
description = "Python tool for slicing and dicing SQL"
|
13
13
|
readme = "README.md"
|
14
14
|
|
@@ -26,8 +26,6 @@ dev = [
|
|
26
26
|
"SQLAlchemy",
|
27
27
|
"asyncpg",
|
28
28
|
"bump2version",
|
29
|
-
"flake8",
|
30
|
-
"grip",
|
31
29
|
"ipython",
|
32
30
|
"mypy",
|
33
31
|
"pytest",
|
@@ -67,8 +65,6 @@ select = [
|
|
67
65
|
flake8-comprehensions.allow-dict-calls-with-keyword-arguments = true
|
68
66
|
ignore = [
|
69
67
|
"E501", # line too long
|
70
|
-
"E721", # type checks, currently broken
|
71
|
-
"ISC001", # conflicts with ruff format
|
72
68
|
"RET505", # Unnecessary `else` after `return` statement
|
73
69
|
"RET506", # Unnecessary `else` after `raise` statement
|
74
70
|
]
|