Skip to content

Commit 5c647f0

Browse files
author
Sergio García Prado
authored
Merge pull request #458 from minos-framework/0.7.0
0.7.0
2 parents 14a2f0e + aa35da6 commit 5c647f0

File tree

55 files changed

+320
-190
lines changed

Some content is hidden

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

55 files changed

+320
-190
lines changed

Diff for: README.md

+36-27
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,9 @@ pip install \
136136
minos-microservice-networks \
137137
minos-microservice-saga \
138138
minos-broker-kafka \
139-
minos-http-aiohttp
139+
minos-http-aiohttp \
140+
minos-http-aiopg \
141+
minos-http-lmbdb
140142
```
141143

142144
### Configure a Microservice
@@ -165,26 +167,28 @@ aggregate:
165167
entities:
166168
- main.Foo
167169
repositories:
168-
transaction: minos.aggregate.PostgreSqlTransactionRepository
169-
event: minos.aggregate.PostgreSqlEventRepository
170-
snapshot: minos.aggregate.PostgreSqlSnapshotRepository
170+
transaction: minos.aggregate.DatabaseTransactionRepository
171+
event: minos.aggregate.DatabaseEventRepository
172+
snapshot: minos.aggregate.DatabaseSnapshotRepository
171173
databases:
172174
default:
175+
client: minos.plugins.aiopg.AiopgDatabaseClient
173176
database: foo_db
174177
user: minos
175178
password: min0s
176179
saga:
180+
client: minos.plugins.lmdb.LmdbDatabaseClient
177181
path: "./foo.lmdb"
178182
interfaces:
179183
broker:
180184
port: minos.networks.BrokerPort
181185
publisher:
182186
client: minos.plugins.kafka.KafkaBrokerPublisher
183-
queue: minos.networks.PostgreSqlBrokerPublisherQueue
187+
queue: minos.networks.DatabaseBrokerPublisherQueue
184188
subscriber:
185189
client: minos.plugins.kafka.KafkaBrokerSubscriber
186-
queue: minos.networks.PostgreSqlBrokerSubscriberQueue
187-
validator: minos.networks.PostgreSqlBrokerSubscriberDuplicateValidator
190+
queue: minos.networks.DatabaseBrokerSubscriberQueue
191+
validator: minos.networks.DatabaseBrokerSubscriberDuplicateValidator
188192
http:
189193
port: minos.networks.HttpPort
190194
connector:
@@ -193,8 +197,8 @@ interfaces:
193197
periodic:
194198
port: minos.networks.PeriodicPort
195199
pools:
196-
lock: minos.common.PostgreSqlLockPool
197-
databasse: minos.common.PostgreSqlPool
200+
lock: minos.common.DatabaseLockPool
201+
database: minos.common.DatabaseClientPool
198202
broker: minos.networks.BrokerClientPool
199203
saga:
200204
manager: minos.saga.SagaManager
@@ -981,26 +985,28 @@ aggregate:
981985
entities:
982986
- main.FooBar
983987
repositories:
984-
transaction: minos.aggregate.PostgreSqlTransactionRepository
985-
event: minos.aggregate.PostgreSqlEventRepository
986-
snapshot: minos.aggregate.PostgreSqlSnapshotRepository
988+
transaction: minos.aggregate.DatabaseTransactionRepository
989+
event: minos.aggregate.DatabaseEventRepository
990+
snapshot: minos.aggregate.DatabaseSnapshotRepository
987991
databases:
988992
default:
993+
client: minos.plugins.aiopg.AiopgDatabaseClient
989994
database: foobar_db
990995
user: minos
991996
password: min0s
992997
saga:
998+
client: minos.plugins.lmdb.LmdbDatabaseClient
993999
path: "./foobar.lmdb"
9941000
interfaces:
9951001
broker:
9961002
port: minos.networks.BrokerPort
9971003
publisher:
9981004
client: minos.plugins.kafka.KafkaBrokerPublisher
999-
queue: minos.networks.PostgreSqlBrokerPublisherQueue
1005+
queue: minos.networks.DatabaseBrokerPublisherQueue
10001006
subscriber:
10011007
client: minos.plugins.kafka.KafkaBrokerSubscriber
1002-
queue: minos.networks.PostgreSqlBrokerSubscriberQueue
1003-
validator: minos.networks.PostgreSqlBrokerSubscriberDuplicateValidator
1008+
queue: minos.networks.DatabaseBrokerSubscriberQueue
1009+
validator: minos.networks.DatabaseBrokerSubscriberDuplicateValidator
10041010
http:
10051011
port: minos.networks.HttpPort
10061012
connector:
@@ -1009,8 +1015,8 @@ interfaces:
10091015
periodic:
10101016
port: minos.networks.PeriodicPort
10111017
pools:
1012-
lock: minos.common.PostgreSqlLockPool
1013-
databasse: minos.common.PostgreSqlPool
1018+
lock: minos.common.DatabaseLockPool
1019+
database: minos.common.DatabaseClientPool
10141020
broker: minos.networks.BrokerClientPool
10151021
saga:
10161022
manager: minos.saga.SagaManager
@@ -1123,21 +1129,24 @@ This project follows a modular structure based on python packages.
11231129
11241130
The core packages provide the base implementation of the framework.
11251131
1126-
* [minos-microservice-aggregate](https://minos-framework.github.io/minos-python/packages/core/minos-microservice-aggregate): The Aggregate pattern implementation.
1127-
* [minos-microservice-common](https://minos-framework.github.io/minos-python/packages/core/minos-microservice-common): The common core package.
1128-
* [minos-microservice-cqrs](https://minos-framework.github.io/minos-python/packages/core/minos-microservice-cqrs): The CQRS pattern implementation.
1129-
* [minos-microservice-networks](https://minos-framework.github.io/minos-python/packages/core/minos-microservice-networks): The networks core package.
1130-
* [minos-microservice-saga](https://minos-framework.github.io/minos-python/packages/core/minos-microservice-saga): The SAGA pattern implementation.
1132+
* [minos-microservice-aggregate](https://github.com/minos-framework/minos-python/tree/main/packages/core/minos-microservice-aggregate): The Aggregate pattern implementation.
1133+
* [minos-microservice-common](https://github.com/minos-framework/minos-python/tree/main/packages/core/minos-microservice-common): The common core package.
1134+
* [minos-microservice-cqrs](https://github.com/minos-framework/minos-python/tree/main/packages/core/minos-microservice-cqrs): The CQRS pattern implementation.
1135+
* [minos-microservice-networks](https://github.com/minos-framework/minos-python/tree/main/packages/core/minos-microservice-networks): The networks core package.
1136+
* [minos-microservice-saga](https://github.com/minos-framework/minos-python/tree/main/packages/core/minos-microservice-saga): The SAGA pattern implementation.
11311137
11321138
### Plugins
11331139
11341140
The plugin packages provide connectors to external technologies like brokers, discovery services, databases, serializers and so on.
11351141
1136-
* [minos-broker-kafka](https://minos-framework.github.io/minos-python/packages/plugins/minos-broker-kafka): The `kafka` plugin package.
1137-
* [minos-broker-rabbitmq](https://minos-framework.github.io/minos-python/packages/plugins/minos-broker-rabbitmq): The `rabbitmq` plugin package.
1138-
* [minos-discovery-minos](https://minos-framework.github.io/minos-python/packages/plugins/minos-discovery-minos): The `minos-discovery` plugin package.
1139-
* [minos-http-aiohttp](https://minos-framework.github.io/minos-python/packages/plugins/minos-http-aiohttp): The `aiohttp` plugin package.
1140-
* [minos-router-graphql](https://minos-framework.github.io/minos-python/packages/plugins/minos-router-graphql): The `grapqhl` plugin package.
1142+
* [minos-broker-kafka](https://github.com/minos-framework/minos-python/tree/main/packages/plugins/minos-broker-kafka): The `kafka` plugin package.
1143+
* [minos-broker-rabbitmq](https://github.com/minos-framework/minos-python/tree/main/packages/plugins/minos-broker-rabbitmq): The `rabbitmq` plugin package.
1144+
* [minos-database-aiopg](https://github.com/minos-framework/minos-python/tree/main/packages/plugins/minos-database-aiopg): The `aiopg` plugin package.
1145+
* [minos-database-lmdb](https://github.com/minos-framework/minos-python/tree/main/packages/plugins/minos-database-lmdb): The `lmdb` plugin package.
1146+
* [minos-discovery-kong](https://github.com/minos-framework/minos-python/tree/main/packages/plugins/minos-discovery-kong): The `kong` plugin package.
1147+
* [minos-discovery-minos](https://github.com/minos-framework/minos-python/tree/main/packages/plugins/minos-discovery-minos): The `minos-discovery` plugin package.
1148+
* [minos-http-aiohttp](https://github.com/minos-framework/minos-python/tree/main/packages/plugins/minos-http-aiohttp): The `aiohttp` plugin package.
1149+
* [minos-router-graphql](https://github.com/minos-framework/minos-python/tree/main/packages/plugins/minos-router-graphql): The `grapqhl` plugin package.
11411150
11421151
## Source Code
11431152

Diff for: packages/core/minos-microservice-aggregate/HISTORY.md

+15-1
Original file line numberDiff line numberDiff line change
@@ -95,4 +95,18 @@
9595
## 0.6.0 (2022-03-28)
9696

9797
* Replace `dependency-injector`'s injection classes by the ones provided by the `minos.common.injections` module.
98-
* Be compatible with latest `minos.common.Config` API.
98+
* Be compatible with latest `minos.common.Config` API.
99+
100+
## 0.7.0 (2022-05-11)
101+
102+
* Rename `PostgreSqlEventRepository` as `DatabaseEventRepository`.
103+
* Add `EventDatabaseOperationFactory` as the abstract class to be implemented by database clients.
104+
* Move `PostgreSqlSnapshotQueryBuilder` to the `minos-database-aiopg` package.
105+
* Rename `PostgreSqlSnapshotRepository` as `DatabaseSnapshotRepository`.
106+
* Add `SnapshotDatabaseOperationFactory` as the abstract class to be implemented by database clients.
107+
* Remove `PostgreSqlSnapshotReader`, `PostgreSqlSnapshotSetup` and `PostgreSqlSnapshotWriter`.
108+
* Rename `PostgreSqlTransactionRepository` as `DatabaseTransactionRepository`.
109+
* Add `TransactionDatabaseOperationFactory` as the abstract class to be implemented by database clients.
110+
* Unify documentation building pipeline across all `minos-python` packages.
111+
* Fix documentation building warnings.
112+
* Fix bug related with package building and additional files like `AUTHORS.md`, `HISTORY.md`, etc.

Diff for: packages/core/minos-microservice-aggregate/minos/aggregate/__init__.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
__author__ = "Minos Framework Devs"
44
__email__ = "[email protected]"
5-
__version__ = "0.7.0.dev4"
5+
__version__ = "0.7.0"
66

77
from .actions import (
88
Action,

Diff for: packages/core/minos-microservice-aggregate/poetry.lock

+6-6
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: packages/core/minos-microservice-aggregate/pyproject.toml

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "minos-microservice-aggregate"
3-
version = "0.7.0.dev4"
3+
version = "0.7.0"
44
description = "The Aggregate pattern of the Minos Framework"
55
readme = "README.md"
66
repository = "https://github.com/minos-framework/minos-python"
@@ -31,8 +31,8 @@ include = [
3131

3232
[tool.poetry.dependencies]
3333
python = "^3.9"
34-
minos-microservice-common = { version ="^0.7.0*", allow-prereleases = true }
35-
minos-microservice-networks = { version ="^0.7.0*", allow-prereleases = true }
34+
minos-microservice-common = "^0.7.0"
35+
minos-microservice-networks = "^0.7.0"
3636
cached-property = "^1.5.2"
3737

3838
[tool.poetry.dev-dependencies]

Diff for: packages/core/minos-microservice-common/HISTORY.md

+19-1
Original file line numberDiff line numberDiff line change
@@ -302,4 +302,22 @@ routers:
302302

303303
## 0.6.1 (2022-04-01)
304304

305-
* Fix bug that didn't show the correct exception traceback when microservice failures occurred.
305+
* Fix bug that didn't show the correct exception traceback when microservice failures occurred.
306+
307+
## 0.7.0 (2022-05-11)
308+
309+
* Add `DatabaseClient`, `DatabaseClientBuilder` as the base client to execute operation over a database and the builder class.
310+
* Rename `PostgreSqlPool` as `DatabaseClientPool`.
311+
* Add `DatabaseOperation`, `ComposedDatabaseOperation` and `DatabaseOperationFactory` as the classes to build operations to be executed over the database.
312+
* Add `ConnectionException`, `DatabaseClientException`, `IntegrityException`, `ProgrammingException` as the base exceptions to be raised by the `DatabaseClient`.
313+
* Rename `PostgreSqlLock` and `PostgreSqlLockPool` as `DatabaseLock` and `DatabaseLockPool`.
314+
* Rename `PostgreSqlMinosDatabase` as `DatabaseMixin`.
315+
* Add `LockDatabaseOperationFactory` as the base operation factory for locking operations.
316+
* Add `ManagementDatabaseOperationFactory` as the base operation factory for management operations (creation, deletion, etc.).
317+
* Add `TypeHintParser` to unify `ModelType`'s type hints.
318+
* Add `PoolException` as the base exception for pools.
319+
* Add `PoolFactory` as the class with the purpose to build and manage `Pool` instances.
320+
* Remove `MinosStorage` and move `MinosStorageLmdb` to the `minos-database-lmdb` package.
321+
* Unify documentation building pipeline across all `minos-python` packages.
322+
* Fix documentation building warnings.
323+
* Fix bug related with package building and additional files like `AUTHORS.md`, `HISTORY.md`, etc.

Diff for: packages/core/minos-microservice-common/minos/common/__init__.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
"""The common core of the Minos Framework."""
22
__author__ = "Minos Framework Devs"
33
__email__ = "[email protected]"
4-
__version__ = "0.7.0.dev4"
4+
__version__ = "0.7.0"
55

66
from .builders import (
77
BuildableMixin,

Diff for: packages/core/minos-microservice-common/poetry.lock

+3-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: packages/core/minos-microservice-common/pyproject.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "minos-microservice-common"
3-
version = "0.7.0.dev4"
3+
version = "0.7.0"
44
description = "The common core of the Minos Framework"
55
readme = "README.md"
66
repository = "https://github.com/minos-framework/minos-python"

Diff for: packages/core/minos-microservice-cqrs/HISTORY.md

+7
Original file line numberDiff line numberDiff line change
@@ -78,3 +78,10 @@
7878

7979
* Replace `dependency-injector`'s injection classes by the ones provided by the `minos.common.injections` module.
8080
* Be compatible with latest `minos.common.Config` API.
81+
82+
## 0.7.0 (2022-05-11)
83+
84+
* Minor improvements.
85+
* Unify documentation building pipeline across all `minos-python` packages.
86+
* Fix documentation building warnings.
87+
* Fix bug related with package building and additional files like `AUTHORS.md`, `HISTORY.md`, etc.

Diff for: packages/core/minos-microservice-cqrs/minos/cqrs/__init__.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
__author__ = "Minos Framework Devs"
44
__email__ = "[email protected]"
5-
__version__ = "0.7.0.dev4"
5+
__version__ = "0.7.0"
66

77
from .exceptions import (
88
MinosCqrsException,

Diff for: packages/core/minos-microservice-cqrs/poetry.lock

+7-7
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: packages/core/minos-microservice-cqrs/pyproject.toml

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "minos-microservice-cqrs"
3-
version = "0.7.0.dev4"
3+
version = "0.7.0"
44
description = "The CQRS pattern of the Minos Framework"
55
readme = "README.md"
66
repository = "https://github.com/minos-framework/minos-python"
@@ -31,9 +31,9 @@ include = [
3131

3232
[tool.poetry.dependencies]
3333
python = "^3.9"
34-
minos-microservice-aggregate = { version ="^0.7.0*", allow-prereleases = true }
35-
minos-microservice-common = { version ="^0.7.0*", allow-prereleases = true }
36-
minos-microservice-networks = { version ="^0.7.0*", allow-prereleases = true }
34+
minos-microservice-aggregate = "^0.7.0"
35+
minos-microservice-common = "^0.7.0"
36+
minos-microservice-networks = "^0.7.0"
3737

3838
[tool.poetry.dev-dependencies]
3939
minos-microservice-common = { path = "../minos-microservice-common", develop = true }

0 commit comments

Comments
 (0)