mainsequence-metatable 0.1.8.dev11__tar.gz → 0.1.8.dev13__tar.gz
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.
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/.agents/skills/client/metatables-migrations/SKILL.md +42 -8
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/.agents/skills/client/metatables-upgrade-legacy-app/SKILL.md +26 -4
- {mainsequence_metatable-0.1.8.dev11/src/mainsequence_metatable.egg-info → mainsequence_metatable-0.1.8.dev13}/PKG-INFO +1 -1
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/adr/api/0014-main-sequence-release-jobs-and-production-migrations.md +5 -1
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/client/define-and-migrate-tables.md +20 -1
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/client/upgrade-legacy-app.md +14 -3
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/pyproject.toml +1 -1
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13/src/mainsequence_metatable.egg-info}/PKG-INFO +1 -1
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/endpoint.py +7 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_api_endpoint.py +22 -1
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/.agents/skills/client/metatables-local-development/SKILL.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/.agents/skills/client/metatables-meta-tables/SKILL.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/.agents/skills/client/metatables-time-index-table-updates/SKILL.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/.mainsequence/workflows/metatables-api.yaml +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/LICENSE +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/MANIFEST.in +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/README.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/alembic.ini +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/api/metatables/main.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/compose.database-tests.yml +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/adr/api/0001-unified-api-storage-and-local-sqlite.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/adr/api/0002-application-administration-and-table-ownership.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/adr/api/0004-approved-application-migrations.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/adr/api/0005-run-logs-and-local-file-capture.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/adr/api/0006-historical-run-graphs.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/adr/api/0007-database-enforced-table-access.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/adr/api/0007-database-roles-and-privileges.svg +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/adr/api/0007-query-enforcement-path.svg +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/adr/api/0008-mysql-mssql-table-workflows.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/adr/api/0009-shared-credential-store.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/adr/api/0010-import-external-tables-and-views.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/adr/api/0012-bounded-data-transfer-and-safe-retries.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/adr/api/0013-application-owned-migrations.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/adr/client/0003-api-endpoint-resolution.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/adr/client/0011-cli-local-development-with-managed-admin.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/adr/index.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/api/authentication-and-errors.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/api/data-sources.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/api/openapi.json +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/api/overview.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/api/reference.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/api/tables-and-migrations.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/api/time-index-and-updates.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/assets/branding/metatables.svg +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/assets/diagrams/local-client-experience.svg +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/client/bounded-transfers.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/client/build-an-updater.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/client/installation-and-connection.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/client/local-storage.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/client/query-and-mutate.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/client/quickstart.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/client/read-existing-time-index-tables.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/client/register-existing-tables.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/client/tutorial.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/concepts/architecture.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/concepts/data-sources.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/concepts/identity-and-scope.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/concepts/permissions-namespaces-labels.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/concepts/runs-and-execution-graphs.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/concepts/table-contracts-and-lifecycle.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/concepts/time-index-tables-and-updates.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/contributing/architecture-and-boundaries.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/contributing/database-backends.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/contributing/documentation.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/contributing/releasing.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/contributing/testing.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/README.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/bounded_reader.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/data_sources/README.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/data_sources/mssql.json +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/data_sources/mysql.json +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/data_sources/postgresql.json +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/data_sources/register.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/external_table.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/local_app/README.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/local_app/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/local_app/__main__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/local_app/migrations/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/local_app/migrations/env.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/local_app/migrations/script.py.mako +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/local_app/migrations/versions/metatables_local_example/0001.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/local_app/tables.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/query.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/quickstart.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/reader.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/scripts/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/scripts/setup_metatables.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tables.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tutorial/README.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tutorial/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tutorial/__main__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tutorial/data/README.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tutorial/data/yahoo_spy_qqq_iwm_2026-06-15_2026-07-17.csv +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tutorial/frames.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tutorial/migrations/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tutorial/migrations/env.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tutorial/migrations/registry.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tutorial/migrations/script.py.mako +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tutorial/migrations/versions/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tutorial/migrations/versions/metatables_market_tutorial/0001_create_market_tutorial_tables.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tutorial/migrations/versions/metatables_market_tutorial/0002_create_rolling_volatility.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tutorial/migrations/versions/metatables_market_tutorial/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tutorial/operations.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tutorial/tables.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tutorial/updaters.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/updater.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/index.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/operations/catalog-migrations.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/operations/configuration.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/operations/hosted-runtime.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/operations/local-runtime.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/operations/recovery-and-observability.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/operations/run-history.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/operations/run-logs.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/reference/capabilities.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/reference/cli.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/reference/python.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/security/index.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/security/ownership-and-sharing.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/security/permissions.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/mkdocs.yml +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/scripts/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/scripts/build_reference.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/scripts/check_boundaries.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/scripts/check_client_api_coverage.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/scripts/check_distribution_sources.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/scripts/check_docs.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/scripts/check_examples_debug.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/scripts/check_project.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/scripts/dev_release_version.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/scripts/test_databases.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/scripts/test_postgresql.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/setup.cfg +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/mainsequence_metatable.egg-info/SOURCES.txt +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/mainsequence_metatable.egg-info/dependency_links.txt +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/mainsequence_metatable.egg-info/entry_points.txt +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/mainsequence_metatable.egg-info/requires.txt +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/mainsequence_metatable.egg-info/top_level.txt +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/_admin_source.json +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/_build.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/_skill_bundle.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/auth/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/auth/boundary.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/auth/caller_assertions.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/auth/local_actor.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/bootstrap.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/configuration.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/credential_admin.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/development.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/development_client.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/main.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/platform_cache.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/column_search.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/contract_validation.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/data_sources.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/managed_finalize.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/migration_connection.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/namespaces.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/run_logs.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/runtime_context.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/schema_graph.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/security.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/table_cascade.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/table_crud.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/table_delete.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/table_filter.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/table_import.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/table_introspection.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/table_patch.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/table_registration.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/table_response.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/table_search_document.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/table_sql.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/table_update_pipeline.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/time_index_delete.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/time_index_reads.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/time_index_stats.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/update_batch.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/update_chunk_insert.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/update_constants.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/update_crud.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/update_details.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/update_graph.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/update_index_statistics.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/update_registration.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/update_runs.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/routes/update_statistics.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/runtime.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/runtime_control.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/source_passwords.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/source_registrations.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/app/transfer.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/access.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/maintenance/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/maintenance/postgresql.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/maintenance/runtime.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/maintenance/temporal.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/maintenance/timescaledb.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/maintenance/validation.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/postgresql_cascade_delete.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/postgresql_connection.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/postgresql_introspection.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/postgresql_table_delete.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/postgresql_tables.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/postgresql_time_index.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/postgresql_time_index_delete.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/postgresql_time_index_queries.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/postgresql_time_index_stats.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/postgresql_time_index_write.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/source_validation.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/sqlite_connection.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/sqlite_introspection.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/adapters/table_cursor.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/catalog.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/catalog_ddl.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/catalog_types.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/contracts.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/hosted.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/hosted_access.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/migration_connection.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/native.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/operations.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/pages.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/postgresql_access.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/registry.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/relation_tables.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/relational.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/restricted_sql.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/sqlite_access.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/backends/streaming.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/contracts/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/contracts/relation_import.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/contracts/storage_layouts.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/contracts/table_contracts.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/contracts/values.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/domain/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/domain/catalog_rules.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/domain/data_source_rules.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/domain/index_statistics.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/domain/label_rules.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/domain/permission_rules.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/domain/update_constants.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/integrations/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/integrations/catalog_data_sources.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/integrations/credential_keys.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/integrations/credential_store.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/integrations/data_source_provider.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/integrations/local_credentials.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/integrations/local_workspace.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/integrations/platform_principals.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/integrations/run_logs.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/integrations/runtime_binding.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/integrations/runtime_data_sources.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/integrations/source_validation.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/migrations/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/migrations/env.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/migrations/script.py.mako +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/migrations/versions/0001_initial.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/migrations/versions/0002_security_model.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/migrations/versions/0003_run_log_capture.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/migrations/versions/0004_historical_run_graphs.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/migrations/versions/0005_database_access.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/migrations/versions/0006_local_credentials.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/migrations/versions/0007_external_relation_names.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/migrations/versions/0008_upload_receipts.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/migrations/versions/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/operations/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/operations/bootstrap_migrations.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/operations/catalog_schema.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/operations/create_table.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/operations/finalize_managed.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/operations/import_relations.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/operations/introspect_table.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/operations/read_time_index.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/operations/register_catalog.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/operations/search_documents.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/cascade.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/catalog.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/database.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/grants.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/labels.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/locking.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/models.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/physical_operations.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/projections.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/run_graphs.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/schema_graph.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/sqlite_types.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/table_body_filter.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/table_queries.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/table_response.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/update_graph.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/update_pipeline.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/updates.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/persistence/upload_receipts.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/backend/presentation/data_source_summary.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/metatables/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/metatables/configuration.yaml +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/api/metatables/main.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/cli/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/cli/admin_install.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/cli/app.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/cli/filters.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/cli/local.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/cli/migrations.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/cli/project.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/cli/skills.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/compiled_sql/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/compiled_sql/mssql.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/compiled_sql/v1.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/dtype_codec.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/README.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/bounded_reader.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/data_sources/README.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/data_sources/mssql.json +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/data_sources/mysql.json +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/data_sources/postgresql.json +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/data_sources/register.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/external_table.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/local_app/README.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/local_app/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/local_app/__main__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/local_app/migrations/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/local_app/migrations/env.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/local_app/migrations/script.py.mako +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/local_app/migrations/versions/metatables_local_example/0001.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/local_app/tables.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/query.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/quickstart.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/reader.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/scripts/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/scripts/setup_metatables.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tables.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tutorial/README.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tutorial/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tutorial/__main__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tutorial/data/README.md +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tutorial/data/yahoo_spy_qqq_iwm_2026-06-15_2026-07-17.csv +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tutorial/frames.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tutorial/migrations/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tutorial/migrations/env.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tutorial/migrations/registry.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tutorial/migrations/script.py.mako +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tutorial/migrations/versions/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tutorial/migrations/versions/metatables_market_tutorial/0001_create_market_tutorial_tables.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tutorial/migrations/versions/metatables_market_tutorial/0002_create_rolling_volatility.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tutorial/migrations/versions/metatables_market_tutorial/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tutorial/operations.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tutorial/tables.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/tutorial/updaters.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/examples/updater.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/future_registry.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/hashing.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/instrumentation.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/local_connection.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/local_files.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/local_run_logs.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/log_contract.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/migrations/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/migrations/alembic.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/migrations/connection.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/migrations/env.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/migrations/provider.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/migrations/registry.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/migrations/runner.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/migrations/scaffold.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/migrations/templates/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/migrations/templates/env.py.mako +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/migrations/templates/script.py.mako +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/migrations/tls.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/models.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/pydantic_metadata.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/run_logging.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/runtime.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/runtime_context.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/runtime_contract.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/schema_names.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/sdk_compat.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/sqlalchemy_contracts.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/time_index_table_refs.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/transfer.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/transfer_contract.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/transport.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/update_configuration_contract.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/updaters/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/updaters/configuration.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/updaters/dependencies.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/updaters/managers.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/updaters/namespacing.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/updaters/runner.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/updaters/updaters.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/updaters/utils.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/upload.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/auth/test_caller_assertions.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/auth/test_data_source_identity.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/auth/test_development_client.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/auth/test_hosted_environment_target.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/auth/test_local_mode.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/auth/test_platform_fact_cache.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/auth/test_runtime_bootstrap.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/auth/test_runtime_scaffold.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/auth/test_runtime_selection.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/auth/test_runtime_storage_binding.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/auth/test_source_passwords.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/catalog/test_catalog_foundation.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/catalog/test_contract_projection.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/catalog/test_database_config.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/catalog/test_index_statistics.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/catalog/test_migration.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/conftest.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/contracts/capabilities.json +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/contracts/client_signatures.json +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/contracts/database_operations.json +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/contracts/test_bounded_transfer.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/contracts/test_compiler_runtime_source.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/contracts/test_relation_batching.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/contracts/test_relation_import.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/contracts/test_storage_layouts.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/contracts/test_table_contracts.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_backend/Dockerfile +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_backend/Dockerfile.dockerignore +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_backend/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_backend/conftest.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_backend/provider/__init__.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_backend/provider/env.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_backend/provider/versions/0001_measurement.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_backend/test_api_contract.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_backend/test_application_migration.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_backend/test_bootstrap_recovery.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_backend/test_catalog_contract.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_backend/test_credential_catalog.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_backend/test_physical_contract.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_backend/test_relation_import.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_backend/test_runtime_bootstrap.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_backend/test_sql_security.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_backend/test_update_client.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_operations/test_physical_operations.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_operations/test_postgresql_operations.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/database_operations/test_runtime_and_temporal.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/documentation/test_project_checks.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_admin_installation.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_application_owned_migrations.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_catalog_outage.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_client_api_contract.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_client_api_coverage.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_client_migration_scaffold.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_client_migration_tls.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_client_package.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_client_signatures.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_client_value_behaviors.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_data_source_registry.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_local_actor_client_api.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_local_cli_workflow.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_local_client_selection.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_managed_finalize_client_api.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_namespaces_admin_http.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_public_imports.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_remaining_client_routes.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_run_graphs.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_run_logs.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_runtime_transition.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_runtime_upgrade.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_sdk_local_startup.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_sqlite_runtime.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_table_delete_client_api.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_table_filter_client_api.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_table_introspection_client_api.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_table_patch_client_api.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_table_search_document_api.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_table_stats_api.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_table_update_pipeline.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_table_updates_http.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_time_index_delete_client_api.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_time_index_reads_client_api.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_update_batch_client_api.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_update_chunk_insert_client_api.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_update_dependency_priority_client_api.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_update_index_statistics_client_api.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/e2e/test_update_registration_client_api.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/examples/test_documented_examples.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/examples/test_postgresql_examples.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/examples/test_setup_launch.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/examples/test_tutorial.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/integrations/test_credential_store.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/integrations/test_data_source_rules.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/integrations/test_local_data_sources.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/integrations/test_local_run_logs.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/integrations/test_postgresql_connection.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/integrations/test_postgresql_sql.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/integrations/test_postgresql_tables.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/integrations/test_postgresql_time_index_queries.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/integrations/test_source_validation.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/integrations/test_sqlite_operations.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/labels/test_labels.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/operations/test_create_table_operation.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/operations/test_create_table_postgres.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/operations/test_physical_operation_journal.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/operations/test_register_catalog.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/operations/test_search_documents.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/packaging/test_client_skills.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/packaging/test_dev_release_version.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/packaging/test_distribution_sources.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/packaging/test_editable_build.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/packaging/test_installed_distribution.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/permissions/test_governed_sql_scope.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/permissions/test_local_actor_membership.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/permissions/test_migration_boundary.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/permissions/test_namespace_grants.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/permissions/test_security_api.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/permissions/test_table_body_filter.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/permissions/test_table_grants.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/tests/permissions/test_table_queries.py +0 -0
- {mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/uv.lock +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: metatables-migrations
|
|
3
|
-
description: "Create and evolve managed application tables through Alembic migration providers with the installed MetaTables Python client. Covers provider scope, scaffolding, revision authoring, client-side execution, and reservation or finalization failures. Excludes API catalog migrations, client-library implementation, API/server changes and repository tooling."
|
|
3
|
+
description: "Create and evolve managed application tables through Alembic migration providers with the installed MetaTables Python client. Covers provider scope and placement, scaffolding, revision authoring, client-side execution, and reservation or finalization failures. Excludes API catalog migrations, client-library implementation, API/server changes and repository tooling."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# MetaTables client application migrations
|
|
@@ -55,9 +55,11 @@ are not application-provider revisions.
|
|
|
55
55
|
1. Define the SQLAlchemy models with stable, application-prefixed physical names.
|
|
56
56
|
2. Identify one provider module, migration namespace, target `MetaData`, model
|
|
57
57
|
registry, and prefixed Alembic version-table binding.
|
|
58
|
-
3.
|
|
58
|
+
3. Choose a provider module name that no other installed package uses (see
|
|
59
|
+
[Provider placement](#provider-placement)).
|
|
60
|
+
4. Keep provider scope explicit. Do not scan all imported models or installed
|
|
59
61
|
packages.
|
|
60
|
-
|
|
62
|
+
5. Scaffold only when the application has no provider yet:
|
|
61
63
|
|
|
62
64
|
```bash
|
|
63
65
|
metatables migrations scaffold \
|
|
@@ -65,13 +67,17 @@ are not application-provider revisions.
|
|
|
65
67
|
--module ledger.migrations \
|
|
66
68
|
--namespace ledger \
|
|
67
69
|
--base ledger.tables:Base \
|
|
68
|
-
--metadata ledger.tables:Base.metadata
|
|
70
|
+
--metadata ledger.tables:Base.metadata \
|
|
71
|
+
--alembic-version-table-name ledger__alembic_version
|
|
69
72
|
```
|
|
70
73
|
|
|
71
|
-
|
|
74
|
+
Always pass `--module` and `--alembic-version-table-name`. Without them the
|
|
75
|
+
scaffold creates a top-level `migrations` module and the shared
|
|
76
|
+
`public.alembic_version` table.
|
|
77
|
+
6. Edit the generated `registry.py` so it returns exactly the models owned by
|
|
72
78
|
that migration stream. Scaffolding alone selects no models and creates no
|
|
73
79
|
tables.
|
|
74
|
-
|
|
80
|
+
7. Create and review an Alembic revision (defaults to autogeneration):
|
|
75
81
|
|
|
76
82
|
```bash
|
|
77
83
|
metatables migrations revision \
|
|
@@ -83,6 +89,27 @@ Use `--source-root` and `--code-repository-root` when the application does not
|
|
|
83
89
|
use the default `src/` layout. Keep applied revisions immutable; add a new
|
|
84
90
|
revision for every later schema change.
|
|
85
91
|
|
|
92
|
+
## Provider placement
|
|
93
|
+
|
|
94
|
+
The application decides where its provider lives. The module name, however,
|
|
95
|
+
must not collide with any other package installed in the same environment. A
|
|
96
|
+
library's provider ships in its wheel and runs inside its consumers'
|
|
97
|
+
environments, next to providers from other libraries. When two packages install
|
|
98
|
+
the same top-level module, such as `migrations`, the later install overwrites
|
|
99
|
+
the earlier one's files. Imports then load the wrong provider, and Alembic reads
|
|
100
|
+
the wrong revisions.
|
|
101
|
+
|
|
102
|
+
- Place the provider under an import package the application owns, for example
|
|
103
|
+
`ledger.migrations`, or give it a name specific to the application, for example
|
|
104
|
+
`ledger_migrations`.
|
|
105
|
+
- Point `script_location` and `version_location_prefix` at that module. The
|
|
106
|
+
scaffold derives both from `--module`. A hand-written
|
|
107
|
+
`build_metatable_migration_provider` call must pass both, because the builder
|
|
108
|
+
defaults to `migrations:`.
|
|
109
|
+
- Before releasing a package that others install, list the built wheel with
|
|
110
|
+
`python -m zipfile -l <wheel>`. Its top-level entries must be packages the
|
|
111
|
+
application owns.
|
|
112
|
+
|
|
86
113
|
## Execute with the environment connection
|
|
87
114
|
|
|
88
115
|
After verifying the intended runtime, use the application's provider reference:
|
|
@@ -132,6 +159,13 @@ Read `docs/operations/recovery-and-observability.md`.
|
|
|
132
159
|
|
|
133
160
|
- If provider loading fails, verify the import path, model registry, metadata,
|
|
134
161
|
version-table binding, and installed `metatables` version.
|
|
162
|
+
- If the provider loads another package's code or revisions, find the file that
|
|
163
|
+
its module resolves to with
|
|
164
|
+
`python -c "import importlib.util as u; print(u.find_spec('migrations').origin)"`,
|
|
165
|
+
replacing `migrations` with the provider module. A shared module name means
|
|
166
|
+
another install overwrote it. Move the provider as the
|
|
167
|
+
[legacy upgrade skill](../metatables-upgrade-legacy-app/SKILL.md) describes;
|
|
168
|
+
do not edit files in `site-packages`.
|
|
135
169
|
- If reservation fails, compare provider scope and physical identities before
|
|
136
170
|
changing code. Do not create a second catalog row for the same table.
|
|
137
171
|
- If Alembic succeeds but finalization fails, physical DDL may already be
|
|
@@ -145,6 +179,6 @@ Read `docs/operations/recovery-and-observability.md`.
|
|
|
145
179
|
|
|
146
180
|
## Validation
|
|
147
181
|
|
|
148
|
-
Verify provider scope, revision content, the selected environment
|
|
149
|
-
repeat execution, and final active bindings. Report separately what was checked
|
|
182
|
+
Verify provider scope and placement, revision content, the selected environment
|
|
183
|
+
connection, repeat execution, and final active bindings. Report separately what was checked
|
|
150
184
|
offline and what was exercised against a configured API.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: metatables-upgrade-legacy-app
|
|
3
|
-
description: "Upgrade consuming applications from MainSequence 8.x MetaTables or older extracted clients to the installed metatables package. Use for legacy imports, removed SQL scopes, repository compilers
|
|
3
|
+
description: "Upgrade consuming applications from MainSequence 8.x MetaTables or older extracted clients to the installed metatables package. Use for legacy imports, removed SQL scopes, repository compilers, application migration-provider integration and provider modules that collide with other installed packages. Excludes MetaTables client/API implementation and ordinary schema revision authoring."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Upgrade a legacy MetaTables application
|
|
@@ -58,11 +58,33 @@ Read `docs/client/query-and-mutate.md` for current query behavior and
|
|
|
58
58
|
|
|
59
59
|
## Upgrade application migration integration
|
|
60
60
|
|
|
61
|
-
Keep the existing provider package, namespace, model registry,
|
|
62
|
-
binding and applied revision history. Update bootstrap/import wiring
|
|
63
|
-
installed client's public migration interfaces. Do not scaffold a replacement
|
|
61
|
+
Keep the existing provider `package=` value, namespace, model registry,
|
|
62
|
+
version-table binding and applied revision history. Update bootstrap/import wiring
|
|
63
|
+
to the installed client's public migration interfaces. Do not scaffold a replacement
|
|
64
64
|
provider, rewrite applied history or stamp the database to bypass an upgrade issue.
|
|
65
65
|
|
|
66
|
+
### Move a provider whose module name collides
|
|
67
|
+
|
|
68
|
+
A provider installed under a generic top-level module, such as `migrations`,
|
|
69
|
+
shares files and imports with every other installed package that chose the same
|
|
70
|
+
name. Move it under a module the application owns, for example `ledger.migrations`
|
|
71
|
+
or `ledger_migrations`:
|
|
72
|
+
|
|
73
|
+
- Move the provider package with its `env.py`, `script.py.mako` and `versions/`
|
|
74
|
+
tree.
|
|
75
|
+
- Update `script_location`, `version_location_prefix`, the `env.py` import,
|
|
76
|
+
imports inside the provider, packaging configuration, and every provider
|
|
77
|
+
reference in code, scripts and jobs.
|
|
78
|
+
- Keep `package=`, `migration_namespace`, the version-table binding and the
|
|
79
|
+
revision files unchanged. The catalog binds provider tables to
|
|
80
|
+
`package:namespace` and rejects a reservation from a different key. Alembic
|
|
81
|
+
stores only revision IDs, so the module path can change.
|
|
82
|
+
- Do not ship a module under the old name. A forwarding module would keep the
|
|
83
|
+
file collision.
|
|
84
|
+
|
|
85
|
+
Then confirm that `migrations current` reports the same revision as before the
|
|
86
|
+
move, and that the built wheel no longer installs the old top-level name.
|
|
87
|
+
|
|
66
88
|
Providers load in the application process from Python references such as
|
|
67
89
|
`ledger.migrations:migration`. The client executes Alembic with the environment
|
|
68
90
|
connection; the API handles authorization, reservations and finalization. The
|
|
@@ -40,7 +40,11 @@ The Job, `jobs/migrate_system.py`, runs `metatables runtime upgrade`:
|
|
|
40
40
|
verification. A runtime already at the current revision is left untouched.
|
|
41
41
|
|
|
42
42
|
The command acts only on an active runtime. With no API deployment or no active
|
|
43
|
-
runtime yet, it succeeds without DDL.
|
|
43
|
+
runtime yet, it succeeds without DDL. The Environment's DataSource is set
|
|
44
|
+
through the deployed API, so if it is set the command migrates when necessary;
|
|
45
|
+
if it is not, it skips migrations and the API deploys. An API release that the
|
|
46
|
+
workflow created but has never deployed counts as no API deployment, so the
|
|
47
|
+
first run deploys the API. A non-admin identity or an unreadable
|
|
44
48
|
context fails before DDL. When it registers the runtime DataSource, it records
|
|
45
49
|
the Job identity's user UID as the creator.
|
|
46
50
|
|
|
@@ -34,7 +34,8 @@ metatables migrations scaffold \
|
|
|
34
34
|
--module ledger.migrations \
|
|
35
35
|
--namespace ledger \
|
|
36
36
|
--base ledger.tables:Base \
|
|
37
|
-
--metadata ledger.tables:Base.metadata
|
|
37
|
+
--metadata ledger.tables:Base.metadata \
|
|
38
|
+
--alembic-version-table-name ledger__alembic_version
|
|
38
39
|
```
|
|
39
40
|
|
|
40
41
|
The scaffold creates a provider, model registry, Alembic environment, revision
|
|
@@ -43,6 +44,24 @@ template, and versions directory under the chosen source root. Edit its
|
|
|
43
44
|
creation alone does not select all imported models or migrate a database.
|
|
44
45
|
Use `--source-root` and `--code-repository-root` if your layout differs from `src/`.
|
|
45
46
|
|
|
47
|
+
### Provider placement
|
|
48
|
+
|
|
49
|
+
Where the provider lives is the application's choice. Its module name, however,
|
|
50
|
+
must be unique in every environment that installs the package. A library's
|
|
51
|
+
provider ships in its wheel and runs next to providers from other libraries. If
|
|
52
|
+
two packages install the same top-level module, such as `migrations`, the later
|
|
53
|
+
install overwrites the earlier one's files and imports load the wrong provider.
|
|
54
|
+
Pass `--module` with a module the application owns, such as `ledger.migrations`
|
|
55
|
+
or `ledger_migrations`. Without it, the scaffold creates a top-level `migrations`
|
|
56
|
+
module. A hand-written `build_metatable_migration_provider` call must set
|
|
57
|
+
`script_location` and `version_location_prefix` to that module, because both
|
|
58
|
+
default to `migrations:`. Before releasing, list the built wheel with
|
|
59
|
+
`python -m zipfile -l <wheel>` and check that every top-level entry belongs to the
|
|
60
|
+
application.
|
|
61
|
+
|
|
62
|
+
Pass `--alembic-version-table-name` as well. The default `public.alembic_version`
|
|
63
|
+
would be shared by every provider on the same DataSource that keeps the default.
|
|
64
|
+
|
|
46
65
|
## Author and execute in the application
|
|
47
66
|
|
|
48
67
|
Use the same Python provider reference for authoring and execution:
|
|
@@ -135,9 +135,20 @@ See [query and mutate](query-and-mutate.md) for engine-specific behavior.
|
|
|
135
135
|
|
|
136
136
|
Application providers and Alembic execution belong to the application. Update
|
|
137
137
|
provider/bootstrap imports to the target client's public migration interfaces,
|
|
138
|
-
and retain the existing provider package, namespace, model registry,
|
|
139
|
-
binding, revision IDs and applied history. Do not scaffold a
|
|
140
|
-
or stamp an existing database merely to make the upgrade pass.
|
|
138
|
+
and retain the existing provider `package=` value, namespace, model registry,
|
|
139
|
+
version-table binding, revision IDs and applied history. Do not scaffold a
|
|
140
|
+
replacement provider or stamp an existing database merely to make the upgrade pass.
|
|
141
|
+
|
|
142
|
+
If the provider is installed under a generic top-level module such as
|
|
143
|
+
`migrations`, move it under a module the application owns. Other installed
|
|
144
|
+
packages that use the same name overwrite its files. Move the package with its
|
|
145
|
+
`env.py`, `script.py.mako` and `versions/` tree. Update `script_location`,
|
|
146
|
+
`version_location_prefix`, the imports, the packaging configuration and every
|
|
147
|
+
provider reference. Keep `package=`, `migration_namespace`, the version-table
|
|
148
|
+
binding and the revision files unchanged. The catalog binds provider tables to
|
|
149
|
+
`package:namespace` and rejects a reservation from a different key. Alembic
|
|
150
|
+
stores only revision IDs, so the module path can change. Do not ship a
|
|
151
|
+
forwarding module under the old name, because it would keep the file collision.
|
|
141
152
|
|
|
142
153
|
The application loads its provider locally. The API handles authorization,
|
|
143
154
|
reservations, connection resolution and finalization. The client runs Alembic
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "mainsequence-metatable"
|
|
7
|
-
version = "0.1.8.
|
|
7
|
+
version = "0.1.8.dev13"
|
|
8
8
|
description = "Main Sequence MetaTables Python client and standalone API"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.13"
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/src/metatables/endpoint.py
RENAMED
|
@@ -153,6 +153,13 @@ def _release_access(release, *, timeout: float = 30.0):
|
|
|
153
153
|
_validate_url(access["rpc_url"])
|
|
154
154
|
return access
|
|
155
155
|
if admission.state != "waking":
|
|
156
|
+
if result.routing.active_revision_uid is None:
|
|
157
|
+
# The deployment workflow creates the release before its first
|
|
158
|
+
# rollout. The runtime DataSource is set through a deployed
|
|
159
|
+
# API's Settings, so a release that never served has none yet.
|
|
160
|
+
raise ApiNotDeployedError(
|
|
161
|
+
"The MetaTables API has not been deployed in this Environment yet, "
|
|
162
|
+
"so no runtime DataSource has been set.")
|
|
156
163
|
raise ApiResolutionError("MetaTables deployment is unavailable; check its deployment status.")
|
|
157
164
|
delay = max(0.05, (admission.retry_after_ms or 250) / 1000)
|
|
158
165
|
time.sleep(min(delay, max(0, deadline - time.monotonic())))
|
|
@@ -45,7 +45,7 @@ def platform(monkeypatch):
|
|
|
45
45
|
branches = {"api-branch": "development"}
|
|
46
46
|
access = SimpleNamespace(
|
|
47
47
|
resource_release_uid=release.uid, release_kind="fastapi",
|
|
48
|
-
routing=SimpleNamespace(state="routable"),
|
|
48
|
+
routing=SimpleNamespace(state="routable", active_revision_uid="revision-uid"),
|
|
49
49
|
runtime_access=SimpleNamespace(state="ready", can_request=True, retry_after_ms=None),
|
|
50
50
|
access={"rpc_url": "https://release.test/api/", "mode": "token", "token": "release-credential"},
|
|
51
51
|
)
|
|
@@ -303,6 +303,27 @@ def test_unavailable_and_mismatched_release_are_not_cached(platform):
|
|
|
303
303
|
endpoint.get_api_url()
|
|
304
304
|
|
|
305
305
|
|
|
306
|
+
def test_release_that_never_served_is_not_deployed(platform):
|
|
307
|
+
# The deployment workflow creates the release before its first rollout.
|
|
308
|
+
platform.access.runtime_access.state = "unavailable"
|
|
309
|
+
platform.access.routing = SimpleNamespace(state="unavailable", active_revision_uid=None)
|
|
310
|
+
with pytest.raises(endpoint.ApiNotDeployedError, match="no runtime DataSource has been set"):
|
|
311
|
+
endpoint.get_api_url()
|
|
312
|
+
|
|
313
|
+
|
|
314
|
+
def test_upgrade_skips_without_ddl_before_the_first_rollout(platform, monkeypatch):
|
|
315
|
+
import metatables.api.app.bootstrap as bootstrap
|
|
316
|
+
from metatables.cli import app as cli
|
|
317
|
+
|
|
318
|
+
platform.access.runtime_access.state = "unavailable"
|
|
319
|
+
platform.access.routing = SimpleNamespace(state="unavailable", active_revision_uid=None)
|
|
320
|
+
monkeypatch.setattr(bootstrap, "upgrade_selected_runtime",
|
|
321
|
+
lambda *_: pytest.fail("the upgrade must not touch the database"))
|
|
322
|
+
result = cli._upgrade_runtime()
|
|
323
|
+
assert result["status"] == "skipped"
|
|
324
|
+
assert "no runtime DataSource has been set" in result["reason"]
|
|
325
|
+
|
|
326
|
+
|
|
306
327
|
def test_waking_respects_retry_hint_and_does_not_repeat_name_lookup(platform, monkeypatch):
|
|
307
328
|
platform.access.runtime_access.state = 'waking'
|
|
308
329
|
platform.access.runtime_access.retry_after_ms = 500
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/api/metatables/main.py
RENAMED
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/compose.database-tests.yml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/api/data-sources.md
RENAMED
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/api/openapi.json
RENAMED
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/api/overview.md
RENAMED
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/api/reference.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/client/quickstart.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/client/tutorial.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/README.md
RENAMED
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/query.py
RENAMED
|
File without changes
|
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/reader.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/tables.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/examples/updater.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/reference/cli.md
RENAMED
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/reference/python.md
RENAMED
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/docs/security/index.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/scripts/__init__.py
RENAMED
|
File without changes
|
{mainsequence_metatable-0.1.8.dev11 → mainsequence_metatable-0.1.8.dev13}/scripts/build_reference.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|