Skip to content

Commit

Permalink
Merge branch 'release/0.33.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
ri-gilfanov committed Jul 22, 2021
2 parents 730e362 + e94444e commit a54f793
Show file tree
Hide file tree
Showing 8 changed files with 83 additions and 71 deletions.
18 changes: 9 additions & 9 deletions aiohttp_sqlalchemy/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,6 @@
sa_session_factory,
)
from aiohttp_sqlalchemy.web_handlers import (
ItemAddMixin,
ItemDeleteMixin,
ItemEditMixin,
ItemViewMixin,
ListAddMixin,
ListDeleteMixin,
ListEditMixin,
Expand All @@ -44,19 +40,23 @@
SAMixin,
SAModelMixin,
SAModelView,
UnitAddMixin,
UnitDeleteMixin,
UnitEditMixin,
UnitViewMixin,
)

__version__ = '0.32.0'
__version__ = '0.33.0'

__all__ = [
'DEFAULT_KEY',
'DuplicateAppKeyError',
'DuplicateRequestKeyError',

'ItemAddMixin',
'ItemDeleteMixin',
'ItemEditMixin',
'ItemViewMixin',
'UnitAddMixin',
'UnitDeleteMixin',
'UnitEditMixin',
'UnitViewMixin',

'ListAddMixin',
'ListDeleteMixin',
Expand Down
12 changes: 8 additions & 4 deletions aiohttp_sqlalchemy/deprecation.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,15 @@
from typing import Any

DEPRECATION_MAP = {
'ItemAddMixin': 'UnitAddMixin',
'ItemDeleteMixin': 'UnitDeleteMixin',
'ItemEditMixin': 'UnitEditMixin',
'ItemViewMixin': 'UnitViewMixin',
'OffsetPagination': 'OffsetPaginationMixin',
'SAItemAddMixin': 'ItemAddMixin',
'SAItemDeleteMixin': 'ItemDeleteMixin',
'SAItemEditMixin': 'ItemEditMixin',
'SAItemViewMixin': 'ItemViewMixin',
'SAItemAddMixin': 'UnitAddMixin',
'SAItemDeleteMixin': 'UnitDeleteMixin',
'SAItemEditMixin': 'UnitEditMixin',
'SAItemViewMixin': 'UnitViewMixin',
'SAListAddMixin': 'ListAddMixin',
'SAListDeleteMixin': 'ListDeleteMixin',
'SAListEditMixin': 'ListEditMixin',
Expand Down
16 changes: 8 additions & 8 deletions aiohttp_sqlalchemy/web_handlers.py
Original file line number Diff line number Diff line change
Expand Up @@ -67,14 +67,14 @@ async def prepare_context(self) -> None:
self.context['items'] = page.items

if page.next:
next_ = str(page.next)
self.context['next_url'] = route.url_for(page_key=next_)
kw = {'page_key': page.next}
self.context['next_url'] = route.url_for().with_query(kw)
else:
self.context['next_url'] = page.next

if page.previous:
previous_ = str(page.previous)
self.context['previous_url'] = route.url_for(page_key=previous_)
kw = {'page_key': page.previous}
self.context['previous_url'] = route.url_for().with_query(kw)
else:
self.context['previous_url'] = page.previous

Expand All @@ -83,12 +83,12 @@ class PrimaryKeyMixin(ahth.PrimaryKeyMixin, SAModelMixin, metaclass=ABCMeta):
sa_pk_attr: Any = getattr(SAModelMixin.sa_model, 'pk', None)


class ItemAddMixin(SAModelMixin, ahth.ItemMixin, metaclass=ABCMeta):
class UnitAddMixin(SAModelMixin, ahth.ItemMixin, metaclass=ABCMeta):
def sa_add(self, *, key: Optional[str] = None) -> None:
self.get_sa_session(key).add(self.item)


class ItemDeleteMixin(
class UnitDeleteMixin(
DeleteStatementMixin,
PrimaryKeyMixin,
metaclass=ABCMeta,
Expand All @@ -99,7 +99,7 @@ def get_delete_stmt(self, model: Any = None) -> Delete:
where(self.sa_pk_attr == self.pk)


class ItemEditMixin(
class UnitEditMixin(
ahth.ItemMixin,
UpdateStatementMixin,
PrimaryKeyMixin,
Expand All @@ -111,7 +111,7 @@ def get_update_stmt(self, model: Any = None) -> Update:
where(self.sa_pk_attr == self.pk)


class ItemViewMixin(
class UnitViewMixin(
ahth.ItemMixin,
SelectStatementMixin,
PrimaryKeyMixin,
Expand Down
8 changes: 8 additions & 0 deletions docs/releases.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,14 @@
========
Releases
========
Version 0.33
------------
* ``ItemAddMixin`` is deprecated. Use ``UnitAddMixin``;
* ``ItemDeleteMixin`` is deprecated. Use ``UnitDeleteMixin``;
* ``ItemEditMixin`` is deprecated. Use ``UnitEditMixin``;
* ``ItemViewMixin`` is deprecated. Use ``UnitViewMixin``.


Version 0.32
------------
* Added ``prepare_context()`` method for ``OffsetPaginationMixin``.
Expand Down
70 changes: 34 additions & 36 deletions poetry.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
[tool.poetry]
name = "aiohttp-sqlalchemy"
version = "0.32.0"
version = "0.33.0"
description = "SQLAlchemy 1.4 / 2.0 support for aiohttp."
authors = [
"Ruslan Ilyasovich Gilfanov <ri.gilfanov@yandex.ru>",
]
classifiers = [
"Development Status :: 5 - Production/Stable",
# "Framework :: aiohttp",
"Framework :: aiohttp",
"Framework :: AsyncIO",
"Operating System :: OS Independent",
"Programming Language :: Python",
Expand Down Expand Up @@ -35,8 +35,8 @@ repository = "https://github.com/ri-gilfanov/aiohttp-sqlalchemy"
python = "^3.7"
aiohttp = "^3.7.4.post0"
aiohttp-things = ">=0.13.0"
SQLAlchemy = "^1.4.21"
sqlalchemy-things = ">=0.10.0"
SQLAlchemy = "^1.4.22"
sqlalchemy-things = ">=0.10.1"
aiomysql = { version = ">=0.0.21", optional = true }
aiosqlite = { version = ">=0.17.0", optional = true }
asyncpg = { version = ">=0.23.0", optional = true }
Expand Down
4 changes: 2 additions & 2 deletions tests/test_deprecation.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ def test_deprecation() -> None:
from aiohttp_sqlalchemy import views, web_handlers
assert views is web_handlers

from aiohttp_sqlalchemy import ItemAddMixin, SAItemAddMixin
assert SAItemAddMixin is ItemAddMixin
from aiohttp_sqlalchemy import SAItemAddMixin, UnitAddMixin
assert SAItemAddMixin is UnitAddMixin

from aiohttp_sqlalchemy.web_handlers import ListAddMixin, SAListAddMixin
assert SAListAddMixin is ListAddMixin
Expand Down
18 changes: 10 additions & 8 deletions tests/test_web_handlers.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,13 @@

from aiohttp_sqlalchemy import (
SA_DEFAULT_KEY,
ItemAddMixin,
ItemDeleteMixin,
ItemEditMixin,
ItemViewMixin,
ListAddMixin,
OffsetPaginationMixin,
SABaseView,
UnitAddMixin,
UnitDeleteMixin,
UnitEditMixin,
UnitViewMixin,
init_db,
)

Expand All @@ -42,7 +42,7 @@ class Model(base_model): # type: ignore

pk = sa.Column(sa.Integer, primary_key=True)

class ItemAdd(web.View, ItemAddMixin):
class ItemAdd(web.View, UnitAddMixin):
sa_model = Model

mocked_request[SA_DEFAULT_KEY] = session
Expand All @@ -57,7 +57,7 @@ class Model(base_model): # type: ignore

pk = sa.Column(sa.Integer, primary_key=True)

class ItemDelete(web.View, ItemDeleteMixin):
class ItemDelete(web.View, UnitDeleteMixin):
sa_model = Model

view = ItemDelete(mocked_request)
Expand All @@ -70,7 +70,7 @@ class Model(base_model): # type: ignore

pk = sa.Column(sa.Integer, primary_key=True)

class InstanceEdit(web.View, ItemEditMixin):
class InstanceEdit(web.View, UnitEditMixin):
sa_model = Model

view = InstanceEdit(mocked_request)
Expand All @@ -83,7 +83,7 @@ class Model(base_model): # type: ignore

pk = sa.Column(sa.Integer, primary_key=True)

class InstanceView(web.View, ItemViewMixin):
class InstanceView(web.View, UnitViewMixin):
sa_model = Model

view = InstanceView(mocked_request)
Expand All @@ -108,6 +108,7 @@ class OffsetPaginationHandler(web.View, OffsetPaginationMixin):
request = make_mocked_request(METH_GET, '/?page_key=1')
request[SA_DEFAULT_KEY] = session
handler = OffsetPaginationHandler(request)
assert handler.page_key == 1
page = await handler.execute_select_stmt()
isinstance(page, OffsetPage)
await handler.prepare_context()
Expand All @@ -130,6 +131,7 @@ class OffsetPaginationHandler(web.View, OffsetPaginationMixin):
request = make_mocked_request(METH_GET, '/?page_key=2')
request[SA_DEFAULT_KEY] = session
handler = OffsetPaginationHandler(request)
assert handler.page_key == 2
page = await handler.execute_select_stmt()
isinstance(page, OffsetPage)
await handler.prepare_context()
Expand Down

0 comments on commit a54f793

Please sign in to comment.