svc-infra 0.1.589__py3-none-any.whl → 0.1.706__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.
Potentially problematic release.
This version of svc-infra might be problematic. Click here for more details.
- svc_infra/__init__.py +58 -2
- svc_infra/apf_payments/README.md +732 -0
- svc_infra/apf_payments/models.py +133 -42
- svc_infra/apf_payments/provider/__init__.py +4 -0
- svc_infra/apf_payments/provider/aiydan.py +871 -0
- svc_infra/apf_payments/provider/base.py +30 -9
- svc_infra/apf_payments/provider/stripe.py +156 -62
- svc_infra/apf_payments/schemas.py +19 -10
- svc_infra/apf_payments/service.py +211 -68
- svc_infra/apf_payments/settings.py +27 -3
- svc_infra/api/__init__.py +61 -0
- svc_infra/api/fastapi/__init__.py +15 -0
- svc_infra/api/fastapi/admin/__init__.py +3 -0
- svc_infra/api/fastapi/admin/add.py +245 -0
- svc_infra/api/fastapi/apf_payments/router.py +145 -46
- svc_infra/api/fastapi/apf_payments/setup.py +26 -8
- svc_infra/api/fastapi/auth/__init__.py +65 -0
- svc_infra/api/fastapi/auth/_cookies.py +6 -2
- svc_infra/api/fastapi/auth/add.py +27 -14
- svc_infra/api/fastapi/auth/gaurd.py +104 -13
- svc_infra/api/fastapi/auth/mfa/models.py +3 -1
- svc_infra/api/fastapi/auth/mfa/pre_auth.py +10 -6
- svc_infra/api/fastapi/auth/mfa/router.py +15 -8
- svc_infra/api/fastapi/auth/mfa/security.py +1 -2
- svc_infra/api/fastapi/auth/mfa/utils.py +2 -1
- svc_infra/api/fastapi/auth/mfa/verify.py +9 -2
- svc_infra/api/fastapi/auth/policy.py +0 -1
- svc_infra/api/fastapi/auth/providers.py +3 -1
- svc_infra/api/fastapi/auth/routers/apikey_router.py +6 -6
- svc_infra/api/fastapi/auth/routers/oauth_router.py +214 -75
- svc_infra/api/fastapi/auth/routers/session_router.py +67 -0
- svc_infra/api/fastapi/auth/security.py +31 -10
- svc_infra/api/fastapi/auth/sender.py +8 -1
- svc_infra/api/fastapi/auth/settings.py +2 -0
- svc_infra/api/fastapi/auth/state.py +3 -1
- svc_infra/api/fastapi/auth/ws_security.py +275 -0
- svc_infra/api/fastapi/billing/router.py +73 -0
- svc_infra/api/fastapi/billing/setup.py +19 -0
- svc_infra/api/fastapi/cache/add.py +9 -5
- svc_infra/api/fastapi/db/__init__.py +5 -1
- svc_infra/api/fastapi/db/http.py +3 -1
- svc_infra/api/fastapi/db/nosql/__init__.py +39 -1
- svc_infra/api/fastapi/db/nosql/mongo/add.py +47 -32
- svc_infra/api/fastapi/db/nosql/mongo/crud_router.py +30 -11
- svc_infra/api/fastapi/db/sql/__init__.py +5 -1
- svc_infra/api/fastapi/db/sql/add.py +71 -26
- svc_infra/api/fastapi/db/sql/crud_router.py +210 -22
- svc_infra/api/fastapi/db/sql/health.py +3 -1
- svc_infra/api/fastapi/db/sql/session.py +18 -0
- svc_infra/api/fastapi/db/sql/users.py +29 -5
- svc_infra/api/fastapi/dependencies/ratelimit.py +130 -0
- svc_infra/api/fastapi/docs/add.py +173 -0
- svc_infra/api/fastapi/docs/landing.py +4 -2
- svc_infra/api/fastapi/docs/scoped.py +62 -15
- svc_infra/api/fastapi/dual/__init__.py +12 -2
- svc_infra/api/fastapi/dual/dualize.py +1 -1
- svc_infra/api/fastapi/dual/protected.py +126 -4
- svc_infra/api/fastapi/dual/public.py +25 -0
- svc_infra/api/fastapi/dual/router.py +40 -13
- svc_infra/api/fastapi/dx.py +33 -2
- svc_infra/api/fastapi/ease.py +10 -2
- svc_infra/api/fastapi/http/concurrency.py +2 -1
- svc_infra/api/fastapi/http/conditional.py +3 -1
- svc_infra/api/fastapi/middleware/debug.py +4 -1
- svc_infra/api/fastapi/middleware/errors/catchall.py +6 -2
- svc_infra/api/fastapi/middleware/errors/exceptions.py +1 -1
- svc_infra/api/fastapi/middleware/errors/handlers.py +54 -8
- svc_infra/api/fastapi/middleware/graceful_shutdown.py +104 -0
- svc_infra/api/fastapi/middleware/idempotency.py +197 -70
- svc_infra/api/fastapi/middleware/idempotency_store.py +187 -0
- svc_infra/api/fastapi/middleware/optimistic_lock.py +42 -0
- svc_infra/api/fastapi/middleware/ratelimit.py +143 -31
- svc_infra/api/fastapi/middleware/ratelimit_store.py +111 -0
- svc_infra/api/fastapi/middleware/request_id.py +27 -11
- svc_infra/api/fastapi/middleware/request_size_limit.py +36 -0
- svc_infra/api/fastapi/middleware/timeout.py +177 -0
- svc_infra/api/fastapi/openapi/apply.py +5 -3
- svc_infra/api/fastapi/openapi/conventions.py +9 -2
- svc_infra/api/fastapi/openapi/mutators.py +165 -20
- svc_infra/api/fastapi/openapi/pipeline.py +1 -1
- svc_infra/api/fastapi/openapi/security.py +3 -1
- svc_infra/api/fastapi/ops/add.py +75 -0
- svc_infra/api/fastapi/pagination.py +47 -20
- svc_infra/api/fastapi/routers/__init__.py +43 -15
- svc_infra/api/fastapi/routers/ping.py +1 -0
- svc_infra/api/fastapi/setup.py +188 -56
- svc_infra/api/fastapi/tenancy/add.py +19 -0
- svc_infra/api/fastapi/tenancy/context.py +112 -0
- svc_infra/api/fastapi/versioned.py +101 -0
- svc_infra/app/README.md +5 -5
- svc_infra/app/__init__.py +3 -1
- svc_infra/app/env.py +69 -1
- svc_infra/app/logging/add.py +9 -2
- svc_infra/app/logging/formats.py +12 -5
- svc_infra/billing/__init__.py +23 -0
- svc_infra/billing/async_service.py +147 -0
- svc_infra/billing/jobs.py +241 -0
- svc_infra/billing/models.py +177 -0
- svc_infra/billing/quotas.py +103 -0
- svc_infra/billing/schemas.py +36 -0
- svc_infra/billing/service.py +123 -0
- svc_infra/bundled_docs/README.md +5 -0
- svc_infra/bundled_docs/__init__.py +1 -0
- svc_infra/bundled_docs/getting-started.md +6 -0
- svc_infra/cache/__init__.py +9 -0
- svc_infra/cache/add.py +170 -0
- svc_infra/cache/backend.py +7 -6
- svc_infra/cache/decorators.py +81 -15
- svc_infra/cache/demo.py +2 -2
- svc_infra/cache/keys.py +24 -4
- svc_infra/cache/recache.py +26 -14
- svc_infra/cache/resources.py +14 -5
- svc_infra/cache/tags.py +19 -44
- svc_infra/cache/utils.py +3 -1
- svc_infra/cli/__init__.py +52 -8
- svc_infra/cli/__main__.py +4 -0
- svc_infra/cli/cmds/__init__.py +39 -2
- svc_infra/cli/cmds/db/nosql/mongo/mongo_cmds.py +7 -4
- svc_infra/cli/cmds/db/nosql/mongo/mongo_scaffold_cmds.py +7 -5
- svc_infra/cli/cmds/db/ops_cmds.py +270 -0
- svc_infra/cli/cmds/db/sql/alembic_cmds.py +103 -18
- svc_infra/cli/cmds/db/sql/sql_export_cmds.py +88 -0
- svc_infra/cli/cmds/db/sql/sql_scaffold_cmds.py +3 -3
- svc_infra/cli/cmds/docs/docs_cmds.py +142 -0
- svc_infra/cli/cmds/dx/__init__.py +12 -0
- svc_infra/cli/cmds/dx/dx_cmds.py +116 -0
- svc_infra/cli/cmds/health/__init__.py +179 -0
- svc_infra/cli/cmds/health/health_cmds.py +8 -0
- svc_infra/cli/cmds/help.py +4 -0
- svc_infra/cli/cmds/jobs/__init__.py +1 -0
- svc_infra/cli/cmds/jobs/jobs_cmds.py +47 -0
- svc_infra/cli/cmds/obs/obs_cmds.py +36 -15
- svc_infra/cli/cmds/sdk/__init__.py +0 -0
- svc_infra/cli/cmds/sdk/sdk_cmds.py +112 -0
- svc_infra/cli/foundation/runner.py +6 -2
- svc_infra/data/add.py +61 -0
- svc_infra/data/backup.py +58 -0
- svc_infra/data/erasure.py +45 -0
- svc_infra/data/fixtures.py +42 -0
- svc_infra/data/retention.py +61 -0
- svc_infra/db/__init__.py +15 -0
- svc_infra/db/crud_schema.py +9 -9
- svc_infra/db/inbox.py +67 -0
- svc_infra/db/nosql/__init__.py +3 -0
- svc_infra/db/nosql/core.py +30 -9
- svc_infra/db/nosql/indexes.py +3 -1
- svc_infra/db/nosql/management.py +1 -1
- svc_infra/db/nosql/mongo/README.md +13 -13
- svc_infra/db/nosql/mongo/client.py +19 -2
- svc_infra/db/nosql/mongo/settings.py +6 -2
- svc_infra/db/nosql/repository.py +35 -15
- svc_infra/db/nosql/resource.py +20 -3
- svc_infra/db/nosql/scaffold.py +9 -3
- svc_infra/db/nosql/service.py +3 -1
- svc_infra/db/nosql/types.py +6 -2
- svc_infra/db/ops.py +384 -0
- svc_infra/db/outbox.py +108 -0
- svc_infra/db/sql/apikey.py +37 -9
- svc_infra/db/sql/authref.py +9 -3
- svc_infra/db/sql/constants.py +12 -8
- svc_infra/db/sql/core.py +2 -2
- svc_infra/db/sql/management.py +11 -8
- svc_infra/db/sql/repository.py +99 -26
- svc_infra/db/sql/resource.py +5 -0
- svc_infra/db/sql/scaffold.py +6 -2
- svc_infra/db/sql/service.py +15 -5
- svc_infra/db/sql/templates/models_schemas/auth/models.py.tmpl +7 -56
- svc_infra/db/sql/templates/models_schemas/auth/schemas.py.tmpl +1 -1
- svc_infra/db/sql/templates/setup/env_async.py.tmpl +34 -12
- svc_infra/db/sql/templates/setup/env_sync.py.tmpl +29 -7
- svc_infra/db/sql/tenant.py +88 -0
- svc_infra/db/sql/uniq_hooks.py +9 -3
- svc_infra/db/sql/utils.py +138 -51
- svc_infra/db/sql/versioning.py +14 -0
- svc_infra/deploy/__init__.py +538 -0
- svc_infra/documents/__init__.py +100 -0
- svc_infra/documents/add.py +264 -0
- svc_infra/documents/ease.py +233 -0
- svc_infra/documents/models.py +114 -0
- svc_infra/documents/storage.py +264 -0
- svc_infra/dx/add.py +65 -0
- svc_infra/dx/changelog.py +74 -0
- svc_infra/dx/checks.py +68 -0
- svc_infra/exceptions.py +141 -0
- svc_infra/health/__init__.py +864 -0
- svc_infra/http/__init__.py +13 -0
- svc_infra/http/client.py +105 -0
- svc_infra/jobs/builtins/outbox_processor.py +40 -0
- svc_infra/jobs/builtins/webhook_delivery.py +95 -0
- svc_infra/jobs/easy.py +33 -0
- svc_infra/jobs/loader.py +50 -0
- svc_infra/jobs/queue.py +116 -0
- svc_infra/jobs/redis_queue.py +256 -0
- svc_infra/jobs/runner.py +79 -0
- svc_infra/jobs/scheduler.py +53 -0
- svc_infra/jobs/worker.py +40 -0
- svc_infra/loaders/__init__.py +186 -0
- svc_infra/loaders/base.py +142 -0
- svc_infra/loaders/github.py +311 -0
- svc_infra/loaders/models.py +147 -0
- svc_infra/loaders/url.py +235 -0
- svc_infra/logging/__init__.py +374 -0
- svc_infra/mcp/svc_infra_mcp.py +91 -33
- svc_infra/obs/README.md +2 -0
- svc_infra/obs/add.py +65 -9
- svc_infra/obs/cloud_dash.py +2 -1
- svc_infra/obs/grafana/dashboards/http-overview.json +45 -0
- svc_infra/obs/metrics/__init__.py +52 -0
- svc_infra/obs/metrics/asgi.py +13 -7
- svc_infra/obs/metrics/http.py +9 -5
- svc_infra/obs/metrics/sqlalchemy.py +13 -9
- svc_infra/obs/metrics.py +53 -0
- svc_infra/obs/settings.py +6 -2
- svc_infra/security/add.py +217 -0
- svc_infra/security/audit.py +212 -0
- svc_infra/security/audit_service.py +74 -0
- svc_infra/security/headers.py +52 -0
- svc_infra/security/hibp.py +101 -0
- svc_infra/security/jwt_rotation.py +105 -0
- svc_infra/security/lockout.py +102 -0
- svc_infra/security/models.py +287 -0
- svc_infra/security/oauth_models.py +73 -0
- svc_infra/security/org_invites.py +130 -0
- svc_infra/security/passwords.py +79 -0
- svc_infra/security/permissions.py +171 -0
- svc_infra/security/session.py +98 -0
- svc_infra/security/signed_cookies.py +100 -0
- svc_infra/storage/__init__.py +93 -0
- svc_infra/storage/add.py +253 -0
- svc_infra/storage/backends/__init__.py +11 -0
- svc_infra/storage/backends/local.py +339 -0
- svc_infra/storage/backends/memory.py +216 -0
- svc_infra/storage/backends/s3.py +353 -0
- svc_infra/storage/base.py +239 -0
- svc_infra/storage/easy.py +185 -0
- svc_infra/storage/settings.py +195 -0
- svc_infra/testing/__init__.py +685 -0
- svc_infra/utils.py +7 -3
- svc_infra/webhooks/__init__.py +69 -0
- svc_infra/webhooks/add.py +339 -0
- svc_infra/webhooks/encryption.py +115 -0
- svc_infra/webhooks/fastapi.py +39 -0
- svc_infra/webhooks/router.py +55 -0
- svc_infra/webhooks/service.py +70 -0
- svc_infra/webhooks/signing.py +34 -0
- svc_infra/websocket/__init__.py +79 -0
- svc_infra/websocket/add.py +140 -0
- svc_infra/websocket/client.py +282 -0
- svc_infra/websocket/config.py +69 -0
- svc_infra/websocket/easy.py +76 -0
- svc_infra/websocket/exceptions.py +61 -0
- svc_infra/websocket/manager.py +344 -0
- svc_infra/websocket/models.py +49 -0
- svc_infra-0.1.706.dist-info/LICENSE +21 -0
- svc_infra-0.1.706.dist-info/METADATA +356 -0
- svc_infra-0.1.706.dist-info/RECORD +357 -0
- svc_infra-0.1.589.dist-info/METADATA +0 -79
- svc_infra-0.1.589.dist-info/RECORD +0 -234
- {svc_infra-0.1.589.dist-info → svc_infra-0.1.706.dist-info}/WHEEL +0 -0
- {svc_infra-0.1.589.dist-info → svc_infra-0.1.706.dist-info}/entry_points.txt +0 -0
|
@@ -0,0 +1,357 @@
|
|
|
1
|
+
svc_infra/__init__.py,sha256=KRlsNkhDjm5IEpISSLR7oeiuvSXDk-Pf2aLIg7wUCX8,1287
|
|
2
|
+
svc_infra/apf_payments/README.md,sha256=wqJrJcCkWIFMS0d1pUhYGt6NmgnxmYJcHFnUnm8Bf1Y,23321
|
|
3
|
+
svc_infra/apf_payments/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
|
+
svc_infra/apf_payments/alembic.py,sha256=XJIcCDOoaO1EeJbSx_qK9o4cBi430qyo5gECtjHIojw,299
|
|
5
|
+
svc_infra/apf_payments/models.py,sha256=v05JzGxogBNvQ-cmZYprG1jdVeBaI0UFdMZ8NKB0s_c,14895
|
|
6
|
+
svc_infra/apf_payments/provider/__init__.py,sha256=zBh26eY7kcWHD4RXqAKfqaspY0_VE9thfts7aE8zbHg,142
|
|
7
|
+
svc_infra/apf_payments/provider/aiydan.py,sha256=A6jSRK_ufB_4BcbzXV3HTMd3mB3G1QwYjb0b6ItYHdE,32836
|
|
8
|
+
svc_infra/apf_payments/provider/base.py,sha256=dtsGqL0_tyt2M7035HW6gMTwaPdbU9elJgrMtB-4ITg,7831
|
|
9
|
+
svc_infra/apf_payments/provider/registry.py,sha256=NZ4pUkFcbXNtqWEpFeI3NwoKRYGWe9fVQakmlrVLTKE,878
|
|
10
|
+
svc_infra/apf_payments/provider/stripe.py,sha256=ku3x5V7AhljzKzD5GaJrhxHcU65ceqXLC9ELzQq5WYA,35847
|
|
11
|
+
svc_infra/apf_payments/schemas.py,sha256=wMcBIOabopkKr2m-_sxaA5_ZshyjMrawz9V9bsc2WBs,8767
|
|
12
|
+
svc_infra/apf_payments/service.py,sha256=TTm34atIzDVO5_JpINXour9NDY5JQMyixq2mAsvZfZ8,35518
|
|
13
|
+
svc_infra/apf_payments/settings.py,sha256=YMP7LqSLIuMKrasKyUSw0-idC4lKt99i7uXwVXJ5jVk,2058
|
|
14
|
+
svc_infra/api/__init__.py,sha256=EYwhHnpG2dznXBBXqWWxtUCG7548lz2i7zQizegLiyA,1221
|
|
15
|
+
svc_infra/api/fastapi/__init__.py,sha256=ZZKJBfCLDhGRxbmWvbaDbW_IEfSwpbOalzgHpXEAJQA,1055
|
|
16
|
+
svc_infra/api/fastapi/admin/__init__.py,sha256=AmuCHI5EQRCqwM40Gs1245z7MTcYZkg5xuoaplCExko,82
|
|
17
|
+
svc_infra/api/fastapi/admin/add.py,sha256=VeY5Gaalvyzz7iYj_c_2ZvXZurSCkT8P9_DIzqMC_1M,8968
|
|
18
|
+
svc_infra/api/fastapi/apf_payments/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
19
|
+
svc_infra/api/fastapi/apf_payments/router.py,sha256=IDrwy9b67Ko-A-72C2YNmv-MQAF3tp1YdMox8oaEvTM,37243
|
|
20
|
+
svc_infra/api/fastapi/apf_payments/setup.py,sha256=hfhGpbwTHZkcv8gkBPT_OkPHqrHkXSqLtJIl4Dpdd58,2730
|
|
21
|
+
svc_infra/api/fastapi/auth/__init__.py,sha256=1wzQTEzpmVlwILWikbPznZtWJqR8RadyQCVftptjMNk,1659
|
|
22
|
+
svc_infra/api/fastapi/auth/_cookies.py,sha256=A6lW-bToLUUH3zDqExFZwjMVspkpZ78qZDgzbzuK2_Y,1401
|
|
23
|
+
svc_infra/api/fastapi/auth/add.py,sha256=5qTc5q4eC4H7TRseh618x6eemoClJ9xUNMPI0joWGk0,10135
|
|
24
|
+
svc_infra/api/fastapi/auth/gaurd.py,sha256=J5jxIh4mjCTdNJ54-lAicrM1QHe1GQrj150eMhV7wus,9475
|
|
25
|
+
svc_infra/api/fastapi/auth/mfa/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
26
|
+
svc_infra/api/fastapi/auth/mfa/models.py,sha256=Q9s48rnZx5iL-LwoqxxJ4QaOTSQSRuau32E2GIDU2FY,1238
|
|
27
|
+
svc_infra/api/fastapi/auth/mfa/pre_auth.py,sha256=jlfCy9DnggziJMDyk10Cay7SM9xpFOXeE1aAk_J8K8E,1629
|
|
28
|
+
svc_infra/api/fastapi/auth/mfa/router.py,sha256=xanch5mCbQosyiTtr0gKhluKVxMHiJIi7EeaMJ6hQn0,12778
|
|
29
|
+
svc_infra/api/fastapi/auth/mfa/security.py,sha256=aWP7Ic8IzhsZoL1Un_uLjtBJB1JsKkbcRxYpbhTyL1c,1081
|
|
30
|
+
svc_infra/api/fastapi/auth/mfa/utils.py,sha256=sBEdaCul6pgWK5DbhC_g7Jxr1kjFVcCJrOYzqxg7om4,1017
|
|
31
|
+
svc_infra/api/fastapi/auth/mfa/verify.py,sha256=aGaAx5u9NFzwGujd0bGSbqDyPhK-JIObnE1ZP2b7tPE,3000
|
|
32
|
+
svc_infra/api/fastapi/auth/policy.py,sha256=BLPQxkDW-271lBzRgARdHqQ9dvEOIQ-iYUvHPjV9Vwo,862
|
|
33
|
+
svc_infra/api/fastapi/auth/providers.py,sha256=A1GRafaawWvThkWNpURfaaLDy9zSDjp6Q56WAjzeeQE,3231
|
|
34
|
+
svc_infra/api/fastapi/auth/routers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
35
|
+
svc_infra/api/fastapi/auth/routers/account.py,sha256=IzLCk9e6ST8oorI8GWTuU0bfPyGvONqAjxadoE6L6Fg,1614
|
|
36
|
+
svc_infra/api/fastapi/auth/routers/apikey_router.py,sha256=RcPI0Zt3p3AQ6jg04fSxbAS7wN216Oe9bR6cnOJZ2dw,5412
|
|
37
|
+
svc_infra/api/fastapi/auth/routers/oauth_router.py,sha256=Vz2Vd_E6C7oHUcn73UOnT22cwbJf2KyLe4B0M4gOqbY,28722
|
|
38
|
+
svc_infra/api/fastapi/auth/routers/session_router.py,sha256=plL_f6Z42TKtDIuuQM3HRBDLHPLL6lsLyFcsmAsp0_A,2390
|
|
39
|
+
svc_infra/api/fastapi/auth/security.py,sha256=EbuZIY8rVi929EwUk01y4O7cIw20BO--PpgHcZPHb84,6723
|
|
40
|
+
svc_infra/api/fastapi/auth/sender.py,sha256=Ok2YC1IOazFaGL2Fp2TJrkC8Fk7U7VXVSa5Q8cuNZM0,1978
|
|
41
|
+
svc_infra/api/fastapi/auth/settings.py,sha256=H6jF9EOZOBbRJX0JugvirLMylJw64KK_32osGkJYRB8,3470
|
|
42
|
+
svc_infra/api/fastapi/auth/state.py,sha256=POoWFX4pevBvJwZ_-g5o7g_Hmbk8yWKrsXkvfSvlaPI,1092
|
|
43
|
+
svc_infra/api/fastapi/auth/ws_security.py,sha256=1at9Vs2PQxjG3V4tGTqeqilb8GsICznhP5MQ1LsCpzI,8593
|
|
44
|
+
svc_infra/api/fastapi/billing/router.py,sha256=mJJtsDgyLJQkH1ntkALl3niSQkDrl04Dwt_f0VckxGE,2204
|
|
45
|
+
svc_infra/api/fastapi/billing/setup.py,sha256=N4_yvNdvCt2l2OUmREUdUAClGwLUvCwqN1IHgY99ZMI,621
|
|
46
|
+
svc_infra/api/fastapi/cache/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
47
|
+
svc_infra/api/fastapi/cache/add.py,sha256=eIgv8zP1Zp5Bg0i1ZeDIJlP9wtnOePx7x0e0LaEtpCM,429
|
|
48
|
+
svc_infra/api/fastapi/db/__init__.py,sha256=xsKiQESWKLFV3rC-Gif35rlvY-J8J4aeJ1NsH98gk3Q,372
|
|
49
|
+
svc_infra/api/fastapi/db/http.py,sha256=iwhgj19g6K4-baFFyiZyeN4d843ePUk5EzHEhlLVkA8,2294
|
|
50
|
+
svc_infra/api/fastapi/db/nosql/__init__.py,sha256=eyGkD3jofKNp_TeLFGafsKnYqbtMvlovZ1-CXrR-YIk,1407
|
|
51
|
+
svc_infra/api/fastapi/db/nosql/mongo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
52
|
+
svc_infra/api/fastapi/db/nosql/mongo/add.py,sha256=axUi3mOeTizWTl5Lq1i9suHQvsc1v0qXnBnberI4Gs0,4674
|
|
53
|
+
svc_infra/api/fastapi/db/nosql/mongo/crud_router.py,sha256=AF9dX_2VfrJxDc4dr55Rjt95rIF2tKmNpZy0eugEcL0,4625
|
|
54
|
+
svc_infra/api/fastapi/db/nosql/mongo/health.py,sha256=OM4_Pig3IRSrBhz2yHweIhGlSBrW1bubY_mDt5uyORA,507
|
|
55
|
+
svc_infra/api/fastapi/db/sql/README.md,sha256=uF_k4wbNSeWR6JF_8evWkeSFidBEXMXcIiYyR6sEv48,3082
|
|
56
|
+
svc_infra/api/fastapi/db/sql/__init__.py,sha256=pwB1IAl0A6pjetq_CqJRpkdVIrsqIyjkW2KWTsCk3_Y,272
|
|
57
|
+
svc_infra/api/fastapi/db/sql/add.py,sha256=EwUmkyhXHYfyrNRaou4zK4RWpHBsAqEMYZ5L1T78iEs,5516
|
|
58
|
+
svc_infra/api/fastapi/db/sql/crud_router.py,sha256=HECLXZQ7wTkJBgv3IBJcCuvu8wqb8ePhQ3cdR5jhr-I,11741
|
|
59
|
+
svc_infra/api/fastapi/db/sql/health.py,sha256=1_gP_5ewQ4LlBdfFocEgBflT5UlzTxb8Wl3r63xoQRc,806
|
|
60
|
+
svc_infra/api/fastapi/db/sql/session.py,sha256=be4D_zGUCra11nI5fFHbUqM5tsTbwWsWnsgAFbrPisA,2621
|
|
61
|
+
svc_infra/api/fastapi/db/sql/users.py,sha256=Dm65BXD9XIJeC82PqW3AAaVPWR7zxujF9BZswr9z7Kk,5589
|
|
62
|
+
svc_infra/api/fastapi/dependencies/ratelimit.py,sha256=rEGaRpMoz9XbN0rmAr7mZdOD6ieFBvzoum8JVimLyV8,4093
|
|
63
|
+
svc_infra/api/fastapi/docs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
64
|
+
svc_infra/api/fastapi/docs/add.py,sha256=QosgrNVkneys6ad7IX-5fYtNVS90PR0qxhwzP40Xap8,5974
|
|
65
|
+
svc_infra/api/fastapi/docs/landing.py,sha256=RUbFXgxqwC1reBBf-EwliSjEiAmaRIabAEe-lHt11CY,4626
|
|
66
|
+
svc_infra/api/fastapi/docs/scoped.py,sha256=LdXsJnVAmikYaS2iwz2m4xojUqwJY8yehSlCD_g6fOw,8983
|
|
67
|
+
svc_infra/api/fastapi/dual/__init__.py,sha256=8KtRm6OireWBWwM8-nlYUieISqRDGflobFL86LKkGZI,885
|
|
68
|
+
svc_infra/api/fastapi/dual/dualize.py,sha256=lCNHRQVlMM_rjlN0Zzr57HzCK1eeuXhKWZrofSJNdDM,3803
|
|
69
|
+
svc_infra/api/fastapi/dual/protected.py,sha256=BMRTb5dYl1SMaoJ7K47qs7OAwq7sFQx10tENxYKC4sQ,6869
|
|
70
|
+
svc_infra/api/fastapi/dual/public.py,sha256=2G1dW9S9CY-CJfpsZBUhYlop1LLVlUdTipZTFt1icIc,1438
|
|
71
|
+
svc_infra/api/fastapi/dual/router.py,sha256=y_56IQ3mUMBUge4UvcDbv9myUXWgwIbQlfOMoMtIEmU,6646
|
|
72
|
+
svc_infra/api/fastapi/dual/utils.py,sha256=frkZtxGVyT0oUCveqpxSRrcRwercXYs3wjhTjh8av2g,272
|
|
73
|
+
svc_infra/api/fastapi/dx.py,sha256=5IudyA7DfvqrzF3c3aOWGRz3oGiHNbLwGHx8eu_yuv8,4836
|
|
74
|
+
svc_infra/api/fastapi/ease.py,sha256=jVYtx-QcMZFob7ncwKeJ0or5IJ4OZw3phlt-An2Mtvg,7884
|
|
75
|
+
svc_infra/api/fastapi/http/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
76
|
+
svc_infra/api/fastapi/http/concurrency.py,sha256=8HMtlBy_UBBcG0hI0dOtMRSusD7cIB1iUGVinmA9ipo,543
|
|
77
|
+
svc_infra/api/fastapi/http/conditional.py,sha256=qwc0gM8soPKgh5EOpPAY1XsSfsx8Evq1KDisqpC5iaU,1123
|
|
78
|
+
svc_infra/api/fastapi/http/deprecation.py,sha256=dW8NrReVzeIqyOSBJvyImDBUM9y-0PRvZz55YJsBI2Q,715
|
|
79
|
+
svc_infra/api/fastapi/middleware/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
80
|
+
svc_infra/api/fastapi/middleware/debug.py,sha256=h7bfbgHHThBW0sra8C10kubsv6ixcipA_jeYBDvIS_o,656
|
|
81
|
+
svc_infra/api/fastapi/middleware/errors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
82
|
+
svc_infra/api/fastapi/middleware/errors/catchall.py,sha256=D8pQSO2VNZ1QWLuTK8-xIB1CnH61cqOymM3f9NBXPo4,1926
|
|
83
|
+
svc_infra/api/fastapi/middleware/errors/exceptions.py,sha256=j_ItdT_Wmmmluykl5uQL3BdvJ9-H7-LRxGwmKCEhevY,476
|
|
84
|
+
svc_infra/api/fastapi/middleware/errors/handlers.py,sha256=eEGt9DAdDB8-FAyV5dKBrrkGJIFIbSMB-3KfT_g74Dg,8644
|
|
85
|
+
svc_infra/api/fastapi/middleware/graceful_shutdown.py,sha256=Jxtxfbv2LijXBwHfsMaGGchPPAHykvFAe36aMZEbglw,3168
|
|
86
|
+
svc_infra/api/fastapi/middleware/idempotency.py,sha256=Fq1k0FfYRWd5jHpg6bVZHXKeRbsioJpybb9oeuD7Wxs,7777
|
|
87
|
+
svc_infra/api/fastapi/middleware/idempotency_store.py,sha256=BQN_Cq_jf_cuZRhze4EF5v0lOMQXpUWoRo7CsSTprug,5528
|
|
88
|
+
svc_infra/api/fastapi/middleware/optimistic_lock.py,sha256=Z5hDJgcoJMLKwE83B1YNNvlLHKpWZQs_ijwN9iBxxUM,1341
|
|
89
|
+
svc_infra/api/fastapi/middleware/ratelimit.py,sha256=WGGWMNXx9X47JHtxKvCy3_9BmLk9stZXq0VM26RbGdU,6139
|
|
90
|
+
svc_infra/api/fastapi/middleware/ratelimit_store.py,sha256=HGK89B7i7lFXq6C4OfEl6qi9UXWmALALf4Gss6Vo354,3645
|
|
91
|
+
svc_infra/api/fastapi/middleware/request_id.py,sha256=IYCEcxWIjcbPJTj2mQXyDLSHHKCti13SPzaC4oLt-0w,1377
|
|
92
|
+
svc_infra/api/fastapi/middleware/request_size_limit.py,sha256=KfP3c-mcR3qu2NZMO2gbj513FdN7WAvnuZ1y7n73tc4,1256
|
|
93
|
+
svc_infra/api/fastapi/middleware/timeout.py,sha256=Y4yUkWZUI3DXWqMAld5wPMcOgq5xpByMKJeDiTzQzYU,6451
|
|
94
|
+
svc_infra/api/fastapi/openapi/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
95
|
+
svc_infra/api/fastapi/openapi/apply.py,sha256=6MvD93FTTBdY6d4Veb1jLHj4UHxtQkSWE8LwMK00-DY,1665
|
|
96
|
+
svc_infra/api/fastapi/openapi/conventions.py,sha256=pxoxeT5Pzkrc_cPGjVpHkxyU_YGFtn_DklFvDPLNgdM,7253
|
|
97
|
+
svc_infra/api/fastapi/openapi/models.py,sha256=MmXMpPZQjZygajfIHaL4_3q0zluPtpRevsSyOIiE83Y,2562
|
|
98
|
+
svc_infra/api/fastapi/openapi/mutators.py,sha256=D5yIwgHpHvNZJGHlE07kKn9rklcGWYxG2u9uaVnlY3k,56038
|
|
99
|
+
svc_infra/api/fastapi/openapi/pipeline.py,sha256=9NVaKwDqihWfJf8WLSf2vi68ruit31J05vQ_e6vpRKM,657
|
|
100
|
+
svc_infra/api/fastapi/openapi/responses.py,sha256=pBUoJd0lltBkQBJACS1Zd1wd975gbw6dYyMEqyueRuw,1093
|
|
101
|
+
svc_infra/api/fastapi/openapi/security.py,sha256=N7lBvof34rtOe2Fu0Yfq-faPvGkLs0O10mnd93QAJGk,1261
|
|
102
|
+
svc_infra/api/fastapi/ops/add.py,sha256=VxCPEKLlJQ-D4rVE04YCfkzX_j1EEHFKiYBODj9SGww,2574
|
|
103
|
+
svc_infra/api/fastapi/pagination.py,sha256=-ZcWvsosGNN30Ux10Y7Ea4aMTL6ssj2Np1iw4oUpHSc,11354
|
|
104
|
+
svc_infra/api/fastapi/paths/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
105
|
+
svc_infra/api/fastapi/paths/auth.py,sha256=hy9N0QFQnpv7dBOuHStui5eP9oIGHrawa0sADIVVD64,553
|
|
106
|
+
svc_infra/api/fastapi/paths/generic.py,sha256=z2hAYoanpxXCksHLJyo5_GsnmmQEgslM5CaG3kVsy0E,38
|
|
107
|
+
svc_infra/api/fastapi/paths/prefix.py,sha256=I1xEt1lKDlOPn2Oa-y_1B-Q8JCwAPpu3_F_1YUHu_Sc,45
|
|
108
|
+
svc_infra/api/fastapi/paths/user.py,sha256=z8xv_A3dPhG366ezJU1c839oHbU3tEg06rbx3HUUuL0,323
|
|
109
|
+
svc_infra/api/fastapi/routers/__init__.py,sha256=TYPtLBl-GHTxfshsk8U3bmkRXPPhmyYYmwkLxUDaiRs,9505
|
|
110
|
+
svc_infra/api/fastapi/routers/ping.py,sha256=71DGaklMAkCL8g_NHdQk9LXG7C_cVem1p8qtapGtnBk,576
|
|
111
|
+
svc_infra/api/fastapi/setup.py,sha256=f4KFBMv1HyPQvLTVJB7lWBdDeAP4Eta3K36cjno6REs,13984
|
|
112
|
+
svc_infra/api/fastapi/tenancy/add.py,sha256=47lhWoHjuqbgSckJBTNGz-Mo5R6W7SQ0hQDiOGC0HU0,509
|
|
113
|
+
svc_infra/api/fastapi/tenancy/context.py,sha256=vLndtz_n8Q3WRB3KVrVgp9uzpv5fzEhipCfR0msOIU0,3275
|
|
114
|
+
svc_infra/api/fastapi/versioned.py,sha256=OQhc3cHa9hqwHexiUaZyDm1DY6PwpeAC2x--IYawoYs,3221
|
|
115
|
+
svc_infra/app/README.md,sha256=MqnKTVjE9txaqlcl41wAv34hWhNfc_fJXCqCTsEWNdk,5070
|
|
116
|
+
svc_infra/app/__init__.py,sha256=IZNV7Y5FxR8BVs6AfiNcXlrPXeVlGLgUwsuqhwaLb30,293
|
|
117
|
+
svc_infra/app/env.py,sha256=hNivhFBqb70a8-Uy2kM4J9PUgCF1XhHRhzMeXQI99R0,6482
|
|
118
|
+
svc_infra/app/logging/__init__.py,sha256=Nbu2wWySPztxvjW73yIdIi5NEnVNOrOH1PlaUWYIxIM,116
|
|
119
|
+
svc_infra/app/logging/add.py,sha256=MmOYRYbS4TiCb_EHVCop5tzgPBybEkJnnTqN_rrNzFc,2860
|
|
120
|
+
svc_infra/app/logging/filter.py,sha256=lPHUoCFoTP5AfwORCvwVe5z2Kltb0MwAXANwrcBAIdE,1992
|
|
121
|
+
svc_infra/app/logging/formats.py,sha256=2_ZzLRaPz1AHRjRQV2rca2JIzzA2OdIPY0oEkri5Qf8,4866
|
|
122
|
+
svc_infra/app/root.py,sha256=344EWBMJCduwzJ1BBo0yGAu15TkryuvOW4qBZ6Gk-8w,1635
|
|
123
|
+
svc_infra/billing/__init__.py,sha256=AdVxgBWibsz0xWk-Z91B7HecA-EhPMSRrXWIYPBgtMA,365
|
|
124
|
+
svc_infra/billing/async_service.py,sha256=-Kc6g9uDwqTfW8RoXxxgCoNmtH_03liF61K3nIBAz2s,4664
|
|
125
|
+
svc_infra/billing/jobs.py,sha256=Ht-Q3n6FtLI2hw33O_UxIsVHEym8tmm9SvzNqjEI9dg,8639
|
|
126
|
+
svc_infra/billing/models.py,sha256=TEvge5uWxJP7zTE_h9bv1N7El7H2apdLmtgthNsxdMk,6445
|
|
127
|
+
svc_infra/billing/quotas.py,sha256=-yPEAeUxyYqKS64wa8hwhY5v3LWepe-3SvgeeBvqshA,3475
|
|
128
|
+
svc_infra/billing/schemas.py,sha256=UjD5vRiHhYEBcit2sfbsHsiR5j-eZiXLREl6M465lio,926
|
|
129
|
+
svc_infra/billing/service.py,sha256=lXbdr75Ol5MHoDyZj8AlrAkKdzZysbxHRNklBv3pCjg,3798
|
|
130
|
+
svc_infra/bundled_docs/README.md,sha256=FqTieL4ADODxTnig8yehV2KdHX9bASDega52bjp5n70,338
|
|
131
|
+
svc_infra/bundled_docs/__init__.py,sha256=8_jF4fM-3Wf6j_mE4000_9AHcJ3tYZXO9hJY-pBEepM,63
|
|
132
|
+
svc_infra/bundled_docs/getting-started.md,sha256=JaMOgRUK_ajaX4SCtiE3GrhQ81wMwng6y46t0032ftU,210
|
|
133
|
+
svc_infra/cache/README.md,sha256=ZgIpmE0UVlGktp2nXUYv6FKJATCdkR_01v-GGxHN6Ao,10795
|
|
134
|
+
svc_infra/cache/__init__.py,sha256=e47ZPnKZSm3kRsslcX-sKnRbo5Ai0oFcuAHCRyVG3qI,1158
|
|
135
|
+
svc_infra/cache/add.py,sha256=o9QAf52Jvq3S88BAiSGKAY_fhwMCK249opYhvpx9T54,6038
|
|
136
|
+
svc_infra/cache/backend.py,sha256=cjc5RqiYMDNBlpGWZtWzmZAL8COwD1H_y0dpF27Ibsk,4387
|
|
137
|
+
svc_infra/cache/decorators.py,sha256=8xSLg8op-3JboTDD8Wk9MLmvA1XeEAKfeEOLfMfMm60,10268
|
|
138
|
+
svc_infra/cache/demo.py,sha256=-e9uG6EG5skmofP-XkCCg0d5NOYXmwqF3tfhmjf3UcY,2505
|
|
139
|
+
svc_infra/cache/keys.py,sha256=8A122Te4VI40-CpLazEPOBgibX62cyjwClM5SIFeYac,3978
|
|
140
|
+
svc_infra/cache/recache.py,sha256=X1n84j82T06qfwAMyEGJ_XgEKW5N9tJFVRwExd3-qGw,8861
|
|
141
|
+
svc_infra/cache/resources.py,sha256=RG4d54D8f_l8ioHM_YlcTNvNzMX-Dxil7Z6nGGvIrQo,7632
|
|
142
|
+
svc_infra/cache/tags.py,sha256=qa8SXZcnBTbtviwiCcGDUjcB27vWCwjy100L-DMuH-Y,1434
|
|
143
|
+
svc_infra/cache/ttl.py,sha256=_lWvNx1CTE4RcFEOUYkADd7_k4I13SLmtK0AMRUq2OM,1945
|
|
144
|
+
svc_infra/cache/utils.py,sha256=A5EuFSXl-8y38aDB7ZnYAdCF2qXQqE1Dro8PmF7SJtA,4878
|
|
145
|
+
svc_infra/cli/__init__.py,sha256=ZtEB9KLj9HYe1lRg3td-WDfi9QsHzdGB9j80y8bHJiA,1745
|
|
146
|
+
svc_infra/cli/__main__.py,sha256=5BjNuyet8AY-POwoF5rGt722rHQ7tJ0Vf0UFUfzzi-I,58
|
|
147
|
+
svc_infra/cli/cmds/__init__.py,sha256=dfnmAhH52k5qP9qqcd6zU7KlK3vmOPg-G2CE43vBzus,1876
|
|
148
|
+
svc_infra/cli/cmds/db/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
149
|
+
svc_infra/cli/cmds/db/nosql/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
150
|
+
svc_infra/cli/cmds/db/nosql/mongo/README.md,sha256=0u3XLeoBd0XQzXwwfEiFISMIij11TJ9iOGzrysBvsFk,1788
|
|
151
|
+
svc_infra/cli/cmds/db/nosql/mongo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
152
|
+
svc_infra/cli/cmds/db/nosql/mongo/mongo_cmds.py,sha256=vHNNLTNd5QbX598Th1azhflUHEjOmChzlEAj9yhWWLs,6142
|
|
153
|
+
svc_infra/cli/cmds/db/nosql/mongo/mongo_scaffold_cmds.py,sha256=r409kd7BUpQmKimJKWmj273Y_4J_FWnQAiiRHvYJcOk,4267
|
|
154
|
+
svc_infra/cli/cmds/db/ops_cmds.py,sha256=vfpl9JpZSUQ2bqM3LvDS2NM27Et2EteJOT76x-DiRcs,8429
|
|
155
|
+
svc_infra/cli/cmds/db/sql/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
156
|
+
svc_infra/cli/cmds/db/sql/alembic_cmds.py,sha256=hVxGRcSkCFKDTDPgpGgmP6JDYIb3iqCVPiMeEeeGbZg,10357
|
|
157
|
+
svc_infra/cli/cmds/db/sql/sql_export_cmds.py,sha256=9bjYXxvhcFAmYS3jbm171LdVo0JckhyK3ZXce92gAV0,2747
|
|
158
|
+
svc_infra/cli/cmds/db/sql/sql_scaffold_cmds.py,sha256=MKc_T_tY1Y_wQl7XTlq8GhYWMMI1q1_vcFZVPOEcNUg,4601
|
|
159
|
+
svc_infra/cli/cmds/docs/docs_cmds.py,sha256=qw0dD_EGlXJAq5JRs6l2_XTk8GILV8Iy7a8JmhyZa3A,4515
|
|
160
|
+
svc_infra/cli/cmds/dx/__init__.py,sha256=wQtl3-kOgoESlpVkjl3YFtqkOnQSIvVsOdutiaZFejM,197
|
|
161
|
+
svc_infra/cli/cmds/dx/dx_cmds.py,sha256=BbLfvo3ol2iwuge4o3-oLNmW7taufWhpWsCd-hOOlD0,3478
|
|
162
|
+
svc_infra/cli/cmds/health/__init__.py,sha256=ErUkvlEc8iomIfEmt54QgsgSV5uaUSraJdKbz2AETmw,4714
|
|
163
|
+
svc_infra/cli/cmds/health/health_cmds.py,sha256=LvhLmmYdrJ83fq3iPknZB8XsfJ4Ke8-0DJcgQNxwnfI,177
|
|
164
|
+
svc_infra/cli/cmds/help.py,sha256=a_U0MbzBTAs4WHO0e8GcdFwLUA8O5mzVXTxpyelhtiU,906
|
|
165
|
+
svc_infra/cli/cmds/jobs/__init__.py,sha256=U4S_2y3zgLZVfMenHRaJFBW8yqh2mUBuI291LGQVOJ8,35
|
|
166
|
+
svc_infra/cli/cmds/jobs/jobs_cmds.py,sha256=gE8osoFUd-kBYJXhFpbESVn2MJ7I1FNxiTA5VLmMzfc,1280
|
|
167
|
+
svc_infra/cli/cmds/obs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
168
|
+
svc_infra/cli/cmds/obs/obs_cmds.py,sha256=26hNVi7aOzM69DbiLhsBwgbZamrnvEwQRW3CHHQyTu8,6890
|
|
169
|
+
svc_infra/cli/cmds/sdk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
170
|
+
svc_infra/cli/cmds/sdk/sdk_cmds.py,sha256=UIkBvTiiPoMcHLuiEHBC8is4j0hInIoxNyIiR4J2Snk,2948
|
|
171
|
+
svc_infra/cli/foundation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
172
|
+
svc_infra/cli/foundation/runner.py,sha256=JK2LfSFQYA6IKM9Wp6xxZsagdvy-3AQr1xV_odZA948,1892
|
|
173
|
+
svc_infra/cli/foundation/typer_bootstrap.py,sha256=KapgH1R-qON9FuYH1KYlVx_5sJvjmAGl25pB61XCpm4,985
|
|
174
|
+
svc_infra/data/add.py,sha256=vHRawtaP8UZDejCI1nH1KRymnBhKrIKYmliSMQsaN6M,2240
|
|
175
|
+
svc_infra/data/backup.py,sha256=hTapimZAhuCqIpL019CuGwP8DUJSPvmqwGK6imZKUiQ,1670
|
|
176
|
+
svc_infra/data/erasure.py,sha256=fo_5N2jMB7Mdz5dy4oN0UI8xfkrWfc3aPVwyV1IqabI,1133
|
|
177
|
+
svc_infra/data/fixtures.py,sha256=1JgabNjK78BVz9jUGMmNknXnf0Rzv5J49StoXgtth7w,1239
|
|
178
|
+
svc_infra/data/retention.py,sha256=Xkc5BKpfZv5wGxEgdiV-vHKYGsdZe8VTEQTg-2Wn9tU,2014
|
|
179
|
+
svc_infra/db/__init__.py,sha256=CcDxjFJUG2Jm5TsiKw7TbtdFgpqplZtDu8piucdjboQ,280
|
|
180
|
+
svc_infra/db/crud_schema.py,sha256=ygyzvuWQT5Z8U6z-kUrQYxuyrsgOI681A31RoxB6anI,2468
|
|
181
|
+
svc_infra/db/inbox.py,sha256=drxLRLHaMRrCDgo_8wj12do80wDh5ssHV6LGkaM98no,1996
|
|
182
|
+
svc_infra/db/nosql/__init__.py,sha256=cYqfjg79Mv9z269L2_2zi1ydEHbmNYj2ERlhvzA4_CM,191
|
|
183
|
+
svc_infra/db/nosql/base.py,sha256=p47VVpwWvGNkyWe5RDSmGaUFyZovcyNqirMqoHFQ4QU,230
|
|
184
|
+
svc_infra/db/nosql/constants.py,sha256=Z9bJImxwb8D7vovASFegv8XMwaWcM28tsKJV2SjywXE,416
|
|
185
|
+
svc_infra/db/nosql/core.py,sha256=3MDbfKVZ5bWva-ks8Jpc62lMUQWON0DKbABVRQzPAC8,4984
|
|
186
|
+
svc_infra/db/nosql/indexes.py,sha256=EYHPeJbwffuwkZ751wTQWdJBGQjC8LEY6UzvY0gpDBk,2309
|
|
187
|
+
svc_infra/db/nosql/management.py,sha256=MLW7XgasEFXzwpprvRMAkZivhVv41wHnPiEURe9vfEU,3485
|
|
188
|
+
svc_infra/db/nosql/mongo/README.md,sha256=rFGck7VMGOMh9PZ8KkgDbxzZfbsWAoTJg5UWGlvK4oM,11687
|
|
189
|
+
svc_infra/db/nosql/mongo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
190
|
+
svc_infra/db/nosql/mongo/client.py,sha256=bl6Xw9f100NHAXeQ4IAiwmVq4W2sF7MIfJywP_27lWQ,1838
|
|
191
|
+
svc_infra/db/nosql/mongo/settings.py,sha256=SPRyHQXpZomFWRW1yn9AgednVFXhZvwi3mS1XUzhaiw,578
|
|
192
|
+
svc_infra/db/nosql/mongo/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
193
|
+
svc_infra/db/nosql/mongo/templates/documents.py.tmpl,sha256=QgXaZK9fCzRTdDITijMCvFREPrdwhe_8yfD7ht-AJgs,673
|
|
194
|
+
svc_infra/db/nosql/mongo/templates/resources.py.tmpl,sha256=eVCZ43WvjdrDbXuB2behxuDg8bB2kyeED0c-LpKnjC4,1463
|
|
195
|
+
svc_infra/db/nosql/mongo/templates/schemas.py.tmpl,sha256=ovHotwcEl06pjPDyT2pkWgF19mWIsyO75nFt1qvLsqo,841
|
|
196
|
+
svc_infra/db/nosql/repository.py,sha256=ACH_YWmWC7pUKWg6rVu7ANmc_sAU7rMmatqEtCgAWso,7722
|
|
197
|
+
svc_infra/db/nosql/resource.py,sha256=FRBOZArvvlYpP4kO98Oq9YiQR9iihCqGhaeVGJgB5pA,2963
|
|
198
|
+
svc_infra/db/nosql/scaffold.py,sha256=nSbqHTm_weeuwa6Iw3Caxr8gyr_LxeRea5I1Eqd9XBA,4851
|
|
199
|
+
svc_infra/db/nosql/service.py,sha256=w1tfnsdzjCBOyNx9PK1AEvhCX0awDmEzPznz9oeXZXg,1746
|
|
200
|
+
svc_infra/db/nosql/service_with_hooks.py,sha256=rNH6renb-ppc8Y07jX5eSQnkkhJct2IZCq7mM9aBb48,747
|
|
201
|
+
svc_infra/db/nosql/types.py,sha256=aysF0wYqnWPue0gspWsrLRQFrm47jJ04qCWlOTlYVl4,850
|
|
202
|
+
svc_infra/db/nosql/utils.py,sha256=3u7X8WEPO1Cwy1SmZHmFMMbDfu1HhapJUAFbSMe3J9g,3524
|
|
203
|
+
svc_infra/db/ops.py,sha256=SmVHlandssC-iuAvbnmE3ifHJAovj2eiMk0SsinVSiA,11690
|
|
204
|
+
svc_infra/db/outbox.py,sha256=51LG_-473XGyQrnBmjTuK6nwOuci8iGzgVW77BnCnaA,3391
|
|
205
|
+
svc_infra/db/sql/README.md,sha256=OI1T7SiY4_f0eTWQGtIeUsgkFqzvloh1vctOm6nvIvU,8581
|
|
206
|
+
svc_infra/db/sql/__init__.py,sha256=PkDutfhzofY0jbE83ZuxbrvXhogvP1tmk5MniyfwQws,159
|
|
207
|
+
svc_infra/db/sql/apikey.py,sha256=ImXAiIG0D5mf7IRpjnVYX7vpd1wewDvy6GU3fcRpLtg,5396
|
|
208
|
+
svc_infra/db/sql/authref.py,sha256=ppZ7a__Jkauk2o3-qM-fut0tKfOGVan1mb6qxDUVDwM,2277
|
|
209
|
+
svc_infra/db/sql/base.py,sha256=yeOM4Xo2CtTzsfx0hN8KLFTgOPZp6BrbV7Omz_bZUMg,317
|
|
210
|
+
svc_infra/db/sql/constants.py,sha256=m73w8M1kjHHuFZo_yo57QKyU5tb0dgFNHR4a4RPwdi4,1883
|
|
211
|
+
svc_infra/db/sql/core.py,sha256=XvOecKKIXaOv1Cvyf2v-yNHcbiV9LrtplucPi0mki3U,10882
|
|
212
|
+
svc_infra/db/sql/management.py,sha256=_GIOlVn4YlGfVw-_9FgkYbkpLPlfWlHeveD0ylf1r9A,3694
|
|
213
|
+
svc_infra/db/sql/repository.py,sha256=DPi6OLRVWKKLpbav86aUMlmgzoobi5BaV5Rg6UuKQus,8137
|
|
214
|
+
svc_infra/db/sql/resource.py,sha256=CfBmRvMq_1-cgYBS9uc_G4i1W5e6wk6zo4MGdKTPT9I,1194
|
|
215
|
+
svc_infra/db/sql/scaffold.py,sha256=6DwCnc78v1JwmTqSyl31PEaF3skgxC1G-vqpu07NErI,9139
|
|
216
|
+
svc_infra/db/sql/service.py,sha256=_bWcG4Z0-eWTqT12J0Yo-WBzgoCidLe6TWqeEm2OjaI,2916
|
|
217
|
+
svc_infra/db/sql/service_with_hooks.py,sha256=E2VHC-nqDp3AAop37WIM9nWyfTOsxzsa7W6jCFWxl9Q,721
|
|
218
|
+
svc_infra/db/sql/templates/__init__.py,sha256=atHi2TYS0oe8ZzUv2JIMSYdPduuyvu8RcOQASo7SqwM,48
|
|
219
|
+
svc_infra/db/sql/templates/models_schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
220
|
+
svc_infra/db/sql/templates/models_schemas/auth/models.py.tmpl,sha256=ROR13DZETuDOTrIXqb0XIdJeK-FMLkkfMor2lMMw-Kw,7573
|
|
221
|
+
svc_infra/db/sql/templates/models_schemas/auth/schemas.py.tmpl,sha256=EVLGBBtQIlYXz0MN4yqAgbYLw0BdYawpZSFlPiw879g,2872
|
|
222
|
+
svc_infra/db/sql/templates/models_schemas/entity/models.py.tmpl,sha256=cSUAfYgATv2SI0NQoHkn9Bzvt7RbOZ3_V8_p_VQsNMk,4349
|
|
223
|
+
svc_infra/db/sql/templates/models_schemas/entity/schemas.py.tmpl,sha256=xHTXk8u2uiqmQe8XpXjGAPg8pDpdr0rLtsSOC_fo9vo,1032
|
|
224
|
+
svc_infra/db/sql/templates/setup/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
225
|
+
svc_infra/db/sql/templates/setup/alembic.ini.tmpl,sha256=7SHSOyUq9S7XqVdKpWLJW7gIWadv58t4AIooa306gDo,771
|
|
226
|
+
svc_infra/db/sql/templates/setup/env_async.py.tmpl,sha256=yJyf4zw5fHaHOvurfFJb-XEqEArlnOksMNeGWgo-7dc,13908
|
|
227
|
+
svc_infra/db/sql/templates/setup/env_sync.py.tmpl,sha256=EiH8OS9uN-6IUT4p-XtmziqSwbq6-NjoojW9X6o1NSo,15357
|
|
228
|
+
svc_infra/db/sql/templates/setup/script.py.mako.tmpl,sha256=RiEMqF6dTN0S_lSRr90w5K2VtyK0_C81kBPZ02qQDZU,588
|
|
229
|
+
svc_infra/db/sql/tenant.py,sha256=Nynwr-yOQsaLYYsJ9CG3n2G4zGouCCBurtqGaS31nqk,2865
|
|
230
|
+
svc_infra/db/sql/types.py,sha256=aDcYS-lEb3Aw9nlc8D67wyS5rmE9ZOkblxPjPFbMM_0,863
|
|
231
|
+
svc_infra/db/sql/uniq.py,sha256=IxW7SpgOTcHEAMe2oaDnuYFvj7YOfyjCpZRXdR45yP8,2530
|
|
232
|
+
svc_infra/db/sql/uniq_hooks.py,sha256=syGj0-5URdI0268i77yFi1h-8TpA4sLDI6LGuSwpTcY,4384
|
|
233
|
+
svc_infra/db/sql/utils.py,sha256=1Bm-d67J6y5zNDEF3Usjl6Ld9oecW0oQjGoxWRhjxDk,35267
|
|
234
|
+
svc_infra/db/sql/versioning.py,sha256=okZu2ad5RAFXNLXJgGpcQvZ5bc6gPjRWzwiBT0rEJJw,400
|
|
235
|
+
svc_infra/db/utils.py,sha256=aTD49VJSEu319kIWJ1uijUoP51co4lNJ3S0_tvuyGio,802
|
|
236
|
+
svc_infra/deploy/__init__.py,sha256=xYD12eNWuOr9WWlvqFscjosCNQejvodwKGCYQiT1CwM,14863
|
|
237
|
+
svc_infra/documents/__init__.py,sha256=eTzJHwjeKxVG9VyVtECOVlZ2E0EyUQx8w7Ll8FWXHiA,2853
|
|
238
|
+
svc_infra/documents/add.py,sha256=Cyx1BdGw1PgVJOCsdJ4l4jBN01sF_HQZUug7kQvLIf0,7974
|
|
239
|
+
svc_infra/documents/ease.py,sha256=hMf7RJ_eCzwbvJH2DRlHtqZXeO1ylw8ZT1pEVMHfIGw,6266
|
|
240
|
+
svc_infra/documents/models.py,sha256=2emkuEUoPnRUV08sqJFxCshSs2vPUE15ZIbgCdaYUjM,4378
|
|
241
|
+
svc_infra/documents/storage.py,sha256=yJ2tf2AmHcFLqmeZamE6neuTDXMVZgvXHr3RFxNXC7M,7371
|
|
242
|
+
svc_infra/dx/add.py,sha256=5hcAKMp1JVq4GK3ERvSmBDiqQDN_xRDxdRLHnI5gVUM,1480
|
|
243
|
+
svc_infra/dx/changelog.py,sha256=9SD29ZzKzbGTA6kHQXiPLtb7uueL1wrRiiLE2qMzz8o,1941
|
|
244
|
+
svc_infra/dx/checks.py,sha256=iB2PUJP7bO31yj79MktrnerfR2yeLGZAnipEZY74mzc,2328
|
|
245
|
+
svc_infra/exceptions.py,sha256=_-1rIQB6OIbQNflzOHEksB5zF12pmapeklRjnxsQoIE,3852
|
|
246
|
+
svc_infra/health/__init__.py,sha256=etHNGsKYhArEF9C-dw7Nw-NGFlpZY_qzfEgglKx0wHk,27513
|
|
247
|
+
svc_infra/http/__init__.py,sha256=K79-aGyq_JdsxhyxispQlnygvf9LhU0_NJQcFYlWB9I,249
|
|
248
|
+
svc_infra/http/client.py,sha256=2ctGzjc5sKww-mbNLSujEb2lCMfiFEKTppMmhGvloA8,3659
|
|
249
|
+
svc_infra/jobs/builtins/outbox_processor.py,sha256=GlKuTC4Lt8yLYnCLokLBEPXHWRVNw3tQNzMu8Uas_qA,1269
|
|
250
|
+
svc_infra/jobs/builtins/webhook_delivery.py,sha256=TKvtpFWw2GLtfi16vSytptbjeAaROA6lHMhfKEIXyxQ,3769
|
|
251
|
+
svc_infra/jobs/easy.py,sha256=tL8UYvpYoqNDo_uLH5LF-7sBSyLEsH_JnBF_xbSU29c,997
|
|
252
|
+
svc_infra/jobs/loader.py,sha256=zz-dB2hlrjWI-YIbqQuY-ux912m5CiUHYezGn1y3DZQ,1286
|
|
253
|
+
svc_infra/jobs/queue.py,sha256=fwHlx-exujSIAAWONLLM8TKyHjr_PBq_1XaOR16LhhQ,3722
|
|
254
|
+
svc_infra/jobs/redis_queue.py,sha256=04xOPfOz-TrEk2Xjvn3eUkLqMNVK1YJSQzwtvxGY13s,10204
|
|
255
|
+
svc_infra/jobs/runner.py,sha256=b-vOW-mkuo-7VsEe3-EiQ7FR_CwRAMPTcJhej8inh88,2798
|
|
256
|
+
svc_infra/jobs/scheduler.py,sha256=KMvS3Jh9nYZZtV5llyDWwZ92-F3ePZhT58gopUdWh00,1590
|
|
257
|
+
svc_infra/jobs/worker.py,sha256=_Xfnhot3WOpDJNtCO5mSds-10sN1Ye2ltDBo_WZ2VpY,1099
|
|
258
|
+
svc_infra/loaders/__init__.py,sha256=KHhV8kWVskOLCS9KAcmR-VHdjU29u0zGTJcMQTrTIDQ,5523
|
|
259
|
+
svc_infra/loaders/base.py,sha256=D5akMTVD7Hnz2kgabSS8gvskIQnwvoJRVLqbXbK3KFQ,4360
|
|
260
|
+
svc_infra/loaders/github.py,sha256=1D6y0Z_FhASTGWbqLJWoLF1bT7OEOeUv1hGuFRSd4aM,11157
|
|
261
|
+
svc_infra/loaders/models.py,sha256=Yb5XVUS8Nv47P1KBkwuq3zED2W-jJ80mVDeSvGbralw,4913
|
|
262
|
+
svc_infra/loaders/url.py,sha256=2PwJfqVfxgA5hf01JUqqhG5KcrZrzTMXukbS1YYFzyo,8208
|
|
263
|
+
svc_infra/logging/__init__.py,sha256=Nd83GtYOXKMoGhpwhjV_XY0GH3Fit6Vr4CDIeM2HtGM,11212
|
|
264
|
+
svc_infra/mcp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
265
|
+
svc_infra/mcp/svc_infra_mcp.py,sha256=HLZCtCOO6siSFz84FKVs4_sJdL2XSoNfdJuFvEB_6zw,3582
|
|
266
|
+
svc_infra/obs/README.md,sha256=pmd6AyFZW3GCCi0sr3uTHrPj5KgAI8rrXw8QPkrf1R8,8021
|
|
267
|
+
svc_infra/obs/__init__.py,sha256=t5DgkiuuhHnfAHChzYqCI1-Fpr68iQ0A1nHOLFIlAuM,75
|
|
268
|
+
svc_infra/obs/add.py,sha256=B1RjxaGRRfUqgSeY2VupUKNBl7KiZHdfGPU5YLzd1_8,4167
|
|
269
|
+
svc_infra/obs/cloud_dash.py,sha256=Y6qJheAVo2dMV-3frISOzZwhffu6yraWVYf44BrtgoE,4380
|
|
270
|
+
svc_infra/obs/grafana/dashboards/http-overview.json,sha256=WVwkMazdfRAAUdLwGItfzePL9sXuDdhlLVbOLtk1Vic,1042
|
|
271
|
+
svc_infra/obs/metrics/__init__.py,sha256=cb86qOob-RzE-272AoBeZyfZHyde3D6QTcFYTHeYL1g,1420
|
|
272
|
+
svc_infra/obs/metrics/asgi.py,sha256=yIC9K3QA1t9IXKIUkt6d-dSpzpYJoRUT57YzyydS6zU,8999
|
|
273
|
+
svc_infra/obs/metrics/base.py,sha256=IHpNJk12whfBEerW9Qkj2fV5Iiw_H-Od4gqPcdOVWNs,2649
|
|
274
|
+
svc_infra/obs/metrics/http.py,sha256=Bbi5hY6yxgLYiDZnSWxM0WPz8y8I_xzm_dOptkNMIK4,3018
|
|
275
|
+
svc_infra/obs/metrics/sqlalchemy.py,sha256=nDyVY-nejOXe1jJyw-aX4FIIvAxr0oERewMFoieYvsc,2562
|
|
276
|
+
svc_infra/obs/metrics.py,sha256=V3yG9ftEsOc3W8rx-mZVIjqtsvY3Pf2OI43PwANvSzs,1475
|
|
277
|
+
svc_infra/obs/providers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
278
|
+
svc_infra/obs/providers/compose_cloud/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
279
|
+
svc_infra/obs/providers/compose_cloud/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
280
|
+
svc_infra/obs/providers/compose_cloud/templates/agent.yaml.tmpl,sha256=hYv35yG92XEP_4joMFmMcVTD-4fG_zHitmChjreUJh4,516
|
|
281
|
+
svc_infra/obs/providers/compose_cloud/templates/docker-compose.cloud.yml.tmpl,sha256=zEXb_4hvoU7P24QzgrC6OopVlabxM6fqSES-X-6IoEg,910
|
|
282
|
+
svc_infra/obs/providers/grafana/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
283
|
+
svc_infra/obs/providers/grafana/dashboards/00_overview.json,sha256=nQneJP-dV_BTfkrLm8411dKSQnzkfIJ7GWackyYMjA4,5653
|
|
284
|
+
svc_infra/obs/providers/grafana/dashboards/10_http.json,sha256=r801Y9_DUreN8ZRTqxghVBcq4ogj1-F3zI0q7T06__g,2675
|
|
285
|
+
svc_infra/obs/providers/grafana/dashboards/20_db.json,sha256=BJcC5o26HF4aKpp7R4WxSWXEpVkKTT8MgFYnoFmfUIY,1439
|
|
286
|
+
svc_infra/obs/providers/grafana/dashboards/30_runtime.json,sha256=y2j2XGuiIviL3UqcUBJfpxJ9nLni2Uk7phILoSlv5Eg,1509
|
|
287
|
+
svc_infra/obs/providers/grafana/dashboards/40_clients.json,sha256=cjCxJfoKC7LguXeJ1UGbqzLym10prnA2gCovHfRTUjU,755
|
|
288
|
+
svc_infra/obs/providers/grafana/dashboards/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
289
|
+
svc_infra/obs/providers/grafana/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
290
|
+
svc_infra/obs/providers/grafana/templates/docker-compose.yml.tmpl,sha256=9s9Q6BXqxSIOzoZG_yVMipne0bmAUM3IwfRfhnbf-C4,907
|
|
291
|
+
svc_infra/obs/providers/grafana/templates/prometheus.yml.tmpl,sha256=0ZFWPz4zPbFJxYONVB9fGf0ikvWA7YKOJ1nT4ANwg20,388
|
|
292
|
+
svc_infra/obs/providers/grafana/templates/provisioning/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
293
|
+
svc_infra/obs/providers/grafana/templates/provisioning/dashboards.yml,sha256=S3uvSPMPB2W2XDcfux-AXV4M_OFqsZZE0Y3BCkTHDOg,230
|
|
294
|
+
svc_infra/obs/providers/grafana/templates/provisioning/datasource.yml,sha256=-p45t2EiFGY4tiaczRX7zvdYZ8oBiE4uxu_4tZ11G1g,173
|
|
295
|
+
svc_infra/obs/settings.py,sha256=Z3BbYJ_NGwTPiRFW6hOJ3yW-eWt-UnYUTnUyFX6pkoA,872
|
|
296
|
+
svc_infra/obs/templates/grafana_dashboard.json,sha256=T3gOpf8oy5p8ogkdFYa3HE3J-ylcsys1jsb7F-qZ1Sk,1460
|
|
297
|
+
svc_infra/obs/templates/prometheus_rules.yml,sha256=VcFQ0Pcuxcjb1i50bsi-aWYQBg4xr9M2Ed0_Ciaw1M0,1014
|
|
298
|
+
svc_infra/obs/templates/sidecars/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
299
|
+
svc_infra/obs/templates/sidecars/compose/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
300
|
+
svc_infra/obs/templates/sidecars/compose/agent.yaml,sha256=hYv35yG92XEP_4joMFmMcVTD-4fG_zHitmChjreUJh4,516
|
|
301
|
+
svc_infra/obs/templates/sidecars/compose/docker-compose.yml,sha256=zEXb_4hvoU7P24QzgrC6OopVlabxM6fqSES-X-6IoEg,910
|
|
302
|
+
svc_infra/obs/templates/sidecars/fly/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
303
|
+
svc_infra/obs/templates/sidecars/fly/agent.yaml,sha256=hYv35yG92XEP_4joMFmMcVTD-4fG_zHitmChjreUJh4,516
|
|
304
|
+
svc_infra/obs/templates/sidecars/fly/fly.toml.fragment,sha256=KHaU9xIxj9w-nzLy4BVWmXg8ExbWjAO6o4X-k2QxPgc,498
|
|
305
|
+
svc_infra/obs/templates/sidecars/k8s/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
306
|
+
svc_infra/obs/templates/sidecars/k8s/configmap.yaml,sha256=Eew_EdckhcpmHYFDX-6o57gmg0E9PrPfD-q8ypr6Kgc,644
|
|
307
|
+
svc_infra/obs/templates/sidecars/k8s/deployment.yaml,sha256=uK47jXluJyoYnfXX13fUf1QyFfSUASiAo8dp7Ad6jiQ,1344
|
|
308
|
+
svc_infra/obs/templates/sidecars/railway/Dockerfile,sha256=Y4iLDmBmm2bkIqPlC0vYwJr8Q1r9_ehR16PWzYpSnAI,151
|
|
309
|
+
svc_infra/obs/templates/sidecars/railway/README.md,sha256=3tFBJPKvmxjg3FjtfGYLwBEuyMrHbAluBc7XkXb7XVM,292
|
|
310
|
+
svc_infra/obs/templates/sidecars/railway/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
311
|
+
svc_infra/obs/templates/sidecars/railway/agent.yaml,sha256=hYv35yG92XEP_4joMFmMcVTD-4fG_zHitmChjreUJh4,516
|
|
312
|
+
svc_infra/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
313
|
+
svc_infra/security/add.py,sha256=wku6M1xJjdb-EVJ7BYUBuOMM70NNEpW9KIFCwPPTMo0,6681
|
|
314
|
+
svc_infra/security/audit.py,sha256=NMoMy53LMBMOQJz2-FLwgfCUgeyG57IZMQEMdBOPXl8,6271
|
|
315
|
+
svc_infra/security/audit_service.py,sha256=74pWcn9WVkTMJDSt_49v940-zpdUXDFUj4XVdSJx09s,2349
|
|
316
|
+
svc_infra/security/headers.py,sha256=CcdNC1j14oj6LS8-TMW2K-l7LIfXYlL12mw8R32b2R0,2074
|
|
317
|
+
svc_infra/security/hibp.py,sha256=l3u_7WXqg2-UchwrE21q9ty2syWRp1wHA5gbHg8qMcI,3050
|
|
318
|
+
svc_infra/security/jwt_rotation.py,sha256=YECgFHqkedtptNePu3s-txez7Gb9_v-rzgH99YIbqWE,3434
|
|
319
|
+
svc_infra/security/lockout.py,sha256=Ppu6CCguKgk2plbTXxgMQGZHd5d2MGDDWmqw5O3Y-lY,3095
|
|
320
|
+
svc_infra/security/models.py,sha256=jhN9uGpD5dj22_W26zagRdpzVcF1_AB5UiuzoMIVNxk,10178
|
|
321
|
+
svc_infra/security/oauth_models.py,sha256=mK2ayy9a8ylvacfY4ENaFIVnJVnNot6QcIjNpxcLMTw,2260
|
|
322
|
+
svc_infra/security/org_invites.py,sha256=4NSwUsFa3jkv-AA99pPhagnsSB_ctOIpNp2k07nr8Uo,3919
|
|
323
|
+
svc_infra/security/passwords.py,sha256=Otg2TyCANQuZsyypJ9a-OcDwd1d4L4M6CKjdIidJFHc,2481
|
|
324
|
+
svc_infra/security/permissions.py,sha256=C0fbG6T2iQ2RPv37v3Mjl4lUmgLUgAcOZixFWgdSwRA,5237
|
|
325
|
+
svc_infra/security/session.py,sha256=ogzO15QkyuLZT2ZrGj3iyISEV-wBVYrLsHkdk7iAj3s,2865
|
|
326
|
+
svc_infra/security/signed_cookies.py,sha256=9v2FjVu-2YWoMhnUayivLv-jfFGguBBoyVRGZ4FOdxo,3191
|
|
327
|
+
svc_infra/storage/__init__.py,sha256=M_djbln1nv1YhOANHu_XZDi_fZ37hTnp2qMXiHYOlJo,2828
|
|
328
|
+
svc_infra/storage/add.py,sha256=7vOIPY2vR144TbrN5pJbwK5vC9syWH7Zr3AA9hJugx8,8308
|
|
329
|
+
svc_infra/storage/backends/__init__.py,sha256=zlbPU7TbDKg-VhWSZaRA-qTHfD17bx-ZQ445kDqlB-o,205
|
|
330
|
+
svc_infra/storage/backends/local.py,sha256=3oB0d3xrfy8yl6FSUuXvHLH8QbvCWOAiy2rn8d6F-CA,10776
|
|
331
|
+
svc_infra/storage/backends/memory.py,sha256=azTNs5qheCMnQ52hEif-n9xL-JAU6bUdgdXGSRfid0M,6489
|
|
332
|
+
svc_infra/storage/backends/s3.py,sha256=ATE_5yAu0w7R_uRIOPeQqz4lJQlAOYc12lOphhe4D2k,11607
|
|
333
|
+
svc_infra/storage/base.py,sha256=l6BmP9TVAwCZbjHtXaaLSnCSvYzTAx0Du2zadnQRmmg,6225
|
|
334
|
+
svc_infra/storage/easy.py,sha256=IRDWF0JMvhmp0itV4lJaVi3c0LWUPs_TyLNbZbkNm04,6182
|
|
335
|
+
svc_infra/storage/settings.py,sha256=Z0aU8mzzj1XGVkesMWB1YDgq1Uibac4Qhot5u95s84o,6715
|
|
336
|
+
svc_infra/testing/__init__.py,sha256=Gc7uUhjj9nuwoC9YV7xmdNQsdu1iYB9X0Bd0z1Vlb2k,18800
|
|
337
|
+
svc_infra/utils.py,sha256=l8RpKnsvRdOPPID_tZY3TyQkj_aQzs847Nrp-Goykto,977
|
|
338
|
+
svc_infra/webhooks/__init__.py,sha256=SBHcDPct877QvoQwe2cnm27R04a3G2sa51Ak2akvV08,1992
|
|
339
|
+
svc_infra/webhooks/add.py,sha256=Wc2BYJo0Xrd_0zZOhd0Gz3-VP_R1T34kNP1eGk5hi_k,12745
|
|
340
|
+
svc_infra/webhooks/encryption.py,sha256=y9fv66hGH8JaO59tVXNHe3FwnTNLbTNZQN8FY_euqq0,3598
|
|
341
|
+
svc_infra/webhooks/fastapi.py,sha256=AVq8zPCDPMC_N9x4zUhhLH-mBUy_9RNUhwwBndPGrkY,1131
|
|
342
|
+
svc_infra/webhooks/router.py,sha256=6JvAVPMEth_xxHX-IsIOcyMgHX7g1H0OVxVXKLuMp9w,1596
|
|
343
|
+
svc_infra/webhooks/service.py,sha256=OyWMz6pDK6pWuRsboH3V1jtkaZEeDb3ToUau0qyPkas,2417
|
|
344
|
+
svc_infra/webhooks/signing.py,sha256=4H4rbwBTuS9hGZjpLLeWIPi8kkwGrr62LQCCOidf2TE,913
|
|
345
|
+
svc_infra/websocket/__init__.py,sha256=W7Q78rr2IfMWoJd4b2Nw2hSexISegtD6KIbZ8y41xds,2243
|
|
346
|
+
svc_infra/websocket/add.py,sha256=kP5JETRyT5J38pjA_-4QZ26gx-tDeZV2ErNbE9J5XqY,4208
|
|
347
|
+
svc_infra/websocket/client.py,sha256=oJZ9zMkpWJqDjfG0scV4IWhAY-HeelaUV1sxvUOw-u4,9358
|
|
348
|
+
svc_infra/websocket/config.py,sha256=ECBicNItzQ80TaL4msB9VAHlTK23sspg8lwg-4WUhuI,2568
|
|
349
|
+
svc_infra/websocket/easy.py,sha256=ACe594T4l_nwqagOZsotAkuK0ocZ5JJdwGRE8ALhWRU,2077
|
|
350
|
+
svc_infra/websocket/exceptions.py,sha256=cbJMXhL1dW-tibhuTtR_RGlI_8KLFsrUu-n2HXyNczU,1566
|
|
351
|
+
svc_infra/websocket/manager.py,sha256=wIZ668goPONhK_Grfo8-APwHSQc8aaBcslA4UnewfUI,10918
|
|
352
|
+
svc_infra/websocket/models.py,sha256=SVY6owOiy2hDpUsu5mk9f7qSy371gHbmZkWcJI56qUs,1512
|
|
353
|
+
svc_infra-0.1.706.dist-info/LICENSE,sha256=_tWnB6zcItk5i81sT6mv6mErTI-29rXngzXYgS-efco,1062
|
|
354
|
+
svc_infra-0.1.706.dist-info/METADATA,sha256=QBC03QuF2JgnF__yUrG6Vqz0ty_hwMNrWHyCVpoukMA,12397
|
|
355
|
+
svc_infra-0.1.706.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
|
|
356
|
+
svc_infra-0.1.706.dist-info/entry_points.txt,sha256=6x_nZOsjvn6hRZsMgZLgTasaCSKCgAjsGhACe_CiP0U,48
|
|
357
|
+
svc_infra-0.1.706.dist-info/RECORD,,
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.3
|
|
2
|
-
Name: svc-infra
|
|
3
|
-
Version: 0.1.589
|
|
4
|
-
Summary: Infrastructure for building and deploying prod-ready services
|
|
5
|
-
License: MIT
|
|
6
|
-
Keywords: fastapi,sqlalchemy,alembic,auth,infra,async,pydantic
|
|
7
|
-
Author: Ali Khatami
|
|
8
|
-
Author-email: aliikhatami94@gmail.com
|
|
9
|
-
Requires-Python: >=3.11,<4.0
|
|
10
|
-
Classifier: Development Status :: 4 - Beta
|
|
11
|
-
Classifier: Framework :: FastAPI
|
|
12
|
-
Classifier: Intended Audience :: Developers
|
|
13
|
-
Classifier: License :: OSI Approved :: MIT License
|
|
14
|
-
Classifier: Programming Language :: Python :: 3
|
|
15
|
-
Classifier: Programming Language :: Python :: 3.11
|
|
16
|
-
Classifier: Programming Language :: Python :: 3.12
|
|
17
|
-
Classifier: Programming Language :: Python :: 3.13
|
|
18
|
-
Classifier: Programming Language :: Python :: 3 :: Only
|
|
19
|
-
Classifier: Typing :: Typed
|
|
20
|
-
Provides-Extra: duckdb
|
|
21
|
-
Provides-Extra: metrics
|
|
22
|
-
Provides-Extra: mssql
|
|
23
|
-
Provides-Extra: mysql
|
|
24
|
-
Provides-Extra: pg
|
|
25
|
-
Provides-Extra: pg2
|
|
26
|
-
Provides-Extra: redshift
|
|
27
|
-
Provides-Extra: snowflake
|
|
28
|
-
Provides-Extra: sqlite
|
|
29
|
-
Requires-Dist: ai-infra (>=0.1.63,<0.2.0)
|
|
30
|
-
Requires-Dist: aiosqlite (>=0.20.0,<0.21.0) ; extra == "sqlite"
|
|
31
|
-
Requires-Dist: alembic (>=1.13.2,<2.0.0)
|
|
32
|
-
Requires-Dist: asyncpg (>=0.30.0,<0.31.0) ; extra == "pg"
|
|
33
|
-
Requires-Dist: authlib (>=1.6.2,<2.0.0)
|
|
34
|
-
Requires-Dist: cashews[redis] (>=7.4.1,<8.0.0)
|
|
35
|
-
Requires-Dist: duckdb (>=1.1.3,<2.0.0) ; extra == "duckdb"
|
|
36
|
-
Requires-Dist: email-validator (>=2.2.0,<3.0.0)
|
|
37
|
-
Requires-Dist: fastapi (>=0.116.1,<0.117.0)
|
|
38
|
-
Requires-Dist: fastapi-users-db-sqlalchemy (>=7.0.0,<8.0.0)
|
|
39
|
-
Requires-Dist: fastapi-users[oauth] (>=14.0.1,<15.0.0)
|
|
40
|
-
Requires-Dist: greenlet (>=3,<4)
|
|
41
|
-
Requires-Dist: httpx (>=0.28.1,<0.29.0)
|
|
42
|
-
Requires-Dist: httpx-oauth (>=0.16.1,<0.17.0)
|
|
43
|
-
Requires-Dist: itsdangerous (>=2.2.0,<3.0.0)
|
|
44
|
-
Requires-Dist: mcp (>=1.13.0,<2.0.0)
|
|
45
|
-
Requires-Dist: motor (>=3.7.1,<4.0.0)
|
|
46
|
-
Requires-Dist: mysqlclient (>=2.2.4,<3.0.0) ; extra == "mysql"
|
|
47
|
-
Requires-Dist: opentelemetry-exporter-otlp (>=1.36.0,<2.0.0)
|
|
48
|
-
Requires-Dist: opentelemetry-instrumentation-fastapi (>=0.57b0,<0.58)
|
|
49
|
-
Requires-Dist: opentelemetry-instrumentation-httpx (>=0.57b0,<0.58)
|
|
50
|
-
Requires-Dist: opentelemetry-instrumentation-requests (>=0.57b0,<0.58)
|
|
51
|
-
Requires-Dist: opentelemetry-instrumentation-sqlalchemy (>=0.57b0,<0.58)
|
|
52
|
-
Requires-Dist: opentelemetry-propagator-b3 (>=1.36.0,<2.0.0)
|
|
53
|
-
Requires-Dist: opentelemetry-sdk (>=1.36.0,<2.0.0)
|
|
54
|
-
Requires-Dist: passlib[bcrypt] (>=1.7.4,<2.0.0)
|
|
55
|
-
Requires-Dist: pre-commit (>=4.3.0,<5.0.0)
|
|
56
|
-
Requires-Dist: prometheus-client (>=0.22.1,<0.23.0) ; extra == "metrics"
|
|
57
|
-
Requires-Dist: psycopg2-binary (>=2.9.10,<3.0.0) ; extra == "pg2"
|
|
58
|
-
Requires-Dist: psycopg[binary] (>=3.2.10,<4.0.0) ; extra == "pg"
|
|
59
|
-
Requires-Dist: pydantic-settings (>=2.10.1,<3.0.0)
|
|
60
|
-
Requires-Dist: pymysql (>=1.1.1,<2.0.0) ; extra == "mysql"
|
|
61
|
-
Requires-Dist: pyodbc (>=5.1.0,<6.0.0) ; extra == "mssql"
|
|
62
|
-
Requires-Dist: pyotp (>=2.9.0,<3.0.0)
|
|
63
|
-
Requires-Dist: python-dotenv (>=1.1.1,<2.0.0)
|
|
64
|
-
Requires-Dist: redis (>=6.4.0,<7.0.0)
|
|
65
|
-
Requires-Dist: redshift-connector (>=2.0.918,<3.0.0) ; extra == "redshift"
|
|
66
|
-
Requires-Dist: snowflake-connector-python (>=3.12.0,<4.0.0) ; extra == "snowflake"
|
|
67
|
-
Requires-Dist: sqlalchemy[asyncio] (>=2.0.43,<3.0.0)
|
|
68
|
-
Requires-Dist: stripe (>=13.0.1,<14.0.0)
|
|
69
|
-
Requires-Dist: typer (>=0.16.1,<0.17.0)
|
|
70
|
-
Project-URL: Documentation, https://github.com/your-org/svc-infra#readme
|
|
71
|
-
Project-URL: Homepage, https://github.com/your-org/svc-infra
|
|
72
|
-
Project-URL: Issues, https://github.com/your-org/svc-infra/issues
|
|
73
|
-
Project-URL: Repository, https://github.com/your-org/svc-infra
|
|
74
|
-
Description-Content-Type: text/markdown
|
|
75
|
-
|
|
76
|
-
# svc-infra
|
|
77
|
-
|
|
78
|
-
Will add description later.
|
|
79
|
-
|