mdb-engine 0.2.1__py3-none-any.whl → 0.2.3__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- mdb_engine/auth/audit.py +40 -40
- mdb_engine/auth/base.py +3 -3
- mdb_engine/auth/casbin_factory.py +6 -6
- mdb_engine/auth/config_defaults.py +5 -5
- mdb_engine/auth/config_helpers.py +12 -12
- mdb_engine/auth/cookie_utils.py +9 -9
- mdb_engine/auth/csrf.py +9 -8
- mdb_engine/auth/decorators.py +7 -6
- mdb_engine/auth/dependencies.py +22 -21
- mdb_engine/auth/integration.py +9 -9
- mdb_engine/auth/jwt.py +9 -9
- mdb_engine/auth/middleware.py +4 -3
- mdb_engine/auth/oso_factory.py +6 -6
- mdb_engine/auth/provider.py +4 -4
- mdb_engine/auth/rate_limiter.py +12 -11
- mdb_engine/auth/restrictions.py +16 -15
- mdb_engine/auth/session_manager.py +11 -13
- mdb_engine/auth/shared_middleware.py +16 -15
- mdb_engine/auth/shared_users.py +20 -20
- mdb_engine/auth/token_lifecycle.py +10 -12
- mdb_engine/auth/token_store.py +4 -5
- mdb_engine/auth/users.py +51 -52
- mdb_engine/auth/utils.py +29 -33
- mdb_engine/cli/commands/generate.py +6 -6
- mdb_engine/cli/utils.py +4 -4
- mdb_engine/config.py +6 -7
- mdb_engine/core/app_registration.py +12 -12
- mdb_engine/core/app_secrets.py +1 -2
- mdb_engine/core/connection.py +3 -4
- mdb_engine/core/encryption.py +1 -2
- mdb_engine/core/engine.py +43 -44
- mdb_engine/core/manifest.py +59 -58
- mdb_engine/core/ray_integration.py +10 -9
- mdb_engine/core/seeding.py +3 -3
- mdb_engine/core/service_initialization.py +10 -9
- mdb_engine/core/types.py +40 -40
- mdb_engine/database/abstraction.py +15 -16
- mdb_engine/database/connection.py +40 -12
- mdb_engine/database/query_validator.py +8 -8
- mdb_engine/database/resource_limiter.py +7 -7
- mdb_engine/database/scoped_wrapper.py +51 -58
- mdb_engine/dependencies.py +14 -13
- mdb_engine/di/container.py +12 -13
- mdb_engine/di/providers.py +14 -13
- mdb_engine/di/scopes.py +5 -5
- mdb_engine/embeddings/dependencies.py +2 -2
- mdb_engine/embeddings/service.py +31 -43
- mdb_engine/exceptions.py +20 -20
- mdb_engine/indexes/helpers.py +11 -11
- mdb_engine/indexes/manager.py +9 -9
- mdb_engine/memory/service.py +30 -30
- mdb_engine/observability/health.py +10 -9
- mdb_engine/observability/logging.py +10 -10
- mdb_engine/observability/metrics.py +8 -7
- mdb_engine/repositories/base.py +25 -25
- mdb_engine/repositories/mongo.py +17 -17
- mdb_engine/repositories/unit_of_work.py +6 -6
- mdb_engine/routing/websockets.py +19 -18
- {mdb_engine-0.2.1.dist-info → mdb_engine-0.2.3.dist-info}/METADATA +8 -8
- mdb_engine-0.2.3.dist-info/RECORD +96 -0
- mdb_engine-0.2.1.dist-info/RECORD +0 -96
- {mdb_engine-0.2.1.dist-info → mdb_engine-0.2.3.dist-info}/WHEEL +0 -0
- {mdb_engine-0.2.1.dist-info → mdb_engine-0.2.3.dist-info}/entry_points.txt +0 -0
- {mdb_engine-0.2.1.dist-info → mdb_engine-0.2.3.dist-info}/licenses/LICENSE +0 -0
- {mdb_engine-0.2.1.dist-info → mdb_engine-0.2.3.dist-info}/top_level.txt +0 -0
mdb_engine/routing/websockets.py
CHANGED
|
@@ -23,9 +23,10 @@ This module is part of MDB_ENGINE - MongoDB Engine.
|
|
|
23
23
|
import asyncio
|
|
24
24
|
import json
|
|
25
25
|
import logging
|
|
26
|
+
from collections.abc import Awaitable, Callable
|
|
26
27
|
from dataclasses import dataclass
|
|
27
28
|
from datetime import datetime
|
|
28
|
-
from typing import Any
|
|
29
|
+
from typing import Any
|
|
29
30
|
|
|
30
31
|
# Check if FastAPI WebSocket support is available (OPTIONAL dependency)
|
|
31
32
|
try:
|
|
@@ -47,8 +48,8 @@ class WebSocketConnection:
|
|
|
47
48
|
|
|
48
49
|
websocket: Any
|
|
49
50
|
app_slug: str
|
|
50
|
-
user_id:
|
|
51
|
-
user_email:
|
|
51
|
+
user_id: str | None = None
|
|
52
|
+
user_email: str | None = None
|
|
52
53
|
connected_at: datetime = None
|
|
53
54
|
|
|
54
55
|
def __post_init__(self):
|
|
@@ -72,15 +73,15 @@ class WebSocketConnectionManager:
|
|
|
72
73
|
app_slug: App slug for scoping connections (ensures isolation)
|
|
73
74
|
"""
|
|
74
75
|
self.app_slug = app_slug
|
|
75
|
-
self.active_connections:
|
|
76
|
+
self.active_connections: list[WebSocketConnection] = [] # List of connection metadata
|
|
76
77
|
self._lock = asyncio.Lock()
|
|
77
78
|
logger.debug(f"Initialized WebSocket manager for app: {app_slug}")
|
|
78
79
|
|
|
79
80
|
async def connect(
|
|
80
81
|
self,
|
|
81
82
|
websocket: Any,
|
|
82
|
-
user_id:
|
|
83
|
-
user_email:
|
|
83
|
+
user_id: str | None = None,
|
|
84
|
+
user_email: str | None = None,
|
|
84
85
|
) -> WebSocketConnection:
|
|
85
86
|
"""
|
|
86
87
|
Accept and register a WebSocket connection with metadata.
|
|
@@ -134,7 +135,7 @@ class WebSocketConnectionManager:
|
|
|
134
135
|
|
|
135
136
|
asyncio.create_task(_disconnect())
|
|
136
137
|
|
|
137
|
-
async def broadcast(self, message:
|
|
138
|
+
async def broadcast(self, message: dict[str, Any], filter_by_user: str | None = None) -> int:
|
|
138
139
|
"""
|
|
139
140
|
Broadcast a message to all connected clients for this app.
|
|
140
141
|
|
|
@@ -196,7 +197,7 @@ class WebSocketConnectionManager:
|
|
|
196
197
|
|
|
197
198
|
return sent_count
|
|
198
199
|
|
|
199
|
-
async def send_to_connection(self, websocket: Any, message:
|
|
200
|
+
async def send_to_connection(self, websocket: Any, message: dict[str, Any]) -> None:
|
|
200
201
|
"""
|
|
201
202
|
Send a message to a specific WebSocket connection.
|
|
202
203
|
|
|
@@ -232,7 +233,7 @@ class WebSocketConnectionManager:
|
|
|
232
233
|
logger.debug(f"Error sending message to specific WebSocket: {e}")
|
|
233
234
|
self.disconnect(websocket)
|
|
234
235
|
|
|
235
|
-
def get_connections_by_user(self, user_id: str) ->
|
|
236
|
+
def get_connections_by_user(self, user_id: str) -> list[WebSocketConnection]:
|
|
236
237
|
"""
|
|
237
238
|
Get all connections for a specific user.
|
|
238
239
|
|
|
@@ -262,12 +263,12 @@ class WebSocketConnectionManager:
|
|
|
262
263
|
|
|
263
264
|
|
|
264
265
|
# Global registry of WebSocket managers per app (app-level isolation)
|
|
265
|
-
_websocket_managers:
|
|
266
|
+
_websocket_managers: dict[str, WebSocketConnectionManager] = {}
|
|
266
267
|
_manager_lock = asyncio.Lock()
|
|
267
268
|
|
|
268
269
|
# Global registry of message handlers per app (for listening to client messages)
|
|
269
270
|
# Note: Registration happens synchronously during app startup, so no lock needed
|
|
270
|
-
_message_handlers:
|
|
271
|
+
_message_handlers: dict[str, dict[str, Callable[[Any, dict[str, Any]], Awaitable[None]]]] = {}
|
|
271
272
|
|
|
272
273
|
|
|
273
274
|
async def get_websocket_manager(app_slug: str) -> WebSocketConnectionManager:
|
|
@@ -308,7 +309,7 @@ def get_websocket_manager_sync(app_slug: str) -> WebSocketConnectionManager:
|
|
|
308
309
|
|
|
309
310
|
async def authenticate_websocket(
|
|
310
311
|
websocket: Any, app_slug: str, require_auth: bool = True
|
|
311
|
-
) ->
|
|
312
|
+
) -> tuple[str | None, str | None]:
|
|
312
313
|
"""
|
|
313
314
|
Authenticate a WebSocket connection.
|
|
314
315
|
|
|
@@ -416,7 +417,7 @@ async def authenticate_websocket(
|
|
|
416
417
|
def register_message_handler(
|
|
417
418
|
app_slug: str,
|
|
418
419
|
endpoint_name: str,
|
|
419
|
-
handler: Callable[[Any,
|
|
420
|
+
handler: Callable[[Any, dict[str, Any]], Awaitable[None]],
|
|
420
421
|
) -> None:
|
|
421
422
|
"""
|
|
422
423
|
Register a message handler for a WebSocket endpoint.
|
|
@@ -453,7 +454,7 @@ def register_message_handler(
|
|
|
453
454
|
|
|
454
455
|
def get_message_handler(
|
|
455
456
|
app_slug: str, endpoint_name: str
|
|
456
|
-
) ->
|
|
457
|
+
) -> Callable[[Any, dict[str, Any]], Awaitable[None]] | None:
|
|
457
458
|
"""
|
|
458
459
|
Get a registered message handler for an endpoint.
|
|
459
460
|
|
|
@@ -528,11 +529,11 @@ async def _authenticate_websocket_connection(
|
|
|
528
529
|
|
|
529
530
|
async def _handle_websocket_message(
|
|
530
531
|
websocket: Any,
|
|
531
|
-
message:
|
|
532
|
+
message: dict[str, Any],
|
|
532
533
|
manager: Any,
|
|
533
534
|
app_slug: str,
|
|
534
535
|
endpoint_name: str,
|
|
535
|
-
handler:
|
|
536
|
+
handler: Callable | None,
|
|
536
537
|
) -> bool:
|
|
537
538
|
"""Handle incoming WebSocket message. Returns True if should continue, False if disconnect."""
|
|
538
539
|
if message.get("type") == "websocket.disconnect":
|
|
@@ -569,7 +570,7 @@ def create_websocket_endpoint(
|
|
|
569
570
|
app_slug: str,
|
|
570
571
|
path: str,
|
|
571
572
|
endpoint_name: str,
|
|
572
|
-
handler:
|
|
573
|
+
handler: Callable[[Any, dict[str, Any]], Awaitable[None]] | None = None,
|
|
573
574
|
require_auth: bool = True,
|
|
574
575
|
ping_interval: int = 30,
|
|
575
576
|
) -> Callable:
|
|
@@ -741,7 +742,7 @@ def create_websocket_endpoint(
|
|
|
741
742
|
|
|
742
743
|
|
|
743
744
|
async def broadcast_to_app(
|
|
744
|
-
app_slug: str, message:
|
|
745
|
+
app_slug: str, message: dict[str, Any], user_id: str | None = None
|
|
745
746
|
) -> int:
|
|
746
747
|
"""
|
|
747
748
|
Convenience function to broadcast a message to all WebSocket clients for an app.
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mdb-engine
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.3
|
|
4
4
|
Summary: MongoDB Engine
|
|
5
5
|
Home-page: https://github.com/ranfysvalle02/mdb-engine
|
|
6
|
-
Author:
|
|
7
|
-
Author-email:
|
|
6
|
+
Author: Fabian Valle
|
|
7
|
+
Author-email: Fabian Valle <oblivio.company@gmail.com>
|
|
8
8
|
License: AGPL-3.0
|
|
9
9
|
Project-URL: Homepage, https://github.com/ranfysvalle02/mdb-engine
|
|
10
10
|
Project-URL: Documentation, https://github.com/ranfysvalle02/mdb-engine#readme
|
|
@@ -15,13 +15,12 @@ Classifier: Development Status :: 4 - Beta
|
|
|
15
15
|
Classifier: Intended Audience :: Developers
|
|
16
16
|
Classifier: License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)
|
|
17
17
|
Classifier: Programming Language :: Python :: 3
|
|
18
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
19
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
20
18
|
Classifier: Programming Language :: Python :: 3.10
|
|
21
19
|
Classifier: Programming Language :: Python :: 3.11
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
22
21
|
Classifier: Topic :: Database
|
|
23
22
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
24
|
-
Requires-Python: >=3.
|
|
23
|
+
Requires-Python: >=3.10
|
|
25
24
|
Description-Content-Type: text/markdown
|
|
26
25
|
License-File: LICENSE
|
|
27
26
|
Requires-Dist: motor>=3.0.0
|
|
@@ -32,7 +31,7 @@ Requires-Dist: pyjwt>=2.8.0
|
|
|
32
31
|
Requires-Dist: jsonschema>=4.0.0
|
|
33
32
|
Requires-Dist: bcrypt>=4.0.0
|
|
34
33
|
Requires-Dist: cryptography>=41.0.0
|
|
35
|
-
Requires-Dist: mem0ai>=1.
|
|
34
|
+
Requires-Dist: mem0ai>=0.1.7
|
|
36
35
|
Requires-Dist: semantic-text-splitter>=0.9.0
|
|
37
36
|
Requires-Dist: numpy<2.0.0,>=1.0.0
|
|
38
37
|
Requires-Dist: openai>=1.0.0
|
|
@@ -50,9 +49,10 @@ Requires-Dist: pytest-asyncio>=0.21.0; extra == "test"
|
|
|
50
49
|
Requires-Dist: pytest-cov>=4.1.0; extra == "test"
|
|
51
50
|
Requires-Dist: pytest-mock>=3.11.0; extra == "test"
|
|
52
51
|
Requires-Dist: pytest-timeout>=2.1.0; extra == "test"
|
|
52
|
+
Requires-Dist: pytest-xdist>=3.3.0; extra == "test"
|
|
53
53
|
Requires-Dist: testcontainers>=3.7.0; extra == "test"
|
|
54
54
|
Provides-Extra: dev
|
|
55
|
-
Requires-Dist: ruff
|
|
55
|
+
Requires-Dist: ruff<0.6.0,>=0.4.0; extra == "dev"
|
|
56
56
|
Requires-Dist: semgrep>=1.50.0; extra == "dev"
|
|
57
57
|
Provides-Extra: all
|
|
58
58
|
Requires-Dist: casbin>=1.0.0; extra == "all"
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
mdb_engine/README.md,sha256=T3EFGcPopY9LslYW3lxgG3hohWkAOmBNbYG0FDMUJiY,3502
|
|
2
|
+
mdb_engine/__init__.py,sha256=-W3Gdj2GAoptKsR_T4xluYnmnelZTdKrTxCthIytZ48,3008
|
|
3
|
+
mdb_engine/config.py,sha256=DTAyxfKB8ogyI0v5QR9Y-SJOgXQr_eDBCKxNBSqEyLc,7269
|
|
4
|
+
mdb_engine/constants.py,sha256=eaotvW57TVOg7rRbLziGrVNoP7adgw_G9iVByHezc_A,7837
|
|
5
|
+
mdb_engine/dependencies.py,sha256=MJuYQhZ9ZGzXlip1ha5zba9Rvn04HDPWahJFJH81Q2s,14107
|
|
6
|
+
mdb_engine/exceptions.py,sha256=NkBSdTBNP9bVTtI6w6mAoEfeVZDq-Bg7vCF2L26ZDZo,8442
|
|
7
|
+
mdb_engine/auth/ARCHITECTURE.md,sha256=JXZsjEIpNz4Szk18KaOiEabhEuz1pmYWXQRN-EJEHDM,4076
|
|
8
|
+
mdb_engine/auth/README.md,sha256=STL4PHyMlYpSNEAqo4RBKTEm4kz1GbWpI9c_lS94nV4,36802
|
|
9
|
+
mdb_engine/auth/__init__.py,sha256=QemWqAVvqlxjF-UbzMTGP5AUOeuaAsUEtK4PMxmozmA,5852
|
|
10
|
+
mdb_engine/auth/audit.py,sha256=UQ0Bj5Zxp5et9A21YZCVkUjaABFqO1CXaMrWxNcdxm8,17352
|
|
11
|
+
mdb_engine/auth/base.py,sha256=4E3XkbruZLG9lc6aC56w0ypjnfiR5RbtjQKwn4am8to,7418
|
|
12
|
+
mdb_engine/auth/casbin_factory.py,sha256=oZLHIPyVA1hiho__ledRVDoBisaZgo96WZIKa0-kQic,16610
|
|
13
|
+
mdb_engine/auth/casbin_models.py,sha256=7XtFmRBhhjw1nKprnluvjyJoTj5fzdPeQwVvo6fI-r0,955
|
|
14
|
+
mdb_engine/auth/config_defaults.py,sha256=1YI_hIHuTiEXpkEYMcufNHdLr1oxPiJylg3CKrJCSGY,2012
|
|
15
|
+
mdb_engine/auth/config_helpers.py,sha256=Qharb2YagLOKDGtE7XhYRDbBoQ_KGykrcIKrsOwWIJ4,6303
|
|
16
|
+
mdb_engine/auth/cookie_utils.py,sha256=j04qXq5GiJrnnJUAP5Z_N1CAFbx9CZiyF5u9xIiQ3vo,4876
|
|
17
|
+
mdb_engine/auth/csrf.py,sha256=u6lhb3YighSaGsmFTkHt2ohHUYnBDdSU4dCBFiH_gYI,12440
|
|
18
|
+
mdb_engine/auth/decorators.py,sha256=LkVVEuRrT0Iz8EwctN14BEi3fSV-xtN6DaGXgtbiYYo,12287
|
|
19
|
+
mdb_engine/auth/dependencies.py,sha256=JB1iYvZJgTR6gcaiGe_GJFCS6NdUKMxWBZRv6vVxnzw,27112
|
|
20
|
+
mdb_engine/auth/helpers.py,sha256=BCrid985cYh-3h5ZMUV9TES0q40uJXio4oYKQZta7KA,1970
|
|
21
|
+
mdb_engine/auth/integration.py,sha256=6PMjGKS71bl-OrwxG_kksY1069jB9nNZZNFs2C2H2qk,22740
|
|
22
|
+
mdb_engine/auth/jwt.py,sha256=HKcGOaza62zdIQx0mHLV9zBSibCLlrM6NnCXg1HCGUc,7206
|
|
23
|
+
mdb_engine/auth/middleware.py,sha256=e21eZQYrgNPChb0uL6Uw1hV2Rzw92D9ZWAkqWv4nHSE,10866
|
|
24
|
+
mdb_engine/auth/oso_factory.py,sha256=EwRgN1OjjcwZPU4In35Zwrc5Qsm_aCUjyR3nxNqqwiw,11264
|
|
25
|
+
mdb_engine/auth/provider.py,sha256=FOSHn-jp4VYtxvmjnzho5kH6y-xDKWbcKUorYRRl1C4,26576
|
|
26
|
+
mdb_engine/auth/rate_limiter.py,sha256=l3EYZE1Kz9yVfZwNrKq_1AgdD7GXB1WOLSqqGQVSSgA,15808
|
|
27
|
+
mdb_engine/auth/restrictions.py,sha256=tOyQBO_w0bK9zmTsOPZf9cbvh4oITvpNfSxIXt-XrcU,8824
|
|
28
|
+
mdb_engine/auth/session_manager.py,sha256=ywWJjTarm-obgJ3zO3s-1cdqEYe0XrozlY00q_yMJ8I,15396
|
|
29
|
+
mdb_engine/auth/shared_middleware.py,sha256=c1yQCbEWDyEH3Q0IieTO85Gin50GwTJnMEbwLBM5SHg,22312
|
|
30
|
+
mdb_engine/auth/shared_users.py,sha256=25OBks4VRHaYZW7R61vnplV7wmr7RRpDctSgnej_nxc,26773
|
|
31
|
+
mdb_engine/auth/token_lifecycle.py,sha256=Q9S1X2Y6W7Ckt5PvyYXswBRh2Tg9DGpyRv_3Xve7VYQ,6708
|
|
32
|
+
mdb_engine/auth/token_store.py,sha256=-B8j5RH5YEoKsswF4rnMoI51BaxMe4icke3kuehXmcI,9121
|
|
33
|
+
mdb_engine/auth/users.py,sha256=t9Us2_A_wKOL9qy1O_SBwTvapAyNztn0v8padxJVq6A,49891
|
|
34
|
+
mdb_engine/auth/utils.py,sha256=g7fXkxIb8yuvlZrhKeQxAR0KxiUakXRK5WtKG4opihk,26019
|
|
35
|
+
mdb_engine/cli/__init__.py,sha256=PANRi4THmL34d1mawlqxIrnuItXMdqoMTq5Z1zHd7rM,301
|
|
36
|
+
mdb_engine/cli/main.py,sha256=Y5ELFhvsr8zxFWv4WScOGNHiLUTdSXAJeUFLpRXCelg,811
|
|
37
|
+
mdb_engine/cli/utils.py,sha256=bNRGJgdzxUjXAOVe1aoxWJ5M_IqtAE-eW4pfAkwiDDM,2760
|
|
38
|
+
mdb_engine/cli/commands/__init__.py,sha256=ZSzMhKdV9ILD5EbOSxDV9nURHo1e4bQ0c8AWpqsTEqM,115
|
|
39
|
+
mdb_engine/cli/commands/generate.py,sha256=VEcn7qNQkIPQlLEK3oXUBgYMwD-G0FyomXQcWTtKsbs,17304
|
|
40
|
+
mdb_engine/cli/commands/migrate.py,sha256=VqNiobSq-ykUhv7NyHJZ-wZ60a8X0B6OqXz8OACsCr0,2077
|
|
41
|
+
mdb_engine/cli/commands/show.py,sha256=-PmyMfzzG1HP-PsD9n8LECyxwvlXypNS3g_VDwFg4oY,1914
|
|
42
|
+
mdb_engine/cli/commands/validate.py,sha256=tD8GkhuW8LKsRMUXvBs-wvVWQunw1XFlLvbpE_SQ9Zg,1688
|
|
43
|
+
mdb_engine/core/README.md,sha256=cl19Sw4Hj-BPBsh_FIhPpop_6S88V-KaHC6rnUCx8xw,17039
|
|
44
|
+
mdb_engine/core/__init__.py,sha256=xhnXyXWZ0a2Qr49QrYvLE5QuqSalcpo05hHHRVtDz_M,1952
|
|
45
|
+
mdb_engine/core/app_registration.py,sha256=7szt2a7aBkpSppjmhdkkPPYMKGKo0MkLKZeEeWk-Rq8,13356
|
|
46
|
+
mdb_engine/core/app_secrets.py,sha256=bo-syg9UUATibNyXEZs-0TTYWG-JaY-2S0yNSGA12n0,10524
|
|
47
|
+
mdb_engine/core/connection.py,sha256=XnwuPG34pJ7kJGJ84T0mhj1UZ6_CLz_9qZf6NRYGIS8,8346
|
|
48
|
+
mdb_engine/core/encryption.py,sha256=RZ5LPF5g28E3ZBn6v1IMw_oas7u9YGFtBcEj8lTi9LM,7515
|
|
49
|
+
mdb_engine/core/engine.py,sha256=ciQHxHEcFh-DOQ0X9gV5kKk9WAxj3GKg5JDIPfFZjMg,69459
|
|
50
|
+
mdb_engine/core/index_management.py,sha256=9-r7MIy3JnjQ35sGqsbj8K_I07vAUWtAVgSWC99lJcE,5555
|
|
51
|
+
mdb_engine/core/manifest.py,sha256=Rezktd0Ulv28N6vO2Pg5Z6HNVy8hEdQqJ5pO08rRk6U,133570
|
|
52
|
+
mdb_engine/core/ray_integration.py,sha256=vexYOzztscvRYje1xTNmXJbi99oJxCaVJAwKfTNTF_E,13610
|
|
53
|
+
mdb_engine/core/seeding.py,sha256=c5IhdwlqUf_4Q5FFTAhPLaHPaUr_Txo3z_DUwZmWsFs,6421
|
|
54
|
+
mdb_engine/core/service_initialization.py,sha256=rtb6BaPvFqomwT_s7bdbbvqi5m74llT0LkJFEhVG9Gg,12996
|
|
55
|
+
mdb_engine/core/types.py,sha256=x7ahgb61vXVikn7nKHWGxQRW3StMG9lTHwr-Uvpnt_g,11150
|
|
56
|
+
mdb_engine/database/README.md,sha256=-31mVxBeVQaYsF3AD1-gQbD2NCYVcPjdFoA6sZ6b02Y,19354
|
|
57
|
+
mdb_engine/database/__init__.py,sha256=rrc3eZFli3K2zrvVdDbMBi8YkmoHYzP6JNT0AUBE5VU,981
|
|
58
|
+
mdb_engine/database/abstraction.py,sha256=H6f2WYY80r3onqN6s139uDSyG9W_QpadaoQ84hJuG1E,23438
|
|
59
|
+
mdb_engine/database/connection.py,sha256=-6FL6QwIlZxd7Sm7kbTaeISNrDD8A4dHGSbIEkKzqF0,15071
|
|
60
|
+
mdb_engine/database/query_validator.py,sha256=5xcGWd3Csk2qgvgJTIccEsc3bV10WNZUEKaI2loLwQs,13239
|
|
61
|
+
mdb_engine/database/resource_limiter.py,sha256=BCIACGexVRVhUcDERQFmg1LW8CPBQos_ZvmfLcJ4Opk,6905
|
|
62
|
+
mdb_engine/database/scoped_wrapper.py,sha256=5ToXG2NSFFG9Js87sRPkwE51XIUJwVUGgSta03W2t9A,94661
|
|
63
|
+
mdb_engine/di/__init__.py,sha256=uy9Q153a0QE678TkJ_AEwLuxPY3OyEum2I42_JsuwrI,912
|
|
64
|
+
mdb_engine/di/container.py,sha256=imr_3buWcJDNCEgn4-HTQvBV8DOU7gz8UfghI8FpqUA,7410
|
|
65
|
+
mdb_engine/di/providers.py,sha256=-KPYM4lz8pBxh3J1fuNJyFHwBuqL1vvWk7VgJxew4uo,5927
|
|
66
|
+
mdb_engine/di/scopes.py,sha256=pZgdkZ9ziW-vYCMvecC8Mv3Ud_Xk4ScsDYZ2eWHvar0,4165
|
|
67
|
+
mdb_engine/embeddings/README.md,sha256=XjGWUXSdbSpXCAEEVfYmcJoFKBVmXDoM3eTjenrM5Z0,5926
|
|
68
|
+
mdb_engine/embeddings/__init__.py,sha256=BM8tfcekVZv_iPQj3OuZBQ3hHr0eRQetNLEMysRTZkE,2129
|
|
69
|
+
mdb_engine/embeddings/dependencies.py,sha256=0LIEU5L1jvZBKO4yhYxh4WxDhzJaZI9ohZGBNa6B7IY,2182
|
|
70
|
+
mdb_engine/embeddings/service.py,sha256=yqVplODYLwWpEagv3mwS7n1-WXt2U-TluHwNi_BQ9Uc,25807
|
|
71
|
+
mdb_engine/indexes/README.md,sha256=r7duq-1vtqHhBk1cwoBMYYh_dfTzxiaQaPE3mLB_3JQ,15341
|
|
72
|
+
mdb_engine/indexes/__init__.py,sha256=9QFJ6qo_yD26dZcKyKjj-hhesFpaomBt-mWTtYTQvqc,613
|
|
73
|
+
mdb_engine/indexes/helpers.py,sha256=tJHqDm18jKLrW-P2ofmnUnaf4_-V5xDLjqP_WU8W9MM,4190
|
|
74
|
+
mdb_engine/indexes/manager.py,sha256=XSjvFNMOv67yey5Vi4mKBt6_w4b6Hqtv24fiAXnfLi0,32460
|
|
75
|
+
mdb_engine/memory/README.md,sha256=vy2FSXADcqG18YrFBfrMph9a1vYKuLijhs8ziNFdvRk,10631
|
|
76
|
+
mdb_engine/memory/__init__.py,sha256=e4kAYgxd_-WAH8GovTwjEBO9hvASu_kXEupMgksAL-U,1008
|
|
77
|
+
mdb_engine/memory/service.py,sha256=zX0oaHs8SHikH1fX4CtRF5pbOu1swEoiy3Segz_nLZI,47461
|
|
78
|
+
mdb_engine/observability/README.md,sha256=CMgQaC1H8ESmCitfbhJifz6-XoXH_FPNE4MvuZ-oFas,13085
|
|
79
|
+
mdb_engine/observability/__init__.py,sha256=jjLsrW6Gy2ayrbfLrgHsDB61NxWWkYLHwv0q-N3fxjA,1213
|
|
80
|
+
mdb_engine/observability/health.py,sha256=eFd8a-Rv3NWML0EDdZ8thZWTiqP_FUZbub97hV2z57g,9190
|
|
81
|
+
mdb_engine/observability/logging.py,sha256=lJV9iIk-cKb87LEfeMAIP0PPN5vg8-pdRdPzwD29SAM,4039
|
|
82
|
+
mdb_engine/observability/metrics.py,sha256=_5ZlObbYNgEanWvt-n0wIg9QOAnHBpePs_wKysSoJxQ,10728
|
|
83
|
+
mdb_engine/repositories/__init__.py,sha256=048N4QmFLVhJyLdYrWHTTBqujhaF--B8g0z6fUSMuJs,858
|
|
84
|
+
mdb_engine/repositories/base.py,sha256=9AP3baJzJeU2zIhh04TfvP1f3q5HyHdkrSW11xrcY70,8514
|
|
85
|
+
mdb_engine/repositories/mongo.py,sha256=Wg32_6v0KHAHumhz5z8QkoqJRWAMJFA7Y2lYIJ7LZIk,7142
|
|
86
|
+
mdb_engine/repositories/unit_of_work.py,sha256=XvmwGOspEDj4hsfOULPsQKjB1QZqh83TJo6vGV4tiqU,5118
|
|
87
|
+
mdb_engine/routing/README.md,sha256=WVvTQXDq0amryrjkCu0wP_piOEwFjLukjmPz2mroWHY,13658
|
|
88
|
+
mdb_engine/routing/__init__.py,sha256=reupjHi_RTc2ZBA4AH5XzobAmqy4EQIsfSUcTkFknUM,2438
|
|
89
|
+
mdb_engine/routing/websockets.py,sha256=3X4OjQv_Nln4UmeifJky0gFhMG8A6alR77I8g1iIOLY,29311
|
|
90
|
+
mdb_engine/utils/__init__.py,sha256=_xjHB5p6WLWBql1DyDqf5zdjj2xpfMlK25Y6BH9-oFk,145
|
|
91
|
+
mdb_engine-0.2.3.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
|
|
92
|
+
mdb_engine-0.2.3.dist-info/METADATA,sha256=-GUB0bt3MSLlo3Ayigjb2NnA2rZBPtdXrgq7oI0gBEE,10490
|
|
93
|
+
mdb_engine-0.2.3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
94
|
+
mdb_engine-0.2.3.dist-info/entry_points.txt,sha256=INCbYdFbBzJalwPwxliEzLmPfR57IvQ7RAXG_pn8cL8,48
|
|
95
|
+
mdb_engine-0.2.3.dist-info/top_level.txt,sha256=PH0UEBwTtgkm2vWvC9He_EOMn7hVn_Wg_Jyc0SmeO8k,11
|
|
96
|
+
mdb_engine-0.2.3.dist-info/RECORD,,
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
mdb_engine/README.md,sha256=T3EFGcPopY9LslYW3lxgG3hohWkAOmBNbYG0FDMUJiY,3502
|
|
2
|
-
mdb_engine/__init__.py,sha256=-W3Gdj2GAoptKsR_T4xluYnmnelZTdKrTxCthIytZ48,3008
|
|
3
|
-
mdb_engine/config.py,sha256=EsB0PHrRCCt24db6Ly88s6PQ3sm1esSLMa2G4AHpt5k,7315
|
|
4
|
-
mdb_engine/constants.py,sha256=eaotvW57TVOg7rRbLziGrVNoP7adgw_G9iVByHezc_A,7837
|
|
5
|
-
mdb_engine/dependencies.py,sha256=bkKwYz6CnucDNDcXdxTvRCqmQpsWbAXQFf5w-AcKMH8,14107
|
|
6
|
-
mdb_engine/exceptions.py,sha256=N8WYOgh1fOH0yJeR9I3FTXqpACIL_EQX3zcfUgrFvPI,8521
|
|
7
|
-
mdb_engine/auth/ARCHITECTURE.md,sha256=JXZsjEIpNz4Szk18KaOiEabhEuz1pmYWXQRN-EJEHDM,4076
|
|
8
|
-
mdb_engine/auth/README.md,sha256=STL4PHyMlYpSNEAqo4RBKTEm4kz1GbWpI9c_lS94nV4,36802
|
|
9
|
-
mdb_engine/auth/__init__.py,sha256=QemWqAVvqlxjF-UbzMTGP5AUOeuaAsUEtK4PMxmozmA,5852
|
|
10
|
-
mdb_engine/auth/audit.py,sha256=LtdG9GdwYTSMI30zMygB0K8w4l179GaGvkNbxWgoQ2I,17461
|
|
11
|
-
mdb_engine/auth/base.py,sha256=tIcC30_ViVuhmR8PCpY-MYBzu6Y9Ak1DZkAQishQyMg,7434
|
|
12
|
-
mdb_engine/auth/casbin_factory.py,sha256=66unyPRqNPydi0Bln8NNpsPt8gMwl7Hwc_nEsqfJj9U,16633
|
|
13
|
-
mdb_engine/auth/casbin_models.py,sha256=7XtFmRBhhjw1nKprnluvjyJoTj5fzdPeQwVvo6fI-r0,955
|
|
14
|
-
mdb_engine/auth/config_defaults.py,sha256=7JYX8CFI7OP7GHFIDHTf3Jns09LJcQ7f0_GL9yBnyuA,2018
|
|
15
|
-
mdb_engine/auth/config_helpers.py,sha256=DpQ8QZAO2FVVKFmhTJIa4FYPS8Iy8O7vcVh_tg0INLg,6309
|
|
16
|
-
mdb_engine/auth/cookie_utils.py,sha256=F88p6_aMG0aSmGXCn0KYjweSMPHqfce1lrKHU4P5yQk,4913
|
|
17
|
-
mdb_engine/auth/csrf.py,sha256=Rx9qYt8owSJJwwj7Z_w4nzkaLbaqWoVpNv13qnqosIA,12458
|
|
18
|
-
mdb_engine/auth/decorators.py,sha256=47uyOK_6WmK18J6ELRKwwgaIkcp6kHOILXuARj82Ijw,12288
|
|
19
|
-
mdb_engine/auth/dependencies.py,sha256=-JooBflCsyndw8oUJ864nX01QOX9Pq09KQhY43oaSJk,27156
|
|
20
|
-
mdb_engine/auth/helpers.py,sha256=BCrid985cYh-3h5ZMUV9TES0q40uJXio4oYKQZta7KA,1970
|
|
21
|
-
mdb_engine/auth/integration.py,sha256=zaTeo4ZXnxnTbw6iZCawZ6dDXDQQCaX6XYc6cbRw6xs,22759
|
|
22
|
-
mdb_engine/auth/jwt.py,sha256=aRXLfgFjsebIARmPqgfcA5zSgSN44HD7BgSyOEFaQCM,7244
|
|
23
|
-
mdb_engine/auth/middleware.py,sha256=uMx1dOO1NaR4K2nDet3k_ASR7rc7ZbKD0HlEkVYGJvU,10869
|
|
24
|
-
mdb_engine/auth/oso_factory.py,sha256=FPDzL5zYrFWd--amBoqKk_1FHET8QzlmiYTLinZeezU,11289
|
|
25
|
-
mdb_engine/auth/provider.py,sha256=m7G1rMgMezalALcV_74Kb0G77exyAIP-eOGyI2XfApc,26595
|
|
26
|
-
mdb_engine/auth/rate_limiter.py,sha256=kYuYIDlgkmYB2jx_UUmM9VrndUq2iTkdP7DZV-Jfu8o,15825
|
|
27
|
-
mdb_engine/auth/restrictions.py,sha256=TXa2lO3lZQeMtokhyVLP19-XbWwq2R8JMTw2KfaiDMg,8852
|
|
28
|
-
mdb_engine/auth/session_manager.py,sha256=XjYeE4i1998tBIefhp8VH3Oe7reyA_CC_qjw6zZ5EVY,15459
|
|
29
|
-
mdb_engine/auth/shared_middleware.py,sha256=nrW-JN3P6SQ-WjJcXU9scX8auuS3-LdKEQX9Iy-IjJw,22343
|
|
30
|
-
mdb_engine/auth/shared_users.py,sha256=7f1Wl0u-egcnaMPj1a2XzclMnulrYXpzOcFQM6Mvvus,26828
|
|
31
|
-
mdb_engine/auth/token_lifecycle.py,sha256=NiYDEUyooZRNAaT79yPHAyAfTK3MGOu8eNJtClR-PL0,6753
|
|
32
|
-
mdb_engine/auth/token_store.py,sha256=Mpvln3sPEE0l5zQmFtWxpVUKYjelWv8FJTLhOOn55MY,9161
|
|
33
|
-
mdb_engine/auth/users.py,sha256=gMEHC936aTkjtnGN5E3YzA1k5IThDcLFhzs0-02ujxI,50037
|
|
34
|
-
mdb_engine/auth/utils.py,sha256=g5ILBsrSxvBbhHKsJc9oVjlnmodrM3QJjQQKbnEy4Mk,26126
|
|
35
|
-
mdb_engine/cli/__init__.py,sha256=PANRi4THmL34d1mawlqxIrnuItXMdqoMTq5Z1zHd7rM,301
|
|
36
|
-
mdb_engine/cli/main.py,sha256=Y5ELFhvsr8zxFWv4WScOGNHiLUTdSXAJeUFLpRXCelg,811
|
|
37
|
-
mdb_engine/cli/utils.py,sha256=0bpxHB5PmHapnCRjlN4T2YRp5kzJsp87Uh_65MsCFJY,2766
|
|
38
|
-
mdb_engine/cli/commands/__init__.py,sha256=ZSzMhKdV9ILD5EbOSxDV9nURHo1e4bQ0c8AWpqsTEqM,115
|
|
39
|
-
mdb_engine/cli/commands/generate.py,sha256=2XDnyROYm5OOcEFczGeS6P0AtFgM74XigQbxbMTPvU4,17329
|
|
40
|
-
mdb_engine/cli/commands/migrate.py,sha256=VqNiobSq-ykUhv7NyHJZ-wZ60a8X0B6OqXz8OACsCr0,2077
|
|
41
|
-
mdb_engine/cli/commands/show.py,sha256=-PmyMfzzG1HP-PsD9n8LECyxwvlXypNS3g_VDwFg4oY,1914
|
|
42
|
-
mdb_engine/cli/commands/validate.py,sha256=tD8GkhuW8LKsRMUXvBs-wvVWQunw1XFlLvbpE_SQ9Zg,1688
|
|
43
|
-
mdb_engine/core/README.md,sha256=cl19Sw4Hj-BPBsh_FIhPpop_6S88V-KaHC6rnUCx8xw,17039
|
|
44
|
-
mdb_engine/core/__init__.py,sha256=xhnXyXWZ0a2Qr49QrYvLE5QuqSalcpo05hHHRVtDz_M,1952
|
|
45
|
-
mdb_engine/core/app_registration.py,sha256=zRK2JTeT0rDW4XdOgFAV-j9Og7xijXdov4u1VVp7p1Y,13386
|
|
46
|
-
mdb_engine/core/app_secrets.py,sha256=ipLsC_QdnIFhrCLNQ3nXvBAfndSor4WNRJyqPc0-J8Q,10555
|
|
47
|
-
mdb_engine/core/connection.py,sha256=9WRccQ2Zz8K6PS6yC2XXxhZkppALvAWZJhfLmsJBnbI,8383
|
|
48
|
-
mdb_engine/core/encryption.py,sha256=jblhUuu_L_lht0qlbn5vqDsdj9rN80uL9DCFDCD-zxw,7540
|
|
49
|
-
mdb_engine/core/engine.py,sha256=YmsoTNqMaLi4kcUFySSpCQZ1O8Fd41YryhwubfMfc0g,69566
|
|
50
|
-
mdb_engine/core/index_management.py,sha256=9-r7MIy3JnjQ35sGqsbj8K_I07vAUWtAVgSWC99lJcE,5555
|
|
51
|
-
mdb_engine/core/manifest.py,sha256=4Dk7iDOoxOrpZ20BA2onaX6cqMhWVSIA0bryeKPsXDQ,133677
|
|
52
|
-
mdb_engine/core/ray_integration.py,sha256=Qe3jAYQhOKeBBlWFAcqzciDWN2zctJh_6uMTIai1tS0,13617
|
|
53
|
-
mdb_engine/core/seeding.py,sha256=I5g43xdoEdC4rNwc_Ih0L6QOZguPcpAWrS6HvJ2a3fE,6433
|
|
54
|
-
mdb_engine/core/service_initialization.py,sha256=gJNIB0As4vg6UXRgt1EDo5p3zzlHfF8NZqjCAlB75mA,12997
|
|
55
|
-
mdb_engine/core/types.py,sha256=v_lSnBTyl2JHX39cPvPsnOxXhu8xaGC92UektvYPOvg,11239
|
|
56
|
-
mdb_engine/database/README.md,sha256=-31mVxBeVQaYsF3AD1-gQbD2NCYVcPjdFoA6sZ6b02Y,19354
|
|
57
|
-
mdb_engine/database/__init__.py,sha256=rrc3eZFli3K2zrvVdDbMBi8YkmoHYzP6JNT0AUBE5VU,981
|
|
58
|
-
mdb_engine/database/abstraction.py,sha256=FLVhFuS4OTZIRQyDkUBZdIlhqRndqNA89EO0cJvNsN0,23462
|
|
59
|
-
mdb_engine/database/connection.py,sha256=PDmwkjb4wYhLTUjlcYHscorces69rIuSxt5wdYixGQw,13777
|
|
60
|
-
mdb_engine/database/query_validator.py,sha256=AIWkQ-c6HAqJ-ixn-hq_0yfC2vdf1-jbEpzYZNmfEqs,13275
|
|
61
|
-
mdb_engine/database/resource_limiter.py,sha256=n54-I6bjEk5jxNGMXyb6_fArDCiyJ69_h9goFW5GzUs,6936
|
|
62
|
-
mdb_engine/database/scoped_wrapper.py,sha256=S_QIqGVyCteKAYlSUHNIqqc0S80jWhzHV-Lfa-ezNG4,94794
|
|
63
|
-
mdb_engine/di/__init__.py,sha256=uy9Q153a0QE678TkJ_AEwLuxPY3OyEum2I42_JsuwrI,912
|
|
64
|
-
mdb_engine/di/container.py,sha256=Wf4-O69Kg_hLC3aHmAf847K7p0sHLh4aYKMGOTmvzok,7441
|
|
65
|
-
mdb_engine/di/providers.py,sha256=jCgez_w1NkfAHCa6O3tsoGHiKcZt-fAbmgvn7KXmTCU,5940
|
|
66
|
-
mdb_engine/di/scopes.py,sha256=0pNzm2I5aRr7H_IBCRhcwd4dW4LzwD4uC2PmWyZI1Ps,4187
|
|
67
|
-
mdb_engine/embeddings/README.md,sha256=XjGWUXSdbSpXCAEEVfYmcJoFKBVmXDoM3eTjenrM5Z0,5926
|
|
68
|
-
mdb_engine/embeddings/__init__.py,sha256=BM8tfcekVZv_iPQj3OuZBQ3hHr0eRQetNLEMysRTZkE,2129
|
|
69
|
-
mdb_engine/embeddings/dependencies.py,sha256=BphKvHYF5iYo6k7v4rYkEOYKZCtlGsPfMdrT6v1J430,2195
|
|
70
|
-
mdb_engine/embeddings/service.py,sha256=v5Ch4VMADDUw-tqNs8XbaG9JJktvO7cqniNJ8Mes56k,25991
|
|
71
|
-
mdb_engine/indexes/README.md,sha256=r7duq-1vtqHhBk1cwoBMYYh_dfTzxiaQaPE3mLB_3JQ,15341
|
|
72
|
-
mdb_engine/indexes/__init__.py,sha256=9QFJ6qo_yD26dZcKyKjj-hhesFpaomBt-mWTtYTQvqc,613
|
|
73
|
-
mdb_engine/indexes/helpers.py,sha256=v5iYqS3yOekqwxdbgnI1ifYH4oESatgXYJiJO1GvhSU,4259
|
|
74
|
-
mdb_engine/indexes/manager.py,sha256=CkA62LofmRLtfcm1cyzyx89p6Nge8yb3MIshmWAWPC8,32472
|
|
75
|
-
mdb_engine/memory/README.md,sha256=vy2FSXADcqG18YrFBfrMph9a1vYKuLijhs8ziNFdvRk,10631
|
|
76
|
-
mdb_engine/memory/__init__.py,sha256=e4kAYgxd_-WAH8GovTwjEBO9hvASu_kXEupMgksAL-U,1008
|
|
77
|
-
mdb_engine/memory/service.py,sha256=evoQhnslLVc3fEUhikdby_mt5iz9_T2LPeCEQX4Psd0,47553
|
|
78
|
-
mdb_engine/observability/README.md,sha256=CMgQaC1H8ESmCitfbhJifz6-XoXH_FPNE4MvuZ-oFas,13085
|
|
79
|
-
mdb_engine/observability/__init__.py,sha256=jjLsrW6Gy2ayrbfLrgHsDB61NxWWkYLHwv0q-N3fxjA,1213
|
|
80
|
-
mdb_engine/observability/health.py,sha256=kZ9LXcJ3_8tKXRWXNNCz3qsj0PkZ0BSTdzisc8ds2vw,9197
|
|
81
|
-
mdb_engine/observability/logging.py,sha256=yo_KnUtqjPx_KvqNrAxW8ud6HQjI7Lk6T7Lj7IMW1uY,4073
|
|
82
|
-
mdb_engine/observability/metrics.py,sha256=EL9-ZFOaxxIdU8PWIqPRyPZHhP3fc4VyUawRSS2GIY4,10726
|
|
83
|
-
mdb_engine/repositories/__init__.py,sha256=048N4QmFLVhJyLdYrWHTTBqujhaF--B8g0z6fUSMuJs,858
|
|
84
|
-
mdb_engine/repositories/base.py,sha256=-Llwhn5NxEh-5S6CJAzZx1nF6J2Sch0WxIpMaaPQhs4,8575
|
|
85
|
-
mdb_engine/repositories/mongo.py,sha256=aR_JFDYtWIZiZA616tDbOPrLN_Gi8diD6Hc9UfeaT-w,7177
|
|
86
|
-
mdb_engine/repositories/unit_of_work.py,sha256=obTsGCcZgsNhQdFOvNGLtvq-guyykmPZzBo-GM_ROAo,5146
|
|
87
|
-
mdb_engine/routing/README.md,sha256=WVvTQXDq0amryrjkCu0wP_piOEwFjLukjmPz2mroWHY,13658
|
|
88
|
-
mdb_engine/routing/__init__.py,sha256=reupjHi_RTc2ZBA4AH5XzobAmqy4EQIsfSUcTkFknUM,2438
|
|
89
|
-
mdb_engine/routing/websockets.py,sha256=X6-MG0mAN8ZEgdmZD8edaiDx8DqMCN-hV3coIOdgZNc,29346
|
|
90
|
-
mdb_engine/utils/__init__.py,sha256=_xjHB5p6WLWBql1DyDqf5zdjj2xpfMlK25Y6BH9-oFk,145
|
|
91
|
-
mdb_engine-0.2.1.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
|
|
92
|
-
mdb_engine-0.2.1.dist-info/METADATA,sha256=LaeDnv88ajuRpA0YnOwmMNDSF_4BSRmy-AoxsmFC80U,10470
|
|
93
|
-
mdb_engine-0.2.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
94
|
-
mdb_engine-0.2.1.dist-info/entry_points.txt,sha256=INCbYdFbBzJalwPwxliEzLmPfR57IvQ7RAXG_pn8cL8,48
|
|
95
|
-
mdb_engine-0.2.1.dist-info/top_level.txt,sha256=PH0UEBwTtgkm2vWvC9He_EOMn7hVn_Wg_Jyc0SmeO8k,11
|
|
96
|
-
mdb_engine-0.2.1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|