mpt-extension-sdk 4.5.0__py3-none-any.whl → 5.17.2__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.
- mpt_extension_sdk/airtable/wrap_http_error.py +10 -6
- mpt_extension_sdk/constants.py +2 -0
- mpt_extension_sdk/core/events/dataclasses.py +2 -0
- mpt_extension_sdk/core/events/registry.py +8 -3
- mpt_extension_sdk/core/extension.py +2 -0
- mpt_extension_sdk/core/security.py +35 -27
- mpt_extension_sdk/core/utils.py +2 -0
- mpt_extension_sdk/flows/context.py +12 -1
- mpt_extension_sdk/flows/pipeline.py +11 -2
- mpt_extension_sdk/key_vault/base.py +36 -25
- mpt_extension_sdk/mpt_http/base.py +15 -3
- mpt_extension_sdk/mpt_http/mpt.py +73 -12
- mpt_extension_sdk/mpt_http/utils.py +1 -0
- mpt_extension_sdk/mpt_http/wrap_http_error.py +30 -8
- mpt_extension_sdk/runtime/__init__.py +1 -0
- mpt_extension_sdk/runtime/commands/django.py +5 -5
- mpt_extension_sdk/runtime/commands/run.py +2 -4
- mpt_extension_sdk/runtime/djapp/apps.py +7 -1
- mpt_extension_sdk/runtime/djapp/conf/__init__.py +2 -3
- mpt_extension_sdk/runtime/djapp/conf/default.py +9 -15
- mpt_extension_sdk/runtime/djapp/management/commands/consume_events.py +12 -7
- mpt_extension_sdk/runtime/djapp/middleware.py +5 -3
- mpt_extension_sdk/runtime/errors.py +5 -0
- mpt_extension_sdk/runtime/events/dispatcher.py +21 -19
- mpt_extension_sdk/runtime/events/producers.py +29 -25
- mpt_extension_sdk/runtime/events/utils.py +6 -5
- mpt_extension_sdk/runtime/initializer.py +4 -5
- mpt_extension_sdk/runtime/logging.py +11 -2
- mpt_extension_sdk/runtime/master.py +25 -17
- mpt_extension_sdk/runtime/swoext.py +10 -8
- mpt_extension_sdk/runtime/tracer.py +2 -0
- mpt_extension_sdk/runtime/utils.py +37 -38
- mpt_extension_sdk/runtime/workers.py +14 -8
- mpt_extension_sdk/swo_rql/query_builder.py +17 -14
- mpt_extension_sdk-5.17.2.dist-info/METADATA +39 -0
- mpt_extension_sdk-5.17.2.dist-info/RECORD +54 -0
- {mpt_extension_sdk-4.5.0.dist-info → mpt_extension_sdk-5.17.2.dist-info}/WHEEL +1 -1
- mpt_extension_sdk-5.17.2.dist-info/entry_points.txt +5 -0
- mpt_extension_sdk-4.5.0.dist-info/METADATA +0 -45
- mpt_extension_sdk-4.5.0.dist-info/RECORD +0 -53
- mpt_extension_sdk-4.5.0.dist-info/entry_points.txt +0 -6
- {mpt_extension_sdk-4.5.0.dist-info → mpt_extension_sdk-5.17.2.dist-info}/licenses/LICENSE +0 -0
|
@@ -10,25 +10,30 @@ from mpt_extension_sdk.runtime.utils import initialize_extension
|
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
class ExtensionWebApplication(BaseApplication):
|
|
13
|
+
"""Gunicorn application for the extension."""
|
|
14
|
+
|
|
13
15
|
def __init__(self, app, options=None):
|
|
14
16
|
self.options = options or {}
|
|
15
17
|
self.application = app
|
|
16
18
|
super().__init__()
|
|
17
19
|
|
|
18
20
|
def load_config(self):
|
|
21
|
+
"""Load configuration settings."""
|
|
19
22
|
config = {
|
|
20
|
-
|
|
21
|
-
for
|
|
22
|
-
if
|
|
23
|
+
opt_key: opt_value
|
|
24
|
+
for opt_key, opt_value in self.options.items()
|
|
25
|
+
if opt_key in self.cfg.settings and opt_value is not None
|
|
23
26
|
}
|
|
24
|
-
for
|
|
25
|
-
self.cfg.set(
|
|
27
|
+
for opt_key, opt_value in config.items():
|
|
28
|
+
self.cfg.set(opt_key.lower(), opt_value)
|
|
26
29
|
|
|
27
30
|
def load(self):
|
|
31
|
+
"""Load the application."""
|
|
28
32
|
return self.application
|
|
29
33
|
|
|
30
34
|
|
|
31
35
|
def start_event_consumer(options):
|
|
36
|
+
"""Start the event consumer."""
|
|
32
37
|
initialize_extension(options)
|
|
33
38
|
call_command("consume_events")
|
|
34
39
|
|
|
@@ -38,6 +43,7 @@ def start_gunicorn(
|
|
|
38
43
|
group=DEFAULT_APP_CONFIG_GROUP,
|
|
39
44
|
name=DEFAULT_APP_CONFIG_NAME,
|
|
40
45
|
):
|
|
46
|
+
"""Start the Gunicorn server."""
|
|
41
47
|
initialize_extension(options, group=group, name=name)
|
|
42
48
|
|
|
43
49
|
logging_config = {
|
|
@@ -45,8 +51,8 @@ def start_gunicorn(
|
|
|
45
51
|
"disable_existing_loggers": False,
|
|
46
52
|
"formatters": {
|
|
47
53
|
"verbose": {
|
|
48
|
-
"format":
|
|
49
|
-
|
|
54
|
+
"format": "{asctime} {name} {levelname} (pid: {process}, "
|
|
55
|
+
"thread: {thread}) {message}",
|
|
50
56
|
"style": "{",
|
|
51
57
|
},
|
|
52
58
|
"rich": {
|
|
@@ -61,7 +67,7 @@ def start_gunicorn(
|
|
|
61
67
|
"rich": {
|
|
62
68
|
"class": "rich.logging.RichHandler",
|
|
63
69
|
"formatter": "rich",
|
|
64
|
-
"log_time_format": lambda
|
|
70
|
+
"log_time_format": lambda log_time: log_time.strftime("%Y-%m-%d %H:%M:%S.%f")[:-3],
|
|
65
71
|
"rich_tracebacks": True,
|
|
66
72
|
},
|
|
67
73
|
},
|
|
@@ -2,18 +2,17 @@ from mpt_extension_sdk.swo_rql import constants
|
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
def parse_kwargs(query_dict):
|
|
5
|
+
"""Parse keyword arguments into RQL query components."""
|
|
5
6
|
query = []
|
|
6
7
|
for lookup, value in query_dict.items():
|
|
7
8
|
tokens = lookup.split("__")
|
|
8
9
|
if len(tokens) == 1:
|
|
9
|
-
# field=value
|
|
10
10
|
field = tokens[0]
|
|
11
11
|
value = rql_encode("eq", value)
|
|
12
12
|
query.append(f"eq({field},{value})")
|
|
13
13
|
continue
|
|
14
14
|
op = tokens[-1]
|
|
15
15
|
if op not in constants.KEYWORDS:
|
|
16
|
-
# field__nested=value
|
|
17
16
|
field = ".".join(tokens)
|
|
18
17
|
value = rql_encode("eq", value)
|
|
19
18
|
query.append(f"eq({field},{value})")
|
|
@@ -35,9 +34,9 @@ def parse_kwargs(query_dict):
|
|
|
35
34
|
return query
|
|
36
35
|
|
|
37
36
|
|
|
38
|
-
def rql_encode(op, value):
|
|
39
|
-
from datetime import date, datetime
|
|
40
|
-
from decimal import Decimal
|
|
37
|
+
def rql_encode(op, value): # noqa: C901, D103
|
|
38
|
+
from datetime import date, datetime # noqa: ICN003, PLC0415
|
|
39
|
+
from decimal import Decimal # noqa: PLC0415
|
|
41
40
|
|
|
42
41
|
if op not in constants.LIST:
|
|
43
42
|
if isinstance(value, str):
|
|
@@ -258,6 +257,12 @@ class RQLQuery:
|
|
|
258
257
|
return self._list("out", value)
|
|
259
258
|
|
|
260
259
|
def in_(self, value):
|
|
260
|
+
"""
|
|
261
|
+
Apply the `in` operator to the field this `R` object refers to.
|
|
262
|
+
|
|
263
|
+
Args:
|
|
264
|
+
value (list[str]): The list of values to which compare the field.
|
|
265
|
+
"""
|
|
261
266
|
return self._list("in", value)
|
|
262
267
|
|
|
263
268
|
def oneof(self, value: list[str]):
|
|
@@ -278,7 +283,7 @@ class RQLQuery:
|
|
|
278
283
|
"""
|
|
279
284
|
return self._bool("null", value)
|
|
280
285
|
|
|
281
|
-
def empty(self, value: bool = True):
|
|
286
|
+
def empty(self, value: bool = True): # noqa: FBT001, FBT002
|
|
282
287
|
"""
|
|
283
288
|
Apply the `empty` operator to the field this `R` object refers to.
|
|
284
289
|
|
|
@@ -289,11 +294,8 @@ class RQLQuery:
|
|
|
289
294
|
return self._bool("empty", value)
|
|
290
295
|
|
|
291
296
|
def not_empty(self):
|
|
292
|
-
"""
|
|
293
|
-
|
|
294
|
-
"""
|
|
295
|
-
query = self._bool("empty", False)
|
|
296
|
-
return query
|
|
297
|
+
"""Apply the `not_empty` operator to the field this `R` object refers to."""
|
|
298
|
+
return self._bool("empty", False) # noqa: FBT003
|
|
297
299
|
|
|
298
300
|
def like(self, value: list[str]):
|
|
299
301
|
"""
|
|
@@ -333,7 +335,8 @@ class RQLQuery:
|
|
|
333
335
|
self.expr = f"eq({self._field},{expr}())"
|
|
334
336
|
return self
|
|
335
337
|
|
|
336
|
-
def _to_string(self, query):
|
|
338
|
+
def _to_string(self, query): # noqa: C901
|
|
339
|
+
"""Convert the query to a string representation."""
|
|
337
340
|
tokens = []
|
|
338
341
|
if query.expr:
|
|
339
342
|
if query.negated:
|
|
@@ -352,8 +355,8 @@ class RQLQuery:
|
|
|
352
355
|
return ""
|
|
353
356
|
|
|
354
357
|
if query.negated:
|
|
355
|
-
return f
|
|
356
|
-
return f
|
|
358
|
+
return f"not({query.op}({','.join(tokens)}))"
|
|
359
|
+
return f"{query.op}({','.join(tokens)})"
|
|
357
360
|
|
|
358
361
|
def _copy(self, other):
|
|
359
362
|
return RQLQuery(
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: mpt-extension-sdk
|
|
3
|
+
Version: 5.17.2
|
|
4
|
+
Summary: Extensions SDK for SoftwareONE Marketplace Platform
|
|
5
|
+
Author: SoftwareOne AG
|
|
6
|
+
License: Apache-2.0 license
|
|
7
|
+
License-File: LICENSE
|
|
8
|
+
Requires-Python: <4,>=3.12
|
|
9
|
+
Requires-Dist: azure-identity==1.25.*
|
|
10
|
+
Requires-Dist: azure-keyvault-secrets==4.10.*
|
|
11
|
+
Requires-Dist: azure-monitor-opentelemetry-exporter==1.0.0b25
|
|
12
|
+
Requires-Dist: click==8.3.*
|
|
13
|
+
Requires-Dist: debugpy==1.8.*
|
|
14
|
+
Requires-Dist: django-ninja==1.1.*
|
|
15
|
+
Requires-Dist: django==4.2.*
|
|
16
|
+
Requires-Dist: gunicorn==23.0.*
|
|
17
|
+
Requires-Dist: jinja2==3.1.*
|
|
18
|
+
Requires-Dist: markdown-it-py==4.0.*
|
|
19
|
+
Requires-Dist: openpyxl==3.1.*
|
|
20
|
+
Requires-Dist: opentelemetry-api==1.30.*
|
|
21
|
+
Requires-Dist: opentelemetry-instrumentation-django==0.51b0
|
|
22
|
+
Requires-Dist: opentelemetry-instrumentation-logging==0.51b0
|
|
23
|
+
Requires-Dist: opentelemetry-instrumentation-requests==0.51b0
|
|
24
|
+
Requires-Dist: opentelemetry-sdk==1.30.*
|
|
25
|
+
Requires-Dist: phonenumbers==9.0.*
|
|
26
|
+
Requires-Dist: pyairtable==3.3.*
|
|
27
|
+
Requires-Dist: pyfiglet==1.0.*
|
|
28
|
+
Requires-Dist: pyjwt==2.10.*
|
|
29
|
+
Requires-Dist: pymsteams==0.2.*
|
|
30
|
+
Requires-Dist: regex==2024.11.*
|
|
31
|
+
Requires-Dist: requests==2.32.*
|
|
32
|
+
Requires-Dist: rich==14.2.*
|
|
33
|
+
Requires-Dist: types-openpyxl==3.1.*
|
|
34
|
+
Requires-Dist: typing-extensions==4.15.*
|
|
35
|
+
Requires-Dist: watchfiles==1.1.*
|
|
36
|
+
Description-Content-Type: text/markdown
|
|
37
|
+
|
|
38
|
+
# swo-extension-sdk
|
|
39
|
+
SDK for SoftwareONE python extensions
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
mpt_extension_sdk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
+
mpt_extension_sdk/constants.py,sha256=Qrwnvc9v6BFaNF6Fc6_EB-PfazjQfF1F3HMOQLIQgiA,527
|
|
3
|
+
mpt_extension_sdk/airtable/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
|
+
mpt_extension_sdk/airtable/wrap_http_error.py,sha256=0vaFm5hqYlYRPcNxlVoQdXIFJ7wpAGoNMIfqGcdTk6o,1463
|
|
5
|
+
mpt_extension_sdk/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
6
|
+
mpt_extension_sdk/core/extension.py,sha256=RjO7GEVMLz5QMrj85yzsQIxfAJHrRBuNlINqx_aSxd4,308
|
|
7
|
+
mpt_extension_sdk/core/security.py,sha256=VM0kdoYWHeGPnnA2MminHvPybIFKEzh2nQ0CtS9eaEw,1721
|
|
8
|
+
mpt_extension_sdk/core/utils.py,sha256=IDDUykQL_y4OpwdrqNtrG3DPieV6U9AEp2_94hEvXQo,436
|
|
9
|
+
mpt_extension_sdk/core/events/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10
|
+
mpt_extension_sdk/core/events/dataclasses.py,sha256=31B8LK64VRhJfvNDxnuLN9hTlCSXFUxflCawwqSO6sQ,501
|
|
11
|
+
mpt_extension_sdk/core/events/registry.py,sha256=N6d5ptoxcu7yAyCzZ0biuCh1vHW2mxUe7OppT80ZGFw,1503
|
|
12
|
+
mpt_extension_sdk/flows/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
13
|
+
mpt_extension_sdk/flows/context.py,sha256=nrvR45HH2O9_o9Ln6o846uCGCoiDhrH0GHFWnbyDjBk,1410
|
|
14
|
+
mpt_extension_sdk/flows/pipeline.py,sha256=s4iYNxszt-fNKkVu3QXX7ffvsT6oehBPUPsX7Vpi9K0,1652
|
|
15
|
+
mpt_extension_sdk/key_vault/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
16
|
+
mpt_extension_sdk/key_vault/base.py,sha256=OnlBEhof_NMRToPQUO4Nrq-dnT_FPxr5FuSn3CRBQF0,3869
|
|
17
|
+
mpt_extension_sdk/mpt_http/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
18
|
+
mpt_extension_sdk/mpt_http/base.py,sha256=zVGW-ERSaTFzyAKWe-_vXwSX_balI1yZHW8Q9nppr4o,1689
|
|
19
|
+
mpt_extension_sdk/mpt_http/mpt.py,sha256=30KVba-7m1pJ4SibjdnX-SsrkK9FGo9cLshYzUhkwu8,18516
|
|
20
|
+
mpt_extension_sdk/mpt_http/utils.py,sha256=Ek2D4efcJNhQlOyXd4ZeBhwqDjFpvcbBEqxuCqRQ7cU,166
|
|
21
|
+
mpt_extension_sdk/mpt_http/wrap_http_error.py,sha256=ULR5If8IJ9UAy137xDnOODcbMlqoW0Yc7gv6lxdbJuY,2435
|
|
22
|
+
mpt_extension_sdk/runtime/__init__.py,sha256=YY7ChHKTXXv0a6_PG1F4pVASDzleSWMv_Zf7uX0UDyc,244
|
|
23
|
+
mpt_extension_sdk/runtime/errors.py,sha256=dO2038Ivj9lzHtOtpJrB5fwL03tUWNT0R6HUKxrzKa4,146
|
|
24
|
+
mpt_extension_sdk/runtime/initializer.py,sha256=P_cbsR10NloHQ1dYZvTeaMOZmYFgrJF0PlEytWFF6rQ,2204
|
|
25
|
+
mpt_extension_sdk/runtime/logging.py,sha256=BB5NSoHaprpQnummbQ3NkkA5Nz6rrsZMZwg_Q7pTDx4,1098
|
|
26
|
+
mpt_extension_sdk/runtime/master.py,sha256=OoXLTTLoCrHWppMFtv90RGDImeg7-XWPYqH31cI9Lho,4956
|
|
27
|
+
mpt_extension_sdk/runtime/swoext.py,sha256=wrZ1RzPOzKa2DTOXkhTTiTlT9LXM9u5AKki2lX3fsVY,1806
|
|
28
|
+
mpt_extension_sdk/runtime/tracer.py,sha256=uJNRYDNoVeXButn5aF83W59upZdEZlIVH8hC8Wgi_Gw,459
|
|
29
|
+
mpt_extension_sdk/runtime/utils.py,sha256=AWdr7KLRof4H1hJK71DGN97mh-zMfvoLfFu5H3DjKfo,5165
|
|
30
|
+
mpt_extension_sdk/runtime/workers.py,sha256=hnRviiT0ZQDNEVsvPB0qH7JET5v_-RMQQS-2hpZCrVM,2933
|
|
31
|
+
mpt_extension_sdk/runtime/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
32
|
+
mpt_extension_sdk/runtime/commands/django.py,sha256=Xsj4VjuYonekWSu6gL-qUHChMbo6tKuRVmCqEs2jeoA,1247
|
|
33
|
+
mpt_extension_sdk/runtime/commands/run.py,sha256=OaSMi14k7KnJBE1F6KSg-vd0L0VLErWoMBvyKIccZRE,1134
|
|
34
|
+
mpt_extension_sdk/runtime/djapp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
35
|
+
mpt_extension_sdk/runtime/djapp/apps.py,sha256=jJ_Gev5D_3nZa632IVnNoU1y54QaEaZsrmFAUC9uMcM,1655
|
|
36
|
+
mpt_extension_sdk/runtime/djapp/middleware.py,sha256=lRi2U7rq5r8diqcJYCjO-bXxmzhCAFo7yikWDp_v9LQ,652
|
|
37
|
+
mpt_extension_sdk/runtime/djapp/conf/__init__.py,sha256=zT_Ep9clWx3oXT6EJwY15vUrtk98TqbedXLV0MXptsw,401
|
|
38
|
+
mpt_extension_sdk/runtime/djapp/conf/default.py,sha256=ZjyqHXq8qMJqKWMqnQ2EcRv2eJv7h43GA6njEhMs9R4,6445
|
|
39
|
+
mpt_extension_sdk/runtime/djapp/conf/urls.py,sha256=g-h1vzwDgCGLliSE2BDjb1eRJevZxZ7ehJrqSis12So,309
|
|
40
|
+
mpt_extension_sdk/runtime/djapp/management/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
41
|
+
mpt_extension_sdk/runtime/djapp/management/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
42
|
+
mpt_extension_sdk/runtime/djapp/management/commands/consume_events.py,sha256=C7KPtN03ipPxMvlmHSqWqThzKl77OYELvMAoNMQ7WI8,1425
|
|
43
|
+
mpt_extension_sdk/runtime/events/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
44
|
+
mpt_extension_sdk/runtime/events/dispatcher.py,sha256=YQvGG_GseHKRbJrmpqY1Uhcmk3CSTxHEj61A8fmVm2k,3195
|
|
45
|
+
mpt_extension_sdk/runtime/events/producers.py,sha256=RADf3IWpEwEGMJUVU4t0b4De2MaJGpRew0HUIWC5RW4,3753
|
|
46
|
+
mpt_extension_sdk/runtime/events/utils.py,sha256=GybK8Qs9Xj03Qqm98ulKeZzPiz92L-G9CwMwhZhBnkk,2747
|
|
47
|
+
mpt_extension_sdk/swo_rql/__init__.py,sha256=QrvRDYhpK-Pd3OF-U2aMeazuKm_kbvXwLRIjd9Mm6ok,104
|
|
48
|
+
mpt_extension_sdk/swo_rql/constants.py,sha256=39BZ78OzdU_dIQtoy-Z_5utXqEXRweIFvM9Zfxg9j5M,171
|
|
49
|
+
mpt_extension_sdk/swo_rql/query_builder.py,sha256=CG1dm7uJNPPCwWcf9sRD5zLbz-dtgECkQ_pX4QXpJPw,10825
|
|
50
|
+
mpt_extension_sdk-5.17.2.dist-info/METADATA,sha256=4-GW8TzqwBMI64CDVG0dUsLyqzTjRB2EfHnSwyRmVFo,1347
|
|
51
|
+
mpt_extension_sdk-5.17.2.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
52
|
+
mpt_extension_sdk-5.17.2.dist-info/entry_points.txt,sha256=N8T9gBssEOm_UeBf9ABbGqtlnethrumfMoL4hNYWVFA,146
|
|
53
|
+
mpt_extension_sdk-5.17.2.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
54
|
+
mpt_extension_sdk-5.17.2.dist-info/RECORD,,
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: mpt-extension-sdk
|
|
3
|
-
Version: 4.5.0
|
|
4
|
-
Summary: Extensions SDK for SoftwareONE Marketplace Platform
|
|
5
|
-
License: Apache-2.0
|
|
6
|
-
License-File: LICENSE
|
|
7
|
-
Author: SoftwareOne AG
|
|
8
|
-
Requires-Python: >=3.12,<4
|
|
9
|
-
Classifier: License :: OSI Approved :: Apache Software License
|
|
10
|
-
Classifier: Programming Language :: Python :: 3
|
|
11
|
-
Classifier: Programming Language :: Python :: 3.12
|
|
12
|
-
Classifier: Programming Language :: Python :: 3.13
|
|
13
|
-
Classifier: Programming Language :: Python :: 3.14
|
|
14
|
-
Requires-Dist: azure-identity (>=1.21.0,<2.0.0)
|
|
15
|
-
Requires-Dist: azure-keyvault-secrets (>=4.9.0,<5.0.0)
|
|
16
|
-
Requires-Dist: azure-monitor-opentelemetry-exporter (==1.0.0b25)
|
|
17
|
-
Requires-Dist: click (==8.1.*)
|
|
18
|
-
Requires-Dist: debugpy (==1.8.*)
|
|
19
|
-
Requires-Dist: django (==4.2.*)
|
|
20
|
-
Requires-Dist: django-ninja (==1.1.*)
|
|
21
|
-
Requires-Dist: gunicorn (==23.0.*)
|
|
22
|
-
Requires-Dist: jinja2 (==3.1.*)
|
|
23
|
-
Requires-Dist: markdown-it-py (==3.0.*)
|
|
24
|
-
Requires-Dist: openpyxl (==3.1.*)
|
|
25
|
-
Requires-Dist: opentelemetry-api (==1.30.*)
|
|
26
|
-
Requires-Dist: opentelemetry-instrumentation-django (==0.51b0)
|
|
27
|
-
Requires-Dist: opentelemetry-instrumentation-logging (==0.51b0)
|
|
28
|
-
Requires-Dist: opentelemetry-instrumentation-requests (==0.51b0)
|
|
29
|
-
Requires-Dist: opentelemetry-sdk (==1.30.*)
|
|
30
|
-
Requires-Dist: phonenumbers (==8.13.*)
|
|
31
|
-
Requires-Dist: pyairtable (==2.3.*)
|
|
32
|
-
Requires-Dist: pyfiglet (==1.0.*)
|
|
33
|
-
Requires-Dist: pyjwt (==2.8.*)
|
|
34
|
-
Requires-Dist: pymsteams (==0.2.*)
|
|
35
|
-
Requires-Dist: regex (>=2024.7.24,<2025.0.0)
|
|
36
|
-
Requires-Dist: requests (==2.32.*)
|
|
37
|
-
Requires-Dist: rich (==13.7.*)
|
|
38
|
-
Requires-Dist: types-openpyxl (==3.1.*)
|
|
39
|
-
Requires-Dist: typing-extensions (==4.14.*)
|
|
40
|
-
Requires-Dist: watchfiles (==0.21.*)
|
|
41
|
-
Description-Content-Type: text/markdown
|
|
42
|
-
|
|
43
|
-
# swo-extension-sdk
|
|
44
|
-
SDK for SoftwareONE python extensions
|
|
45
|
-
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
mpt_extension_sdk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
-
mpt_extension_sdk/airtable/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
3
|
-
mpt_extension_sdk/airtable/wrap_http_error.py,sha256=Shiy4uwpdpgkevooLjhpe1grhgJRj7cV6lUMMCQKogc,1263
|
|
4
|
-
mpt_extension_sdk/constants.py,sha256=rlO7WRImnzrb41zlkjka25CQQtEYid-0iGaupg_pk_k,485
|
|
5
|
-
mpt_extension_sdk/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
6
|
-
mpt_extension_sdk/core/events/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
|
-
mpt_extension_sdk/core/events/dataclasses.py,sha256=wBxjEmjzIwpSH4trpCQKYQPNzONBAgr8eQzTr3ulzkA,469
|
|
8
|
-
mpt_extension_sdk/core/events/registry.py,sha256=RbiAem_FZk4W137xTILm0hRav46pII1dgXxVriBDxOo,1268
|
|
9
|
-
mpt_extension_sdk/core/extension.py,sha256=s0QE2s99RMywfKQRZrYqOdWxELQvlFFVZMwm0xo2hhw,266
|
|
10
|
-
mpt_extension_sdk/core/security.py,sha256=0eCed1cmaNK1rCpgnsN9zw6wzr4m_Qb9aKxscO0uyYk,1419
|
|
11
|
-
mpt_extension_sdk/core/utils.py,sha256=LsvciwlVBJCBbd7L1rIWrTo_8Fi-W_SkL6IEezKUb4s,362
|
|
12
|
-
mpt_extension_sdk/flows/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
13
|
-
mpt_extension_sdk/flows/context.py,sha256=J_U9nTtY89mUvrcOqdgpk-21F8f6YENSmjxgpVK6XWs,964
|
|
14
|
-
mpt_extension_sdk/flows/pipeline.py,sha256=3BO5X3jvuYnRTWrXRzImjVCVOCut8dSvkT2LZwfpaZk,1374
|
|
15
|
-
mpt_extension_sdk/key_vault/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
16
|
-
mpt_extension_sdk/key_vault/base.py,sha256=RVG_Wiq-MrPyngJ4gfUd8oxoh1LUop1SvtCM2xdlx8M,3361
|
|
17
|
-
mpt_extension_sdk/mpt_http/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
18
|
-
mpt_extension_sdk/mpt_http/base.py,sha256=3qgo9BW-uTRAbex26urMvLZU0fwnYnBprDRIJCHvTOk,1284
|
|
19
|
-
mpt_extension_sdk/mpt_http/mpt.py,sha256=4o1nVuQF_KfHD9svmb0B9yPjyVC-L_Jg8et8qL5AXpE,16040
|
|
20
|
-
mpt_extension_sdk/mpt_http/utils.py,sha256=3wJTT84CXYGjZw6FksNDX8tIHijkL3Wcmld9r6Iz0xc,95
|
|
21
|
-
mpt_extension_sdk/mpt_http/wrap_http_error.py,sha256=j8K6Ddx7NiM-FPRMQi25vuULAW8LXxzZ4EwuIJufxis,1801
|
|
22
|
-
mpt_extension_sdk/runtime/__init__.py,sha256=PQSAz9qvXHbxrn4KvuXSHB8y-A4Jpgbm6ZV-wPiNPyw,194
|
|
23
|
-
mpt_extension_sdk/runtime/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
24
|
-
mpt_extension_sdk/runtime/commands/django.py,sha256=j0UC9WKhaTi-sxwV4F-ZF3SE-657-Ucu_jEG0mIzJU4,1229
|
|
25
|
-
mpt_extension_sdk/runtime/commands/run.py,sha256=j-2eI4JJj4VNgVmES5tqKe1Pe2aKWgYchhpvT8Koq7Q,1146
|
|
26
|
-
mpt_extension_sdk/runtime/djapp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
27
|
-
mpt_extension_sdk/runtime/djapp/apps.py,sha256=YA1G5HaRqFBS-0DfYQuFpMgzUCYpu5T8x5LEC6MwI_M,1398
|
|
28
|
-
mpt_extension_sdk/runtime/djapp/conf/__init__.py,sha256=_sHo76rGeXSTH8bW3pacyGFfNYSln8oLRwOSstYOmco,350
|
|
29
|
-
mpt_extension_sdk/runtime/djapp/conf/default.py,sha256=9eAB_hRnkok2I7E1NjYHs3x8ifrVc4_ihosm37Qq7Zo,6405
|
|
30
|
-
mpt_extension_sdk/runtime/djapp/conf/urls.py,sha256=g-h1vzwDgCGLliSE2BDjb1eRJevZxZ7ehJrqSis12So,309
|
|
31
|
-
mpt_extension_sdk/runtime/djapp/management/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
32
|
-
mpt_extension_sdk/runtime/djapp/management/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
33
|
-
mpt_extension_sdk/runtime/djapp/management/commands/consume_events.py,sha256=BVb4sgKI2Ep759bDcOH5Qm1xJEewc5-bNt_snspV2ck,1229
|
|
34
|
-
mpt_extension_sdk/runtime/djapp/middleware.py,sha256=oAA5khXW6xeUjnOV63pNCF4D7QFVD6PayIa_489KRmg,555
|
|
35
|
-
mpt_extension_sdk/runtime/events/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
36
|
-
mpt_extension_sdk/runtime/events/dispatcher.py,sha256=ZMswk50vGGfUgKeQ2Cc3k9wtrm63z0OH7EtlKCkWQYM,3008
|
|
37
|
-
mpt_extension_sdk/runtime/events/producers.py,sha256=lsHFfBxL5czZEAqZEyaIDZ-l8Q1T5_OhH5BGiXqw4Bk,3597
|
|
38
|
-
mpt_extension_sdk/runtime/events/utils.py,sha256=bxFo-iQUqEJDqcIotC88Ty3Xt0K2FyYjA9UMWFEyMKI,2663
|
|
39
|
-
mpt_extension_sdk/runtime/initializer.py,sha256=V8fubCULUJlvCBkYhJM52GUNoHNWVI-siaecmZv3kzk,2154
|
|
40
|
-
mpt_extension_sdk/runtime/logging.py,sha256=wJ6KyvnuvMZELI1Hd0fYbuHr7YiP3GIXFBvvSdmd7nQ,885
|
|
41
|
-
mpt_extension_sdk/runtime/master.py,sha256=ALbtAsb6ubhWcEpAXpzHSZixYXZ3Qfdf2ttOLb04nlc,4536
|
|
42
|
-
mpt_extension_sdk/runtime/swoext.py,sha256=LS0YZXwQsHDaYjalDGfYQi5cAL3aKQhphf3chrNmNBk,1665
|
|
43
|
-
mpt_extension_sdk/runtime/tracer.py,sha256=Mvt1BKBdSvb4FlOcjUDhIKEXmiYETrFGgHdhOQwEr7g,415
|
|
44
|
-
mpt_extension_sdk/runtime/utils.py,sha256=FWMsGCTPxgKPX8lbCpfCu-ZWuJCqnXZHVbt9bUHVJX4,4505
|
|
45
|
-
mpt_extension_sdk/runtime/workers.py,sha256=8KdI6neBEiMcc0zha8toCsZutvK2BhEXxb8NdTMrNO4,2677
|
|
46
|
-
mpt_extension_sdk/swo_rql/__init__.py,sha256=QrvRDYhpK-Pd3OF-U2aMeazuKm_kbvXwLRIjd9Mm6ok,104
|
|
47
|
-
mpt_extension_sdk/swo_rql/constants.py,sha256=39BZ78OzdU_dIQtoy-Z_5utXqEXRweIFvM9Zfxg9j5M,171
|
|
48
|
-
mpt_extension_sdk/swo_rql/query_builder.py,sha256=XAoMYV1jaAouYjpqrh8nMaDNzD0as-BhMx8rsvdeZ0k,10500
|
|
49
|
-
mpt_extension_sdk-4.5.0.dist-info/METADATA,sha256=rpA1rtC1fk0Y6Y6MxLBKEUpb9FBIq4zxLzkZ1lyFzxw,1708
|
|
50
|
-
mpt_extension_sdk-4.5.0.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
|
|
51
|
-
mpt_extension_sdk-4.5.0.dist-info/entry_points.txt,sha256=8uZQihFseK4Kp5XWHl9EDYneg-CLS8BFO-ygp0h34nc,143
|
|
52
|
-
mpt_extension_sdk-4.5.0.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
53
|
-
mpt_extension_sdk-4.5.0.dist-info/RECORD,,
|
|
File without changes
|