Skip to content

Commit 14a2f0e

Browse files
author
Sergio García Prado
authored
Merge pull request #445 from minos-framework/0.7.0
0.7.0
2 parents 4f88dd7 + 8705efb commit 14a2f0e

File tree

46 files changed

+557
-798
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+557
-798
lines changed

packages/core/minos-microservice-aggregate/minos/aggregate/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
__author__ = "Minos Framework Devs"
44
__email__ = "hey@minos.run"
5-
__version__ = "0.7.0.dev2"
5+
__version__ = "0.7.0.dev4"
66

77
from .actions import (
88
Action,

packages/core/minos-microservice-aggregate/minos/aggregate/entities/collections.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ def decode_data(cls, decoder: DataDecoder, target: Any, type_: ModelType, **kwar
141141
:return: A decoded instance.
142142
"""
143143
data_cls = get_args(type_.type_hints["data"])[1]
144-
target = {decoder.build(v, data_cls, **kwargs) for v in target}
144+
target = (decoder.build(v, data_cls, **kwargs) for v in target)
145145
target = {str(v["uuid"]): v for v in target}
146146
decoded = decoder.build(target, type_.type_hints["data"], **kwargs)
147147
return cls(decoded, additional_type_hints=type_.type_hints)

packages/core/minos-microservice-aggregate/poetry.lock

Lines changed: 26 additions & 26 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/core/minos-microservice-aggregate/pyproject.toml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "minos-microservice-aggregate"
3-
version = "0.7.0.dev2"
3+
version = "0.7.0.dev4"
44
description = "The Aggregate pattern of the Minos Framework"
55
readme = "README.md"
66
repository = "https://github.com/minos-framework/minos-python"
@@ -21,12 +21,12 @@ keywords = [
2121
"saga",
2222
]
2323
packages = [
24-
{ include = "minos" }
24+
{ include = "minos" },
2525
]
2626
include = [
27-
"AUTHORS.md",
28-
"HISTORY.md",
29-
"LICENSE",
27+
{ path = "AUTHORS.md", format = "sdist" },
28+
{ path = "HISTORY.md", format = "sdist" },
29+
{ path = "LICENSE", format = "sdist" },
3030
]
3131

3232
[tool.poetry.dependencies]
@@ -40,7 +40,7 @@ minos-microservice-common = { path = "../minos-microservice-common", develop = t
4040
minos-microservice-networks = { path = "../minos-microservice-networks", develop = true }
4141
black = "^22.3"
4242
isort = "^5.8.0"
43-
pytest = "^7.0.1"
43+
pytest = "^7.1.2"
4444
coverage = "^6.3"
4545
flake8 = "^4.0.1"
4646

packages/core/minos-microservice-aggregate/tests/test_aggregate/test_entities/test_collections.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
from minos.aggregate import (
1010
Action,
11+
Entity,
1112
EntitySet,
1213
IncrementalSetDiff,
1314
IncrementalSetDiffEntry,
@@ -20,6 +21,10 @@
2021
)
2122

2223

24+
class _NotHashable(Entity):
25+
foo: set[int]
26+
27+
2328
class TestEntitySet(unittest.TestCase):
2429
def test_data(self):
2530
raw = {OrderItem("John"), OrderItem("Michael")}
@@ -139,6 +144,10 @@ def test_avro_bytes(self):
139144
expected = EntitySet({OrderItem("John"), OrderItem("Michael")})
140145
self.assertEqual(expected, Model.from_avro_bytes(expected.avro_bytes))
141146

147+
def test_avro_bytes_not_hashable(self):
148+
expected = EntitySet([_NotHashable({1}), _NotHashable({2})])
149+
self.assertEqual(expected, Model.from_avro_bytes(expected.avro_bytes))
150+
142151

143152
class TestEntitySetDiff(unittest.TestCase):
144153
def setUp(self) -> None:

packages/core/minos-microservice-common/minos/common/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
"""The common core of the Minos Framework."""
22
__author__ = "Minos Framework Devs"
33
__email__ = "hey@minos.run"
4-
__version__ = "0.7.0.dev2"
4+
__version__ = "0.7.0.dev4"
55

66
from .builders import (
77
BuildableMixin,

packages/core/minos-microservice-common/minos/common/database/clients/abc.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,11 +99,14 @@ async def execute(self, operation: DatabaseOperation) -> None:
9999
await self._create_lock(operation.lock)
100100

101101
if isinstance(operation, ComposedDatabaseOperation):
102-
for op in operation.operations:
103-
await wait_for(self._execute(op), operation.timeout)
102+
await wait_for(self._execute_composed(operation), operation.timeout)
104103
else:
105104
await wait_for(self._execute(operation), operation.timeout)
106105

106+
async def _execute_composed(self, operation: ComposedDatabaseOperation) -> None:
107+
for op in operation.operations:
108+
await self.execute(op)
109+
107110
@abstractmethod
108111
async def _execute(self, operation: DatabaseOperation) -> None:
109112
raise NotImplementedError

packages/core/minos-microservice-common/minos/common/database/locks/impl.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@
55
from collections.abc import (
66
Hashable,
77
)
8-
9-
from pyparsing import (
8+
from typing import (
109
Optional,
1110
)
1211

packages/core/minos-microservice-common/poetry.lock

Lines changed: 23 additions & 23 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/core/minos-microservice-common/pyproject.toml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "minos-microservice-common"
3-
version = "0.7.0.dev2"
3+
version = "0.7.0.dev4"
44
description = "The common core of the Minos Framework"
55
readme = "README.md"
66
repository = "https://github.com/minos-framework/minos-python"
@@ -21,12 +21,12 @@ keywords = [
2121
"saga",
2222
]
2323
packages = [
24-
{ include = "minos" }
24+
{ include = "minos" },
2525
]
2626
include = [
27-
"AUTHORS.md",
28-
"HISTORY.md",
29-
"LICENSE",
27+
{ path = "AUTHORS.md", format = "sdist" },
28+
{ path = "HISTORY.md", format = "sdist" },
29+
{ path = "LICENSE", format = "sdist" },
3030
]
3131

3232
[tool.poetry.dependencies]

0 commit comments

Comments
 (0)