From a2d8139309965348c90e124445b64c4f2e4aabcb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sergio=20Garc=C3=ADa=20Prado?= Date: Thu, 3 Feb 2022 10:10:41 +0100 Subject: [PATCH 1/4] ISSUE #323 * Update to `minos-*@0.5.0`. --- microservices/authentication/config.yml | 6 +- microservices/authentication/poetry.lock | 160 +++++++++++------- microservices/authentication/pyproject.toml | 12 +- .../authentication/src/aggregates.py | 16 +- .../authentication/src/commands/services.py | 2 +- .../authentication/src/queries/services.py | 6 +- microservices/cart/config.yml | 6 +- microservices/cart/poetry.lock | 160 +++++++++++------- microservices/cart/pyproject.toml | 12 +- microservices/cart/src/aggregates.py | 16 +- microservices/cart/src/queries/services.py | 16 +- microservices/customer/config.yml | 6 +- microservices/customer/poetry.lock | 160 +++++++++++------- microservices/customer/pyproject.toml | 12 +- microservices/customer/src/aggregates.py | 6 +- .../tests/test_commands/test_services.py | 4 +- microservices/order/config.yml | 6 +- microservices/order/poetry.lock | 160 +++++++++++------- microservices/order/pyproject.toml | 12 +- microservices/order/src/aggregates.py | 32 ++-- microservices/order/src/queries/services.py | 4 +- microservices/payment/config.yml | 6 +- microservices/payment/poetry.lock | 160 +++++++++++------- microservices/payment/pyproject.toml | 12 +- microservices/payment/src/aggregates.py | 6 +- microservices/payment/src/queries/services.py | 6 +- microservices/product/config.yml | 6 +- microservices/product/poetry.lock | 160 +++++++++++------- microservices/product/pyproject.toml | 12 +- microservices/product/src/aggregates.py | 4 +- .../product/src/commands/services.py | 10 +- microservices/product/src/queries/services.py | 12 +- microservices/review/config.yml | 6 +- microservices/review/poetry.lock | 160 +++++++++++------- microservices/review/pyproject.toml | 12 +- microservices/review/src/aggregates.py | 20 +-- microservices/review/src/queries/services.py | 10 +- microservices/ticket/config.yml | 6 +- microservices/ticket/poetry.lock | 160 +++++++++++------- microservices/ticket/pyproject.toml | 12 +- microservices/ticket/src/aggregates.py | 16 +- microservices/ticket/src/queries/services.py | 6 +- 42 files changed, 1000 insertions(+), 616 deletions(-) diff --git a/microservices/authentication/config.yml b/microservices/authentication/config.yml index bc1f88ab..f7d194f1 100644 --- a/microservices/authentication/config.yml +++ b/microservices/authentication/config.yml @@ -4,8 +4,8 @@ service: injections: lock_pool: minos.common.PostgreSqlLockPool postgresql_pool: minos.common.PostgreSqlPool - broker_publisher: minos.networks.PostgreSqlQueuedKafkaBrokerPublisher - broker_subscriber_builder: minos.networks.PostgreSqlQueuedKafkaBrokerSubscriberBuilder + broker_publisher: minos.plugins.kafka.InMemoryQueuedKafkaBrokerPublisher + broker_subscriber_builder: minos.plugins.kafka.InMemoryQueuedKafkaBrokerSubscriberBuilder broker_pool: minos.networks.BrokerClientPool transaction_repository: minos.aggregate.PostgreSqlTransactionRepository event_repository: minos.aggregate.PostgreSqlEventRepository @@ -55,6 +55,6 @@ saga: storage: path: "./auth.lmdb" discovery: - client: minos.networks.MinosDiscoveryClient + client: minos.plugins.minos_discovery.MinosDiscoveryClient host: localhost port: 5567 diff --git a/microservices/authentication/poetry.lock b/microservices/authentication/poetry.lock index dfa11d5c..10d3cb6c 100644 --- a/microservices/authentication/poetry.lock +++ b/microservices/authentication/poetry.lock @@ -325,81 +325,140 @@ category = "dev" optional = false python-versions = "*" +[[package]] +name = "minos-broker-kafka" +version = "0.4.1" +description = "Minos Broker Kafka package" +category = "main" +optional = false +python-versions = "^3.9" +develop = true + +[package.dependencies] +aiokafka = "^0.7.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/plugins/minos-broker-kafka" + +[[package]] +name = "minos-discovery-minos" +version = "0.4.1" +description = "Minos Discovery Minos package" +category = "main" +optional = false +python-versions = "^3.9" +develop = true + +[package.dependencies] +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/plugins/minos-discovery-minos" + [[package]] name = "minos-microservice-aggregate" -version = "0.4.0" -description = "Python Package for Minos Microservices containing all the Aggregate stuff" +version = "0.4.1" +description = "Python Package for Minos Microservices containing all the RootEntity stuff" category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-aggregate" [[package]] name = "minos-microservice-common" -version = "0.4.0" +version = "0.4.1" description = "Python Package with common Classes and Utilities used in Minos Microservices." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -aiomisc = ">=14.0.3,<15.0.0" -aiopg = ">=1.2.1,<2.0.0" -cached-property = ">=1.5.2,<2.0.0" -dependency-injector = ">=4.32.2,<5.0.0" -fastavro = ">=1.4.0,<2.0.0" -lmdb = ">=1.2.1,<2.0.0" -orjson = ">=3.5.2,<4.0.0" +aiomisc = "^14.0.3" +aiopg = "^1.2.1" +cached-property = "^1.5.2" +dependency-injector = "^4.32.2" +fastavro = "^1.4.0" +lmdb = "^1.2.1" +orjson = "^3.5.2" PyYAML = ">=5.4.1,<7.0.0" +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-common" + [[package]] name = "minos-microservice-cqrs" -version = "0.4.0" +version = "0.4.1" description = "Minos Microservice CQRS package" category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -dependency-injector = ">=4.34.0,<5.0.0" -minos-microservice-aggregate = ">=0.4.0,<0.5.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +dependency-injector = "^4.34.0" +minos-microservice-aggregate = "^0.4.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-cqrs" [[package]] name = "minos-microservice-networks" -version = "0.4.0" +version = "0.4.1" description = "Python Package with the common network classes and utilities used in Minos Microservice." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -aiohttp = ">=3.7.4,<4.0.0" -aiokafka = ">=0.7.0,<0.8.0" -aiomisc = ">=14.0.3,<15.0.0" -aiopg = ">=1.2.1,<2.0.0" -crontab = ">=0.23.0,<0.24.0" -dependency-injector = ">=4.32.2,<5.0.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -orjson = ">=3.6.5,<4.0.0" +aiohttp = "^3.7.4" +aiomisc = "^14.0.3" +aiopg = "^1.2.1" +crontab = "^0.23.0" +dependency-injector = "^4.32.2" +minos-microservice-common = "^0.4.0" +orjson = "^3.6.5" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-networks" [[package]] name = "minos-microservice-saga" -version = "0.4.0" +version = "0.4.1" description = "Saga Library for MinOS project." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -dependency-injector = ">=4.32.2,<5.0.0" -minos-microservice-aggregate = ">=0.4.0,<0.5.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +dependency-injector = "^4.32.2" +minos-microservice-aggregate = "^0.4.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-saga" [[package]] name = "multidict" @@ -629,7 +688,7 @@ multidict = ">=4.0" [metadata] lock-version = "1.1" python-versions = "^3.9" -content-hash = "403ecde20bf233bde5b7c34999054453942c6d007fceaf06f9814bb9916796c1" +content-hash = "6be3f25508c6aa983167b59a6df639b85f71aea0d635d0d0b497950088a7d69e" [metadata.files] aiohttp = [ @@ -1065,26 +1124,13 @@ mccabe = [ {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, ] -minos-microservice-aggregate = [ - {file = "minos-microservice-aggregate-0.4.0.tar.gz", hash = "sha256:2ada8638f7bfec2c120df452648f438710d7e5dd63612d09c1ba7f8cb41ba23d"}, - {file = "minos_microservice_aggregate-0.4.0-py3-none-any.whl", hash = "sha256:9edcb9931f7aeb9a472b64259fd7d0c1363d9ea5ee59fc5282642748a1c76ed3"}, -] -minos-microservice-common = [ - {file = "minos-microservice-common-0.4.0.tar.gz", hash = "sha256:b74995fba27ca383e52804e2c0013350d747dcc03c38098ad2026a9cceb04996"}, - {file = "minos_microservice_common-0.4.0-py3-none-any.whl", hash = "sha256:65cecd809b243007d57740b7d40349544d6e98a69ce84aac86ca06a2a4b97e29"}, -] -minos-microservice-cqrs = [ - {file = "minos-microservice-cqrs-0.4.0.tar.gz", hash = "sha256:f494a4916b0ec4ad14e813e617ac307f895fa97d777e5fd457b1c5c3c45db471"}, - {file = "minos_microservice_cqrs-0.4.0-py3-none-any.whl", hash = "sha256:f6998cfb9cb870139f851166f6b0e0975af1ce3aac0171fe862260b9178c7f76"}, -] -minos-microservice-networks = [ - {file = "minos-microservice-networks-0.4.0.tar.gz", hash = "sha256:4aa1791a723e148bc06fcb15e39ac9bd852d54a5101dcf4f5e1d6a7b472b9888"}, - {file = "minos_microservice_networks-0.4.0-py3-none-any.whl", hash = "sha256:94ef940aa7c5a3f00127bed312ebea1c635be569c6500c81ce7914cbb5c4c7e9"}, -] -minos-microservice-saga = [ - {file = "minos-microservice-saga-0.4.0.tar.gz", hash = "sha256:6c1d7ff41261253512d1f1bb00a9d0c54b4b9860df470c71a424547fbe01638c"}, - {file = "minos_microservice_saga-0.4.0-py3-none-any.whl", hash = "sha256:2cb332de5e405243b71f38ed7453c0f6d692e96827bb76811595425383fad18b"}, -] +minos-broker-kafka = [] +minos-discovery-minos = [] +minos-microservice-aggregate = [] +minos-microservice-common = [] +minos-microservice-cqrs = [] +minos-microservice-networks = [] +minos-microservice-saga = [] multidict = [ {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b9e95a740109c6047602f4db4da9949e6c5945cefbad34a1299775ddc9a62e2"}, {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac0e27844758d7177989ce406acc6a83c16ed4524ebc363c1f748cba184d89d3"}, diff --git a/microservices/authentication/pyproject.toml b/microservices/authentication/pyproject.toml index 7ebec317..26b704de 100644 --- a/microservices/authentication/pyproject.toml +++ b/microservices/authentication/pyproject.toml @@ -7,11 +7,13 @@ packages = [{ include = "src" }] [tool.poetry.dependencies] python = "^3.9" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-saga = "^0.4.0" -minos-microservice-cqrs = "^0.4.0" +minos-microservice-common = { path = "../../../minos-python/packages/core/minos-microservice-common", develop = true } +minos-microservice-networks = { path = "../../../minos-python/packages/core/minos-microservice-networks", develop = true } +minos-microservice-aggregate = { path = "../../../minos-python/packages/core/minos-microservice-aggregate", develop = true } +minos-microservice-saga = { path = "../../../minos-python/packages/core/minos-microservice-saga", develop = true } +minos-microservice-cqrs = { path = "../../../minos-python/packages/core/minos-microservice-cqrs", develop = true } +minos-broker-kafka = { path = "../../../minos-python/packages/plugins/minos-broker-kafka", develop = true } +minos-discovery-minos = { path = "../../../minos-python/packages/plugins/minos-discovery-minos", develop = true } typer = "^0.3.2" PyJWT = "^2.1.0" SQLAlchemy = "1.4.22" diff --git a/microservices/authentication/src/aggregates.py b/microservices/authentication/src/aggregates.py index d140b488..74cd72be 100644 --- a/microservices/authentication/src/aggregates.py +++ b/microservices/authentication/src/aggregates.py @@ -3,15 +3,15 @@ ) from minos.aggregate import ( - Aggregate, - AggregateRef, + RootEntity, + ExternalEntity, Condition, - ModelRef, + Ref, ) -class Credentials(Aggregate): - """Credentials Aggregate class. +class Credentials(RootEntity): + """Credentials RootEntity class. The purpose of this aggregate is to store the needed information to be authenticated. """ @@ -19,7 +19,7 @@ class Credentials(Aggregate): username: str password: str active: bool - user: ModelRef[Customer] + user: Ref[Customer] @classmethod async def exists_username(cls, username: str) -> bool: @@ -35,5 +35,5 @@ async def exists_username(cls, username: str) -> bool: return False -class Customer(AggregateRef): - """Customer Aggregate-Reference class.""" +class Customer(ExternalEntity): + """Customer ExternalEntity class.""" diff --git a/microservices/authentication/src/commands/services.py b/microservices/authentication/src/commands/services.py index 720e01cc..5bb637be 100644 --- a/microservices/authentication/src/commands/services.py +++ b/microservices/authentication/src/commands/services.py @@ -75,7 +75,7 @@ async def delete_credentials(self, request: Request) -> None: async def user_deleted(self, request: Request) -> None: """Delete the associated credentials to the already deleted user. - :param request: A ``Request`` containing a ``AggregateDiff`` instance. + :param request: A ``Request`` containing a ``Event`` instance. :return: This method does not return anything. """ diff --git a/microservices/authentication/src/queries/services.py b/microservices/authentication/src/queries/services.py index 4c266d08..09adc272 100644 --- a/microservices/authentication/src/queries/services.py +++ b/microservices/authentication/src/queries/services.py @@ -10,7 +10,7 @@ InvalidTokenError, ) from minos.aggregate import ( - AggregateDiff, + Event, ) from minos.cqrs import ( QueryService, @@ -124,8 +124,8 @@ async def unique_username(self, request: Request) -> Response: async def credentials_created(self, request: Request) -> None: """Handle the ``CredentialsCreated`` domain event. - :param request: A ``Request`` instance containing the ``AggregateDiff``. + :param request: A ``Request`` instance containing the ``Event``. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() await self.repository.create_credentials(diff.uuid, diff.username, diff.password, diff.active, diff.user) diff --git a/microservices/cart/config.yml b/microservices/cart/config.yml index baf18e68..294cb234 100644 --- a/microservices/cart/config.yml +++ b/microservices/cart/config.yml @@ -4,8 +4,8 @@ service: injections: lock_pool: minos.common.PostgreSqlLockPool postgresql_pool: minos.common.PostgreSqlPool - broker_publisher: minos.networks.PostgreSqlQueuedKafkaBrokerPublisher - broker_subscriber_builder: minos.networks.PostgreSqlQueuedKafkaBrokerSubscriberBuilder + broker_publisher: minos.plugins.kafka.InMemoryQueuedKafkaBrokerPublisher + broker_subscriber_builder: minos.plugins.kafka.InMemoryQueuedKafkaBrokerSubscriberBuilder broker_pool: minos.networks.BrokerClientPool transaction_repository: minos.aggregate.PostgreSqlTransactionRepository event_repository: minos.aggregate.PostgreSqlEventRepository @@ -55,6 +55,6 @@ saga: storage: path: "./cart.lmdb" discovery: - client: minos.networks.MinosDiscoveryClient + client: minos.plugins.minos_discovery.MinosDiscoveryClient host: localhost port: 5567 \ No newline at end of file diff --git a/microservices/cart/poetry.lock b/microservices/cart/poetry.lock index b935da03..609e3767 100644 --- a/microservices/cart/poetry.lock +++ b/microservices/cart/poetry.lock @@ -317,81 +317,140 @@ category = "dev" optional = false python-versions = "*" +[[package]] +name = "minos-broker-kafka" +version = "0.4.1" +description = "Minos Broker Kafka package" +category = "main" +optional = false +python-versions = "^3.9" +develop = true + +[package.dependencies] +aiokafka = "^0.7.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/plugins/minos-broker-kafka" + +[[package]] +name = "minos-discovery-minos" +version = "0.4.1" +description = "Minos Discovery Minos package" +category = "main" +optional = false +python-versions = "^3.9" +develop = true + +[package.dependencies] +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/plugins/minos-discovery-minos" + [[package]] name = "minos-microservice-aggregate" -version = "0.4.0" -description = "Python Package for Minos Microservices containing all the Aggregate stuff" +version = "0.4.1" +description = "Python Package for Minos Microservices containing all the RootEntity stuff" category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-aggregate" [[package]] name = "minos-microservice-common" -version = "0.4.0" +version = "0.4.1" description = "Python Package with common Classes and Utilities used in Minos Microservices." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -aiomisc = ">=14.0.3,<15.0.0" -aiopg = ">=1.2.1,<2.0.0" -cached-property = ">=1.5.2,<2.0.0" -dependency-injector = ">=4.32.2,<5.0.0" -fastavro = ">=1.4.0,<2.0.0" -lmdb = ">=1.2.1,<2.0.0" -orjson = ">=3.5.2,<4.0.0" +aiomisc = "^14.0.3" +aiopg = "^1.2.1" +cached-property = "^1.5.2" +dependency-injector = "^4.32.2" +fastavro = "^1.4.0" +lmdb = "^1.2.1" +orjson = "^3.5.2" PyYAML = ">=5.4.1,<7.0.0" +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-common" + [[package]] name = "minos-microservice-cqrs" -version = "0.4.0" +version = "0.4.1" description = "Minos Microservice CQRS package" category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -dependency-injector = ">=4.34.0,<5.0.0" -minos-microservice-aggregate = ">=0.4.0,<0.5.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +dependency-injector = "^4.34.0" +minos-microservice-aggregate = "^0.4.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-cqrs" [[package]] name = "minos-microservice-networks" -version = "0.4.0" +version = "0.4.1" description = "Python Package with the common network classes and utilities used in Minos Microservice." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -aiohttp = ">=3.7.4,<4.0.0" -aiokafka = ">=0.7.0,<0.8.0" -aiomisc = ">=14.0.3,<15.0.0" -aiopg = ">=1.2.1,<2.0.0" -crontab = ">=0.23.0,<0.24.0" -dependency-injector = ">=4.32.2,<5.0.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -orjson = ">=3.6.5,<4.0.0" +aiohttp = "^3.7.4" +aiomisc = "^14.0.3" +aiopg = "^1.2.1" +crontab = "^0.23.0" +dependency-injector = "^4.32.2" +minos-microservice-common = "^0.4.0" +orjson = "^3.6.5" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-networks" [[package]] name = "minos-microservice-saga" -version = "0.4.0" +version = "0.4.1" description = "Saga Library for MinOS project." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -dependency-injector = ">=4.32.2,<5.0.0" -minos-microservice-aggregate = ">=0.4.0,<0.5.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +dependency-injector = "^4.32.2" +minos-microservice-aggregate = "^0.4.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-saga" [[package]] name = "more-itertools" @@ -623,7 +682,7 @@ multidict = ">=4.0" [metadata] lock-version = "1.1" python-versions = "^3.9" -content-hash = "51f97137bb2d470f472478558b670ad76f21bca07cca408cbf7c91a1206f4169" +content-hash = "48109052dd28bdaa5821d07aa0850af45a05b64472eb589cf7f50fbd96c92f2f" [metadata.files] aiohttp = [ @@ -1055,26 +1114,13 @@ mccabe = [ {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, ] -minos-microservice-aggregate = [ - {file = "minos-microservice-aggregate-0.4.0.tar.gz", hash = "sha256:2ada8638f7bfec2c120df452648f438710d7e5dd63612d09c1ba7f8cb41ba23d"}, - {file = "minos_microservice_aggregate-0.4.0-py3-none-any.whl", hash = "sha256:9edcb9931f7aeb9a472b64259fd7d0c1363d9ea5ee59fc5282642748a1c76ed3"}, -] -minos-microservice-common = [ - {file = "minos-microservice-common-0.4.0.tar.gz", hash = "sha256:b74995fba27ca383e52804e2c0013350d747dcc03c38098ad2026a9cceb04996"}, - {file = "minos_microservice_common-0.4.0-py3-none-any.whl", hash = "sha256:65cecd809b243007d57740b7d40349544d6e98a69ce84aac86ca06a2a4b97e29"}, -] -minos-microservice-cqrs = [ - {file = "minos-microservice-cqrs-0.4.0.tar.gz", hash = "sha256:f494a4916b0ec4ad14e813e617ac307f895fa97d777e5fd457b1c5c3c45db471"}, - {file = "minos_microservice_cqrs-0.4.0-py3-none-any.whl", hash = "sha256:f6998cfb9cb870139f851166f6b0e0975af1ce3aac0171fe862260b9178c7f76"}, -] -minos-microservice-networks = [ - {file = "minos-microservice-networks-0.4.0.tar.gz", hash = "sha256:4aa1791a723e148bc06fcb15e39ac9bd852d54a5101dcf4f5e1d6a7b472b9888"}, - {file = "minos_microservice_networks-0.4.0-py3-none-any.whl", hash = "sha256:94ef940aa7c5a3f00127bed312ebea1c635be569c6500c81ce7914cbb5c4c7e9"}, -] -minos-microservice-saga = [ - {file = "minos-microservice-saga-0.4.0.tar.gz", hash = "sha256:6c1d7ff41261253512d1f1bb00a9d0c54b4b9860df470c71a424547fbe01638c"}, - {file = "minos_microservice_saga-0.4.0-py3-none-any.whl", hash = "sha256:2cb332de5e405243b71f38ed7453c0f6d692e96827bb76811595425383fad18b"}, -] +minos-broker-kafka = [] +minos-discovery-minos = [] +minos-microservice-aggregate = [] +minos-microservice-common = [] +minos-microservice-cqrs = [] +minos-microservice-networks = [] +minos-microservice-saga = [] more-itertools = [ {file = "more-itertools-8.12.0.tar.gz", hash = "sha256:7dc6ad46f05f545f900dd59e8dfb4e84a4827b97b3cfecb175ea0c7d247f6064"}, {file = "more_itertools-8.12.0-py3-none-any.whl", hash = "sha256:43e6dd9942dffd72661a2c4ef383ad7da1e6a3e968a927ad7a6083ab410a688b"}, diff --git a/microservices/cart/pyproject.toml b/microservices/cart/pyproject.toml index f5398c35..0ecf325b 100644 --- a/microservices/cart/pyproject.toml +++ b/microservices/cart/pyproject.toml @@ -7,11 +7,13 @@ packages = [{ include = "src" }] [tool.poetry.dependencies] python = "^3.9" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-saga = "^0.4.0" -minos-microservice-cqrs = "^0.4.0" +minos-microservice-common = { path = "../../../minos-python/packages/core/minos-microservice-common", develop = true } +minos-microservice-networks = { path = "../../../minos-python/packages/core/minos-microservice-networks", develop = true } +minos-microservice-aggregate = { path = "../../../minos-python/packages/core/minos-microservice-aggregate", develop = true } +minos-microservice-saga = { path = "../../../minos-python/packages/core/minos-microservice-saga", develop = true } +minos-microservice-cqrs = { path = "../../../minos-python/packages/core/minos-microservice-cqrs", develop = true } +minos-broker-kafka = { path = "../../../minos-python/packages/plugins/minos-broker-kafka", develop = true } +minos-discovery-minos = { path = "../../../minos-python/packages/plugins/minos-discovery-minos", develop = true } typer = "^0.3.2" SQLAlchemy = "1.4.22" diff --git a/microservices/cart/src/aggregates.py b/microservices/cart/src/aggregates.py index 7d50d6ee..4d38338b 100644 --- a/microservices/cart/src/aggregates.py +++ b/microservices/cart/src/aggregates.py @@ -3,16 +3,16 @@ ) from minos.aggregate import ( - Aggregate, - AggregateRef, + RootEntity, + ExternalEntity, Entity, EntitySet, - ModelRef, + Ref, ) -class Cart(Aggregate): - """Cart Aggregate class.""" +class Cart(RootEntity): + """Cart RootEntity class.""" user: int entries: EntitySet[CartEntry] @@ -22,11 +22,11 @@ class CartEntry(Entity): """Cart Item DeclarativeModel class.""" quantity: int - product: ModelRef[Product] + product: Ref[Product] -class Product(AggregateRef): - """Product AggregateRef class.""" +class Product(ExternalEntity): + """Product ExternalEntity class.""" title: str description: str diff --git a/microservices/cart/src/queries/services.py b/microservices/cart/src/queries/services.py index efd3ed0b..74b7a02a 100644 --- a/microservices/cart/src/queries/services.py +++ b/microservices/cart/src/queries/services.py @@ -2,7 +2,7 @@ Provide, ) from minos.aggregate import ( - AggregateDiff, + Event, ) from minos.cqrs import ( QueryService, @@ -48,7 +48,7 @@ async def cart_created(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() await self.repository.create_cart(diff.uuid, diff.version, diff.user) @@ -58,7 +58,7 @@ async def cart_updated(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() print(diff) @enroute.broker.event("CartUpdated.entries.create") @@ -67,7 +67,7 @@ async def cart_item_created(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() for entry in diff["entries"]: await self.repository.insert_cart_item( @@ -85,7 +85,7 @@ async def cart_item_deleted(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() for entry in diff["entries"]: await self.repository.delete_cart_item(diff.uuid, entry.product.uuid) @@ -96,7 +96,7 @@ async def cart_item_updated(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() for entry in diff["entries"]: await self.repository.update_cart_item( @@ -116,7 +116,7 @@ async def product_updated(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() await self.repository.update_cart_items(uuid=diff.uuid, **diff.fields_diff) print(diff) @@ -126,7 +126,7 @@ async def cart_deleted(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() cart_uuid = diff.uuid await self.repository.delete_cart(cart_uuid) diff --git a/microservices/customer/config.yml b/microservices/customer/config.yml index d6d5bfc1..bcacc749 100644 --- a/microservices/customer/config.yml +++ b/microservices/customer/config.yml @@ -4,8 +4,8 @@ service: injections: lock_pool: minos.common.PostgreSqlLockPool postgresql_pool: minos.common.PostgreSqlPool - broker_publisher: minos.networks.PostgreSqlQueuedKafkaBrokerPublisher - broker_subscriber_builder: minos.networks.PostgreSqlQueuedKafkaBrokerSubscriberBuilder + broker_publisher: minos.plugins.kafka.InMemoryQueuedKafkaBrokerPublisher + broker_subscriber_builder: minos.plugins.kafka.InMemoryQueuedKafkaBrokerSubscriberBuilder broker_pool: minos.networks.BrokerClientPool transaction_repository: minos.aggregate.PostgreSqlTransactionRepository event_repository: minos.aggregate.PostgreSqlEventRepository @@ -54,6 +54,6 @@ saga: storage: path: "./customer.lmdb" discovery: - client: minos.networks.MinosDiscoveryClient + client: minos.plugins.minos_discovery.MinosDiscoveryClient host: localhost port: 5567 \ No newline at end of file diff --git a/microservices/customer/poetry.lock b/microservices/customer/poetry.lock index 479bbf4e..5807e6e9 100644 --- a/microservices/customer/poetry.lock +++ b/microservices/customer/poetry.lock @@ -314,81 +314,140 @@ category = "dev" optional = false python-versions = "*" +[[package]] +name = "minos-broker-kafka" +version = "0.4.1" +description = "Minos Broker Kafka package" +category = "main" +optional = false +python-versions = "^3.9" +develop = true + +[package.dependencies] +aiokafka = "^0.7.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/plugins/minos-broker-kafka" + +[[package]] +name = "minos-discovery-minos" +version = "0.4.1" +description = "Minos Discovery Minos package" +category = "main" +optional = false +python-versions = "^3.9" +develop = true + +[package.dependencies] +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/plugins/minos-discovery-minos" + [[package]] name = "minos-microservice-aggregate" -version = "0.4.0" -description = "Python Package for Minos Microservices containing all the Aggregate stuff" +version = "0.4.1" +description = "Python Package for Minos Microservices containing all the RootEntity stuff" category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-aggregate" [[package]] name = "minos-microservice-common" -version = "0.4.0" +version = "0.4.1" description = "Python Package with common Classes and Utilities used in Minos Microservices." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -aiomisc = ">=14.0.3,<15.0.0" -aiopg = ">=1.2.1,<2.0.0" -cached-property = ">=1.5.2,<2.0.0" -dependency-injector = ">=4.32.2,<5.0.0" -fastavro = ">=1.4.0,<2.0.0" -lmdb = ">=1.2.1,<2.0.0" -orjson = ">=3.5.2,<4.0.0" +aiomisc = "^14.0.3" +aiopg = "^1.2.1" +cached-property = "^1.5.2" +dependency-injector = "^4.32.2" +fastavro = "^1.4.0" +lmdb = "^1.2.1" +orjson = "^3.5.2" PyYAML = ">=5.4.1,<7.0.0" +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-common" + [[package]] name = "minos-microservice-cqrs" -version = "0.4.0" +version = "0.4.1" description = "Minos Microservice CQRS package" category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -dependency-injector = ">=4.34.0,<5.0.0" -minos-microservice-aggregate = ">=0.4.0,<0.5.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +dependency-injector = "^4.34.0" +minos-microservice-aggregate = "^0.4.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-cqrs" [[package]] name = "minos-microservice-networks" -version = "0.4.0" +version = "0.4.1" description = "Python Package with the common network classes and utilities used in Minos Microservice." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -aiohttp = ">=3.7.4,<4.0.0" -aiokafka = ">=0.7.0,<0.8.0" -aiomisc = ">=14.0.3,<15.0.0" -aiopg = ">=1.2.1,<2.0.0" -crontab = ">=0.23.0,<0.24.0" -dependency-injector = ">=4.32.2,<5.0.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -orjson = ">=3.6.5,<4.0.0" +aiohttp = "^3.7.4" +aiomisc = "^14.0.3" +aiopg = "^1.2.1" +crontab = "^0.23.0" +dependency-injector = "^4.32.2" +minos-microservice-common = "^0.4.0" +orjson = "^3.6.5" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-networks" [[package]] name = "minos-microservice-saga" -version = "0.4.0" +version = "0.4.1" description = "Saga Library for MinOS project." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -dependency-injector = ">=4.32.2,<5.0.0" -minos-microservice-aggregate = ">=0.4.0,<0.5.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +dependency-injector = "^4.32.2" +minos-microservice-aggregate = "^0.4.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-saga" [[package]] name = "multidict" @@ -573,7 +632,7 @@ multidict = ">=4.0" [metadata] lock-version = "1.1" python-versions = "^3.9" -content-hash = "7da1d10e1e247f171e7b47edd4882cb7089e4579bf16637f6eabeb675c2cef18" +content-hash = "993b94cd6a1db223673a58f294c6c42b3b58cf97a9e96d9100ff20b005df81f3" [metadata.files] aiohttp = [ @@ -952,26 +1011,13 @@ mccabe = [ {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, ] -minos-microservice-aggregate = [ - {file = "minos-microservice-aggregate-0.4.0.tar.gz", hash = "sha256:2ada8638f7bfec2c120df452648f438710d7e5dd63612d09c1ba7f8cb41ba23d"}, - {file = "minos_microservice_aggregate-0.4.0-py3-none-any.whl", hash = "sha256:9edcb9931f7aeb9a472b64259fd7d0c1363d9ea5ee59fc5282642748a1c76ed3"}, -] -minos-microservice-common = [ - {file = "minos-microservice-common-0.4.0.tar.gz", hash = "sha256:b74995fba27ca383e52804e2c0013350d747dcc03c38098ad2026a9cceb04996"}, - {file = "minos_microservice_common-0.4.0-py3-none-any.whl", hash = "sha256:65cecd809b243007d57740b7d40349544d6e98a69ce84aac86ca06a2a4b97e29"}, -] -minos-microservice-cqrs = [ - {file = "minos-microservice-cqrs-0.4.0.tar.gz", hash = "sha256:f494a4916b0ec4ad14e813e617ac307f895fa97d777e5fd457b1c5c3c45db471"}, - {file = "minos_microservice_cqrs-0.4.0-py3-none-any.whl", hash = "sha256:f6998cfb9cb870139f851166f6b0e0975af1ce3aac0171fe862260b9178c7f76"}, -] -minos-microservice-networks = [ - {file = "minos-microservice-networks-0.4.0.tar.gz", hash = "sha256:4aa1791a723e148bc06fcb15e39ac9bd852d54a5101dcf4f5e1d6a7b472b9888"}, - {file = "minos_microservice_networks-0.4.0-py3-none-any.whl", hash = "sha256:94ef940aa7c5a3f00127bed312ebea1c635be569c6500c81ce7914cbb5c4c7e9"}, -] -minos-microservice-saga = [ - {file = "minos-microservice-saga-0.4.0.tar.gz", hash = "sha256:6c1d7ff41261253512d1f1bb00a9d0c54b4b9860df470c71a424547fbe01638c"}, - {file = "minos_microservice_saga-0.4.0-py3-none-any.whl", hash = "sha256:2cb332de5e405243b71f38ed7453c0f6d692e96827bb76811595425383fad18b"}, -] +minos-broker-kafka = [] +minos-discovery-minos = [] +minos-microservice-aggregate = [] +minos-microservice-common = [] +minos-microservice-cqrs = [] +minos-microservice-networks = [] +minos-microservice-saga = [] multidict = [ {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b9e95a740109c6047602f4db4da9949e6c5945cefbad34a1299775ddc9a62e2"}, {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac0e27844758d7177989ce406acc6a83c16ed4524ebc363c1f748cba184d89d3"}, diff --git a/microservices/customer/pyproject.toml b/microservices/customer/pyproject.toml index 26060f0b..14c0ead5 100644 --- a/microservices/customer/pyproject.toml +++ b/microservices/customer/pyproject.toml @@ -7,11 +7,13 @@ packages = [{ include = "src" }] [tool.poetry.dependencies] python = "^3.9" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-saga = "^0.4.0" -minos-microservice-cqrs = "^0.4.0" +minos-microservice-common = { path = "../../../minos-python/packages/core/minos-microservice-common", develop = true } +minos-microservice-networks = { path = "../../../minos-python/packages/core/minos-microservice-networks", develop = true } +minos-microservice-aggregate = { path = "../../../minos-python/packages/core/minos-microservice-aggregate", develop = true } +minos-microservice-saga = { path = "../../../minos-python/packages/core/minos-microservice-saga", develop = true } +minos-microservice-cqrs = { path = "../../../minos-python/packages/core/minos-microservice-cqrs", develop = true } +minos-broker-kafka = { path = "../../../minos-python/packages/plugins/minos-broker-kafka", develop = true } +minos-discovery-minos = { path = "../../../minos-python/packages/plugins/minos-discovery-minos", develop = true } typer = "^0.3.2" [tool.poetry.dev-dependencies] diff --git a/microservices/customer/src/aggregates.py b/microservices/customer/src/aggregates.py index a2d04d9f..8b12152c 100644 --- a/microservices/customer/src/aggregates.py +++ b/microservices/customer/src/aggregates.py @@ -3,7 +3,7 @@ ) from minos.aggregate import ( - Aggregate, + RootEntity, ValueObject, ) @@ -13,8 +13,8 @@ class Address(ValueObject): street_no: int -class Customer(Aggregate): - """Customer Aggregate class.""" +class Customer(RootEntity): + """Customer RootEntity class.""" name: str surname: str diff --git a/microservices/customer/tests/test_commands/test_services.py b/microservices/customer/tests/test_commands/test_services.py index ce29e1f7..9ff2f84b 100644 --- a/microservices/customer/tests/test_commands/test_services.py +++ b/microservices/customer/tests/test_commands/test_services.py @@ -9,7 +9,7 @@ ) from minos.aggregate import ( - DeletedAggregateException, + AlreadyDeletedException, ) from minos.networks import ( InMemoryRequest, @@ -64,7 +64,7 @@ async def test_delete_customer(self): request = InMemoryRequest({"uuid": customer.uuid}) await self.service.delete_customer(request) - with self.assertRaises(DeletedAggregateException): + with self.assertRaises(AlreadyDeletedException): await Customer.get(customer.uuid) async def test_delete_customer_bad_request(self): diff --git a/microservices/order/config.yml b/microservices/order/config.yml index 9d5cb7f8..56b8494a 100644 --- a/microservices/order/config.yml +++ b/microservices/order/config.yml @@ -4,8 +4,8 @@ service: injections: lock_pool: minos.common.PostgreSqlLockPool postgresql_pool: minos.common.PostgreSqlPool - broker_publisher: minos.networks.PostgreSqlQueuedKafkaBrokerPublisher - broker_subscriber_builder: minos.networks.PostgreSqlQueuedKafkaBrokerSubscriberBuilder + broker_publisher: minos.plugins.kafka.InMemoryQueuedKafkaBrokerPublisher + broker_subscriber_builder: minos.plugins.kafka.InMemoryQueuedKafkaBrokerSubscriberBuilder broker_pool: minos.networks.BrokerClientPool transaction_repository: minos.aggregate.PostgreSqlTransactionRepository event_repository: minos.aggregate.PostgreSqlEventRepository @@ -55,6 +55,6 @@ saga: storage: path: "./order.lmdb" discovery: - client: minos.networks.MinosDiscoveryClient + client: minos.plugins.minos_discovery.MinosDiscoveryClient host: localhost port: 5567 diff --git a/microservices/order/poetry.lock b/microservices/order/poetry.lock index 678e8510..aeb22b46 100644 --- a/microservices/order/poetry.lock +++ b/microservices/order/poetry.lock @@ -325,81 +325,140 @@ category = "dev" optional = false python-versions = "*" +[[package]] +name = "minos-broker-kafka" +version = "0.4.1" +description = "Minos Broker Kafka package" +category = "main" +optional = false +python-versions = "^3.9" +develop = true + +[package.dependencies] +aiokafka = "^0.7.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/plugins/minos-broker-kafka" + +[[package]] +name = "minos-discovery-minos" +version = "0.4.1" +description = "Minos Discovery Minos package" +category = "main" +optional = false +python-versions = "^3.9" +develop = true + +[package.dependencies] +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/plugins/minos-discovery-minos" + [[package]] name = "minos-microservice-aggregate" -version = "0.4.0" -description = "Python Package for Minos Microservices containing all the Aggregate stuff" +version = "0.4.1" +description = "Python Package for Minos Microservices containing all the RootEntity stuff" category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-aggregate" [[package]] name = "minos-microservice-common" -version = "0.4.0" +version = "0.4.1" description = "Python Package with common Classes and Utilities used in Minos Microservices." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -aiomisc = ">=14.0.3,<15.0.0" -aiopg = ">=1.2.1,<2.0.0" -cached-property = ">=1.5.2,<2.0.0" -dependency-injector = ">=4.32.2,<5.0.0" -fastavro = ">=1.4.0,<2.0.0" -lmdb = ">=1.2.1,<2.0.0" -orjson = ">=3.5.2,<4.0.0" +aiomisc = "^14.0.3" +aiopg = "^1.2.1" +cached-property = "^1.5.2" +dependency-injector = "^4.32.2" +fastavro = "^1.4.0" +lmdb = "^1.2.1" +orjson = "^3.5.2" PyYAML = ">=5.4.1,<7.0.0" +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-common" + [[package]] name = "minos-microservice-cqrs" -version = "0.4.0" +version = "0.4.1" description = "Minos Microservice CQRS package" category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -dependency-injector = ">=4.34.0,<5.0.0" -minos-microservice-aggregate = ">=0.4.0,<0.5.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +dependency-injector = "^4.34.0" +minos-microservice-aggregate = "^0.4.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-cqrs" [[package]] name = "minos-microservice-networks" -version = "0.4.0" +version = "0.4.1" description = "Python Package with the common network classes and utilities used in Minos Microservice." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -aiohttp = ">=3.7.4,<4.0.0" -aiokafka = ">=0.7.0,<0.8.0" -aiomisc = ">=14.0.3,<15.0.0" -aiopg = ">=1.2.1,<2.0.0" -crontab = ">=0.23.0,<0.24.0" -dependency-injector = ">=4.32.2,<5.0.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -orjson = ">=3.6.5,<4.0.0" +aiohttp = "^3.7.4" +aiomisc = "^14.0.3" +aiopg = "^1.2.1" +crontab = "^0.23.0" +dependency-injector = "^4.32.2" +minos-microservice-common = "^0.4.0" +orjson = "^3.6.5" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-networks" [[package]] name = "minos-microservice-saga" -version = "0.4.0" +version = "0.4.1" description = "Saga Library for MinOS project." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -dependency-injector = ">=4.32.2,<5.0.0" -minos-microservice-aggregate = ">=0.4.0,<0.5.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +dependency-injector = "^4.32.2" +minos-microservice-aggregate = "^0.4.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-saga" [[package]] name = "multidict" @@ -615,7 +674,7 @@ multidict = ">=4.0" [metadata] lock-version = "1.1" python-versions = "^3.9" -content-hash = "f0df167ab7b6362ad3f88ffdc31707cacb7deecfdf8d601b764d7dea6da410ed" +content-hash = "65a271a969ca1dd6d6ca51030a421b889254bfac15e94872a304d1fdb4c292a8" [metadata.files] aiohttp = [ @@ -1051,26 +1110,13 @@ mccabe = [ {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, ] -minos-microservice-aggregate = [ - {file = "minos-microservice-aggregate-0.4.0.tar.gz", hash = "sha256:2ada8638f7bfec2c120df452648f438710d7e5dd63612d09c1ba7f8cb41ba23d"}, - {file = "minos_microservice_aggregate-0.4.0-py3-none-any.whl", hash = "sha256:9edcb9931f7aeb9a472b64259fd7d0c1363d9ea5ee59fc5282642748a1c76ed3"}, -] -minos-microservice-common = [ - {file = "minos-microservice-common-0.4.0.tar.gz", hash = "sha256:b74995fba27ca383e52804e2c0013350d747dcc03c38098ad2026a9cceb04996"}, - {file = "minos_microservice_common-0.4.0-py3-none-any.whl", hash = "sha256:65cecd809b243007d57740b7d40349544d6e98a69ce84aac86ca06a2a4b97e29"}, -] -minos-microservice-cqrs = [ - {file = "minos-microservice-cqrs-0.4.0.tar.gz", hash = "sha256:f494a4916b0ec4ad14e813e617ac307f895fa97d777e5fd457b1c5c3c45db471"}, - {file = "minos_microservice_cqrs-0.4.0-py3-none-any.whl", hash = "sha256:f6998cfb9cb870139f851166f6b0e0975af1ce3aac0171fe862260b9178c7f76"}, -] -minos-microservice-networks = [ - {file = "minos-microservice-networks-0.4.0.tar.gz", hash = "sha256:4aa1791a723e148bc06fcb15e39ac9bd852d54a5101dcf4f5e1d6a7b472b9888"}, - {file = "minos_microservice_networks-0.4.0-py3-none-any.whl", hash = "sha256:94ef940aa7c5a3f00127bed312ebea1c635be569c6500c81ce7914cbb5c4c7e9"}, -] -minos-microservice-saga = [ - {file = "minos-microservice-saga-0.4.0.tar.gz", hash = "sha256:6c1d7ff41261253512d1f1bb00a9d0c54b4b9860df470c71a424547fbe01638c"}, - {file = "minos_microservice_saga-0.4.0-py3-none-any.whl", hash = "sha256:2cb332de5e405243b71f38ed7453c0f6d692e96827bb76811595425383fad18b"}, -] +minos-broker-kafka = [] +minos-discovery-minos = [] +minos-microservice-aggregate = [] +minos-microservice-common = [] +minos-microservice-cqrs = [] +minos-microservice-networks = [] +minos-microservice-saga = [] multidict = [ {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b9e95a740109c6047602f4db4da9949e6c5945cefbad34a1299775ddc9a62e2"}, {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac0e27844758d7177989ce406acc6a83c16ed4524ebc363c1f748cba184d89d3"}, diff --git a/microservices/order/pyproject.toml b/microservices/order/pyproject.toml index 6be7d59d..a1f32173 100644 --- a/microservices/order/pyproject.toml +++ b/microservices/order/pyproject.toml @@ -7,11 +7,13 @@ packages = [{ include = "src" }] [tool.poetry.dependencies] python = "^3.9" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-saga = "^0.4.0" -minos-microservice-cqrs = "^0.4.0" +minos-microservice-common = { path = "../../../minos-python/packages/core/minos-microservice-common", develop = true } +minos-microservice-networks = { path = "../../../minos-python/packages/core/minos-microservice-networks", develop = true } +minos-microservice-aggregate = { path = "../../../minos-python/packages/core/minos-microservice-aggregate", develop = true } +minos-microservice-saga = { path = "../../../minos-python/packages/core/minos-microservice-saga", develop = true } +minos-microservice-cqrs = { path = "../../../minos-python/packages/core/minos-microservice-cqrs", develop = true } +minos-broker-kafka = { path = "../../../minos-python/packages/plugins/minos-broker-kafka", develop = true } +minos-discovery-minos = { path = "../../../minos-python/packages/plugins/minos-discovery-minos", develop = true } typer = "^0.3.2" SQLAlchemy = "1.4.22" diff --git a/microservices/order/src/aggregates.py b/microservices/order/src/aggregates.py index f178ab9c..62b2c594 100644 --- a/microservices/order/src/aggregates.py +++ b/microservices/order/src/aggregates.py @@ -13,11 +13,11 @@ ) from minos.aggregate import ( - Aggregate, - AggregateRef, + RootEntity, + ExternalEntity, Entity, EntitySet, - ModelRef, + Ref, ValueObject, ) @@ -28,12 +28,12 @@ class OrderStatus(str, Enum): COMPLETED = "completed" -class Order(Aggregate): - """Order Aggregate class.""" +class Order(RootEntity): + """Order RootEntity class.""" - ticket: Optional[ModelRef[Ticket]] + ticket: Optional[Ref[Ticket]] - payment: Optional[ModelRef[Payment]] + payment: Optional[Ref[Payment]] payment_detail: PaymentDetail # TODO: Future Shipment Microservice @@ -45,11 +45,11 @@ class Order(Aggregate): created_at: datetime updated_at: datetime - customer: ModelRef[Customer] + customer: Ref[Customer] -class Ticket(AggregateRef): - """Ticket Aggregate class.""" +class Ticket(ExternalEntity): + """Ticket RootEntity class.""" total_price: float entries: EntitySet[TicketEntry] @@ -59,11 +59,11 @@ class TicketEntry(Entity): """Order Item class""" quantity: int - product: ModelRef[Product] + product: Ref[Product] -class Product(AggregateRef): - """Order AggregateRef class.""" +class Product(ExternalEntity): + """Order ExternalEntity class.""" title: str price: float @@ -76,8 +76,8 @@ class PaymentDetail(ValueObject): card_cvc: str -class Payment(AggregateRef): - """Payment AggregateRef class""" +class Payment(ExternalEntity): + """Payment ExternalEntity class""" status: str @@ -93,7 +93,7 @@ class ShipmentDetail(ValueObject): zip: int -class Customer(AggregateRef): +class Customer(ExternalEntity): """User class""" name: str diff --git a/microservices/order/src/queries/services.py b/microservices/order/src/queries/services.py index 3f1b90e6..03ded6d7 100644 --- a/microservices/order/src/queries/services.py +++ b/microservices/order/src/queries/services.py @@ -2,7 +2,7 @@ Provide, ) from minos.aggregate import ( - AggregateDiff, + Event, ) from minos.common import ( UUID_REGEX, @@ -79,7 +79,7 @@ async def order_created(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() await self.repository.create( uuid=diff.uuid, version=diff.version, diff --git a/microservices/payment/config.yml b/microservices/payment/config.yml index ba692623..66cbf556 100644 --- a/microservices/payment/config.yml +++ b/microservices/payment/config.yml @@ -4,8 +4,8 @@ service: injections: lock_pool: minos.common.PostgreSqlLockPool postgresql_pool: minos.common.PostgreSqlPool - broker_publisher: minos.networks.PostgreSqlQueuedKafkaBrokerPublisher - broker_subscriber_builder: minos.networks.PostgreSqlQueuedKafkaBrokerSubscriberBuilder + broker_publisher: minos.plugins.kafka.InMemoryQueuedKafkaBrokerPublisher + broker_subscriber_builder: minos.plugins.kafka.InMemoryQueuedKafkaBrokerSubscriberBuilder broker_pool: minos.networks.BrokerClientPool transaction_repository: minos.aggregate.PostgreSqlTransactionRepository event_repository: minos.aggregate.PostgreSqlEventRepository @@ -55,6 +55,6 @@ saga: storage: path: "./payment.lmdb" discovery: - client: minos.networks.MinosDiscoveryClient + client: minos.plugins.minos_discovery.MinosDiscoveryClient host: localhost port: 5567 \ No newline at end of file diff --git a/microservices/payment/poetry.lock b/microservices/payment/poetry.lock index 479bbf4e..5807e6e9 100644 --- a/microservices/payment/poetry.lock +++ b/microservices/payment/poetry.lock @@ -314,81 +314,140 @@ category = "dev" optional = false python-versions = "*" +[[package]] +name = "minos-broker-kafka" +version = "0.4.1" +description = "Minos Broker Kafka package" +category = "main" +optional = false +python-versions = "^3.9" +develop = true + +[package.dependencies] +aiokafka = "^0.7.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/plugins/minos-broker-kafka" + +[[package]] +name = "minos-discovery-minos" +version = "0.4.1" +description = "Minos Discovery Minos package" +category = "main" +optional = false +python-versions = "^3.9" +develop = true + +[package.dependencies] +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/plugins/minos-discovery-minos" + [[package]] name = "minos-microservice-aggregate" -version = "0.4.0" -description = "Python Package for Minos Microservices containing all the Aggregate stuff" +version = "0.4.1" +description = "Python Package for Minos Microservices containing all the RootEntity stuff" category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-aggregate" [[package]] name = "minos-microservice-common" -version = "0.4.0" +version = "0.4.1" description = "Python Package with common Classes and Utilities used in Minos Microservices." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -aiomisc = ">=14.0.3,<15.0.0" -aiopg = ">=1.2.1,<2.0.0" -cached-property = ">=1.5.2,<2.0.0" -dependency-injector = ">=4.32.2,<5.0.0" -fastavro = ">=1.4.0,<2.0.0" -lmdb = ">=1.2.1,<2.0.0" -orjson = ">=3.5.2,<4.0.0" +aiomisc = "^14.0.3" +aiopg = "^1.2.1" +cached-property = "^1.5.2" +dependency-injector = "^4.32.2" +fastavro = "^1.4.0" +lmdb = "^1.2.1" +orjson = "^3.5.2" PyYAML = ">=5.4.1,<7.0.0" +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-common" + [[package]] name = "minos-microservice-cqrs" -version = "0.4.0" +version = "0.4.1" description = "Minos Microservice CQRS package" category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -dependency-injector = ">=4.34.0,<5.0.0" -minos-microservice-aggregate = ">=0.4.0,<0.5.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +dependency-injector = "^4.34.0" +minos-microservice-aggregate = "^0.4.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-cqrs" [[package]] name = "minos-microservice-networks" -version = "0.4.0" +version = "0.4.1" description = "Python Package with the common network classes and utilities used in Minos Microservice." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -aiohttp = ">=3.7.4,<4.0.0" -aiokafka = ">=0.7.0,<0.8.0" -aiomisc = ">=14.0.3,<15.0.0" -aiopg = ">=1.2.1,<2.0.0" -crontab = ">=0.23.0,<0.24.0" -dependency-injector = ">=4.32.2,<5.0.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -orjson = ">=3.6.5,<4.0.0" +aiohttp = "^3.7.4" +aiomisc = "^14.0.3" +aiopg = "^1.2.1" +crontab = "^0.23.0" +dependency-injector = "^4.32.2" +minos-microservice-common = "^0.4.0" +orjson = "^3.6.5" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-networks" [[package]] name = "minos-microservice-saga" -version = "0.4.0" +version = "0.4.1" description = "Saga Library for MinOS project." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -dependency-injector = ">=4.32.2,<5.0.0" -minos-microservice-aggregate = ">=0.4.0,<0.5.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +dependency-injector = "^4.32.2" +minos-microservice-aggregate = "^0.4.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-saga" [[package]] name = "multidict" @@ -573,7 +632,7 @@ multidict = ">=4.0" [metadata] lock-version = "1.1" python-versions = "^3.9" -content-hash = "7da1d10e1e247f171e7b47edd4882cb7089e4579bf16637f6eabeb675c2cef18" +content-hash = "993b94cd6a1db223673a58f294c6c42b3b58cf97a9e96d9100ff20b005df81f3" [metadata.files] aiohttp = [ @@ -952,26 +1011,13 @@ mccabe = [ {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, ] -minos-microservice-aggregate = [ - {file = "minos-microservice-aggregate-0.4.0.tar.gz", hash = "sha256:2ada8638f7bfec2c120df452648f438710d7e5dd63612d09c1ba7f8cb41ba23d"}, - {file = "minos_microservice_aggregate-0.4.0-py3-none-any.whl", hash = "sha256:9edcb9931f7aeb9a472b64259fd7d0c1363d9ea5ee59fc5282642748a1c76ed3"}, -] -minos-microservice-common = [ - {file = "minos-microservice-common-0.4.0.tar.gz", hash = "sha256:b74995fba27ca383e52804e2c0013350d747dcc03c38098ad2026a9cceb04996"}, - {file = "minos_microservice_common-0.4.0-py3-none-any.whl", hash = "sha256:65cecd809b243007d57740b7d40349544d6e98a69ce84aac86ca06a2a4b97e29"}, -] -minos-microservice-cqrs = [ - {file = "minos-microservice-cqrs-0.4.0.tar.gz", hash = "sha256:f494a4916b0ec4ad14e813e617ac307f895fa97d777e5fd457b1c5c3c45db471"}, - {file = "minos_microservice_cqrs-0.4.0-py3-none-any.whl", hash = "sha256:f6998cfb9cb870139f851166f6b0e0975af1ce3aac0171fe862260b9178c7f76"}, -] -minos-microservice-networks = [ - {file = "minos-microservice-networks-0.4.0.tar.gz", hash = "sha256:4aa1791a723e148bc06fcb15e39ac9bd852d54a5101dcf4f5e1d6a7b472b9888"}, - {file = "minos_microservice_networks-0.4.0-py3-none-any.whl", hash = "sha256:94ef940aa7c5a3f00127bed312ebea1c635be569c6500c81ce7914cbb5c4c7e9"}, -] -minos-microservice-saga = [ - {file = "minos-microservice-saga-0.4.0.tar.gz", hash = "sha256:6c1d7ff41261253512d1f1bb00a9d0c54b4b9860df470c71a424547fbe01638c"}, - {file = "minos_microservice_saga-0.4.0-py3-none-any.whl", hash = "sha256:2cb332de5e405243b71f38ed7453c0f6d692e96827bb76811595425383fad18b"}, -] +minos-broker-kafka = [] +minos-discovery-minos = [] +minos-microservice-aggregate = [] +minos-microservice-common = [] +minos-microservice-cqrs = [] +minos-microservice-networks = [] +minos-microservice-saga = [] multidict = [ {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b9e95a740109c6047602f4db4da9949e6c5945cefbad34a1299775ddc9a62e2"}, {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac0e27844758d7177989ce406acc6a83c16ed4524ebc363c1f748cba184d89d3"}, diff --git a/microservices/payment/pyproject.toml b/microservices/payment/pyproject.toml index 14efb3f8..3c3cd57d 100644 --- a/microservices/payment/pyproject.toml +++ b/microservices/payment/pyproject.toml @@ -7,11 +7,13 @@ packages = [{ include = "src" }] [tool.poetry.dependencies] python = "^3.9" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-saga = "^0.4.0" -minos-microservice-cqrs = "^0.4.0" +minos-microservice-common = { path = "../../../minos-python/packages/core/minos-microservice-common", develop = true } +minos-microservice-networks = { path = "../../../minos-python/packages/core/minos-microservice-networks", develop = true } +minos-microservice-aggregate = { path = "../../../minos-python/packages/core/minos-microservice-aggregate", develop = true } +minos-microservice-saga = { path = "../../../minos-python/packages/core/minos-microservice-saga", develop = true } +minos-microservice-cqrs = { path = "../../../minos-python/packages/core/minos-microservice-cqrs", develop = true } +minos-broker-kafka = { path = "../../../minos-python/packages/plugins/minos-broker-kafka", develop = true } +minos-discovery-minos = { path = "../../../minos-python/packages/plugins/minos-discovery-minos", develop = true } typer = "^0.3.2" [tool.poetry.dev-dependencies] diff --git a/microservices/payment/src/aggregates.py b/microservices/payment/src/aggregates.py index 4cf8c779..bc2186ed 100644 --- a/microservices/payment/src/aggregates.py +++ b/microservices/payment/src/aggregates.py @@ -1,10 +1,10 @@ from minos.aggregate import ( - Aggregate, + RootEntity, ) -class Payment(Aggregate): - """Payment Aggregate class.""" +class Payment(RootEntity): + """Payment RootEntity class.""" credit_number: int amount: float diff --git a/microservices/payment/src/queries/services.py b/microservices/payment/src/queries/services.py index 1bff4114..e7fb55ce 100644 --- a/microservices/payment/src/queries/services.py +++ b/microservices/payment/src/queries/services.py @@ -2,7 +2,7 @@ Provide, ) from minos.aggregate import ( - AggregateDiff, + Event, ) from minos.cqrs import ( QueryService, @@ -30,7 +30,7 @@ async def payment_created_or_updated(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() uuid = diff.uuid amount = diff["amount"] @@ -43,6 +43,6 @@ async def payment_deleted(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() await self.repository.delete(diff.uuid) diff --git a/microservices/product/config.yml b/microservices/product/config.yml index 8b10cdc2..c6067663 100644 --- a/microservices/product/config.yml +++ b/microservices/product/config.yml @@ -4,8 +4,8 @@ service: injections: lock_pool: minos.common.PostgreSqlLockPool postgresql_pool: minos.common.PostgreSqlPool - broker_publisher: minos.networks.PostgreSqlQueuedKafkaBrokerPublisher - broker_subscriber_builder: minos.networks.PostgreSqlQueuedKafkaBrokerSubscriberBuilder + broker_publisher: minos.plugins.kafka.InMemoryQueuedKafkaBrokerPublisher + broker_subscriber_builder: minos.plugins.kafka.InMemoryQueuedKafkaBrokerSubscriberBuilder broker_pool: minos.networks.BrokerClientPool transaction_repository: minos.aggregate.PostgreSqlTransactionRepository event_repository: minos.aggregate.PostgreSqlEventRepository @@ -55,6 +55,6 @@ saga: storage: path: "./product.lmdb" discovery: - client: minos.networks.MinosDiscoveryClient + client: minos.plugins.minos_discovery.MinosDiscoveryClient host: localhost port: 5567 \ No newline at end of file diff --git a/microservices/product/poetry.lock b/microservices/product/poetry.lock index 678e8510..aeb22b46 100644 --- a/microservices/product/poetry.lock +++ b/microservices/product/poetry.lock @@ -325,81 +325,140 @@ category = "dev" optional = false python-versions = "*" +[[package]] +name = "minos-broker-kafka" +version = "0.4.1" +description = "Minos Broker Kafka package" +category = "main" +optional = false +python-versions = "^3.9" +develop = true + +[package.dependencies] +aiokafka = "^0.7.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/plugins/minos-broker-kafka" + +[[package]] +name = "minos-discovery-minos" +version = "0.4.1" +description = "Minos Discovery Minos package" +category = "main" +optional = false +python-versions = "^3.9" +develop = true + +[package.dependencies] +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/plugins/minos-discovery-minos" + [[package]] name = "minos-microservice-aggregate" -version = "0.4.0" -description = "Python Package for Minos Microservices containing all the Aggregate stuff" +version = "0.4.1" +description = "Python Package for Minos Microservices containing all the RootEntity stuff" category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-aggregate" [[package]] name = "minos-microservice-common" -version = "0.4.0" +version = "0.4.1" description = "Python Package with common Classes and Utilities used in Minos Microservices." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -aiomisc = ">=14.0.3,<15.0.0" -aiopg = ">=1.2.1,<2.0.0" -cached-property = ">=1.5.2,<2.0.0" -dependency-injector = ">=4.32.2,<5.0.0" -fastavro = ">=1.4.0,<2.0.0" -lmdb = ">=1.2.1,<2.0.0" -orjson = ">=3.5.2,<4.0.0" +aiomisc = "^14.0.3" +aiopg = "^1.2.1" +cached-property = "^1.5.2" +dependency-injector = "^4.32.2" +fastavro = "^1.4.0" +lmdb = "^1.2.1" +orjson = "^3.5.2" PyYAML = ">=5.4.1,<7.0.0" +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-common" + [[package]] name = "minos-microservice-cqrs" -version = "0.4.0" +version = "0.4.1" description = "Minos Microservice CQRS package" category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -dependency-injector = ">=4.34.0,<5.0.0" -minos-microservice-aggregate = ">=0.4.0,<0.5.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +dependency-injector = "^4.34.0" +minos-microservice-aggregate = "^0.4.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-cqrs" [[package]] name = "minos-microservice-networks" -version = "0.4.0" +version = "0.4.1" description = "Python Package with the common network classes and utilities used in Minos Microservice." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -aiohttp = ">=3.7.4,<4.0.0" -aiokafka = ">=0.7.0,<0.8.0" -aiomisc = ">=14.0.3,<15.0.0" -aiopg = ">=1.2.1,<2.0.0" -crontab = ">=0.23.0,<0.24.0" -dependency-injector = ">=4.32.2,<5.0.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -orjson = ">=3.6.5,<4.0.0" +aiohttp = "^3.7.4" +aiomisc = "^14.0.3" +aiopg = "^1.2.1" +crontab = "^0.23.0" +dependency-injector = "^4.32.2" +minos-microservice-common = "^0.4.0" +orjson = "^3.6.5" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-networks" [[package]] name = "minos-microservice-saga" -version = "0.4.0" +version = "0.4.1" description = "Saga Library for MinOS project." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -dependency-injector = ">=4.32.2,<5.0.0" -minos-microservice-aggregate = ">=0.4.0,<0.5.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +dependency-injector = "^4.32.2" +minos-microservice-aggregate = "^0.4.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-saga" [[package]] name = "multidict" @@ -615,7 +674,7 @@ multidict = ">=4.0" [metadata] lock-version = "1.1" python-versions = "^3.9" -content-hash = "f0df167ab7b6362ad3f88ffdc31707cacb7deecfdf8d601b764d7dea6da410ed" +content-hash = "65a271a969ca1dd6d6ca51030a421b889254bfac15e94872a304d1fdb4c292a8" [metadata.files] aiohttp = [ @@ -1051,26 +1110,13 @@ mccabe = [ {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, ] -minos-microservice-aggregate = [ - {file = "minos-microservice-aggregate-0.4.0.tar.gz", hash = "sha256:2ada8638f7bfec2c120df452648f438710d7e5dd63612d09c1ba7f8cb41ba23d"}, - {file = "minos_microservice_aggregate-0.4.0-py3-none-any.whl", hash = "sha256:9edcb9931f7aeb9a472b64259fd7d0c1363d9ea5ee59fc5282642748a1c76ed3"}, -] -minos-microservice-common = [ - {file = "minos-microservice-common-0.4.0.tar.gz", hash = "sha256:b74995fba27ca383e52804e2c0013350d747dcc03c38098ad2026a9cceb04996"}, - {file = "minos_microservice_common-0.4.0-py3-none-any.whl", hash = "sha256:65cecd809b243007d57740b7d40349544d6e98a69ce84aac86ca06a2a4b97e29"}, -] -minos-microservice-cqrs = [ - {file = "minos-microservice-cqrs-0.4.0.tar.gz", hash = "sha256:f494a4916b0ec4ad14e813e617ac307f895fa97d777e5fd457b1c5c3c45db471"}, - {file = "minos_microservice_cqrs-0.4.0-py3-none-any.whl", hash = "sha256:f6998cfb9cb870139f851166f6b0e0975af1ce3aac0171fe862260b9178c7f76"}, -] -minos-microservice-networks = [ - {file = "minos-microservice-networks-0.4.0.tar.gz", hash = "sha256:4aa1791a723e148bc06fcb15e39ac9bd852d54a5101dcf4f5e1d6a7b472b9888"}, - {file = "minos_microservice_networks-0.4.0-py3-none-any.whl", hash = "sha256:94ef940aa7c5a3f00127bed312ebea1c635be569c6500c81ce7914cbb5c4c7e9"}, -] -minos-microservice-saga = [ - {file = "minos-microservice-saga-0.4.0.tar.gz", hash = "sha256:6c1d7ff41261253512d1f1bb00a9d0c54b4b9860df470c71a424547fbe01638c"}, - {file = "minos_microservice_saga-0.4.0-py3-none-any.whl", hash = "sha256:2cb332de5e405243b71f38ed7453c0f6d692e96827bb76811595425383fad18b"}, -] +minos-broker-kafka = [] +minos-discovery-minos = [] +minos-microservice-aggregate = [] +minos-microservice-common = [] +minos-microservice-cqrs = [] +minos-microservice-networks = [] +minos-microservice-saga = [] multidict = [ {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b9e95a740109c6047602f4db4da9949e6c5945cefbad34a1299775ddc9a62e2"}, {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac0e27844758d7177989ce406acc6a83c16ed4524ebc363c1f748cba184d89d3"}, diff --git a/microservices/product/pyproject.toml b/microservices/product/pyproject.toml index 54920167..0c6167dd 100644 --- a/microservices/product/pyproject.toml +++ b/microservices/product/pyproject.toml @@ -7,11 +7,13 @@ packages = [{ include = "src" }] [tool.poetry.dependencies] python = "^3.9" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-saga = "^0.4.0" -minos-microservice-cqrs = "^0.4.0" +minos-microservice-common = { path = "../../../minos-python/packages/core/minos-microservice-common", develop = true } +minos-microservice-networks = { path = "../../../minos-python/packages/core/minos-microservice-networks", develop = true } +minos-microservice-aggregate = { path = "../../../minos-python/packages/core/minos-microservice-aggregate", develop = true } +minos-microservice-saga = { path = "../../../minos-python/packages/core/minos-microservice-saga", develop = true } +minos-microservice-cqrs = { path = "../../../minos-python/packages/core/minos-microservice-cqrs", develop = true } +minos-broker-kafka = { path = "../../../minos-python/packages/plugins/minos-broker-kafka", develop = true } +minos-discovery-minos = { path = "../../../minos-python/packages/plugins/minos-discovery-minos", develop = true } typer = "^0.3.2" SQLAlchemy = "1.4.22" diff --git a/microservices/product/src/aggregates.py b/microservices/product/src/aggregates.py index b410e004..72651a51 100644 --- a/microservices/product/src/aggregates.py +++ b/microservices/product/src/aggregates.py @@ -10,12 +10,12 @@ ) from minos.aggregate import ( - Aggregate, + RootEntity, ValueObject, ) -class Product(Aggregate): +class Product(RootEntity): """Product class.""" code: str diff --git a/microservices/product/src/commands/services.py b/microservices/product/src/commands/services.py index 7ef38673..fe128d98 100644 --- a/microservices/product/src/commands/services.py +++ b/microservices/product/src/commands/services.py @@ -5,8 +5,8 @@ ) from minos.aggregate import ( - AggregateNotFoundException, - DeletedAggregateException, + NotFoundException, + AlreadyDeletedException, ) from minos.common import ( UUID_REGEX, @@ -176,7 +176,7 @@ async def delete_product(request: RestRequest) -> None: try: product = await Product.get(uuid) await product.delete() - except (DeletedAggregateException, AggregateNotFoundException): + except (AlreadyDeletedException, NotFoundException): raise ResponseException("The product does not exist.") @enroute.broker.command("ReserveProducts") @@ -192,7 +192,7 @@ async def reserve_products(self, request: Request) -> None: try: await Product.reserve(quantities) - except (AggregateNotFoundException, DeletedAggregateException) as exc: + except (NotFoundException, AlreadyDeletedException) as exc: raise ResponseException(f"Some products do not exist: {exc!r}") except Exception as exc: raise ResponseException(f"There is not enough product amount: {exc!r}") @@ -210,7 +210,7 @@ async def purchase_products(self, request: Request) -> None: try: await Product.purchase(quantities) - except (AggregateNotFoundException, DeletedAggregateException) as exc: + except (NotFoundException, AlreadyDeletedException) as exc: raise ResponseException(f"Some products do not exist: {exc!r}") except Exception as exc: raise ResponseException(f"There is not enough product amount: {exc!r}") diff --git a/microservices/product/src/queries/services.py b/microservices/product/src/queries/services.py index 0bb7d78a..07075e7e 100644 --- a/microservices/product/src/queries/services.py +++ b/microservices/product/src/queries/services.py @@ -2,7 +2,7 @@ Provide, ) from minos.aggregate import ( - AggregateDiff, + Event, ) from minos.common import ( UUID_REGEX, @@ -81,7 +81,7 @@ async def product_created(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() await self.repository.create(uuid=diff.uuid, version=diff.version, **diff.fields_diff) @enroute.broker.event("ProductUpdated") @@ -91,7 +91,7 @@ async def product_updated(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() await self.repository.update(uuid=diff.uuid, version=diff.version, **diff.fields_diff) @enroute.broker.event("ProductDeleted") @@ -101,7 +101,7 @@ async def product_deleted(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() await self.repository.delete(diff.uuid) @enroute.broker.event("ReviewCreated") @@ -111,7 +111,7 @@ async def review_created(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() await self.repository.update(uuid=diff.uuid, version=diff.version, **diff.fields_diff) @enroute.broker.event("ReviewUpdated.score") @@ -121,5 +121,5 @@ async def review_updated(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() await self.repository.update(uuid=diff.uuid, version=diff.version, **diff.fields_diff) diff --git a/microservices/review/config.yml b/microservices/review/config.yml index 12e9df2c..f710fd40 100644 --- a/microservices/review/config.yml +++ b/microservices/review/config.yml @@ -4,8 +4,8 @@ service: injections: lock_pool: minos.common.PostgreSqlLockPool postgresql_pool: minos.common.PostgreSqlPool - broker_publisher: minos.networks.PostgreSqlQueuedKafkaBrokerPublisher - broker_subscriber_builder: minos.networks.PostgreSqlQueuedKafkaBrokerSubscriberBuilder + broker_publisher: minos.plugins.kafka.InMemoryQueuedKafkaBrokerPublisher + broker_subscriber_builder: minos.plugins.kafka.InMemoryQueuedKafkaBrokerSubscriberBuilder broker_pool: minos.networks.BrokerClientPool transaction_repository: minos.aggregate.PostgreSqlTransactionRepository event_repository: minos.aggregate.PostgreSqlEventRepository @@ -55,6 +55,6 @@ saga: storage: path: "./review.lmdb" discovery: - client: minos.networks.MinosDiscoveryClient + client: minos.plugins.minos_discovery.MinosDiscoveryClient host: localhost port: 5567 \ No newline at end of file diff --git a/microservices/review/poetry.lock b/microservices/review/poetry.lock index 678e8510..aeb22b46 100644 --- a/microservices/review/poetry.lock +++ b/microservices/review/poetry.lock @@ -325,81 +325,140 @@ category = "dev" optional = false python-versions = "*" +[[package]] +name = "minos-broker-kafka" +version = "0.4.1" +description = "Minos Broker Kafka package" +category = "main" +optional = false +python-versions = "^3.9" +develop = true + +[package.dependencies] +aiokafka = "^0.7.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/plugins/minos-broker-kafka" + +[[package]] +name = "minos-discovery-minos" +version = "0.4.1" +description = "Minos Discovery Minos package" +category = "main" +optional = false +python-versions = "^3.9" +develop = true + +[package.dependencies] +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/plugins/minos-discovery-minos" + [[package]] name = "minos-microservice-aggregate" -version = "0.4.0" -description = "Python Package for Minos Microservices containing all the Aggregate stuff" +version = "0.4.1" +description = "Python Package for Minos Microservices containing all the RootEntity stuff" category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-aggregate" [[package]] name = "minos-microservice-common" -version = "0.4.0" +version = "0.4.1" description = "Python Package with common Classes and Utilities used in Minos Microservices." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -aiomisc = ">=14.0.3,<15.0.0" -aiopg = ">=1.2.1,<2.0.0" -cached-property = ">=1.5.2,<2.0.0" -dependency-injector = ">=4.32.2,<5.0.0" -fastavro = ">=1.4.0,<2.0.0" -lmdb = ">=1.2.1,<2.0.0" -orjson = ">=3.5.2,<4.0.0" +aiomisc = "^14.0.3" +aiopg = "^1.2.1" +cached-property = "^1.5.2" +dependency-injector = "^4.32.2" +fastavro = "^1.4.0" +lmdb = "^1.2.1" +orjson = "^3.5.2" PyYAML = ">=5.4.1,<7.0.0" +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-common" + [[package]] name = "minos-microservice-cqrs" -version = "0.4.0" +version = "0.4.1" description = "Minos Microservice CQRS package" category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -dependency-injector = ">=4.34.0,<5.0.0" -minos-microservice-aggregate = ">=0.4.0,<0.5.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +dependency-injector = "^4.34.0" +minos-microservice-aggregate = "^0.4.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-cqrs" [[package]] name = "minos-microservice-networks" -version = "0.4.0" +version = "0.4.1" description = "Python Package with the common network classes and utilities used in Minos Microservice." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -aiohttp = ">=3.7.4,<4.0.0" -aiokafka = ">=0.7.0,<0.8.0" -aiomisc = ">=14.0.3,<15.0.0" -aiopg = ">=1.2.1,<2.0.0" -crontab = ">=0.23.0,<0.24.0" -dependency-injector = ">=4.32.2,<5.0.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -orjson = ">=3.6.5,<4.0.0" +aiohttp = "^3.7.4" +aiomisc = "^14.0.3" +aiopg = "^1.2.1" +crontab = "^0.23.0" +dependency-injector = "^4.32.2" +minos-microservice-common = "^0.4.0" +orjson = "^3.6.5" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-networks" [[package]] name = "minos-microservice-saga" -version = "0.4.0" +version = "0.4.1" description = "Saga Library for MinOS project." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -dependency-injector = ">=4.32.2,<5.0.0" -minos-microservice-aggregate = ">=0.4.0,<0.5.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +dependency-injector = "^4.32.2" +minos-microservice-aggregate = "^0.4.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-saga" [[package]] name = "multidict" @@ -615,7 +674,7 @@ multidict = ">=4.0" [metadata] lock-version = "1.1" python-versions = "^3.9" -content-hash = "f0df167ab7b6362ad3f88ffdc31707cacb7deecfdf8d601b764d7dea6da410ed" +content-hash = "65a271a969ca1dd6d6ca51030a421b889254bfac15e94872a304d1fdb4c292a8" [metadata.files] aiohttp = [ @@ -1051,26 +1110,13 @@ mccabe = [ {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, ] -minos-microservice-aggregate = [ - {file = "minos-microservice-aggregate-0.4.0.tar.gz", hash = "sha256:2ada8638f7bfec2c120df452648f438710d7e5dd63612d09c1ba7f8cb41ba23d"}, - {file = "minos_microservice_aggregate-0.4.0-py3-none-any.whl", hash = "sha256:9edcb9931f7aeb9a472b64259fd7d0c1363d9ea5ee59fc5282642748a1c76ed3"}, -] -minos-microservice-common = [ - {file = "minos-microservice-common-0.4.0.tar.gz", hash = "sha256:b74995fba27ca383e52804e2c0013350d747dcc03c38098ad2026a9cceb04996"}, - {file = "minos_microservice_common-0.4.0-py3-none-any.whl", hash = "sha256:65cecd809b243007d57740b7d40349544d6e98a69ce84aac86ca06a2a4b97e29"}, -] -minos-microservice-cqrs = [ - {file = "minos-microservice-cqrs-0.4.0.tar.gz", hash = "sha256:f494a4916b0ec4ad14e813e617ac307f895fa97d777e5fd457b1c5c3c45db471"}, - {file = "minos_microservice_cqrs-0.4.0-py3-none-any.whl", hash = "sha256:f6998cfb9cb870139f851166f6b0e0975af1ce3aac0171fe862260b9178c7f76"}, -] -minos-microservice-networks = [ - {file = "minos-microservice-networks-0.4.0.tar.gz", hash = "sha256:4aa1791a723e148bc06fcb15e39ac9bd852d54a5101dcf4f5e1d6a7b472b9888"}, - {file = "minos_microservice_networks-0.4.0-py3-none-any.whl", hash = "sha256:94ef940aa7c5a3f00127bed312ebea1c635be569c6500c81ce7914cbb5c4c7e9"}, -] -minos-microservice-saga = [ - {file = "minos-microservice-saga-0.4.0.tar.gz", hash = "sha256:6c1d7ff41261253512d1f1bb00a9d0c54b4b9860df470c71a424547fbe01638c"}, - {file = "minos_microservice_saga-0.4.0-py3-none-any.whl", hash = "sha256:2cb332de5e405243b71f38ed7453c0f6d692e96827bb76811595425383fad18b"}, -] +minos-broker-kafka = [] +minos-discovery-minos = [] +minos-microservice-aggregate = [] +minos-microservice-common = [] +minos-microservice-cqrs = [] +minos-microservice-networks = [] +minos-microservice-saga = [] multidict = [ {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b9e95a740109c6047602f4db4da9949e6c5945cefbad34a1299775ddc9a62e2"}, {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac0e27844758d7177989ce406acc6a83c16ed4524ebc363c1f748cba184d89d3"}, diff --git a/microservices/review/pyproject.toml b/microservices/review/pyproject.toml index ed8cec51..6ae0f4b0 100644 --- a/microservices/review/pyproject.toml +++ b/microservices/review/pyproject.toml @@ -7,11 +7,13 @@ packages = [{ include = "src" }] [tool.poetry.dependencies] python = "^3.9" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-saga = "^0.4.0" -minos-microservice-cqrs = "^0.4.0" +minos-microservice-common = { path = "../../../minos-python/packages/core/minos-microservice-common", develop = true } +minos-microservice-networks = { path = "../../../minos-python/packages/core/minos-microservice-networks", develop = true } +minos-microservice-aggregate = { path = "../../../minos-python/packages/core/minos-microservice-aggregate", develop = true } +minos-microservice-saga = { path = "../../../minos-python/packages/core/minos-microservice-saga", develop = true } +minos-microservice-cqrs = { path = "../../../minos-python/packages/core/minos-microservice-cqrs", develop = true } +minos-broker-kafka = { path = "../../../minos-python/packages/plugins/minos-broker-kafka", develop = true } +minos-discovery-minos = { path = "../../../minos-python/packages/plugins/minos-discovery-minos", develop = true } typer = "^0.3.2" SQLAlchemy = "1.4.22" diff --git a/microservices/review/src/aggregates.py b/microservices/review/src/aggregates.py index 5fd19e4b..a56ebfd2 100644 --- a/microservices/review/src/aggregates.py +++ b/microservices/review/src/aggregates.py @@ -3,17 +3,17 @@ ) from minos.aggregate import ( - Aggregate, - AggregateRef, - ModelRef, + RootEntity, + ExternalEntity, + Ref, ) -class Review(Aggregate): +class Review(RootEntity): """Product Review class.""" - product: ModelRef[Product] - user: ModelRef[Customer] + product: Ref[Product] + user: Ref[Customer] title: str description: str score: int @@ -25,13 +25,13 @@ def validate_score(score: int) -> bool: return 1 <= score <= 5 -class Product(AggregateRef): - """Product AggregateRef class.""" +class Product(ExternalEntity): + """Product ExternalEntity class.""" title: str -class Customer(AggregateRef): - """Customer AggregateRef class.""" +class Customer(ExternalEntity): + """Customer ExternalEntity class.""" name: str diff --git a/microservices/review/src/queries/services.py b/microservices/review/src/queries/services.py index f0b1df0c..b7043441 100644 --- a/microservices/review/src/queries/services.py +++ b/microservices/review/src/queries/services.py @@ -2,7 +2,7 @@ Provide, ) from minos.aggregate import ( - AggregateDiff, + Event, ) from minos.cqrs import ( QueryService, @@ -133,7 +133,7 @@ async def review_created(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() await self.repository.create(uuid=diff.uuid, version=diff.version, **diff.fields_diff) @enroute.broker.event("ReviewUpdated") @@ -143,7 +143,7 @@ async def review_updated(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() await self.repository.update(uuid=diff.uuid, version=diff.version, **diff.fields_diff) @enroute.broker.event("ProductUpdated.title") @@ -153,7 +153,7 @@ async def product_title_updated(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() print(diff) @enroute.broker.event("CustomerUpdated.name") @@ -163,5 +163,5 @@ async def username_updated(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() print(diff) diff --git a/microservices/ticket/config.yml b/microservices/ticket/config.yml index c0fbbf25..b9d9f7cc 100644 --- a/microservices/ticket/config.yml +++ b/microservices/ticket/config.yml @@ -4,8 +4,8 @@ service: injections: lock_pool: minos.common.PostgreSqlLockPool postgresql_pool: minos.common.PostgreSqlPool - broker_publisher: minos.networks.PostgreSqlQueuedKafkaBrokerPublisher - broker_subscriber_builder: minos.networks.PostgreSqlQueuedKafkaBrokerSubscriberBuilder + broker_publisher: minos.plugins.kafka.InMemoryQueuedKafkaBrokerPublisher + broker_subscriber_builder: minos.plugins.kafka.InMemoryQueuedKafkaBrokerSubscriberBuilder broker_pool: minos.networks.BrokerClientPool transaction_repository: minos.aggregate.PostgreSqlTransactionRepository event_repository: minos.aggregate.PostgreSqlEventRepository @@ -55,6 +55,6 @@ saga: storage: path: "./ticket.lmdb" discovery: - client: minos.networks.MinosDiscoveryClient + client: minos.plugins.minos_discovery.MinosDiscoveryClient host: localhost port: 5567 diff --git a/microservices/ticket/poetry.lock b/microservices/ticket/poetry.lock index 678e8510..aeb22b46 100644 --- a/microservices/ticket/poetry.lock +++ b/microservices/ticket/poetry.lock @@ -325,81 +325,140 @@ category = "dev" optional = false python-versions = "*" +[[package]] +name = "minos-broker-kafka" +version = "0.4.1" +description = "Minos Broker Kafka package" +category = "main" +optional = false +python-versions = "^3.9" +develop = true + +[package.dependencies] +aiokafka = "^0.7.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/plugins/minos-broker-kafka" + +[[package]] +name = "minos-discovery-minos" +version = "0.4.1" +description = "Minos Discovery Minos package" +category = "main" +optional = false +python-versions = "^3.9" +develop = true + +[package.dependencies] +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/plugins/minos-discovery-minos" + [[package]] name = "minos-microservice-aggregate" -version = "0.4.0" -description = "Python Package for Minos Microservices containing all the Aggregate stuff" +version = "0.4.1" +description = "Python Package for Minos Microservices containing all the RootEntity stuff" category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-aggregate" [[package]] name = "minos-microservice-common" -version = "0.4.0" +version = "0.4.1" description = "Python Package with common Classes and Utilities used in Minos Microservices." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -aiomisc = ">=14.0.3,<15.0.0" -aiopg = ">=1.2.1,<2.0.0" -cached-property = ">=1.5.2,<2.0.0" -dependency-injector = ">=4.32.2,<5.0.0" -fastavro = ">=1.4.0,<2.0.0" -lmdb = ">=1.2.1,<2.0.0" -orjson = ">=3.5.2,<4.0.0" +aiomisc = "^14.0.3" +aiopg = "^1.2.1" +cached-property = "^1.5.2" +dependency-injector = "^4.32.2" +fastavro = "^1.4.0" +lmdb = "^1.2.1" +orjson = "^3.5.2" PyYAML = ">=5.4.1,<7.0.0" +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-common" + [[package]] name = "minos-microservice-cqrs" -version = "0.4.0" +version = "0.4.1" description = "Minos Microservice CQRS package" category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -dependency-injector = ">=4.34.0,<5.0.0" -minos-microservice-aggregate = ">=0.4.0,<0.5.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +dependency-injector = "^4.34.0" +minos-microservice-aggregate = "^0.4.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-cqrs" [[package]] name = "minos-microservice-networks" -version = "0.4.0" +version = "0.4.1" description = "Python Package with the common network classes and utilities used in Minos Microservice." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -aiohttp = ">=3.7.4,<4.0.0" -aiokafka = ">=0.7.0,<0.8.0" -aiomisc = ">=14.0.3,<15.0.0" -aiopg = ">=1.2.1,<2.0.0" -crontab = ">=0.23.0,<0.24.0" -dependency-injector = ">=4.32.2,<5.0.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -orjson = ">=3.6.5,<4.0.0" +aiohttp = "^3.7.4" +aiomisc = "^14.0.3" +aiopg = "^1.2.1" +crontab = "^0.23.0" +dependency-injector = "^4.32.2" +minos-microservice-common = "^0.4.0" +orjson = "^3.6.5" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-networks" [[package]] name = "minos-microservice-saga" -version = "0.4.0" +version = "0.4.1" description = "Saga Library for MinOS project." category = "main" optional = false -python-versions = ">=3.9,<4.0" +python-versions = "^3.9" +develop = true [package.dependencies] -dependency-injector = ">=4.32.2,<5.0.0" -minos-microservice-aggregate = ">=0.4.0,<0.5.0" -minos-microservice-common = ">=0.4.0,<0.5.0" -minos-microservice-networks = ">=0.4.0,<0.5.0" +dependency-injector = "^4.32.2" +minos-microservice-aggregate = "^0.4.0" +minos-microservice-common = "^0.4.0" +minos-microservice-networks = "^0.4.0" + +[package.source] +type = "directory" +url = "../../../minos-python/packages/core/minos-microservice-saga" [[package]] name = "multidict" @@ -615,7 +674,7 @@ multidict = ">=4.0" [metadata] lock-version = "1.1" python-versions = "^3.9" -content-hash = "f0df167ab7b6362ad3f88ffdc31707cacb7deecfdf8d601b764d7dea6da410ed" +content-hash = "65a271a969ca1dd6d6ca51030a421b889254bfac15e94872a304d1fdb4c292a8" [metadata.files] aiohttp = [ @@ -1051,26 +1110,13 @@ mccabe = [ {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, ] -minos-microservice-aggregate = [ - {file = "minos-microservice-aggregate-0.4.0.tar.gz", hash = "sha256:2ada8638f7bfec2c120df452648f438710d7e5dd63612d09c1ba7f8cb41ba23d"}, - {file = "minos_microservice_aggregate-0.4.0-py3-none-any.whl", hash = "sha256:9edcb9931f7aeb9a472b64259fd7d0c1363d9ea5ee59fc5282642748a1c76ed3"}, -] -minos-microservice-common = [ - {file = "minos-microservice-common-0.4.0.tar.gz", hash = "sha256:b74995fba27ca383e52804e2c0013350d747dcc03c38098ad2026a9cceb04996"}, - {file = "minos_microservice_common-0.4.0-py3-none-any.whl", hash = "sha256:65cecd809b243007d57740b7d40349544d6e98a69ce84aac86ca06a2a4b97e29"}, -] -minos-microservice-cqrs = [ - {file = "minos-microservice-cqrs-0.4.0.tar.gz", hash = "sha256:f494a4916b0ec4ad14e813e617ac307f895fa97d777e5fd457b1c5c3c45db471"}, - {file = "minos_microservice_cqrs-0.4.0-py3-none-any.whl", hash = "sha256:f6998cfb9cb870139f851166f6b0e0975af1ce3aac0171fe862260b9178c7f76"}, -] -minos-microservice-networks = [ - {file = "minos-microservice-networks-0.4.0.tar.gz", hash = "sha256:4aa1791a723e148bc06fcb15e39ac9bd852d54a5101dcf4f5e1d6a7b472b9888"}, - {file = "minos_microservice_networks-0.4.0-py3-none-any.whl", hash = "sha256:94ef940aa7c5a3f00127bed312ebea1c635be569c6500c81ce7914cbb5c4c7e9"}, -] -minos-microservice-saga = [ - {file = "minos-microservice-saga-0.4.0.tar.gz", hash = "sha256:6c1d7ff41261253512d1f1bb00a9d0c54b4b9860df470c71a424547fbe01638c"}, - {file = "minos_microservice_saga-0.4.0-py3-none-any.whl", hash = "sha256:2cb332de5e405243b71f38ed7453c0f6d692e96827bb76811595425383fad18b"}, -] +minos-broker-kafka = [] +minos-discovery-minos = [] +minos-microservice-aggregate = [] +minos-microservice-common = [] +minos-microservice-cqrs = [] +minos-microservice-networks = [] +minos-microservice-saga = [] multidict = [ {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b9e95a740109c6047602f4db4da9949e6c5945cefbad34a1299775ddc9a62e2"}, {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac0e27844758d7177989ce406acc6a83c16ed4524ebc363c1f748cba184d89d3"}, diff --git a/microservices/ticket/pyproject.toml b/microservices/ticket/pyproject.toml index a45be563..563764e1 100644 --- a/microservices/ticket/pyproject.toml +++ b/microservices/ticket/pyproject.toml @@ -7,11 +7,13 @@ packages = [{ include = "src" }] [tool.poetry.dependencies] python = "^3.9" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-saga = "^0.4.0" -minos-microservice-cqrs = "^0.4.0" +minos-microservice-common = { path = "../../../minos-python/packages/core/minos-microservice-common", develop = true } +minos-microservice-networks = { path = "../../../minos-python/packages/core/minos-microservice-networks", develop = true } +minos-microservice-aggregate = { path = "../../../minos-python/packages/core/minos-microservice-aggregate", develop = true } +minos-microservice-saga = { path = "../../../minos-python/packages/core/minos-microservice-saga", develop = true } +minos-microservice-cqrs = { path = "../../../minos-python/packages/core/minos-microservice-cqrs", develop = true } +minos-broker-kafka = { path = "../../../minos-python/packages/plugins/minos-broker-kafka", develop = true } +minos-discovery-minos = { path = "../../../minos-python/packages/plugins/minos-discovery-minos", develop = true } typer = "^0.3.2" SQLAlchemy = "1.4.22" diff --git a/microservices/ticket/src/aggregates.py b/microservices/ticket/src/aggregates.py index c8a0652e..bc0ca32b 100644 --- a/microservices/ticket/src/aggregates.py +++ b/microservices/ticket/src/aggregates.py @@ -3,16 +3,16 @@ ) from minos.aggregate import ( - Aggregate, - AggregateRef, + RootEntity, + ExternalEntity, Entity, EntitySet, - ModelRef, + Ref, ) -class Ticket(Aggregate): - """Ticket Aggregate class.""" +class Ticket(RootEntity): + """Ticket RootEntity class.""" code: str total_price: float @@ -25,11 +25,11 @@ class TicketEntry(Entity): title: str unit_price: float quantity: int - product: ModelRef[Product] + product: Ref[Product] -class Product(AggregateRef): - """Order AggregateRef class.""" +class Product(ExternalEntity): + """Order ExternalEntity class.""" title: str price: float diff --git a/microservices/ticket/src/queries/services.py b/microservices/ticket/src/queries/services.py index c4ec4335..946435be 100644 --- a/microservices/ticket/src/queries/services.py +++ b/microservices/ticket/src/queries/services.py @@ -2,7 +2,7 @@ Provide, ) from minos.aggregate import ( - AggregateDiff, + Event, ) from minos.common import ( UUID_REGEX, @@ -52,7 +52,7 @@ async def ticket_created_or_updated(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() uuid = diff.uuid version = diff["version"] code = diff["code"] @@ -67,6 +67,6 @@ async def ticket_deleted(self, request: Request) -> None: :param request: A request instance containing the aggregate difference. :return: This method does not return anything. """ - diff: AggregateDiff = await request.content() + diff: Event = await request.content() print(diff) From 14279ac864c08f64adf5813dd45df36604098682 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sergio=20Garc=C3=ADa=20Prado?= Date: Thu, 3 Feb 2022 12:03:58 +0100 Subject: [PATCH 2/4] ISSUE #323 * Update to `minos-*@0.5.0` (2). --- microservices/authentication/poetry.lock | 172 +++++++++----------- microservices/authentication/pyproject.toml | 14 +- microservices/cart/poetry.lock | 172 +++++++++----------- microservices/cart/pyproject.toml | 14 +- microservices/customer/poetry.lock | 172 +++++++++----------- microservices/customer/pyproject.toml | 14 +- microservices/order/poetry.lock | 172 +++++++++----------- microservices/order/pyproject.toml | 14 +- microservices/payment/poetry.lock | 172 +++++++++----------- microservices/payment/pyproject.toml | 14 +- microservices/product/poetry.lock | 172 +++++++++----------- microservices/product/pyproject.toml | 14 +- microservices/review/poetry.lock | 172 +++++++++----------- microservices/review/pyproject.toml | 14 +- microservices/ticket/poetry.lock | 172 +++++++++----------- microservices/ticket/pyproject.toml | 14 +- 16 files changed, 688 insertions(+), 800 deletions(-) diff --git a/microservices/authentication/poetry.lock b/microservices/authentication/poetry.lock index 10d3cb6c..4887c743 100644 --- a/microservices/authentication/poetry.lock +++ b/microservices/authentication/poetry.lock @@ -327,138 +327,103 @@ python-versions = "*" [[package]] name = "minos-broker-kafka" -version = "0.4.1" -description = "Minos Broker Kafka package" +version = "0.5.1" +description = "The kafka plugin of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiokafka = "^0.7.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/plugins/minos-broker-kafka" +aiokafka = ">=0.7.0,<0.8.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-discovery-minos" -version = "0.4.1" -description = "Minos Discovery Minos package" +version = "0.5.1" +description = "The minos-discover plugin of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/plugins/minos-discovery-minos" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-aggregate" -version = "0.4.1" -description = "Python Package for Minos Microservices containing all the RootEntity stuff" +version = "0.5.1" +description = "The Aggregate pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-aggregate" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-common" -version = "0.4.1" -description = "Python Package with common Classes and Utilities used in Minos Microservices." +version = "0.5.0" +description = "The common core of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiomisc = "^14.0.3" -aiopg = "^1.2.1" -cached-property = "^1.5.2" -dependency-injector = "^4.32.2" -fastavro = "^1.4.0" -lmdb = "^1.2.1" -orjson = "^3.5.2" +aiomisc = ">=14.0.3,<15.0.0" +aiopg = ">=1.2.1,<2.0.0" +cached-property = ">=1.5.2,<2.0.0" +dependency-injector = ">=4.32.2,<5.0.0" +fastavro = ">=1.4.0,<2.0.0" +lmdb = ">=1.2.1,<2.0.0" +orjson = ">=3.5.2,<4.0.0" PyYAML = ">=5.4.1,<7.0.0" -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-common" - [[package]] name = "minos-microservice-cqrs" -version = "0.4.1" -description = "Minos Microservice CQRS package" +version = "0.5.1" +description = "The CQRS pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -dependency-injector = "^4.34.0" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-cqrs" +dependency-injector = ">=4.34.0,<5.0.0" +minos-microservice-aggregate = ">=0.5.0,<0.6.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-networks" -version = "0.4.1" -description = "Python Package with the common network classes and utilities used in Minos Microservice." +version = "0.5.1" +description = "The networks core of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiohttp = "^3.7.4" -aiomisc = "^14.0.3" -aiopg = "^1.2.1" -crontab = "^0.23.0" -dependency-injector = "^4.32.2" -minos-microservice-common = "^0.4.0" -orjson = "^3.6.5" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-networks" +aiohttp = ">=3.7.4,<4.0.0" +aiomisc = ">=14.0.3,<15.0.0" +aiopg = ">=1.2.1,<2.0.0" +crontab = ">=0.23.0,<0.24.0" +dependency-injector = ">=4.32.2,<5.0.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +orjson = ">=3.6.5,<4.0.0" [[package]] name = "minos-microservice-saga" -version = "0.4.1" -description = "Saga Library for MinOS project." +version = "0.5.1" +description = "The SAGA pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -dependency-injector = "^4.32.2" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-saga" +dependency-injector = ">=4.32.2,<5.0.0" +minos-microservice-aggregate = ">=0.5.0,<0.6.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "multidict" @@ -688,7 +653,7 @@ multidict = ">=4.0" [metadata] lock-version = "1.1" python-versions = "^3.9" -content-hash = "6be3f25508c6aa983167b59a6df639b85f71aea0d635d0d0b497950088a7d69e" +content-hash = "32da8ff4de0524cb079db5b8d2287f1561782d71e3aa13eb17a1541375ae6f52" [metadata.files] aiohttp = [ @@ -1124,13 +1089,34 @@ mccabe = [ {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, ] -minos-broker-kafka = [] -minos-discovery-minos = [] -minos-microservice-aggregate = [] -minos-microservice-common = [] -minos-microservice-cqrs = [] -minos-microservice-networks = [] -minos-microservice-saga = [] +minos-broker-kafka = [ + {file = "minos-broker-kafka-0.5.1.tar.gz", hash = "sha256:3ab04e239d7ffe823afc47bcdd9bc4c508b499b73d790669a5fcdd6279893027"}, + {file = "minos_broker_kafka-0.5.1-py3-none-any.whl", hash = "sha256:4dcd3b7e72ae0d675c86af6d917fa8a6fa94f2057777c3027d24a28989a13b2e"}, +] +minos-discovery-minos = [ + {file = "minos-discovery-minos-0.5.1.tar.gz", hash = "sha256:50c2d27d1ed511bfafbacf67bdd4e0c95fd8bb9c1cd3ad386494acbd70a3b3b2"}, + {file = "minos_discovery_minos-0.5.1-py3-none-any.whl", hash = "sha256:0de39d47be11e9295b13662cf4a0d6358413bcb2eaa14117dec9ee39da109a61"}, +] +minos-microservice-aggregate = [ + {file = "minos-microservice-aggregate-0.5.1.tar.gz", hash = "sha256:6c46e08a7f2cccb499f3c3a11ea58f0a7bc96282fd20cde8d5cb6ab233fcfe2d"}, + {file = "minos_microservice_aggregate-0.5.1-py3-none-any.whl", hash = "sha256:ccfc620736019429aa4905479f51b73df3bd43f79b30541df8d380085854c6a0"}, +] +minos-microservice-common = [ + {file = "minos-microservice-common-0.5.0.tar.gz", hash = "sha256:815231acecafba1fe28cb958b8e1446b1f920b60fbab90706e63b622520fa763"}, + {file = "minos_microservice_common-0.5.0-py3-none-any.whl", hash = "sha256:1a6f97b4a2ab7a651bc2d666ed4db8b986237c47d86b5999dab1d1dc4d401b77"}, +] +minos-microservice-cqrs = [ + {file = "minos-microservice-cqrs-0.5.1.tar.gz", hash = "sha256:f8e5e8006170ffd7135470347a01a7f149670bc0c1c8a3676525de4a7f88e802"}, + {file = "minos_microservice_cqrs-0.5.1-py3-none-any.whl", hash = "sha256:c942e85e3fbac33998fa684b51b054b85ee7ce36f4e3b5563b1962e496417077"}, +] +minos-microservice-networks = [ + {file = "minos-microservice-networks-0.5.1.tar.gz", hash = "sha256:f42bbff4d660ab5c400351b5e57a4cd6614f45ef241bc73ee9b26cf912a0e16e"}, + {file = "minos_microservice_networks-0.5.1-py3-none-any.whl", hash = "sha256:9756f8d6186314543402ff55fdedbd6710ce109e2d48faa13218e966d0d3ba5f"}, +] +minos-microservice-saga = [ + {file = "minos-microservice-saga-0.5.1.tar.gz", hash = "sha256:acaf0f2dc37e8d14ad76f562390478be1b316d491bc67d43aeb5147dfcfb2a1d"}, + {file = "minos_microservice_saga-0.5.1-py3-none-any.whl", hash = "sha256:0b368021764aa72dff3e02fbd82eee00329cc92fe10e2c6f1c42a9a5939f9d79"}, +] multidict = [ {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b9e95a740109c6047602f4db4da9949e6c5945cefbad34a1299775ddc9a62e2"}, {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac0e27844758d7177989ce406acc6a83c16ed4524ebc363c1f748cba184d89d3"}, diff --git a/microservices/authentication/pyproject.toml b/microservices/authentication/pyproject.toml index 26b704de..ff1db171 100644 --- a/microservices/authentication/pyproject.toml +++ b/microservices/authentication/pyproject.toml @@ -7,13 +7,13 @@ packages = [{ include = "src" }] [tool.poetry.dependencies] python = "^3.9" -minos-microservice-common = { path = "../../../minos-python/packages/core/minos-microservice-common", develop = true } -minos-microservice-networks = { path = "../../../minos-python/packages/core/minos-microservice-networks", develop = true } -minos-microservice-aggregate = { path = "../../../minos-python/packages/core/minos-microservice-aggregate", develop = true } -minos-microservice-saga = { path = "../../../minos-python/packages/core/minos-microservice-saga", develop = true } -minos-microservice-cqrs = { path = "../../../minos-python/packages/core/minos-microservice-cqrs", develop = true } -minos-broker-kafka = { path = "../../../minos-python/packages/plugins/minos-broker-kafka", develop = true } -minos-discovery-minos = { path = "../../../minos-python/packages/plugins/minos-discovery-minos", develop = true } +minos-microservice-common = "^0.5.0" +minos-microservice-networks = "^0.5.0" +minos-microservice-aggregate = "^0.5.0" +minos-microservice-saga = "^0.5.0" +minos-microservice-cqrs = "^0.5.0" +minos-broker-kafka = "^0.5.0" +minos-discovery-minos = "^0.5.0" typer = "^0.3.2" PyJWT = "^2.1.0" SQLAlchemy = "1.4.22" diff --git a/microservices/cart/poetry.lock b/microservices/cart/poetry.lock index 609e3767..984da5aa 100644 --- a/microservices/cart/poetry.lock +++ b/microservices/cart/poetry.lock @@ -319,138 +319,103 @@ python-versions = "*" [[package]] name = "minos-broker-kafka" -version = "0.4.1" -description = "Minos Broker Kafka package" +version = "0.5.1" +description = "The kafka plugin of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiokafka = "^0.7.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/plugins/minos-broker-kafka" +aiokafka = ">=0.7.0,<0.8.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-discovery-minos" -version = "0.4.1" -description = "Minos Discovery Minos package" +version = "0.5.1" +description = "The minos-discover plugin of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/plugins/minos-discovery-minos" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-aggregate" -version = "0.4.1" -description = "Python Package for Minos Microservices containing all the RootEntity stuff" +version = "0.5.1" +description = "The Aggregate pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-aggregate" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-common" -version = "0.4.1" -description = "Python Package with common Classes and Utilities used in Minos Microservices." +version = "0.5.0" +description = "The common core of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiomisc = "^14.0.3" -aiopg = "^1.2.1" -cached-property = "^1.5.2" -dependency-injector = "^4.32.2" -fastavro = "^1.4.0" -lmdb = "^1.2.1" -orjson = "^3.5.2" +aiomisc = ">=14.0.3,<15.0.0" +aiopg = ">=1.2.1,<2.0.0" +cached-property = ">=1.5.2,<2.0.0" +dependency-injector = ">=4.32.2,<5.0.0" +fastavro = ">=1.4.0,<2.0.0" +lmdb = ">=1.2.1,<2.0.0" +orjson = ">=3.5.2,<4.0.0" PyYAML = ">=5.4.1,<7.0.0" -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-common" - [[package]] name = "minos-microservice-cqrs" -version = "0.4.1" -description = "Minos Microservice CQRS package" +version = "0.5.1" +description = "The CQRS pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -dependency-injector = "^4.34.0" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-cqrs" +dependency-injector = ">=4.34.0,<5.0.0" +minos-microservice-aggregate = ">=0.5.0,<0.6.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-networks" -version = "0.4.1" -description = "Python Package with the common network classes and utilities used in Minos Microservice." +version = "0.5.1" +description = "The networks core of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiohttp = "^3.7.4" -aiomisc = "^14.0.3" -aiopg = "^1.2.1" -crontab = "^0.23.0" -dependency-injector = "^4.32.2" -minos-microservice-common = "^0.4.0" -orjson = "^3.6.5" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-networks" +aiohttp = ">=3.7.4,<4.0.0" +aiomisc = ">=14.0.3,<15.0.0" +aiopg = ">=1.2.1,<2.0.0" +crontab = ">=0.23.0,<0.24.0" +dependency-injector = ">=4.32.2,<5.0.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +orjson = ">=3.6.5,<4.0.0" [[package]] name = "minos-microservice-saga" -version = "0.4.1" -description = "Saga Library for MinOS project." +version = "0.5.1" +description = "The SAGA pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -dependency-injector = "^4.32.2" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-saga" +dependency-injector = ">=4.32.2,<5.0.0" +minos-microservice-aggregate = ">=0.5.0,<0.6.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "more-itertools" @@ -682,7 +647,7 @@ multidict = ">=4.0" [metadata] lock-version = "1.1" python-versions = "^3.9" -content-hash = "48109052dd28bdaa5821d07aa0850af45a05b64472eb589cf7f50fbd96c92f2f" +content-hash = "724aabdd3b55539d39a4f7830cb1e737751562dcd9bad4dbfe0800d9c8750c21" [metadata.files] aiohttp = [ @@ -1114,13 +1079,34 @@ mccabe = [ {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, ] -minos-broker-kafka = [] -minos-discovery-minos = [] -minos-microservice-aggregate = [] -minos-microservice-common = [] -minos-microservice-cqrs = [] -minos-microservice-networks = [] -minos-microservice-saga = [] +minos-broker-kafka = [ + {file = "minos-broker-kafka-0.5.1.tar.gz", hash = "sha256:3ab04e239d7ffe823afc47bcdd9bc4c508b499b73d790669a5fcdd6279893027"}, + {file = "minos_broker_kafka-0.5.1-py3-none-any.whl", hash = "sha256:4dcd3b7e72ae0d675c86af6d917fa8a6fa94f2057777c3027d24a28989a13b2e"}, +] +minos-discovery-minos = [ + {file = "minos-discovery-minos-0.5.1.tar.gz", hash = "sha256:50c2d27d1ed511bfafbacf67bdd4e0c95fd8bb9c1cd3ad386494acbd70a3b3b2"}, + {file = "minos_discovery_minos-0.5.1-py3-none-any.whl", hash = "sha256:0de39d47be11e9295b13662cf4a0d6358413bcb2eaa14117dec9ee39da109a61"}, +] +minos-microservice-aggregate = [ + {file = "minos-microservice-aggregate-0.5.1.tar.gz", hash = "sha256:6c46e08a7f2cccb499f3c3a11ea58f0a7bc96282fd20cde8d5cb6ab233fcfe2d"}, + {file = "minos_microservice_aggregate-0.5.1-py3-none-any.whl", hash = "sha256:ccfc620736019429aa4905479f51b73df3bd43f79b30541df8d380085854c6a0"}, +] +minos-microservice-common = [ + {file = "minos-microservice-common-0.5.0.tar.gz", hash = "sha256:815231acecafba1fe28cb958b8e1446b1f920b60fbab90706e63b622520fa763"}, + {file = "minos_microservice_common-0.5.0-py3-none-any.whl", hash = "sha256:1a6f97b4a2ab7a651bc2d666ed4db8b986237c47d86b5999dab1d1dc4d401b77"}, +] +minos-microservice-cqrs = [ + {file = "minos-microservice-cqrs-0.5.1.tar.gz", hash = "sha256:f8e5e8006170ffd7135470347a01a7f149670bc0c1c8a3676525de4a7f88e802"}, + {file = "minos_microservice_cqrs-0.5.1-py3-none-any.whl", hash = "sha256:c942e85e3fbac33998fa684b51b054b85ee7ce36f4e3b5563b1962e496417077"}, +] +minos-microservice-networks = [ + {file = "minos-microservice-networks-0.5.1.tar.gz", hash = "sha256:f42bbff4d660ab5c400351b5e57a4cd6614f45ef241bc73ee9b26cf912a0e16e"}, + {file = "minos_microservice_networks-0.5.1-py3-none-any.whl", hash = "sha256:9756f8d6186314543402ff55fdedbd6710ce109e2d48faa13218e966d0d3ba5f"}, +] +minos-microservice-saga = [ + {file = "minos-microservice-saga-0.5.1.tar.gz", hash = "sha256:acaf0f2dc37e8d14ad76f562390478be1b316d491bc67d43aeb5147dfcfb2a1d"}, + {file = "minos_microservice_saga-0.5.1-py3-none-any.whl", hash = "sha256:0b368021764aa72dff3e02fbd82eee00329cc92fe10e2c6f1c42a9a5939f9d79"}, +] more-itertools = [ {file = "more-itertools-8.12.0.tar.gz", hash = "sha256:7dc6ad46f05f545f900dd59e8dfb4e84a4827b97b3cfecb175ea0c7d247f6064"}, {file = "more_itertools-8.12.0-py3-none-any.whl", hash = "sha256:43e6dd9942dffd72661a2c4ef383ad7da1e6a3e968a927ad7a6083ab410a688b"}, diff --git a/microservices/cart/pyproject.toml b/microservices/cart/pyproject.toml index 0ecf325b..ab856d70 100644 --- a/microservices/cart/pyproject.toml +++ b/microservices/cart/pyproject.toml @@ -7,13 +7,13 @@ packages = [{ include = "src" }] [tool.poetry.dependencies] python = "^3.9" -minos-microservice-common = { path = "../../../minos-python/packages/core/minos-microservice-common", develop = true } -minos-microservice-networks = { path = "../../../minos-python/packages/core/minos-microservice-networks", develop = true } -minos-microservice-aggregate = { path = "../../../minos-python/packages/core/minos-microservice-aggregate", develop = true } -minos-microservice-saga = { path = "../../../minos-python/packages/core/minos-microservice-saga", develop = true } -minos-microservice-cqrs = { path = "../../../minos-python/packages/core/minos-microservice-cqrs", develop = true } -minos-broker-kafka = { path = "../../../minos-python/packages/plugins/minos-broker-kafka", develop = true } -minos-discovery-minos = { path = "../../../minos-python/packages/plugins/minos-discovery-minos", develop = true } +minos-microservice-common = "^0.5.0" +minos-microservice-networks = "^0.5.0" +minos-microservice-aggregate = "^0.5.0" +minos-microservice-saga = "^0.5.0" +minos-microservice-cqrs = "^0.5.0" +minos-broker-kafka = "^0.5.0" +minos-discovery-minos = "^0.5.0" typer = "^0.3.2" SQLAlchemy = "1.4.22" diff --git a/microservices/customer/poetry.lock b/microservices/customer/poetry.lock index 5807e6e9..e3e25ab8 100644 --- a/microservices/customer/poetry.lock +++ b/microservices/customer/poetry.lock @@ -316,138 +316,103 @@ python-versions = "*" [[package]] name = "minos-broker-kafka" -version = "0.4.1" -description = "Minos Broker Kafka package" +version = "0.5.1" +description = "The kafka plugin of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiokafka = "^0.7.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/plugins/minos-broker-kafka" +aiokafka = ">=0.7.0,<0.8.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-discovery-minos" -version = "0.4.1" -description = "Minos Discovery Minos package" +version = "0.5.1" +description = "The minos-discover plugin of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/plugins/minos-discovery-minos" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-aggregate" -version = "0.4.1" -description = "Python Package for Minos Microservices containing all the RootEntity stuff" +version = "0.5.1" +description = "The Aggregate pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-aggregate" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-common" -version = "0.4.1" -description = "Python Package with common Classes and Utilities used in Minos Microservices." +version = "0.5.0" +description = "The common core of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiomisc = "^14.0.3" -aiopg = "^1.2.1" -cached-property = "^1.5.2" -dependency-injector = "^4.32.2" -fastavro = "^1.4.0" -lmdb = "^1.2.1" -orjson = "^3.5.2" +aiomisc = ">=14.0.3,<15.0.0" +aiopg = ">=1.2.1,<2.0.0" +cached-property = ">=1.5.2,<2.0.0" +dependency-injector = ">=4.32.2,<5.0.0" +fastavro = ">=1.4.0,<2.0.0" +lmdb = ">=1.2.1,<2.0.0" +orjson = ">=3.5.2,<4.0.0" PyYAML = ">=5.4.1,<7.0.0" -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-common" - [[package]] name = "minos-microservice-cqrs" -version = "0.4.1" -description = "Minos Microservice CQRS package" +version = "0.5.1" +description = "The CQRS pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -dependency-injector = "^4.34.0" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-cqrs" +dependency-injector = ">=4.34.0,<5.0.0" +minos-microservice-aggregate = ">=0.5.0,<0.6.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-networks" -version = "0.4.1" -description = "Python Package with the common network classes and utilities used in Minos Microservice." +version = "0.5.1" +description = "The networks core of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiohttp = "^3.7.4" -aiomisc = "^14.0.3" -aiopg = "^1.2.1" -crontab = "^0.23.0" -dependency-injector = "^4.32.2" -minos-microservice-common = "^0.4.0" -orjson = "^3.6.5" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-networks" +aiohttp = ">=3.7.4,<4.0.0" +aiomisc = ">=14.0.3,<15.0.0" +aiopg = ">=1.2.1,<2.0.0" +crontab = ">=0.23.0,<0.24.0" +dependency-injector = ">=4.32.2,<5.0.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +orjson = ">=3.6.5,<4.0.0" [[package]] name = "minos-microservice-saga" -version = "0.4.1" -description = "Saga Library for MinOS project." +version = "0.5.1" +description = "The SAGA pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -dependency-injector = "^4.32.2" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-saga" +dependency-injector = ">=4.32.2,<5.0.0" +minos-microservice-aggregate = ">=0.5.0,<0.6.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "multidict" @@ -632,7 +597,7 @@ multidict = ">=4.0" [metadata] lock-version = "1.1" python-versions = "^3.9" -content-hash = "993b94cd6a1db223673a58f294c6c42b3b58cf97a9e96d9100ff20b005df81f3" +content-hash = "c2f28a6ccd5a83cc14560ad17ff633f1106690c1f33dc21f4bcf70e73018e495" [metadata.files] aiohttp = [ @@ -1011,13 +976,34 @@ mccabe = [ {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, ] -minos-broker-kafka = [] -minos-discovery-minos = [] -minos-microservice-aggregate = [] -minos-microservice-common = [] -minos-microservice-cqrs = [] -minos-microservice-networks = [] -minos-microservice-saga = [] +minos-broker-kafka = [ + {file = "minos-broker-kafka-0.5.1.tar.gz", hash = "sha256:3ab04e239d7ffe823afc47bcdd9bc4c508b499b73d790669a5fcdd6279893027"}, + {file = "minos_broker_kafka-0.5.1-py3-none-any.whl", hash = "sha256:4dcd3b7e72ae0d675c86af6d917fa8a6fa94f2057777c3027d24a28989a13b2e"}, +] +minos-discovery-minos = [ + {file = "minos-discovery-minos-0.5.1.tar.gz", hash = "sha256:50c2d27d1ed511bfafbacf67bdd4e0c95fd8bb9c1cd3ad386494acbd70a3b3b2"}, + {file = "minos_discovery_minos-0.5.1-py3-none-any.whl", hash = "sha256:0de39d47be11e9295b13662cf4a0d6358413bcb2eaa14117dec9ee39da109a61"}, +] +minos-microservice-aggregate = [ + {file = "minos-microservice-aggregate-0.5.1.tar.gz", hash = "sha256:6c46e08a7f2cccb499f3c3a11ea58f0a7bc96282fd20cde8d5cb6ab233fcfe2d"}, + {file = "minos_microservice_aggregate-0.5.1-py3-none-any.whl", hash = "sha256:ccfc620736019429aa4905479f51b73df3bd43f79b30541df8d380085854c6a0"}, +] +minos-microservice-common = [ + {file = "minos-microservice-common-0.5.0.tar.gz", hash = "sha256:815231acecafba1fe28cb958b8e1446b1f920b60fbab90706e63b622520fa763"}, + {file = "minos_microservice_common-0.5.0-py3-none-any.whl", hash = "sha256:1a6f97b4a2ab7a651bc2d666ed4db8b986237c47d86b5999dab1d1dc4d401b77"}, +] +minos-microservice-cqrs = [ + {file = "minos-microservice-cqrs-0.5.1.tar.gz", hash = "sha256:f8e5e8006170ffd7135470347a01a7f149670bc0c1c8a3676525de4a7f88e802"}, + {file = "minos_microservice_cqrs-0.5.1-py3-none-any.whl", hash = "sha256:c942e85e3fbac33998fa684b51b054b85ee7ce36f4e3b5563b1962e496417077"}, +] +minos-microservice-networks = [ + {file = "minos-microservice-networks-0.5.1.tar.gz", hash = "sha256:f42bbff4d660ab5c400351b5e57a4cd6614f45ef241bc73ee9b26cf912a0e16e"}, + {file = "minos_microservice_networks-0.5.1-py3-none-any.whl", hash = "sha256:9756f8d6186314543402ff55fdedbd6710ce109e2d48faa13218e966d0d3ba5f"}, +] +minos-microservice-saga = [ + {file = "minos-microservice-saga-0.5.1.tar.gz", hash = "sha256:acaf0f2dc37e8d14ad76f562390478be1b316d491bc67d43aeb5147dfcfb2a1d"}, + {file = "minos_microservice_saga-0.5.1-py3-none-any.whl", hash = "sha256:0b368021764aa72dff3e02fbd82eee00329cc92fe10e2c6f1c42a9a5939f9d79"}, +] multidict = [ {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b9e95a740109c6047602f4db4da9949e6c5945cefbad34a1299775ddc9a62e2"}, {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac0e27844758d7177989ce406acc6a83c16ed4524ebc363c1f748cba184d89d3"}, diff --git a/microservices/customer/pyproject.toml b/microservices/customer/pyproject.toml index 14c0ead5..2061dabd 100644 --- a/microservices/customer/pyproject.toml +++ b/microservices/customer/pyproject.toml @@ -7,13 +7,13 @@ packages = [{ include = "src" }] [tool.poetry.dependencies] python = "^3.9" -minos-microservice-common = { path = "../../../minos-python/packages/core/minos-microservice-common", develop = true } -minos-microservice-networks = { path = "../../../minos-python/packages/core/minos-microservice-networks", develop = true } -minos-microservice-aggregate = { path = "../../../minos-python/packages/core/minos-microservice-aggregate", develop = true } -minos-microservice-saga = { path = "../../../minos-python/packages/core/minos-microservice-saga", develop = true } -minos-microservice-cqrs = { path = "../../../minos-python/packages/core/minos-microservice-cqrs", develop = true } -minos-broker-kafka = { path = "../../../minos-python/packages/plugins/minos-broker-kafka", develop = true } -minos-discovery-minos = { path = "../../../minos-python/packages/plugins/minos-discovery-minos", develop = true } +minos-microservice-common = "^0.5.0" +minos-microservice-networks = "^0.5.0" +minos-microservice-aggregate = "^0.5.0" +minos-microservice-saga = "^0.5.0" +minos-microservice-cqrs = "^0.5.0" +minos-broker-kafka = "^0.5.0" +minos-discovery-minos = "^0.5.0" typer = "^0.3.2" [tool.poetry.dev-dependencies] diff --git a/microservices/order/poetry.lock b/microservices/order/poetry.lock index aeb22b46..c6f5fee9 100644 --- a/microservices/order/poetry.lock +++ b/microservices/order/poetry.lock @@ -327,138 +327,103 @@ python-versions = "*" [[package]] name = "minos-broker-kafka" -version = "0.4.1" -description = "Minos Broker Kafka package" +version = "0.5.1" +description = "The kafka plugin of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiokafka = "^0.7.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/plugins/minos-broker-kafka" +aiokafka = ">=0.7.0,<0.8.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-discovery-minos" -version = "0.4.1" -description = "Minos Discovery Minos package" +version = "0.5.1" +description = "The minos-discover plugin of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/plugins/minos-discovery-minos" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-aggregate" -version = "0.4.1" -description = "Python Package for Minos Microservices containing all the RootEntity stuff" +version = "0.5.1" +description = "The Aggregate pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-aggregate" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-common" -version = "0.4.1" -description = "Python Package with common Classes and Utilities used in Minos Microservices." +version = "0.5.0" +description = "The common core of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiomisc = "^14.0.3" -aiopg = "^1.2.1" -cached-property = "^1.5.2" -dependency-injector = "^4.32.2" -fastavro = "^1.4.0" -lmdb = "^1.2.1" -orjson = "^3.5.2" +aiomisc = ">=14.0.3,<15.0.0" +aiopg = ">=1.2.1,<2.0.0" +cached-property = ">=1.5.2,<2.0.0" +dependency-injector = ">=4.32.2,<5.0.0" +fastavro = ">=1.4.0,<2.0.0" +lmdb = ">=1.2.1,<2.0.0" +orjson = ">=3.5.2,<4.0.0" PyYAML = ">=5.4.1,<7.0.0" -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-common" - [[package]] name = "minos-microservice-cqrs" -version = "0.4.1" -description = "Minos Microservice CQRS package" +version = "0.5.1" +description = "The CQRS pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -dependency-injector = "^4.34.0" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-cqrs" +dependency-injector = ">=4.34.0,<5.0.0" +minos-microservice-aggregate = ">=0.5.0,<0.6.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-networks" -version = "0.4.1" -description = "Python Package with the common network classes and utilities used in Minos Microservice." +version = "0.5.1" +description = "The networks core of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiohttp = "^3.7.4" -aiomisc = "^14.0.3" -aiopg = "^1.2.1" -crontab = "^0.23.0" -dependency-injector = "^4.32.2" -minos-microservice-common = "^0.4.0" -orjson = "^3.6.5" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-networks" +aiohttp = ">=3.7.4,<4.0.0" +aiomisc = ">=14.0.3,<15.0.0" +aiopg = ">=1.2.1,<2.0.0" +crontab = ">=0.23.0,<0.24.0" +dependency-injector = ">=4.32.2,<5.0.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +orjson = ">=3.6.5,<4.0.0" [[package]] name = "minos-microservice-saga" -version = "0.4.1" -description = "Saga Library for MinOS project." +version = "0.5.1" +description = "The SAGA pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -dependency-injector = "^4.32.2" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-saga" +dependency-injector = ">=4.32.2,<5.0.0" +minos-microservice-aggregate = ">=0.5.0,<0.6.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "multidict" @@ -674,7 +639,7 @@ multidict = ">=4.0" [metadata] lock-version = "1.1" python-versions = "^3.9" -content-hash = "65a271a969ca1dd6d6ca51030a421b889254bfac15e94872a304d1fdb4c292a8" +content-hash = "9a784fb4503db889dc8097299da80446f0c7f70e770c2f18d2cb0c207014a517" [metadata.files] aiohttp = [ @@ -1110,13 +1075,34 @@ mccabe = [ {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, ] -minos-broker-kafka = [] -minos-discovery-minos = [] -minos-microservice-aggregate = [] -minos-microservice-common = [] -minos-microservice-cqrs = [] -minos-microservice-networks = [] -minos-microservice-saga = [] +minos-broker-kafka = [ + {file = "minos-broker-kafka-0.5.1.tar.gz", hash = "sha256:3ab04e239d7ffe823afc47bcdd9bc4c508b499b73d790669a5fcdd6279893027"}, + {file = "minos_broker_kafka-0.5.1-py3-none-any.whl", hash = "sha256:4dcd3b7e72ae0d675c86af6d917fa8a6fa94f2057777c3027d24a28989a13b2e"}, +] +minos-discovery-minos = [ + {file = "minos-discovery-minos-0.5.1.tar.gz", hash = "sha256:50c2d27d1ed511bfafbacf67bdd4e0c95fd8bb9c1cd3ad386494acbd70a3b3b2"}, + {file = "minos_discovery_minos-0.5.1-py3-none-any.whl", hash = "sha256:0de39d47be11e9295b13662cf4a0d6358413bcb2eaa14117dec9ee39da109a61"}, +] +minos-microservice-aggregate = [ + {file = "minos-microservice-aggregate-0.5.1.tar.gz", hash = "sha256:6c46e08a7f2cccb499f3c3a11ea58f0a7bc96282fd20cde8d5cb6ab233fcfe2d"}, + {file = "minos_microservice_aggregate-0.5.1-py3-none-any.whl", hash = "sha256:ccfc620736019429aa4905479f51b73df3bd43f79b30541df8d380085854c6a0"}, +] +minos-microservice-common = [ + {file = "minos-microservice-common-0.5.0.tar.gz", hash = "sha256:815231acecafba1fe28cb958b8e1446b1f920b60fbab90706e63b622520fa763"}, + {file = "minos_microservice_common-0.5.0-py3-none-any.whl", hash = "sha256:1a6f97b4a2ab7a651bc2d666ed4db8b986237c47d86b5999dab1d1dc4d401b77"}, +] +minos-microservice-cqrs = [ + {file = "minos-microservice-cqrs-0.5.1.tar.gz", hash = "sha256:f8e5e8006170ffd7135470347a01a7f149670bc0c1c8a3676525de4a7f88e802"}, + {file = "minos_microservice_cqrs-0.5.1-py3-none-any.whl", hash = "sha256:c942e85e3fbac33998fa684b51b054b85ee7ce36f4e3b5563b1962e496417077"}, +] +minos-microservice-networks = [ + {file = "minos-microservice-networks-0.5.1.tar.gz", hash = "sha256:f42bbff4d660ab5c400351b5e57a4cd6614f45ef241bc73ee9b26cf912a0e16e"}, + {file = "minos_microservice_networks-0.5.1-py3-none-any.whl", hash = "sha256:9756f8d6186314543402ff55fdedbd6710ce109e2d48faa13218e966d0d3ba5f"}, +] +minos-microservice-saga = [ + {file = "minos-microservice-saga-0.5.1.tar.gz", hash = "sha256:acaf0f2dc37e8d14ad76f562390478be1b316d491bc67d43aeb5147dfcfb2a1d"}, + {file = "minos_microservice_saga-0.5.1-py3-none-any.whl", hash = "sha256:0b368021764aa72dff3e02fbd82eee00329cc92fe10e2c6f1c42a9a5939f9d79"}, +] multidict = [ {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b9e95a740109c6047602f4db4da9949e6c5945cefbad34a1299775ddc9a62e2"}, {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac0e27844758d7177989ce406acc6a83c16ed4524ebc363c1f748cba184d89d3"}, diff --git a/microservices/order/pyproject.toml b/microservices/order/pyproject.toml index a1f32173..5dc4ac34 100644 --- a/microservices/order/pyproject.toml +++ b/microservices/order/pyproject.toml @@ -7,13 +7,13 @@ packages = [{ include = "src" }] [tool.poetry.dependencies] python = "^3.9" -minos-microservice-common = { path = "../../../minos-python/packages/core/minos-microservice-common", develop = true } -minos-microservice-networks = { path = "../../../minos-python/packages/core/minos-microservice-networks", develop = true } -minos-microservice-aggregate = { path = "../../../minos-python/packages/core/minos-microservice-aggregate", develop = true } -minos-microservice-saga = { path = "../../../minos-python/packages/core/minos-microservice-saga", develop = true } -minos-microservice-cqrs = { path = "../../../minos-python/packages/core/minos-microservice-cqrs", develop = true } -minos-broker-kafka = { path = "../../../minos-python/packages/plugins/minos-broker-kafka", develop = true } -minos-discovery-minos = { path = "../../../minos-python/packages/plugins/minos-discovery-minos", develop = true } +minos-microservice-common = "^0.5.0" +minos-microservice-networks = "^0.5.0" +minos-microservice-aggregate = "^0.5.0" +minos-microservice-saga = "^0.5.0" +minos-microservice-cqrs = "^0.5.0" +minos-broker-kafka = "^0.5.0" +minos-discovery-minos = "^0.5.0" typer = "^0.3.2" SQLAlchemy = "1.4.22" diff --git a/microservices/payment/poetry.lock b/microservices/payment/poetry.lock index 5807e6e9..e3e25ab8 100644 --- a/microservices/payment/poetry.lock +++ b/microservices/payment/poetry.lock @@ -316,138 +316,103 @@ python-versions = "*" [[package]] name = "minos-broker-kafka" -version = "0.4.1" -description = "Minos Broker Kafka package" +version = "0.5.1" +description = "The kafka plugin of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiokafka = "^0.7.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/plugins/minos-broker-kafka" +aiokafka = ">=0.7.0,<0.8.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-discovery-minos" -version = "0.4.1" -description = "Minos Discovery Minos package" +version = "0.5.1" +description = "The minos-discover plugin of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/plugins/minos-discovery-minos" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-aggregate" -version = "0.4.1" -description = "Python Package for Minos Microservices containing all the RootEntity stuff" +version = "0.5.1" +description = "The Aggregate pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-aggregate" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-common" -version = "0.4.1" -description = "Python Package with common Classes and Utilities used in Minos Microservices." +version = "0.5.0" +description = "The common core of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiomisc = "^14.0.3" -aiopg = "^1.2.1" -cached-property = "^1.5.2" -dependency-injector = "^4.32.2" -fastavro = "^1.4.0" -lmdb = "^1.2.1" -orjson = "^3.5.2" +aiomisc = ">=14.0.3,<15.0.0" +aiopg = ">=1.2.1,<2.0.0" +cached-property = ">=1.5.2,<2.0.0" +dependency-injector = ">=4.32.2,<5.0.0" +fastavro = ">=1.4.0,<2.0.0" +lmdb = ">=1.2.1,<2.0.0" +orjson = ">=3.5.2,<4.0.0" PyYAML = ">=5.4.1,<7.0.0" -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-common" - [[package]] name = "minos-microservice-cqrs" -version = "0.4.1" -description = "Minos Microservice CQRS package" +version = "0.5.1" +description = "The CQRS pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -dependency-injector = "^4.34.0" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-cqrs" +dependency-injector = ">=4.34.0,<5.0.0" +minos-microservice-aggregate = ">=0.5.0,<0.6.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-networks" -version = "0.4.1" -description = "Python Package with the common network classes and utilities used in Minos Microservice." +version = "0.5.1" +description = "The networks core of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiohttp = "^3.7.4" -aiomisc = "^14.0.3" -aiopg = "^1.2.1" -crontab = "^0.23.0" -dependency-injector = "^4.32.2" -minos-microservice-common = "^0.4.0" -orjson = "^3.6.5" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-networks" +aiohttp = ">=3.7.4,<4.0.0" +aiomisc = ">=14.0.3,<15.0.0" +aiopg = ">=1.2.1,<2.0.0" +crontab = ">=0.23.0,<0.24.0" +dependency-injector = ">=4.32.2,<5.0.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +orjson = ">=3.6.5,<4.0.0" [[package]] name = "minos-microservice-saga" -version = "0.4.1" -description = "Saga Library for MinOS project." +version = "0.5.1" +description = "The SAGA pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -dependency-injector = "^4.32.2" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-saga" +dependency-injector = ">=4.32.2,<5.0.0" +minos-microservice-aggregate = ">=0.5.0,<0.6.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "multidict" @@ -632,7 +597,7 @@ multidict = ">=4.0" [metadata] lock-version = "1.1" python-versions = "^3.9" -content-hash = "993b94cd6a1db223673a58f294c6c42b3b58cf97a9e96d9100ff20b005df81f3" +content-hash = "c2f28a6ccd5a83cc14560ad17ff633f1106690c1f33dc21f4bcf70e73018e495" [metadata.files] aiohttp = [ @@ -1011,13 +976,34 @@ mccabe = [ {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, ] -minos-broker-kafka = [] -minos-discovery-minos = [] -minos-microservice-aggregate = [] -minos-microservice-common = [] -minos-microservice-cqrs = [] -minos-microservice-networks = [] -minos-microservice-saga = [] +minos-broker-kafka = [ + {file = "minos-broker-kafka-0.5.1.tar.gz", hash = "sha256:3ab04e239d7ffe823afc47bcdd9bc4c508b499b73d790669a5fcdd6279893027"}, + {file = "minos_broker_kafka-0.5.1-py3-none-any.whl", hash = "sha256:4dcd3b7e72ae0d675c86af6d917fa8a6fa94f2057777c3027d24a28989a13b2e"}, +] +minos-discovery-minos = [ + {file = "minos-discovery-minos-0.5.1.tar.gz", hash = "sha256:50c2d27d1ed511bfafbacf67bdd4e0c95fd8bb9c1cd3ad386494acbd70a3b3b2"}, + {file = "minos_discovery_minos-0.5.1-py3-none-any.whl", hash = "sha256:0de39d47be11e9295b13662cf4a0d6358413bcb2eaa14117dec9ee39da109a61"}, +] +minos-microservice-aggregate = [ + {file = "minos-microservice-aggregate-0.5.1.tar.gz", hash = "sha256:6c46e08a7f2cccb499f3c3a11ea58f0a7bc96282fd20cde8d5cb6ab233fcfe2d"}, + {file = "minos_microservice_aggregate-0.5.1-py3-none-any.whl", hash = "sha256:ccfc620736019429aa4905479f51b73df3bd43f79b30541df8d380085854c6a0"}, +] +minos-microservice-common = [ + {file = "minos-microservice-common-0.5.0.tar.gz", hash = "sha256:815231acecafba1fe28cb958b8e1446b1f920b60fbab90706e63b622520fa763"}, + {file = "minos_microservice_common-0.5.0-py3-none-any.whl", hash = "sha256:1a6f97b4a2ab7a651bc2d666ed4db8b986237c47d86b5999dab1d1dc4d401b77"}, +] +minos-microservice-cqrs = [ + {file = "minos-microservice-cqrs-0.5.1.tar.gz", hash = "sha256:f8e5e8006170ffd7135470347a01a7f149670bc0c1c8a3676525de4a7f88e802"}, + {file = "minos_microservice_cqrs-0.5.1-py3-none-any.whl", hash = "sha256:c942e85e3fbac33998fa684b51b054b85ee7ce36f4e3b5563b1962e496417077"}, +] +minos-microservice-networks = [ + {file = "minos-microservice-networks-0.5.1.tar.gz", hash = "sha256:f42bbff4d660ab5c400351b5e57a4cd6614f45ef241bc73ee9b26cf912a0e16e"}, + {file = "minos_microservice_networks-0.5.1-py3-none-any.whl", hash = "sha256:9756f8d6186314543402ff55fdedbd6710ce109e2d48faa13218e966d0d3ba5f"}, +] +minos-microservice-saga = [ + {file = "minos-microservice-saga-0.5.1.tar.gz", hash = "sha256:acaf0f2dc37e8d14ad76f562390478be1b316d491bc67d43aeb5147dfcfb2a1d"}, + {file = "minos_microservice_saga-0.5.1-py3-none-any.whl", hash = "sha256:0b368021764aa72dff3e02fbd82eee00329cc92fe10e2c6f1c42a9a5939f9d79"}, +] multidict = [ {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b9e95a740109c6047602f4db4da9949e6c5945cefbad34a1299775ddc9a62e2"}, {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac0e27844758d7177989ce406acc6a83c16ed4524ebc363c1f748cba184d89d3"}, diff --git a/microservices/payment/pyproject.toml b/microservices/payment/pyproject.toml index 3c3cd57d..4cdf06b0 100644 --- a/microservices/payment/pyproject.toml +++ b/microservices/payment/pyproject.toml @@ -7,13 +7,13 @@ packages = [{ include = "src" }] [tool.poetry.dependencies] python = "^3.9" -minos-microservice-common = { path = "../../../minos-python/packages/core/minos-microservice-common", develop = true } -minos-microservice-networks = { path = "../../../minos-python/packages/core/minos-microservice-networks", develop = true } -minos-microservice-aggregate = { path = "../../../minos-python/packages/core/minos-microservice-aggregate", develop = true } -minos-microservice-saga = { path = "../../../minos-python/packages/core/minos-microservice-saga", develop = true } -minos-microservice-cqrs = { path = "../../../minos-python/packages/core/minos-microservice-cqrs", develop = true } -minos-broker-kafka = { path = "../../../minos-python/packages/plugins/minos-broker-kafka", develop = true } -minos-discovery-minos = { path = "../../../minos-python/packages/plugins/minos-discovery-minos", develop = true } +minos-microservice-common = "^0.5.0" +minos-microservice-networks = "^0.5.0" +minos-microservice-aggregate = "^0.5.0" +minos-microservice-saga = "^0.5.0" +minos-microservice-cqrs = "^0.5.0" +minos-broker-kafka = "^0.5.0" +minos-discovery-minos = "^0.5.0" typer = "^0.3.2" [tool.poetry.dev-dependencies] diff --git a/microservices/product/poetry.lock b/microservices/product/poetry.lock index aeb22b46..c6f5fee9 100644 --- a/microservices/product/poetry.lock +++ b/microservices/product/poetry.lock @@ -327,138 +327,103 @@ python-versions = "*" [[package]] name = "minos-broker-kafka" -version = "0.4.1" -description = "Minos Broker Kafka package" +version = "0.5.1" +description = "The kafka plugin of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiokafka = "^0.7.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/plugins/minos-broker-kafka" +aiokafka = ">=0.7.0,<0.8.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-discovery-minos" -version = "0.4.1" -description = "Minos Discovery Minos package" +version = "0.5.1" +description = "The minos-discover plugin of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/plugins/minos-discovery-minos" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-aggregate" -version = "0.4.1" -description = "Python Package for Minos Microservices containing all the RootEntity stuff" +version = "0.5.1" +description = "The Aggregate pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-aggregate" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-common" -version = "0.4.1" -description = "Python Package with common Classes and Utilities used in Minos Microservices." +version = "0.5.0" +description = "The common core of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiomisc = "^14.0.3" -aiopg = "^1.2.1" -cached-property = "^1.5.2" -dependency-injector = "^4.32.2" -fastavro = "^1.4.0" -lmdb = "^1.2.1" -orjson = "^3.5.2" +aiomisc = ">=14.0.3,<15.0.0" +aiopg = ">=1.2.1,<2.0.0" +cached-property = ">=1.5.2,<2.0.0" +dependency-injector = ">=4.32.2,<5.0.0" +fastavro = ">=1.4.0,<2.0.0" +lmdb = ">=1.2.1,<2.0.0" +orjson = ">=3.5.2,<4.0.0" PyYAML = ">=5.4.1,<7.0.0" -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-common" - [[package]] name = "minos-microservice-cqrs" -version = "0.4.1" -description = "Minos Microservice CQRS package" +version = "0.5.1" +description = "The CQRS pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -dependency-injector = "^4.34.0" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-cqrs" +dependency-injector = ">=4.34.0,<5.0.0" +minos-microservice-aggregate = ">=0.5.0,<0.6.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-networks" -version = "0.4.1" -description = "Python Package with the common network classes and utilities used in Minos Microservice." +version = "0.5.1" +description = "The networks core of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiohttp = "^3.7.4" -aiomisc = "^14.0.3" -aiopg = "^1.2.1" -crontab = "^0.23.0" -dependency-injector = "^4.32.2" -minos-microservice-common = "^0.4.0" -orjson = "^3.6.5" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-networks" +aiohttp = ">=3.7.4,<4.0.0" +aiomisc = ">=14.0.3,<15.0.0" +aiopg = ">=1.2.1,<2.0.0" +crontab = ">=0.23.0,<0.24.0" +dependency-injector = ">=4.32.2,<5.0.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +orjson = ">=3.6.5,<4.0.0" [[package]] name = "minos-microservice-saga" -version = "0.4.1" -description = "Saga Library for MinOS project." +version = "0.5.1" +description = "The SAGA pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -dependency-injector = "^4.32.2" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-saga" +dependency-injector = ">=4.32.2,<5.0.0" +minos-microservice-aggregate = ">=0.5.0,<0.6.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "multidict" @@ -674,7 +639,7 @@ multidict = ">=4.0" [metadata] lock-version = "1.1" python-versions = "^3.9" -content-hash = "65a271a969ca1dd6d6ca51030a421b889254bfac15e94872a304d1fdb4c292a8" +content-hash = "9a784fb4503db889dc8097299da80446f0c7f70e770c2f18d2cb0c207014a517" [metadata.files] aiohttp = [ @@ -1110,13 +1075,34 @@ mccabe = [ {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, ] -minos-broker-kafka = [] -minos-discovery-minos = [] -minos-microservice-aggregate = [] -minos-microservice-common = [] -minos-microservice-cqrs = [] -minos-microservice-networks = [] -minos-microservice-saga = [] +minos-broker-kafka = [ + {file = "minos-broker-kafka-0.5.1.tar.gz", hash = "sha256:3ab04e239d7ffe823afc47bcdd9bc4c508b499b73d790669a5fcdd6279893027"}, + {file = "minos_broker_kafka-0.5.1-py3-none-any.whl", hash = "sha256:4dcd3b7e72ae0d675c86af6d917fa8a6fa94f2057777c3027d24a28989a13b2e"}, +] +minos-discovery-minos = [ + {file = "minos-discovery-minos-0.5.1.tar.gz", hash = "sha256:50c2d27d1ed511bfafbacf67bdd4e0c95fd8bb9c1cd3ad386494acbd70a3b3b2"}, + {file = "minos_discovery_minos-0.5.1-py3-none-any.whl", hash = "sha256:0de39d47be11e9295b13662cf4a0d6358413bcb2eaa14117dec9ee39da109a61"}, +] +minos-microservice-aggregate = [ + {file = "minos-microservice-aggregate-0.5.1.tar.gz", hash = "sha256:6c46e08a7f2cccb499f3c3a11ea58f0a7bc96282fd20cde8d5cb6ab233fcfe2d"}, + {file = "minos_microservice_aggregate-0.5.1-py3-none-any.whl", hash = "sha256:ccfc620736019429aa4905479f51b73df3bd43f79b30541df8d380085854c6a0"}, +] +minos-microservice-common = [ + {file = "minos-microservice-common-0.5.0.tar.gz", hash = "sha256:815231acecafba1fe28cb958b8e1446b1f920b60fbab90706e63b622520fa763"}, + {file = "minos_microservice_common-0.5.0-py3-none-any.whl", hash = "sha256:1a6f97b4a2ab7a651bc2d666ed4db8b986237c47d86b5999dab1d1dc4d401b77"}, +] +minos-microservice-cqrs = [ + {file = "minos-microservice-cqrs-0.5.1.tar.gz", hash = "sha256:f8e5e8006170ffd7135470347a01a7f149670bc0c1c8a3676525de4a7f88e802"}, + {file = "minos_microservice_cqrs-0.5.1-py3-none-any.whl", hash = "sha256:c942e85e3fbac33998fa684b51b054b85ee7ce36f4e3b5563b1962e496417077"}, +] +minos-microservice-networks = [ + {file = "minos-microservice-networks-0.5.1.tar.gz", hash = "sha256:f42bbff4d660ab5c400351b5e57a4cd6614f45ef241bc73ee9b26cf912a0e16e"}, + {file = "minos_microservice_networks-0.5.1-py3-none-any.whl", hash = "sha256:9756f8d6186314543402ff55fdedbd6710ce109e2d48faa13218e966d0d3ba5f"}, +] +minos-microservice-saga = [ + {file = "minos-microservice-saga-0.5.1.tar.gz", hash = "sha256:acaf0f2dc37e8d14ad76f562390478be1b316d491bc67d43aeb5147dfcfb2a1d"}, + {file = "minos_microservice_saga-0.5.1-py3-none-any.whl", hash = "sha256:0b368021764aa72dff3e02fbd82eee00329cc92fe10e2c6f1c42a9a5939f9d79"}, +] multidict = [ {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b9e95a740109c6047602f4db4da9949e6c5945cefbad34a1299775ddc9a62e2"}, {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac0e27844758d7177989ce406acc6a83c16ed4524ebc363c1f748cba184d89d3"}, diff --git a/microservices/product/pyproject.toml b/microservices/product/pyproject.toml index 0c6167dd..5ab1ff5a 100644 --- a/microservices/product/pyproject.toml +++ b/microservices/product/pyproject.toml @@ -7,13 +7,13 @@ packages = [{ include = "src" }] [tool.poetry.dependencies] python = "^3.9" -minos-microservice-common = { path = "../../../minos-python/packages/core/minos-microservice-common", develop = true } -minos-microservice-networks = { path = "../../../minos-python/packages/core/minos-microservice-networks", develop = true } -minos-microservice-aggregate = { path = "../../../minos-python/packages/core/minos-microservice-aggregate", develop = true } -minos-microservice-saga = { path = "../../../minos-python/packages/core/minos-microservice-saga", develop = true } -minos-microservice-cqrs = { path = "../../../minos-python/packages/core/minos-microservice-cqrs", develop = true } -minos-broker-kafka = { path = "../../../minos-python/packages/plugins/minos-broker-kafka", develop = true } -minos-discovery-minos = { path = "../../../minos-python/packages/plugins/minos-discovery-minos", develop = true } +minos-microservice-common = "^0.5.0" +minos-microservice-networks = "^0.5.0" +minos-microservice-aggregate = "^0.5.0" +minos-microservice-saga = "^0.5.0" +minos-microservice-cqrs = "^0.5.0" +minos-broker-kafka = "^0.5.0" +minos-discovery-minos = "^0.5.0" typer = "^0.3.2" SQLAlchemy = "1.4.22" diff --git a/microservices/review/poetry.lock b/microservices/review/poetry.lock index aeb22b46..c6f5fee9 100644 --- a/microservices/review/poetry.lock +++ b/microservices/review/poetry.lock @@ -327,138 +327,103 @@ python-versions = "*" [[package]] name = "minos-broker-kafka" -version = "0.4.1" -description = "Minos Broker Kafka package" +version = "0.5.1" +description = "The kafka plugin of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiokafka = "^0.7.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/plugins/minos-broker-kafka" +aiokafka = ">=0.7.0,<0.8.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-discovery-minos" -version = "0.4.1" -description = "Minos Discovery Minos package" +version = "0.5.1" +description = "The minos-discover plugin of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/plugins/minos-discovery-minos" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-aggregate" -version = "0.4.1" -description = "Python Package for Minos Microservices containing all the RootEntity stuff" +version = "0.5.1" +description = "The Aggregate pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-aggregate" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-common" -version = "0.4.1" -description = "Python Package with common Classes and Utilities used in Minos Microservices." +version = "0.5.0" +description = "The common core of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiomisc = "^14.0.3" -aiopg = "^1.2.1" -cached-property = "^1.5.2" -dependency-injector = "^4.32.2" -fastavro = "^1.4.0" -lmdb = "^1.2.1" -orjson = "^3.5.2" +aiomisc = ">=14.0.3,<15.0.0" +aiopg = ">=1.2.1,<2.0.0" +cached-property = ">=1.5.2,<2.0.0" +dependency-injector = ">=4.32.2,<5.0.0" +fastavro = ">=1.4.0,<2.0.0" +lmdb = ">=1.2.1,<2.0.0" +orjson = ">=3.5.2,<4.0.0" PyYAML = ">=5.4.1,<7.0.0" -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-common" - [[package]] name = "minos-microservice-cqrs" -version = "0.4.1" -description = "Minos Microservice CQRS package" +version = "0.5.1" +description = "The CQRS pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -dependency-injector = "^4.34.0" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-cqrs" +dependency-injector = ">=4.34.0,<5.0.0" +minos-microservice-aggregate = ">=0.5.0,<0.6.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-networks" -version = "0.4.1" -description = "Python Package with the common network classes and utilities used in Minos Microservice." +version = "0.5.1" +description = "The networks core of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiohttp = "^3.7.4" -aiomisc = "^14.0.3" -aiopg = "^1.2.1" -crontab = "^0.23.0" -dependency-injector = "^4.32.2" -minos-microservice-common = "^0.4.0" -orjson = "^3.6.5" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-networks" +aiohttp = ">=3.7.4,<4.0.0" +aiomisc = ">=14.0.3,<15.0.0" +aiopg = ">=1.2.1,<2.0.0" +crontab = ">=0.23.0,<0.24.0" +dependency-injector = ">=4.32.2,<5.0.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +orjson = ">=3.6.5,<4.0.0" [[package]] name = "minos-microservice-saga" -version = "0.4.1" -description = "Saga Library for MinOS project." +version = "0.5.1" +description = "The SAGA pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -dependency-injector = "^4.32.2" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-saga" +dependency-injector = ">=4.32.2,<5.0.0" +minos-microservice-aggregate = ">=0.5.0,<0.6.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "multidict" @@ -674,7 +639,7 @@ multidict = ">=4.0" [metadata] lock-version = "1.1" python-versions = "^3.9" -content-hash = "65a271a969ca1dd6d6ca51030a421b889254bfac15e94872a304d1fdb4c292a8" +content-hash = "9a784fb4503db889dc8097299da80446f0c7f70e770c2f18d2cb0c207014a517" [metadata.files] aiohttp = [ @@ -1110,13 +1075,34 @@ mccabe = [ {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, ] -minos-broker-kafka = [] -minos-discovery-minos = [] -minos-microservice-aggregate = [] -minos-microservice-common = [] -minos-microservice-cqrs = [] -minos-microservice-networks = [] -minos-microservice-saga = [] +minos-broker-kafka = [ + {file = "minos-broker-kafka-0.5.1.tar.gz", hash = "sha256:3ab04e239d7ffe823afc47bcdd9bc4c508b499b73d790669a5fcdd6279893027"}, + {file = "minos_broker_kafka-0.5.1-py3-none-any.whl", hash = "sha256:4dcd3b7e72ae0d675c86af6d917fa8a6fa94f2057777c3027d24a28989a13b2e"}, +] +minos-discovery-minos = [ + {file = "minos-discovery-minos-0.5.1.tar.gz", hash = "sha256:50c2d27d1ed511bfafbacf67bdd4e0c95fd8bb9c1cd3ad386494acbd70a3b3b2"}, + {file = "minos_discovery_minos-0.5.1-py3-none-any.whl", hash = "sha256:0de39d47be11e9295b13662cf4a0d6358413bcb2eaa14117dec9ee39da109a61"}, +] +minos-microservice-aggregate = [ + {file = "minos-microservice-aggregate-0.5.1.tar.gz", hash = "sha256:6c46e08a7f2cccb499f3c3a11ea58f0a7bc96282fd20cde8d5cb6ab233fcfe2d"}, + {file = "minos_microservice_aggregate-0.5.1-py3-none-any.whl", hash = "sha256:ccfc620736019429aa4905479f51b73df3bd43f79b30541df8d380085854c6a0"}, +] +minos-microservice-common = [ + {file = "minos-microservice-common-0.5.0.tar.gz", hash = "sha256:815231acecafba1fe28cb958b8e1446b1f920b60fbab90706e63b622520fa763"}, + {file = "minos_microservice_common-0.5.0-py3-none-any.whl", hash = "sha256:1a6f97b4a2ab7a651bc2d666ed4db8b986237c47d86b5999dab1d1dc4d401b77"}, +] +minos-microservice-cqrs = [ + {file = "minos-microservice-cqrs-0.5.1.tar.gz", hash = "sha256:f8e5e8006170ffd7135470347a01a7f149670bc0c1c8a3676525de4a7f88e802"}, + {file = "minos_microservice_cqrs-0.5.1-py3-none-any.whl", hash = "sha256:c942e85e3fbac33998fa684b51b054b85ee7ce36f4e3b5563b1962e496417077"}, +] +minos-microservice-networks = [ + {file = "minos-microservice-networks-0.5.1.tar.gz", hash = "sha256:f42bbff4d660ab5c400351b5e57a4cd6614f45ef241bc73ee9b26cf912a0e16e"}, + {file = "minos_microservice_networks-0.5.1-py3-none-any.whl", hash = "sha256:9756f8d6186314543402ff55fdedbd6710ce109e2d48faa13218e966d0d3ba5f"}, +] +minos-microservice-saga = [ + {file = "minos-microservice-saga-0.5.1.tar.gz", hash = "sha256:acaf0f2dc37e8d14ad76f562390478be1b316d491bc67d43aeb5147dfcfb2a1d"}, + {file = "minos_microservice_saga-0.5.1-py3-none-any.whl", hash = "sha256:0b368021764aa72dff3e02fbd82eee00329cc92fe10e2c6f1c42a9a5939f9d79"}, +] multidict = [ {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b9e95a740109c6047602f4db4da9949e6c5945cefbad34a1299775ddc9a62e2"}, {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac0e27844758d7177989ce406acc6a83c16ed4524ebc363c1f748cba184d89d3"}, diff --git a/microservices/review/pyproject.toml b/microservices/review/pyproject.toml index 6ae0f4b0..f5d1b65f 100644 --- a/microservices/review/pyproject.toml +++ b/microservices/review/pyproject.toml @@ -7,13 +7,13 @@ packages = [{ include = "src" }] [tool.poetry.dependencies] python = "^3.9" -minos-microservice-common = { path = "../../../minos-python/packages/core/minos-microservice-common", develop = true } -minos-microservice-networks = { path = "../../../minos-python/packages/core/minos-microservice-networks", develop = true } -minos-microservice-aggregate = { path = "../../../minos-python/packages/core/minos-microservice-aggregate", develop = true } -minos-microservice-saga = { path = "../../../minos-python/packages/core/minos-microservice-saga", develop = true } -minos-microservice-cqrs = { path = "../../../minos-python/packages/core/minos-microservice-cqrs", develop = true } -minos-broker-kafka = { path = "../../../minos-python/packages/plugins/minos-broker-kafka", develop = true } -minos-discovery-minos = { path = "../../../minos-python/packages/plugins/minos-discovery-minos", develop = true } +minos-microservice-common = "^0.5.0" +minos-microservice-networks = "^0.5.0" +minos-microservice-aggregate = "^0.5.0" +minos-microservice-saga = "^0.5.0" +minos-microservice-cqrs = "^0.5.0" +minos-broker-kafka = "^0.5.0" +minos-discovery-minos = "^0.5.0" typer = "^0.3.2" SQLAlchemy = "1.4.22" diff --git a/microservices/ticket/poetry.lock b/microservices/ticket/poetry.lock index aeb22b46..c6f5fee9 100644 --- a/microservices/ticket/poetry.lock +++ b/microservices/ticket/poetry.lock @@ -327,138 +327,103 @@ python-versions = "*" [[package]] name = "minos-broker-kafka" -version = "0.4.1" -description = "Minos Broker Kafka package" +version = "0.5.1" +description = "The kafka plugin of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiokafka = "^0.7.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/plugins/minos-broker-kafka" +aiokafka = ">=0.7.0,<0.8.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-discovery-minos" -version = "0.4.1" -description = "Minos Discovery Minos package" +version = "0.5.1" +description = "The minos-discover plugin of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/plugins/minos-discovery-minos" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-aggregate" -version = "0.4.1" -description = "Python Package for Minos Microservices containing all the RootEntity stuff" +version = "0.5.1" +description = "The Aggregate pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-aggregate" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-common" -version = "0.4.1" -description = "Python Package with common Classes and Utilities used in Minos Microservices." +version = "0.5.0" +description = "The common core of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiomisc = "^14.0.3" -aiopg = "^1.2.1" -cached-property = "^1.5.2" -dependency-injector = "^4.32.2" -fastavro = "^1.4.0" -lmdb = "^1.2.1" -orjson = "^3.5.2" +aiomisc = ">=14.0.3,<15.0.0" +aiopg = ">=1.2.1,<2.0.0" +cached-property = ">=1.5.2,<2.0.0" +dependency-injector = ">=4.32.2,<5.0.0" +fastavro = ">=1.4.0,<2.0.0" +lmdb = ">=1.2.1,<2.0.0" +orjson = ">=3.5.2,<4.0.0" PyYAML = ">=5.4.1,<7.0.0" -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-common" - [[package]] name = "minos-microservice-cqrs" -version = "0.4.1" -description = "Minos Microservice CQRS package" +version = "0.5.1" +description = "The CQRS pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -dependency-injector = "^4.34.0" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-cqrs" +dependency-injector = ">=4.34.0,<5.0.0" +minos-microservice-aggregate = ">=0.5.0,<0.6.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "minos-microservice-networks" -version = "0.4.1" -description = "Python Package with the common network classes and utilities used in Minos Microservice." +version = "0.5.1" +description = "The networks core of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -aiohttp = "^3.7.4" -aiomisc = "^14.0.3" -aiopg = "^1.2.1" -crontab = "^0.23.0" -dependency-injector = "^4.32.2" -minos-microservice-common = "^0.4.0" -orjson = "^3.6.5" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-networks" +aiohttp = ">=3.7.4,<4.0.0" +aiomisc = ">=14.0.3,<15.0.0" +aiopg = ">=1.2.1,<2.0.0" +crontab = ">=0.23.0,<0.24.0" +dependency-injector = ">=4.32.2,<5.0.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +orjson = ">=3.6.5,<4.0.0" [[package]] name = "minos-microservice-saga" -version = "0.4.1" -description = "Saga Library for MinOS project." +version = "0.5.1" +description = "The SAGA pattern of the Minos Framework" category = "main" optional = false -python-versions = "^3.9" -develop = true +python-versions = ">=3.9,<4.0" [package.dependencies] -dependency-injector = "^4.32.2" -minos-microservice-aggregate = "^0.4.0" -minos-microservice-common = "^0.4.0" -minos-microservice-networks = "^0.4.0" - -[package.source] -type = "directory" -url = "../../../minos-python/packages/core/minos-microservice-saga" +dependency-injector = ">=4.32.2,<5.0.0" +minos-microservice-aggregate = ">=0.5.0,<0.6.0" +minos-microservice-common = ">=0.5.0,<0.6.0" +minos-microservice-networks = ">=0.5.0,<0.6.0" [[package]] name = "multidict" @@ -674,7 +639,7 @@ multidict = ">=4.0" [metadata] lock-version = "1.1" python-versions = "^3.9" -content-hash = "65a271a969ca1dd6d6ca51030a421b889254bfac15e94872a304d1fdb4c292a8" +content-hash = "9a784fb4503db889dc8097299da80446f0c7f70e770c2f18d2cb0c207014a517" [metadata.files] aiohttp = [ @@ -1110,13 +1075,34 @@ mccabe = [ {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, ] -minos-broker-kafka = [] -minos-discovery-minos = [] -minos-microservice-aggregate = [] -minos-microservice-common = [] -minos-microservice-cqrs = [] -minos-microservice-networks = [] -minos-microservice-saga = [] +minos-broker-kafka = [ + {file = "minos-broker-kafka-0.5.1.tar.gz", hash = "sha256:3ab04e239d7ffe823afc47bcdd9bc4c508b499b73d790669a5fcdd6279893027"}, + {file = "minos_broker_kafka-0.5.1-py3-none-any.whl", hash = "sha256:4dcd3b7e72ae0d675c86af6d917fa8a6fa94f2057777c3027d24a28989a13b2e"}, +] +minos-discovery-minos = [ + {file = "minos-discovery-minos-0.5.1.tar.gz", hash = "sha256:50c2d27d1ed511bfafbacf67bdd4e0c95fd8bb9c1cd3ad386494acbd70a3b3b2"}, + {file = "minos_discovery_minos-0.5.1-py3-none-any.whl", hash = "sha256:0de39d47be11e9295b13662cf4a0d6358413bcb2eaa14117dec9ee39da109a61"}, +] +minos-microservice-aggregate = [ + {file = "minos-microservice-aggregate-0.5.1.tar.gz", hash = "sha256:6c46e08a7f2cccb499f3c3a11ea58f0a7bc96282fd20cde8d5cb6ab233fcfe2d"}, + {file = "minos_microservice_aggregate-0.5.1-py3-none-any.whl", hash = "sha256:ccfc620736019429aa4905479f51b73df3bd43f79b30541df8d380085854c6a0"}, +] +minos-microservice-common = [ + {file = "minos-microservice-common-0.5.0.tar.gz", hash = "sha256:815231acecafba1fe28cb958b8e1446b1f920b60fbab90706e63b622520fa763"}, + {file = "minos_microservice_common-0.5.0-py3-none-any.whl", hash = "sha256:1a6f97b4a2ab7a651bc2d666ed4db8b986237c47d86b5999dab1d1dc4d401b77"}, +] +minos-microservice-cqrs = [ + {file = "minos-microservice-cqrs-0.5.1.tar.gz", hash = "sha256:f8e5e8006170ffd7135470347a01a7f149670bc0c1c8a3676525de4a7f88e802"}, + {file = "minos_microservice_cqrs-0.5.1-py3-none-any.whl", hash = "sha256:c942e85e3fbac33998fa684b51b054b85ee7ce36f4e3b5563b1962e496417077"}, +] +minos-microservice-networks = [ + {file = "minos-microservice-networks-0.5.1.tar.gz", hash = "sha256:f42bbff4d660ab5c400351b5e57a4cd6614f45ef241bc73ee9b26cf912a0e16e"}, + {file = "minos_microservice_networks-0.5.1-py3-none-any.whl", hash = "sha256:9756f8d6186314543402ff55fdedbd6710ce109e2d48faa13218e966d0d3ba5f"}, +] +minos-microservice-saga = [ + {file = "minos-microservice-saga-0.5.1.tar.gz", hash = "sha256:acaf0f2dc37e8d14ad76f562390478be1b316d491bc67d43aeb5147dfcfb2a1d"}, + {file = "minos_microservice_saga-0.5.1-py3-none-any.whl", hash = "sha256:0b368021764aa72dff3e02fbd82eee00329cc92fe10e2c6f1c42a9a5939f9d79"}, +] multidict = [ {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b9e95a740109c6047602f4db4da9949e6c5945cefbad34a1299775ddc9a62e2"}, {file = "multidict-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac0e27844758d7177989ce406acc6a83c16ed4524ebc363c1f748cba184d89d3"}, diff --git a/microservices/ticket/pyproject.toml b/microservices/ticket/pyproject.toml index 563764e1..46af9354 100644 --- a/microservices/ticket/pyproject.toml +++ b/microservices/ticket/pyproject.toml @@ -7,13 +7,13 @@ packages = [{ include = "src" }] [tool.poetry.dependencies] python = "^3.9" -minos-microservice-common = { path = "../../../minos-python/packages/core/minos-microservice-common", develop = true } -minos-microservice-networks = { path = "../../../minos-python/packages/core/minos-microservice-networks", develop = true } -minos-microservice-aggregate = { path = "../../../minos-python/packages/core/minos-microservice-aggregate", develop = true } -minos-microservice-saga = { path = "../../../minos-python/packages/core/minos-microservice-saga", develop = true } -minos-microservice-cqrs = { path = "../../../minos-python/packages/core/minos-microservice-cqrs", develop = true } -minos-broker-kafka = { path = "../../../minos-python/packages/plugins/minos-broker-kafka", develop = true } -minos-discovery-minos = { path = "../../../minos-python/packages/plugins/minos-discovery-minos", develop = true } +minos-microservice-common = "^0.5.0" +minos-microservice-networks = "^0.5.0" +minos-microservice-aggregate = "^0.5.0" +minos-microservice-saga = "^0.5.0" +minos-microservice-cqrs = "^0.5.0" +minos-broker-kafka = "^0.5.0" +minos-discovery-minos = "^0.5.0" typer = "^0.3.2" SQLAlchemy = "1.4.22" From b48879db1ad15b96bae8fc48e58eae7f61ac2b6c Mon Sep 17 00:00:00 2001 From: "Restyled.io" Date: Thu, 3 Feb 2022 11:04:46 +0000 Subject: [PATCH 3/4] Restyled by black --- .../authentication/src/aggregates.py | 4 +--- .../authentication/src/commands/services.py | 20 +++++-------------- .../authentication/src/queries/services.py | 16 ++++----------- microservices/cart/src/aggregates.py | 4 +--- microservices/cart/src/queries/services.py | 16 ++++----------- microservices/customer/src/aggregates.py | 4 +--- .../tests/test_commands/test_services.py | 16 ++++----------- microservices/order/src/aggregates.py | 16 ++++----------- microservices/order/src/queries/services.py | 20 +++++-------------- microservices/payment/src/aggregates.py | 4 +--- microservices/payment/src/queries/services.py | 16 ++++----------- microservices/product/src/aggregates.py | 12 +++-------- .../product/src/commands/services.py | 8 ++------ microservices/product/src/queries/services.py | 20 +++++-------------- microservices/review/src/aggregates.py | 4 +--- microservices/review/src/queries/services.py | 16 ++++----------- microservices/ticket/src/aggregates.py | 4 +--- microservices/ticket/src/queries/services.py | 20 +++++-------------- 18 files changed, 55 insertions(+), 165 deletions(-) diff --git a/microservices/authentication/src/aggregates.py b/microservices/authentication/src/aggregates.py index 74cd72be..9c9aea19 100644 --- a/microservices/authentication/src/aggregates.py +++ b/microservices/authentication/src/aggregates.py @@ -1,6 +1,4 @@ -from __future__ import ( - annotations, -) +from __future__ import annotations from minos.aggregate import ( RootEntity, diff --git a/microservices/authentication/src/commands/services.py b/microservices/authentication/src/commands/services.py index 5bb637be..edcfc598 100644 --- a/microservices/authentication/src/commands/services.py +++ b/microservices/authentication/src/commands/services.py @@ -1,27 +1,17 @@ import logging -from minos.aggregate import ( - Condition, -) -from minos.cqrs import ( - CommandService, -) +from minos.aggregate import Condition +from minos.cqrs import CommandService from minos.networks import ( Request, Response, ResponseException, enroute, ) -from minos.saga import ( - SagaContext, -) +from minos.saga import SagaContext -from ..aggregates import ( - Credentials, -) -from .sagas import ( - CREATE_CREDENTIALS_SAGA, -) +from ..aggregates import Credentials +from .sagas import CREATE_CREDENTIALS_SAGA logger = logging.getLogger(__name__) diff --git a/microservices/authentication/src/queries/services.py b/microservices/authentication/src/queries/services.py index 09adc272..e561b4ff 100644 --- a/microservices/authentication/src/queries/services.py +++ b/microservices/authentication/src/queries/services.py @@ -6,15 +6,9 @@ Provide, inject, ) -from jwt.exceptions import ( - InvalidTokenError, -) -from minos.aggregate import ( - Event, -) -from minos.cqrs import ( - QueryService, -) +from jwt.exceptions import InvalidTokenError +from minos.aggregate import Event +from minos.cqrs import QueryService from minos.networks import ( Request, Response, @@ -27,9 +21,7 @@ JWT_ALGORITHM, SECRET, ) -from .repositories import ( - CredentialsQueryRepository, -) +from .repositories import CredentialsQueryRepository class CredentialsQueryService(QueryService): diff --git a/microservices/cart/src/aggregates.py b/microservices/cart/src/aggregates.py index 4d38338b..65335a52 100644 --- a/microservices/cart/src/aggregates.py +++ b/microservices/cart/src/aggregates.py @@ -1,6 +1,4 @@ -from __future__ import ( - annotations, -) +from __future__ import annotations from minos.aggregate import ( RootEntity, diff --git a/microservices/cart/src/queries/services.py b/microservices/cart/src/queries/services.py index 74b7a02a..b1709217 100644 --- a/microservices/cart/src/queries/services.py +++ b/microservices/cart/src/queries/services.py @@ -1,12 +1,6 @@ -from dependency_injector.wiring import ( - Provide, -) -from minos.aggregate import ( - Event, -) -from minos.cqrs import ( - QueryService, -) +from dependency_injector.wiring import Provide +from minos.aggregate import Event +from minos.cqrs import QueryService from minos.networks import ( Request, Response, @@ -14,9 +8,7 @@ enroute, ) -from .repositories import ( - CartQueryRepository, -) +from .repositories import CartQueryRepository class CartQueryService(QueryService): diff --git a/microservices/customer/src/aggregates.py b/microservices/customer/src/aggregates.py index 8b12152c..2c3e3c5a 100644 --- a/microservices/customer/src/aggregates.py +++ b/microservices/customer/src/aggregates.py @@ -1,6 +1,4 @@ -from datetime import ( - datetime, -) +from datetime import datetime from minos.aggregate import ( RootEntity, diff --git a/microservices/customer/tests/test_commands/test_services.py b/microservices/customer/tests/test_commands/test_services.py index 9ff2f84b..7b3febe3 100644 --- a/microservices/customer/tests/test_commands/test_services.py +++ b/microservices/customer/tests/test_commands/test_services.py @@ -1,16 +1,10 @@ -from __future__ import ( - annotations, -) +from __future__ import annotations import sys import unittest -from uuid import ( - uuid4, -) +from uuid import uuid4 -from minos.aggregate import ( - AlreadyDeletedException, -) +from minos.aggregate import AlreadyDeletedException from minos.networks import ( InMemoryRequest, Response, @@ -22,9 +16,7 @@ Customer, CustomerCommandService, ) -from tests.utils import ( - build_dependency_injector, -) +from tests.utils import build_dependency_injector class TestCustomerCommandService(unittest.IsolatedAsyncioTestCase): diff --git a/microservices/order/src/aggregates.py b/microservices/order/src/aggregates.py index 62b2c594..038ade16 100644 --- a/microservices/order/src/aggregates.py +++ b/microservices/order/src/aggregates.py @@ -1,16 +1,8 @@ -from __future__ import ( - annotations, -) +from __future__ import annotations -from datetime import ( - datetime, -) -from enum import ( - Enum, -) -from typing import ( - Optional, -) +from datetime import datetime +from enum import Enum +from typing import Optional from minos.aggregate import ( RootEntity, diff --git a/microservices/order/src/queries/services.py b/microservices/order/src/queries/services.py index 03ded6d7..b4b5664c 100644 --- a/microservices/order/src/queries/services.py +++ b/microservices/order/src/queries/services.py @@ -1,15 +1,7 @@ -from dependency_injector.wiring import ( - Provide, -) -from minos.aggregate import ( - Event, -) -from minos.common import ( - UUID_REGEX, -) -from minos.cqrs import ( - QueryService, -) +from dependency_injector.wiring import Provide +from minos.aggregate import Event +from minos.common import UUID_REGEX +from minos.cqrs import QueryService from minos.networks import ( Request, Response, @@ -18,9 +10,7 @@ enroute, ) -from .repositories import ( - OrderQueryRepository, -) +from .repositories import OrderQueryRepository class OrderQueryService(QueryService): diff --git a/microservices/payment/src/aggregates.py b/microservices/payment/src/aggregates.py index bc2186ed..54e85e30 100644 --- a/microservices/payment/src/aggregates.py +++ b/microservices/payment/src/aggregates.py @@ -1,6 +1,4 @@ -from minos.aggregate import ( - RootEntity, -) +from minos.aggregate import RootEntity class Payment(RootEntity): diff --git a/microservices/payment/src/queries/services.py b/microservices/payment/src/queries/services.py index e7fb55ce..b3086fe6 100644 --- a/microservices/payment/src/queries/services.py +++ b/microservices/payment/src/queries/services.py @@ -1,20 +1,12 @@ -from dependency_injector.wiring import ( - Provide, -) -from minos.aggregate import ( - Event, -) -from minos.cqrs import ( - QueryService, -) +from dependency_injector.wiring import Provide +from minos.aggregate import Event +from minos.cqrs import QueryService from minos.networks import ( Request, enroute, ) -from .repositories import ( - PaymentAmountRepository, -) +from .repositories import PaymentAmountRepository class PaymentQueryService(QueryService): diff --git a/microservices/product/src/aggregates.py b/microservices/product/src/aggregates.py index 72651a51..0ed982a1 100644 --- a/microservices/product/src/aggregates.py +++ b/microservices/product/src/aggregates.py @@ -1,13 +1,7 @@ -from __future__ import ( - annotations, -) +from __future__ import annotations -from asyncio import ( - gather, -) -from uuid import ( - UUID, -) +from asyncio import gather +from uuid import UUID from minos.aggregate import ( RootEntity, diff --git a/microservices/product/src/commands/services.py b/microservices/product/src/commands/services.py index fe128d98..803cad5d 100644 --- a/microservices/product/src/commands/services.py +++ b/microservices/product/src/commands/services.py @@ -8,12 +8,8 @@ NotFoundException, AlreadyDeletedException, ) -from minos.common import ( - UUID_REGEX, -) -from minos.cqrs import ( - CommandService, -) +from minos.common import UUID_REGEX +from minos.cqrs import CommandService from minos.networks import ( Request, Response, diff --git a/microservices/product/src/queries/services.py b/microservices/product/src/queries/services.py index 07075e7e..ce75ef14 100644 --- a/microservices/product/src/queries/services.py +++ b/microservices/product/src/queries/services.py @@ -1,15 +1,7 @@ -from dependency_injector.wiring import ( - Provide, -) -from minos.aggregate import ( - Event, -) -from minos.common import ( - UUID_REGEX, -) -from minos.cqrs import ( - QueryService, -) +from dependency_injector.wiring import Provide +from minos.aggregate import Event +from minos.common import UUID_REGEX +from minos.cqrs import QueryService from minos.networks import ( Request, Response, @@ -18,9 +10,7 @@ enroute, ) -from .repositories import ( - ProductQueryRepository, -) +from .repositories import ProductQueryRepository class ProductQueryService(QueryService): diff --git a/microservices/review/src/aggregates.py b/microservices/review/src/aggregates.py index a56ebfd2..b7e231c5 100644 --- a/microservices/review/src/aggregates.py +++ b/microservices/review/src/aggregates.py @@ -1,6 +1,4 @@ -from __future__ import ( - annotations, -) +from __future__ import annotations from minos.aggregate import ( RootEntity, diff --git a/microservices/review/src/queries/services.py b/microservices/review/src/queries/services.py index b7043441..e25dd19c 100644 --- a/microservices/review/src/queries/services.py +++ b/microservices/review/src/queries/services.py @@ -1,12 +1,6 @@ -from dependency_injector.wiring import ( - Provide, -) -from minos.aggregate import ( - Event, -) -from minos.cqrs import ( - QueryService, -) +from dependency_injector.wiring import Provide +from minos.aggregate import Event +from minos.cqrs import QueryService from minos.networks import ( Request, Response, @@ -14,9 +8,7 @@ enroute, ) -from .repositories import ( - ReviewQueryRepository, -) +from .repositories import ReviewQueryRepository class ReviewQueryService(QueryService): diff --git a/microservices/ticket/src/aggregates.py b/microservices/ticket/src/aggregates.py index bc0ca32b..3a219cc4 100644 --- a/microservices/ticket/src/aggregates.py +++ b/microservices/ticket/src/aggregates.py @@ -1,6 +1,4 @@ -from __future__ import ( - annotations, -) +from __future__ import annotations from minos.aggregate import ( RootEntity, diff --git a/microservices/ticket/src/queries/services.py b/microservices/ticket/src/queries/services.py index 946435be..c39373f3 100644 --- a/microservices/ticket/src/queries/services.py +++ b/microservices/ticket/src/queries/services.py @@ -1,15 +1,7 @@ -from dependency_injector.wiring import ( - Provide, -) -from minos.aggregate import ( - Event, -) -from minos.common import ( - UUID_REGEX, -) -from minos.cqrs import ( - QueryService, -) +from dependency_injector.wiring import Provide +from minos.aggregate import Event +from minos.common import UUID_REGEX +from minos.cqrs import QueryService from minos.networks import ( Request, Response, @@ -17,9 +9,7 @@ enroute, ) -from .repositories import ( - TicketQueryRepository, -) +from .repositories import TicketQueryRepository class TicketQueryService(QueryService): From 4e3d2ab36187ce074c87568bf2d4911bbf92186b Mon Sep 17 00:00:00 2001 From: "Restyled.io" Date: Thu, 3 Feb 2022 11:04:47 +0000 Subject: [PATCH 4/4] Restyled by isort --- .../authentication/src/aggregates.py | 8 +++++--- .../authentication/src/commands/services.py | 20 ++++++++++++++----- .../authentication/src/queries/services.py | 16 +++++++++++---- microservices/cart/src/aggregates.py | 8 +++++--- microservices/cart/src/queries/services.py | 16 +++++++++++---- microservices/customer/src/aggregates.py | 4 +++- .../tests/test_commands/test_services.py | 16 +++++++++++---- microservices/order/src/aggregates.py | 20 +++++++++++++------ microservices/order/src/queries/services.py | 20 ++++++++++++++----- microservices/payment/src/aggregates.py | 4 +++- microservices/payment/src/queries/services.py | 16 +++++++++++---- microservices/product/src/aggregates.py | 12 ++++++++--- .../product/src/commands/services.py | 10 +++++++--- microservices/product/src/queries/services.py | 20 ++++++++++++++----- microservices/review/src/aggregates.py | 6 ++++-- microservices/review/src/queries/services.py | 16 +++++++++++---- microservices/ticket/src/aggregates.py | 8 +++++--- microservices/ticket/src/queries/services.py | 20 ++++++++++++++----- 18 files changed, 175 insertions(+), 65 deletions(-) diff --git a/microservices/authentication/src/aggregates.py b/microservices/authentication/src/aggregates.py index 9c9aea19..c2c1aa60 100644 --- a/microservices/authentication/src/aggregates.py +++ b/microservices/authentication/src/aggregates.py @@ -1,10 +1,12 @@ -from __future__ import annotations +from __future__ import ( + annotations, +) from minos.aggregate import ( - RootEntity, - ExternalEntity, Condition, + ExternalEntity, Ref, + RootEntity, ) diff --git a/microservices/authentication/src/commands/services.py b/microservices/authentication/src/commands/services.py index edcfc598..5bb637be 100644 --- a/microservices/authentication/src/commands/services.py +++ b/microservices/authentication/src/commands/services.py @@ -1,17 +1,27 @@ import logging -from minos.aggregate import Condition -from minos.cqrs import CommandService +from minos.aggregate import ( + Condition, +) +from minos.cqrs import ( + CommandService, +) from minos.networks import ( Request, Response, ResponseException, enroute, ) -from minos.saga import SagaContext +from minos.saga import ( + SagaContext, +) -from ..aggregates import Credentials -from .sagas import CREATE_CREDENTIALS_SAGA +from ..aggregates import ( + Credentials, +) +from .sagas import ( + CREATE_CREDENTIALS_SAGA, +) logger = logging.getLogger(__name__) diff --git a/microservices/authentication/src/queries/services.py b/microservices/authentication/src/queries/services.py index e561b4ff..09adc272 100644 --- a/microservices/authentication/src/queries/services.py +++ b/microservices/authentication/src/queries/services.py @@ -6,9 +6,15 @@ Provide, inject, ) -from jwt.exceptions import InvalidTokenError -from minos.aggregate import Event -from minos.cqrs import QueryService +from jwt.exceptions import ( + InvalidTokenError, +) +from minos.aggregate import ( + Event, +) +from minos.cqrs import ( + QueryService, +) from minos.networks import ( Request, Response, @@ -21,7 +27,9 @@ JWT_ALGORITHM, SECRET, ) -from .repositories import CredentialsQueryRepository +from .repositories import ( + CredentialsQueryRepository, +) class CredentialsQueryService(QueryService): diff --git a/microservices/cart/src/aggregates.py b/microservices/cart/src/aggregates.py index 65335a52..8f80a69d 100644 --- a/microservices/cart/src/aggregates.py +++ b/microservices/cart/src/aggregates.py @@ -1,11 +1,13 @@ -from __future__ import annotations +from __future__ import ( + annotations, +) from minos.aggregate import ( - RootEntity, - ExternalEntity, Entity, EntitySet, + ExternalEntity, Ref, + RootEntity, ) diff --git a/microservices/cart/src/queries/services.py b/microservices/cart/src/queries/services.py index b1709217..74b7a02a 100644 --- a/microservices/cart/src/queries/services.py +++ b/microservices/cart/src/queries/services.py @@ -1,6 +1,12 @@ -from dependency_injector.wiring import Provide -from minos.aggregate import Event -from minos.cqrs import QueryService +from dependency_injector.wiring import ( + Provide, +) +from minos.aggregate import ( + Event, +) +from minos.cqrs import ( + QueryService, +) from minos.networks import ( Request, Response, @@ -8,7 +14,9 @@ enroute, ) -from .repositories import CartQueryRepository +from .repositories import ( + CartQueryRepository, +) class CartQueryService(QueryService): diff --git a/microservices/customer/src/aggregates.py b/microservices/customer/src/aggregates.py index 2c3e3c5a..8b12152c 100644 --- a/microservices/customer/src/aggregates.py +++ b/microservices/customer/src/aggregates.py @@ -1,4 +1,6 @@ -from datetime import datetime +from datetime import ( + datetime, +) from minos.aggregate import ( RootEntity, diff --git a/microservices/customer/tests/test_commands/test_services.py b/microservices/customer/tests/test_commands/test_services.py index 7b3febe3..9ff2f84b 100644 --- a/microservices/customer/tests/test_commands/test_services.py +++ b/microservices/customer/tests/test_commands/test_services.py @@ -1,10 +1,16 @@ -from __future__ import annotations +from __future__ import ( + annotations, +) import sys import unittest -from uuid import uuid4 +from uuid import ( + uuid4, +) -from minos.aggregate import AlreadyDeletedException +from minos.aggregate import ( + AlreadyDeletedException, +) from minos.networks import ( InMemoryRequest, Response, @@ -16,7 +22,9 @@ Customer, CustomerCommandService, ) -from tests.utils import build_dependency_injector +from tests.utils import ( + build_dependency_injector, +) class TestCustomerCommandService(unittest.IsolatedAsyncioTestCase): diff --git a/microservices/order/src/aggregates.py b/microservices/order/src/aggregates.py index 038ade16..18da1ad2 100644 --- a/microservices/order/src/aggregates.py +++ b/microservices/order/src/aggregates.py @@ -1,15 +1,23 @@ -from __future__ import annotations +from __future__ import ( + annotations, +) -from datetime import datetime -from enum import Enum -from typing import Optional +from datetime import ( + datetime, +) +from enum import ( + Enum, +) +from typing import ( + Optional, +) from minos.aggregate import ( - RootEntity, - ExternalEntity, Entity, EntitySet, + ExternalEntity, Ref, + RootEntity, ValueObject, ) diff --git a/microservices/order/src/queries/services.py b/microservices/order/src/queries/services.py index b4b5664c..03ded6d7 100644 --- a/microservices/order/src/queries/services.py +++ b/microservices/order/src/queries/services.py @@ -1,7 +1,15 @@ -from dependency_injector.wiring import Provide -from minos.aggregate import Event -from minos.common import UUID_REGEX -from minos.cqrs import QueryService +from dependency_injector.wiring import ( + Provide, +) +from minos.aggregate import ( + Event, +) +from minos.common import ( + UUID_REGEX, +) +from minos.cqrs import ( + QueryService, +) from minos.networks import ( Request, Response, @@ -10,7 +18,9 @@ enroute, ) -from .repositories import OrderQueryRepository +from .repositories import ( + OrderQueryRepository, +) class OrderQueryService(QueryService): diff --git a/microservices/payment/src/aggregates.py b/microservices/payment/src/aggregates.py index 54e85e30..bc2186ed 100644 --- a/microservices/payment/src/aggregates.py +++ b/microservices/payment/src/aggregates.py @@ -1,4 +1,6 @@ -from minos.aggregate import RootEntity +from minos.aggregate import ( + RootEntity, +) class Payment(RootEntity): diff --git a/microservices/payment/src/queries/services.py b/microservices/payment/src/queries/services.py index b3086fe6..e7fb55ce 100644 --- a/microservices/payment/src/queries/services.py +++ b/microservices/payment/src/queries/services.py @@ -1,12 +1,20 @@ -from dependency_injector.wiring import Provide -from minos.aggregate import Event -from minos.cqrs import QueryService +from dependency_injector.wiring import ( + Provide, +) +from minos.aggregate import ( + Event, +) +from minos.cqrs import ( + QueryService, +) from minos.networks import ( Request, enroute, ) -from .repositories import PaymentAmountRepository +from .repositories import ( + PaymentAmountRepository, +) class PaymentQueryService(QueryService): diff --git a/microservices/product/src/aggregates.py b/microservices/product/src/aggregates.py index 0ed982a1..72651a51 100644 --- a/microservices/product/src/aggregates.py +++ b/microservices/product/src/aggregates.py @@ -1,7 +1,13 @@ -from __future__ import annotations +from __future__ import ( + annotations, +) -from asyncio import gather -from uuid import UUID +from asyncio import ( + gather, +) +from uuid import ( + UUID, +) from minos.aggregate import ( RootEntity, diff --git a/microservices/product/src/commands/services.py b/microservices/product/src/commands/services.py index 803cad5d..5ca4c9a1 100644 --- a/microservices/product/src/commands/services.py +++ b/microservices/product/src/commands/services.py @@ -5,11 +5,15 @@ ) from minos.aggregate import ( - NotFoundException, AlreadyDeletedException, + NotFoundException, +) +from minos.common import ( + UUID_REGEX, +) +from minos.cqrs import ( + CommandService, ) -from minos.common import UUID_REGEX -from minos.cqrs import CommandService from minos.networks import ( Request, Response, diff --git a/microservices/product/src/queries/services.py b/microservices/product/src/queries/services.py index ce75ef14..07075e7e 100644 --- a/microservices/product/src/queries/services.py +++ b/microservices/product/src/queries/services.py @@ -1,7 +1,15 @@ -from dependency_injector.wiring import Provide -from minos.aggregate import Event -from minos.common import UUID_REGEX -from minos.cqrs import QueryService +from dependency_injector.wiring import ( + Provide, +) +from minos.aggregate import ( + Event, +) +from minos.common import ( + UUID_REGEX, +) +from minos.cqrs import ( + QueryService, +) from minos.networks import ( Request, Response, @@ -10,7 +18,9 @@ enroute, ) -from .repositories import ProductQueryRepository +from .repositories import ( + ProductQueryRepository, +) class ProductQueryService(QueryService): diff --git a/microservices/review/src/aggregates.py b/microservices/review/src/aggregates.py index b7e231c5..d4a40a63 100644 --- a/microservices/review/src/aggregates.py +++ b/microservices/review/src/aggregates.py @@ -1,9 +1,11 @@ -from __future__ import annotations +from __future__ import ( + annotations, +) from minos.aggregate import ( - RootEntity, ExternalEntity, Ref, + RootEntity, ) diff --git a/microservices/review/src/queries/services.py b/microservices/review/src/queries/services.py index e25dd19c..b7043441 100644 --- a/microservices/review/src/queries/services.py +++ b/microservices/review/src/queries/services.py @@ -1,6 +1,12 @@ -from dependency_injector.wiring import Provide -from minos.aggregate import Event -from minos.cqrs import QueryService +from dependency_injector.wiring import ( + Provide, +) +from minos.aggregate import ( + Event, +) +from minos.cqrs import ( + QueryService, +) from minos.networks import ( Request, Response, @@ -8,7 +14,9 @@ enroute, ) -from .repositories import ReviewQueryRepository +from .repositories import ( + ReviewQueryRepository, +) class ReviewQueryService(QueryService): diff --git a/microservices/ticket/src/aggregates.py b/microservices/ticket/src/aggregates.py index 3a219cc4..ba28d4fa 100644 --- a/microservices/ticket/src/aggregates.py +++ b/microservices/ticket/src/aggregates.py @@ -1,11 +1,13 @@ -from __future__ import annotations +from __future__ import ( + annotations, +) from minos.aggregate import ( - RootEntity, - ExternalEntity, Entity, EntitySet, + ExternalEntity, Ref, + RootEntity, ) diff --git a/microservices/ticket/src/queries/services.py b/microservices/ticket/src/queries/services.py index c39373f3..946435be 100644 --- a/microservices/ticket/src/queries/services.py +++ b/microservices/ticket/src/queries/services.py @@ -1,7 +1,15 @@ -from dependency_injector.wiring import Provide -from minos.aggregate import Event -from minos.common import UUID_REGEX -from minos.cqrs import QueryService +from dependency_injector.wiring import ( + Provide, +) +from minos.aggregate import ( + Event, +) +from minos.common import ( + UUID_REGEX, +) +from minos.cqrs import ( + QueryService, +) from minos.networks import ( Request, Response, @@ -9,7 +17,9 @@ enroute, ) -from .repositories import TicketQueryRepository +from .repositories import ( + TicketQueryRepository, +) class TicketQueryService(QueryService):