sqlspec 0.37.1__tar.gz → 0.38.1__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.
- {sqlspec-0.37.1 → sqlspec-0.38.1}/Makefile +5 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/PKG-INFO +10 -1
- {sqlspec-0.37.1 → sqlspec-0.38.1}/pyproject.toml +20 -2
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/adbc/core.py +78 -13
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/aiosqlite/pool.py +97 -12
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncmy/core.py +64 -10
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncpg/core.py +51 -31
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/bigquery/core.py +25 -3
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/duckdb/core.py +29 -1
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/duckdb/pool.py +45 -5
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mysqlconnector/core.py +64 -10
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/oracledb/core.py +31 -14
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psqlpy/core.py +34 -5
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psycopg/core.py +66 -35
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/pymysql/core.py +64 -10
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/pymysql/pool.py +32 -5
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/spanner/config.py +4 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/spanner/core.py +30 -2
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/sqlite/core.py +45 -2
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/sqlite/pool.py +35 -4
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/builder/_factory.py +6 -6
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/cache.py +32 -7
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/compiler.py +13 -5
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/parameters/_alignment.py +15 -2
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/parameters/_converter.py +3 -83
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/parameters/_processor.py +37 -15
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/parameters/_transformers.py +41 -9
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/parameters/_validator.py +0 -18
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/statement.py +3 -3
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/driver/_async.py +189 -9
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/driver/_common.py +4 -4
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/driver/_sync.py +187 -9
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/exceptions.py +113 -2
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/litestar/plugin.py +261 -30
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/observability/__init__.py +2 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/observability/_observer.py +8 -2
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/utils/logging.py +29 -0
- sqlspec-0.38.1/sqlspec/utils/schema.py +986 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/conftest.py +12 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/test_arrow.py +3 -1
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/test_arrow.py +3 -1
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/extensions/events/test_listen_notify.py +3 -3
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/test_arrow.py +4 -2
- sqlspec-0.38.1/tests/integration/adapters/bigquery/test_parameter_styles.py +260 -0
- sqlspec-0.38.1/tests/integration/adapters/cockroach_asyncpg/test_parameter_styles.py +320 -0
- sqlspec-0.38.1/tests/integration/adapters/cockroach_psycopg/test_parameter_styles.py +421 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/test_arrow.py +3 -1
- sqlspec-0.38.1/tests/integration/adapters/mysqlconnector/test_parameter_styles.py +465 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/test_arrow.py +3 -1
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/test_arrow.py +1 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/test_arrow.py +4 -2
- sqlspec-0.38.1/tests/integration/adapters/pymysql/test_parameter_styles.py +377 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/conftest.py +6 -3
- sqlspec-0.38.1/tests/integration/extensions/litestar/test_request_scope_access.py +253 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/observability/test_logging_format.py +8 -6
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_adapter_implementations.py +18 -12
- sqlspec-0.38.1/tests/unit/adapters/test_pool_logging.py +213 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/core/test_cache.py +98 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/core/test_compiler.py +12 -7
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/core/test_parameters.py +472 -144
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/core/test_statement.py +4 -4
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/driver/test_fetch_aliases.py +12 -4
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/driver/test_force_select.py +6 -5
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/observability/test_observability_logging.py +160 -3
- sqlspec-0.38.1/tests/unit/utils/test_to_value_type.py +764 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/uv.lock +391 -215
- sqlspec-0.37.1/sqlspec/utils/schema.py +0 -485
- {sqlspec-0.37.1 → sqlspec-0.38.1}/.gitignore +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/.pre-commit-config.yaml +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/CONTRIBUTING.rst +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/LICENSE +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/README.md +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/__main__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/__metadata__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/_serialization.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/_typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/adbc/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/adbc/_typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/adbc/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/adbc/adk/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/adbc/config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/adbc/data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/adbc/driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/adbc/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/adbc/events/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/adbc/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/adbc/litestar/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/adbc/type_converter.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/aiosqlite/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/aiosqlite/_typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/aiosqlite/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/aiosqlite/adk/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/aiosqlite/config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/aiosqlite/core.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/aiosqlite/data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/aiosqlite/driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/aiosqlite/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/aiosqlite/events/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/aiosqlite/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/aiosqlite/litestar/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncmy/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncmy/_typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncmy/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncmy/adk/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncmy/config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncmy/data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncmy/driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncmy/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncmy/events/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncmy/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncmy/litestar/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncpg/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncpg/_typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncpg/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncpg/adk/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncpg/config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncpg/data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncpg/driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncpg/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncpg/events/backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncpg/events/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncpg/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/asyncpg/litestar/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/bigquery/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/bigquery/_typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/bigquery/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/bigquery/adk/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/bigquery/config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/bigquery/data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/bigquery/driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/bigquery/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/bigquery/events/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/bigquery/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/bigquery/litestar/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/bigquery/type_converter.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_asyncpg/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_asyncpg/_typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_asyncpg/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_asyncpg/adk/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_asyncpg/config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_asyncpg/core.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_asyncpg/data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_asyncpg/driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_asyncpg/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_asyncpg/events/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_asyncpg/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_asyncpg/litestar/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_psycopg/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_psycopg/_typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_psycopg/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_psycopg/adk/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_psycopg/config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_psycopg/core.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_psycopg/data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_psycopg/driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_psycopg/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_psycopg/events/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_psycopg/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/cockroach_psycopg/litestar/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/duckdb/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/duckdb/_typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/duckdb/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/duckdb/adk/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/duckdb/config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/duckdb/data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/duckdb/driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/duckdb/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/duckdb/events/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/duckdb/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/duckdb/litestar/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/duckdb/type_converter.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mock/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mock/_typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mock/config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mock/core.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mock/data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mock/driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mysqlconnector/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mysqlconnector/_typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mysqlconnector/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mysqlconnector/adk/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mysqlconnector/config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mysqlconnector/data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mysqlconnector/driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mysqlconnector/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mysqlconnector/events/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mysqlconnector/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/mysqlconnector/litestar/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/oracledb/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/oracledb/_numpy_handlers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/oracledb/_typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/oracledb/_uuid_handlers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/oracledb/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/oracledb/adk/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/oracledb/config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/oracledb/data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/oracledb/driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/oracledb/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/oracledb/events/backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/oracledb/events/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/oracledb/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/oracledb/litestar/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/oracledb/migrations.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/oracledb/type_converter.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psqlpy/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psqlpy/_typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psqlpy/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psqlpy/adk/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psqlpy/config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psqlpy/data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psqlpy/driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psqlpy/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psqlpy/events/backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psqlpy/events/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psqlpy/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psqlpy/litestar/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psqlpy/type_converter.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psycopg/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psycopg/_typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psycopg/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psycopg/adk/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psycopg/config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psycopg/data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psycopg/driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psycopg/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psycopg/events/backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psycopg/events/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psycopg/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psycopg/litestar/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/psycopg/type_converter.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/pymysql/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/pymysql/_typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/pymysql/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/pymysql/adk/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/pymysql/config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/pymysql/data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/pymysql/driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/pymysql/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/pymysql/events/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/pymysql/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/pymysql/litestar/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/spanner/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/spanner/_typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/spanner/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/spanner/adk/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/spanner/data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/spanner/dialect/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/spanner/dialect/_spangres.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/spanner/dialect/_spanner.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/spanner/driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/spanner/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/spanner/events/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/spanner/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/spanner/litestar/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/spanner/type_converter.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/sqlite/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/sqlite/_typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/sqlite/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/sqlite/adk/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/sqlite/config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/sqlite/data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/sqlite/driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/sqlite/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/sqlite/events/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/sqlite/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/sqlite/litestar/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/adapters/sqlite/type_converter.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/base.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/builder/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/builder/_base.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/builder/_column.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/builder/_ddl.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/builder/_delete.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/builder/_dml.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/builder/_explain.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/builder/_expression_wrappers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/builder/_insert.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/builder/_join.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/builder/_merge.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/builder/_parsing_utils.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/builder/_select.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/builder/_temporal.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/builder/_update.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/builder/_vector_expressions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/cli.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/_correlation.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/explain.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/filters.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/hashing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/metrics.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/parameters/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/parameters/_registry.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/parameters/_types.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/pipeline.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/query_modifiers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/result/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/result/_base.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/result/_io.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/splitter.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/stack.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/core/type_converter.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/_loader.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/_registry.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/_types.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/dialects/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/dialects/bigquery.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/dialects/cockroachdb.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/dialects/duckdb.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/dialects/mysql.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/dialects/oracle.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/dialects/postgres.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/dialects/spanner.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/dialects/sqlite.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/.gitkeep +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/bigquery/columns.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/bigquery/foreign_keys.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/bigquery/indexes.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/bigquery/tables.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/bigquery/version.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/cockroachdb/columns.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/cockroachdb/foreign_keys.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/cockroachdb/indexes.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/cockroachdb/tables.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/cockroachdb/version.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/duckdb/columns.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/duckdb/foreign_keys.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/duckdb/indexes.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/duckdb/tables.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/duckdb/version.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/mysql/columns.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/mysql/foreign_keys.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/mysql/indexes.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/mysql/tables.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/mysql/version.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/oracle/columns.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/oracle/foreign_keys.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/oracle/indexes.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/oracle/tables.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/oracle/version.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/postgres/columns.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/postgres/foreign_keys.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/postgres/indexes.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/postgres/tables.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/postgres/version.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/spanner/columns.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/spanner/foreign_keys.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/spanner/indexes.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/spanner/tables.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/spanner/version.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/sqlite/columns.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/sqlite/foreign_keys.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/sqlite/indexes.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/sqlite/tables.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/data_dictionary/sql/sqlite/version.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/driver/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/driver/_sql_helpers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/driver/_storage_helpers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/adk/_types.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/adk/converters.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/adk/memory/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/adk/memory/_types.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/adk/memory/converters.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/adk/memory/service.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/adk/memory/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/adk/migrations/0001_create_adk_tables.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/adk/migrations/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/adk/service.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/adk/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/events/_channel.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/events/_hints.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/events/_models.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/events/_payload.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/events/_protocols.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/events/_queue.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/events/_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/events/migrations/0001_create_event_queue.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/events/migrations/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/fastapi/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/fastapi/extension.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/fastapi/providers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/flask/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/flask/_state.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/flask/_utils.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/flask/extension.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/litestar/_utils.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/litestar/channels.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/litestar/cli.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/litestar/config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/litestar/handlers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/litestar/migrations/0001_create_session_table.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/litestar/migrations/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/litestar/providers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/litestar/store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/otel/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/prometheus/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/starlette/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/starlette/_state.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/starlette/_utils.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/starlette/extension.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/extensions/starlette/middleware.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/loader.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/migrations/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/migrations/base.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/migrations/commands.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/migrations/context.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/migrations/fix.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/migrations/loaders.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/migrations/runner.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/migrations/templates.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/migrations/tracker.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/migrations/utils.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/migrations/validation.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/migrations/version.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/observability/_common.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/observability/_config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/observability/_diagnostics.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/observability/_dispatcher.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/observability/_formatters/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/observability/_formatters/_aws.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/observability/_formatters/_azure.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/observability/_formatters/_base.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/observability/_formatters/_gcp.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/observability/_formatting.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/observability/_runtime.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/observability/_sampling.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/observability/_spans.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/protocols.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/py.typed +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/storage/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/storage/_utils.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/storage/backends/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/storage/backends/base.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/storage/backends/fsspec.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/storage/backends/local.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/storage/backends/obstore.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/storage/errors.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/storage/pipeline.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/storage/registry.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/typing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/utils/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/utils/arrow_helpers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/utils/config_tools.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/utils/correlation.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/utils/deprecation.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/utils/fixtures.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/utils/module_loader.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/utils/portal.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/utils/serializers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/utils/singleton.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/utils/sync_tools.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/utils/text.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/utils/type_converters.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/utils/type_guards.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/sqlspec/utils/uuids.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/asset_maintenance.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/ddls-mysql-collection.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/ddls-postgres-collection.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/example_usage.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/init.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/mysql/collection-config.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/mysql/collection-data_types.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/mysql/collection-database_details.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/mysql/collection-engines.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/mysql/collection-hostname.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/mysql/collection-plugins.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/mysql/collection-process_list.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/mysql/collection-resource-groups.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/mysql/collection-schema_objects.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/mysql/collection-table_details.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/mysql/collection-users.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/mysql/init.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/oracle.ddl.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-applications.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-aws_extension_dependency.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-aws_oracle_exists.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-bg_writer_stats.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-calculated_metrics.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-data_types.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-database_details.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-extensions.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-index_details.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-pglogical-details.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-privileges.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-replication_slots.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-replication_stats.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-schema_details.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-schema_objects.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-settings.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-source_details.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/collection-table_details.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/extended-collection-all-databases.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/postgres/init.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/readiness-check.sql +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/fixtures/sql_utils.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/_events_helpers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/_storage_bridge_helpers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/extensions/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/extensions/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/extensions/adk/test_dialect_integration.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/extensions/adk/test_dialect_support.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/extensions/adk/test_edge_cases.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/extensions/adk/test_event_operations.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/extensions/adk/test_memory_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/extensions/adk/test_owner_id_column.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/extensions/adk/test_session_operations.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/extensions/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/extensions/litestar/test_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/test_adbc_backends.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/test_adbc_connection.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/test_adbc_driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/test_adbc_edge_cases.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/test_adbc_results.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/test_arrow_duckdb.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/test_arrow_features.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/test_data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/test_exceptions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/test_explain.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/test_migrations.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/test_parameter_styles.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/test_storage_bridge.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/adbc/test_vector_functions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/extensions/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/extensions/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/extensions/adk/test_memory_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/extensions/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/extensions/events/test_queue_backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/extensions/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/extensions/litestar/test_numpy_serialization.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/extensions/litestar/test_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/test_connection.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/test_data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/test_driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/test_exceptions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/test_explain.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/test_migrations.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/test_parameter_styles.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/test_pooling.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/aiosqlite/test_storage_bridge.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/extensions/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/extensions/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/extensions/adk/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/extensions/adk/test_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/extensions/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/extensions/events/test_queue_backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/extensions/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/extensions/litestar/test_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/test_config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/test_driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/test_exceptions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/test_explain.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/test_features.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/test_migrations.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/test_parameter_styles.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncmy/test_storage_bridge.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/extensions/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/extensions/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/extensions/adk/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/extensions/adk/test_owner_id_column.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/extensions/adk/test_session_operations.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/extensions/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/extensions/events/test_queue_backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/extensions/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/extensions/litestar/test_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/test_cloud_connectors.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/test_data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/test_driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/test_exceptions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/test_execute_many.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/test_explain.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/test_merge.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/test_merge_bulk.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/test_migrations.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/test_parameter_styles.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/test_schema_migration.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/test_storage_bridge.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/asyncpg/test_vector_functions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/bigquery/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/bigquery/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/bigquery/test_arrow.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/bigquery/test_config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/bigquery/test_driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/bigquery/test_exceptions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/bigquery/test_explain.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/bigquery/test_features.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/bigquery/test_vector_functions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/cockroach_asyncpg/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/cockroach_asyncpg/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/cockroach_asyncpg/test_driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/cockroach_psycopg/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/cockroach_psycopg/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/cockroach_psycopg/test_driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/extensions/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/extensions/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/extensions/adk/test_memory_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/extensions/adk/test_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/extensions/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/extensions/events/test_queue_backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/extensions/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/extensions/litestar/test_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/test_connection.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/test_driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/test_driver_features.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/test_exceptions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/test_execute_many.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/test_explain.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/test_migrations.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/test_mixed_parameter_styles.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/test_parameter_styles.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/test_pooling.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/test_storage_bridge.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/test_vector_functions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/duckdb/utils.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/mysqlconnector/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/mysqlconnector/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/mysqlconnector/extensions/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/mysqlconnector/extensions/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/mysqlconnector/extensions/adk/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/mysqlconnector/extensions/adk/test_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/mysqlconnector/extensions/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/mysqlconnector/extensions/events/test_queue_backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/mysqlconnector/extensions/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/mysqlconnector/extensions/litestar/test_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/mysqlconnector/test_config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/mysqlconnector/test_driver_async.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/mysqlconnector/test_driver_sync.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/mysqlconnector/test_exceptions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/extensions/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/extensions/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/extensions/adk/test_inmemory.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/extensions/adk/test_oracle_specific.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/extensions/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/extensions/events/test_oracle_aq.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/extensions/events/test_queue_backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/extensions/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/extensions/litestar/test_inmemory.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/extensions/litestar/test_store_async.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/extensions/litestar/test_store_sync.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/test_driver_async.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/test_driver_sync.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/test_exceptions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/test_execute_many.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/test_explain.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/test_features.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/test_merge.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/test_merge_bulk.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/test_migrations.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/test_msgspec_clob.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/test_numpy_vectors.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/test_parameter_styles.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/test_stack.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/test_uuid_binary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/oracledb/test_vector_functions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/extensions/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/extensions/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/extensions/adk/test_owner_id_column.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/extensions/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/extensions/events/test_listen_notify.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/extensions/events/test_queue_backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/extensions/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/extensions/litestar/test_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/test_driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/test_exceptions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/test_explain.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/test_features.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/test_merge_bulk.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/test_migrations.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/test_parameter_styles.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/test_storage_bridge.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psqlpy/test_vector_functions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/extensions/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/extensions/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/extensions/adk/test_owner_id_column.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/extensions/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/extensions/events/test_listen_notify.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/extensions/events/test_queue_backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/extensions/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/extensions/litestar/test_store_async.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/extensions/litestar/test_store_sync.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/test_async_copy.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/test_driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/test_exceptions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/test_execute_many.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/test_explain.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/test_merge_bulk.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/test_migrations.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/test_parameter_styles.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/test_storage_bridge.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/psycopg/test_vector_functions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/pymysql/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/pymysql/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/pymysql/extensions/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/pymysql/extensions/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/pymysql/extensions/events/test_queue_backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/pymysql/extensions/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/pymysql/extensions/litestar/test_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/pymysql/test_config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/pymysql/test_driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/pymysql/test_exceptions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/extensions/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/extensions/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/extensions/adk/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/extensions/adk/test_adk_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/extensions/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/extensions/events/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/extensions/events/test_queue_backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/extensions/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/extensions/litestar/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/extensions/litestar/test_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/test_arrow.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/test_bytes_direct.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/test_crud_operations.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/test_driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/test_exceptions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/test_execute_many.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/test_explain.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/test_parameter_styles.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/test_spangres_driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/spanner/test_spangres_parameter_styles.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/extensions/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/extensions/adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/extensions/adk/test_memory_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/extensions/adk/test_owner_id_column.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/extensions/events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/extensions/events/test_queue_backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/extensions/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/extensions/litestar/test_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/test_arrow.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/test_data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/test_driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/test_driver_features.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/test_exceptions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/test_explain.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/test_migrations.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/test_parameter_styles.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/test_pooling.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/test_query_mixin.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/adapters/sqlite/test_storage_bridge.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/cli/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/cli/test_config_discovery.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/cli/test_sync_adapter.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/config/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/config/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/config/test_connection_injection.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/core/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/core/test_stack_edge_cases.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/dishka/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/dishka/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/dishka/test_integration.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/fastapi/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/fastapi/test_filters_integration.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/fastapi/test_integration.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/flask/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/flask/test_disable_di.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/flask/test_integration.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/litestar/test_channels_backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/litestar/test_correlation_middleware.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/litestar/test_disable_di.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/litestar/test_logging_format.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/litestar/test_offset_pagination_serialization.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/prometheus/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/prometheus/test_integration.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/starlette/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/starlette/test_disable_di.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/extensions/starlette/test_integration.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/loader/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/loader/test_file_system.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/migrations/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/migrations/test_async_migrations.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/migrations/test_auto_sync.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/migrations/test_fix_checksum_stability.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/migrations/test_fix_file_operations.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/migrations/test_fix_idempotency_workflow.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/migrations/test_migrations_logging_format.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/migrations/test_schema_migration.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/migrations/test_upgrade_downgrade_versions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/observability/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/storage/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/storage/test_integration.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/storage/test_signing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/integration/storage/test_streaming.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_adbc/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_adbc/test_adbc_config_normalization.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_adbc/test_adbc_serialization.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_async_adapters.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_asyncmy/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_asyncmy/test_config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_asyncpg/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_asyncpg/test_cloud_connectors.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_asyncpg/test_config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_asyncpg/test_type_handlers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_bigquery/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_bigquery/test_config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_bigquery/test_execute_many.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_bigquery/test_parameters.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_cockroach_asyncpg/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_cockroach_asyncpg/test_config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_cockroach_asyncpg/test_core.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_cockroach_psycopg/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_cockroach_psycopg/test_config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_cockroach_psycopg/test_core.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_duckdb/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_duckdb/test_config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_duckdb/test_extension_flags.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_duckdb/test_type_converter.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_extension_config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_mock/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_mock/test_config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_mock/test_core.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_mock/test_cursor_and_exceptions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_mock/test_data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_mock/test_dialect_transpilation.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_mock/test_driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_mock/test_edge_cases.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_oracledb/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_oracledb/test_data_dictionary_oracledb.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_oracledb/test_numpy_handlers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_oracledb/test_oracle_adk_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_oracledb/test_pipeline_helpers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_oracledb/test_type_converter_vectors.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_oracledb/test_uuid_handlers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_psqlpy/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_psqlpy/test_config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_psycopg/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_psycopg/test_config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_psycopg/test_type_handlers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_spanner/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_spanner/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_spanner/test_config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_spanner/test_dialect.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_spanner/test_driver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_spanner/test_events_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_spanner/test_litestar_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_spanner/test_type_converter.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_sqlite/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_sqlite/test_type_handlers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/adapters/test_sync_adapters.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/base/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/base/test_config_instances.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/base/test_sql_integration.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/base/test_sqlspec_class.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_cte_parameter_collisions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_dialect_override.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_explain.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_insert_builder.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_lateral_joins.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_merge.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_merge_dialect_validation.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_merge_property_shorthand.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_parameter_naming.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_parsing_utils.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_select_builder.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_select_locking.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_sql_factory.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_temporal.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_to_sql.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_upsert_factory.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_vector_functions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/builder/test_where_or_operations.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/cli/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/cli/test_config_loading.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/cli/test_migration_commands.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/cli/test_shell_completion.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/config/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/config/test_connection_config_edge_cases.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/config/test_connection_config_parameters.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/config/test_discovery.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/config/test_migration_methods.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/config/test_observability_extensions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/config/test_resolver.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/config/test_storage_capabilities.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/core/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/core/test_correlation.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/core/test_data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/core/test_filters.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/core/test_hashing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/core/test_parameter_regex_performance.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/core/test_query_modifiers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/core/test_result.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/core/test_sql_modifiers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/core/test_stack.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/core/test_type_conversion.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/dialects/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/dialects/test_spangres.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/dialects/test_spanner.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/driver/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/driver/test_count_query.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/driver/test_data_dictionary.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/driver/test_result_tools.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/driver/test_stack_base.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/exceptions/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/exceptions/test_exceptions.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/conftest.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_adk/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_adk/test_memory_converters.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_events/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_events/test_adapter_stores.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_events/test_backend_factories.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_events/test_channel.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_events/test_channel_extended.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_events/test_events_config.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_events/test_hints.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_events/test_models.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_events/test_queue.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_events/test_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_events/test_store_hooks.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_fastapi/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_fastapi/test_extension.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_fastapi/test_providers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_flask/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_flask/test_correlation.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_flask/test_extension.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_flask/test_state.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_litestar/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_litestar/test_correlation_middleware.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_litestar/test_handlers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_otel/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_otel/test_enable_tracing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_prometheus/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_prometheus/test_enable_metrics.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_prometheus/test_metrics.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_starlette/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_starlette/test_config_state.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_starlette/test_correlation_middleware.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_starlette/test_extension.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/extensions/test_starlette/test_utils.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/loader/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/loader/test_cache_integration.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/loader/test_correlation_preserved.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/loader/test_fixtures_directory_loading.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/loader/test_loading_patterns.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/loader/test_sql_file_loader.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/migrations/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/migrations/test_checksum_canonicalization.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/migrations/test_extension_discovery.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/migrations/test_fix_regex_precision.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/migrations/test_migration.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/migrations/test_migration_commands.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/migrations/test_migration_context.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/migrations/test_migration_execution.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/migrations/test_migration_runner.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/migrations/test_tracker_idempotency.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/migrations/test_utils.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/migrations/test_validation.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/migrations/test_version.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/migrations/test_version_conversion.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/migrations/test_version_parsing_edge_cases.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/observability/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/observability/test_formatters.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/observability/test_observability_core.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/observability/test_observability_sampling.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/observability/test_sampling.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/storage/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/storage/test_bridge.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/storage/test_errors.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/storage/test_fsspec_backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/storage/test_local_store.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/storage/test_obstore_backend.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/storage/test_signing.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/storage/test_storage_registry.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/storage/test_storage_utils.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/utils/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/utils/test_arrow_helpers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/utils/test_correlation.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/utils/test_data_transformation.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/utils/test_dependencies.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/utils/test_deprecation.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/utils/test_fixtures.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/utils/test_logging.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/utils/test_portal.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/utils/test_serialization.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/utils/test_serializers.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/utils/test_sync_tools.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/utils/test_text.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/utils/test_type_guards.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tests/unit/utils/test_uuids.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tools/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tools/build_docs.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tools/fix_documentation.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tools/local-infra.sh +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tools/pypi_readme.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tools/run_pre_commit.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tools/sphinx_ext/__init__.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tools/sphinx_ext/changelog.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tools/sphinx_ext/missing_references.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tools/sphinx_ext/playground.py +0 -0
- {sqlspec-0.37.1 → sqlspec-0.38.1}/tools/sphinx_ext/playground_template.html +0 -0
|
@@ -78,6 +78,11 @@ upgrade: ## Upgrade all dependencies
|
|
|
78
78
|
@echo "${OK} Dependencies updated 🔄"
|
|
79
79
|
@uv run pre-commit autoupdate
|
|
80
80
|
@echo "${OK} Updated Pre-commit hooks 🔄"
|
|
81
|
+
@uv lock >/dev/null 2>&1
|
|
82
|
+
@echo ""
|
|
83
|
+
@echo "${WARN} mysql-connector-python is pinned via [tool.uv] exclude-newer-package in pyproject.toml"
|
|
84
|
+
@echo "${INFO} Check https://pypi.org/project/mysql-connector-python/#files for Python 3.12+ wheels."
|
|
85
|
+
@echo "${INFO} Once Oracle fixes their packaging, remove the constraint from pyproject.toml."
|
|
81
86
|
|
|
82
87
|
.PHONY: lock
|
|
83
88
|
lock: ## Rebuild lockfiles from scratch
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: sqlspec
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.38.1
|
|
4
4
|
Summary: SQL Experiments in Python
|
|
5
5
|
Project-URL: Discord, https://discord.gg/litestar
|
|
6
6
|
Project-URL: Issue, https://github.com/litestar-org/sqlspec/issues/
|
|
@@ -9,6 +9,15 @@ Author-email: Cody Fincher <cody@litestar.dev>
|
|
|
9
9
|
Maintainer-email: Litestar Developers <hello@litestar.dev>
|
|
10
10
|
License-Expression: MIT
|
|
11
11
|
License-File: LICENSE
|
|
12
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
13
|
+
Classifier: Programming Language :: Python :: 3
|
|
14
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
20
|
+
Classifier: Typing :: Typed
|
|
12
21
|
Requires-Python: <4.0,>=3.10
|
|
13
22
|
Requires-Dist: mypy-extensions
|
|
14
23
|
Requires-Dist: rich-click>=1.9.0
|
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
authors = [{ name = "Cody Fincher", email = "cody@litestar.dev" }]
|
|
3
|
+
classifiers = [
|
|
4
|
+
"Development Status :: 5 - Production/Stable",
|
|
5
|
+
"Programming Language :: Python :: 3",
|
|
6
|
+
"Programming Language :: Python :: 3.10",
|
|
7
|
+
"Programming Language :: Python :: 3.11",
|
|
8
|
+
"Programming Language :: Python :: 3.12",
|
|
9
|
+
"Programming Language :: Python :: 3.13",
|
|
10
|
+
"Programming Language :: Python :: 3.14",
|
|
11
|
+
"Programming Language :: Python :: 3 :: Only",
|
|
12
|
+
"Typing :: Typed",
|
|
13
|
+
]
|
|
3
14
|
dependencies = [
|
|
4
15
|
"typing-extensions",
|
|
5
16
|
"sqlglot>=19.9.0",
|
|
@@ -13,7 +24,7 @@ maintainers = [{ name = "Litestar Developers", email = "hello@litestar.dev" }]
|
|
|
13
24
|
name = "sqlspec"
|
|
14
25
|
readme = "README.md"
|
|
15
26
|
requires-python = ">=3.10, <4.0"
|
|
16
|
-
version = "0.
|
|
27
|
+
version = "0.38.1"
|
|
17
28
|
|
|
18
29
|
[project.urls]
|
|
19
30
|
Discord = "https://discord.gg/litestar"
|
|
@@ -137,6 +148,12 @@ test = [
|
|
|
137
148
|
"pytest-timeout>=2.3.1",
|
|
138
149
|
]
|
|
139
150
|
|
|
151
|
+
[tool.uv]
|
|
152
|
+
# NOTE: mysql-connector-python 9.6.0 (released 2026-01-21) removed Python 3.12+ wheels.
|
|
153
|
+
# This is an Oracle packaging bug. Pinning to versions before that date until fixed.
|
|
154
|
+
# Check https://pypi.org/project/mysql-connector-python/#files for updates.
|
|
155
|
+
exclude-newer-package = { mysql-connector-python = "2026-01-20" }
|
|
156
|
+
|
|
140
157
|
[project.scripts]
|
|
141
158
|
sqlspec = "sqlspec.__main__:run_cli"
|
|
142
159
|
|
|
@@ -182,6 +199,7 @@ exclude = [
|
|
|
182
199
|
include = [
|
|
183
200
|
"sqlspec/core/**/*.py", # Core module
|
|
184
201
|
"sqlspec/builder/**/*.py", # Builder module
|
|
202
|
+
"sqlspec/exceptions.py", # Exceptions module
|
|
185
203
|
"sqlspec/loader.py", # Loader module
|
|
186
204
|
"sqlspec/observability/**/*.py", # Observability utilities
|
|
187
205
|
"sqlspec/driver/**/*.py", # Driver module
|
|
@@ -222,7 +240,7 @@ opt_level = "3" # Maximum optimization (0-3)
|
|
|
222
240
|
allow_dirty = true
|
|
223
241
|
commit = false
|
|
224
242
|
commit_args = "--no-verify"
|
|
225
|
-
current_version = "0.
|
|
243
|
+
current_version = "0.38.1"
|
|
226
244
|
ignore_missing_files = false
|
|
227
245
|
ignore_missing_version = false
|
|
228
246
|
message = "chore(release): bump to v{new_version}"
|
|
@@ -15,15 +15,17 @@ from sqlspec.core import (
|
|
|
15
15
|
from sqlspec.exceptions import (
|
|
16
16
|
CheckViolationError,
|
|
17
17
|
DatabaseConnectionError,
|
|
18
|
-
|
|
18
|
+
DeadlockError,
|
|
19
19
|
ForeignKeyViolationError,
|
|
20
20
|
ImproperConfigurationError,
|
|
21
21
|
IntegrityError,
|
|
22
22
|
NotNullViolationError,
|
|
23
|
+
PermissionDeniedError,
|
|
24
|
+
QueryTimeoutError,
|
|
23
25
|
SQLParsingError,
|
|
24
26
|
SQLSpecError,
|
|
25
|
-
TransactionError,
|
|
26
27
|
UniqueViolationError,
|
|
28
|
+
map_sqlstate_to_exception,
|
|
27
29
|
)
|
|
28
30
|
from sqlspec.typing import Empty
|
|
29
31
|
from sqlspec.utils.module_loader import import_string
|
|
@@ -424,15 +426,22 @@ def create_mapped_exception(error: Any) -> SQLSpecError:
|
|
|
424
426
|
raising. This pattern is more robust for use in __exit__ handlers and
|
|
425
427
|
avoids issues with exception control flow in different Python versions.
|
|
426
428
|
|
|
429
|
+
Mapping priority:
|
|
430
|
+
1. SQLSTATE codes (most reliable for ADBC drivers)
|
|
431
|
+
2. Error message patterns
|
|
432
|
+
3. Default SQLSpecError fallback
|
|
433
|
+
|
|
427
434
|
Args:
|
|
428
435
|
error: The ADBC exception to map
|
|
429
436
|
|
|
430
437
|
Returns:
|
|
431
438
|
A SQLSpec exception that wraps the original error
|
|
432
439
|
"""
|
|
433
|
-
|
|
440
|
+
sqlstate_attr = error.sqlstate if has_sqlstate(error) else None
|
|
441
|
+
sqlstate = sqlstate_attr if sqlstate_attr is not None else None
|
|
434
442
|
|
|
435
443
|
if sqlstate:
|
|
444
|
+
# Use centralized SQLSTATE mapping for specific codes
|
|
436
445
|
if sqlstate == "23505":
|
|
437
446
|
return _create_adbc_error(error, UniqueViolationError, "unique constraint violation")
|
|
438
447
|
if sqlstate == "23503":
|
|
@@ -441,20 +450,36 @@ def create_mapped_exception(error: Any) -> SQLSpecError:
|
|
|
441
450
|
return _create_adbc_error(error, NotNullViolationError, "not-null constraint violation")
|
|
442
451
|
if sqlstate == "23514":
|
|
443
452
|
return _create_adbc_error(error, CheckViolationError, "check constraint violation")
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
if sqlstate
|
|
447
|
-
return _create_adbc_error(error,
|
|
448
|
-
if sqlstate
|
|
449
|
-
return _create_adbc_error(error,
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
if sqlstate
|
|
453
|
-
return _create_adbc_error(error,
|
|
453
|
+
|
|
454
|
+
# Deadlock and serialization errors
|
|
455
|
+
if sqlstate == "40P01":
|
|
456
|
+
return _create_adbc_error(error, DeadlockError, "deadlock detected")
|
|
457
|
+
if sqlstate == "40001":
|
|
458
|
+
return _create_adbc_error(error, DeadlockError, "serialization failure")
|
|
459
|
+
|
|
460
|
+
# Query timeout/cancellation
|
|
461
|
+
if sqlstate == "57014":
|
|
462
|
+
return _create_adbc_error(error, QueryTimeoutError, "query canceled")
|
|
463
|
+
|
|
464
|
+
# Permission errors
|
|
465
|
+
if sqlstate == "42501":
|
|
466
|
+
return _create_adbc_error(error, PermissionDeniedError, "insufficient privilege")
|
|
467
|
+
if sqlstate == "28000":
|
|
468
|
+
return _create_adbc_error(error, PermissionDeniedError, "invalid authorization")
|
|
469
|
+
|
|
470
|
+
# Use centralized mapping for SQLSTATE class prefixes
|
|
471
|
+
exc_class = map_sqlstate_to_exception(sqlstate)
|
|
472
|
+
if exc_class is not None and exc_class is not SQLSpecError:
|
|
473
|
+
description = _get_sqlstate_description(sqlstate)
|
|
474
|
+
return _create_adbc_error(error, exc_class, description)
|
|
475
|
+
|
|
476
|
+
# Fallback for unmapped SQLSTATE codes
|
|
454
477
|
return _create_adbc_error(error, SQLSpecError, "database error")
|
|
455
478
|
|
|
479
|
+
# Message-based fallback when no SQLSTATE is available
|
|
456
480
|
error_msg = str(error).lower()
|
|
457
481
|
|
|
482
|
+
# Constraint violations
|
|
458
483
|
if "unique" in error_msg or "duplicate" in error_msg:
|
|
459
484
|
return _create_adbc_error(error, UniqueViolationError, "unique constraint violation")
|
|
460
485
|
if "foreign key" in error_msg:
|
|
@@ -465,13 +490,53 @@ def create_mapped_exception(error: Any) -> SQLSpecError:
|
|
|
465
490
|
return _create_adbc_error(error, CheckViolationError, "check constraint violation")
|
|
466
491
|
if "constraint" in error_msg:
|
|
467
492
|
return _create_adbc_error(error, IntegrityError, "integrity constraint violation")
|
|
493
|
+
|
|
494
|
+
# Deadlock/lock patterns
|
|
495
|
+
if "deadlock" in error_msg:
|
|
496
|
+
return _create_adbc_error(error, DeadlockError, "deadlock detected")
|
|
497
|
+
if "serialization" in error_msg or "concurrent update" in error_msg:
|
|
498
|
+
return _create_adbc_error(error, DeadlockError, "serialization failure")
|
|
499
|
+
|
|
500
|
+
# Timeout/cancellation patterns
|
|
501
|
+
if "timeout" in error_msg or "cancel" in error_msg or "interrupt" in error_msg:
|
|
502
|
+
return _create_adbc_error(error, QueryTimeoutError, "query timeout")
|
|
503
|
+
|
|
504
|
+
# Permission patterns
|
|
505
|
+
if "permission" in error_msg or "denied" in error_msg or "unauthorized" in error_msg:
|
|
506
|
+
return _create_adbc_error(error, PermissionDeniedError, "permission denied")
|
|
507
|
+
|
|
508
|
+
# Syntax errors
|
|
468
509
|
if "syntax" in error_msg:
|
|
469
510
|
return _create_adbc_error(error, SQLParsingError, "SQL parsing error")
|
|
511
|
+
|
|
512
|
+
# Connection errors
|
|
470
513
|
if "connection" in error_msg or "connect" in error_msg:
|
|
471
514
|
return _create_adbc_error(error, DatabaseConnectionError, "connection error")
|
|
515
|
+
|
|
472
516
|
return _create_adbc_error(error, SQLSpecError, "database error")
|
|
473
517
|
|
|
474
518
|
|
|
519
|
+
_SQLSTATE_CLASS_CODE_LEN = 2
|
|
520
|
+
|
|
521
|
+
# Module-level SQLSTATE descriptions (mypyc optimization - avoid dict creation per call)
|
|
522
|
+
_SQLSTATE_DESCRIPTIONS: dict[str, str] = {
|
|
523
|
+
"23": "integrity constraint violation",
|
|
524
|
+
"40": "transaction error",
|
|
525
|
+
"42": "SQL syntax error",
|
|
526
|
+
"08": "connection error",
|
|
527
|
+
"22": "data error",
|
|
528
|
+
"28": "authorization error",
|
|
529
|
+
"57": "operational error",
|
|
530
|
+
"02": "no data",
|
|
531
|
+
}
|
|
532
|
+
|
|
533
|
+
|
|
534
|
+
def _get_sqlstate_description(sqlstate: str) -> str:
|
|
535
|
+
"""Get a human-readable description for a SQLSTATE code class."""
|
|
536
|
+
class_code = sqlstate[:_SQLSTATE_CLASS_CODE_LEN] if len(sqlstate) >= _SQLSTATE_CLASS_CODE_LEN else sqlstate
|
|
537
|
+
return _SQLSTATE_DESCRIPTIONS.get(class_code, "database error")
|
|
538
|
+
|
|
539
|
+
|
|
475
540
|
def _identity(value: Any) -> Any:
|
|
476
541
|
return value
|
|
477
542
|
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"""Multi-connection pool for aiosqlite."""
|
|
2
2
|
|
|
3
3
|
import asyncio
|
|
4
|
+
import logging
|
|
4
5
|
import time
|
|
5
6
|
from contextlib import suppress
|
|
6
7
|
from typing import TYPE_CHECKING, Any
|
|
@@ -8,7 +9,7 @@ from typing import TYPE_CHECKING, Any
|
|
|
8
9
|
import aiosqlite
|
|
9
10
|
|
|
10
11
|
from sqlspec.exceptions import SQLSpecError
|
|
11
|
-
from sqlspec.utils.logging import get_logger
|
|
12
|
+
from sqlspec.utils.logging import POOL_LOGGER_NAME, get_logger, log_with_context
|
|
12
13
|
from sqlspec.utils.uuids import uuid4
|
|
13
14
|
|
|
14
15
|
if TYPE_CHECKING:
|
|
@@ -24,7 +25,9 @@ __all__ = (
|
|
|
24
25
|
"AiosqlitePoolConnectionContext",
|
|
25
26
|
)
|
|
26
27
|
|
|
27
|
-
logger = get_logger(
|
|
28
|
+
logger = get_logger(POOL_LOGGER_NAME)
|
|
29
|
+
|
|
30
|
+
_ADAPTER_NAME = "aiosqlite"
|
|
28
31
|
|
|
29
32
|
|
|
30
33
|
class AiosqlitePoolClosedError(SQLSpecError):
|
|
@@ -127,7 +130,10 @@ class AiosqlitePoolConnection:
|
|
|
127
130
|
await self.connection.rollback()
|
|
128
131
|
await self.connection.close()
|
|
129
132
|
except Exception:
|
|
130
|
-
|
|
133
|
+
# Note: No pool context available at connection level
|
|
134
|
+
log_with_context(
|
|
135
|
+
logger, logging.DEBUG, "pool.connection.close.error", adapter=_ADAPTER_NAME, connection_id=self.id
|
|
136
|
+
)
|
|
131
137
|
finally:
|
|
132
138
|
self._closed = True
|
|
133
139
|
|
|
@@ -173,6 +179,7 @@ class AiosqliteConnectionPool:
|
|
|
173
179
|
"_lock_instance",
|
|
174
180
|
"_min_size",
|
|
175
181
|
"_operation_timeout",
|
|
182
|
+
"_pool_id",
|
|
176
183
|
"_pool_size",
|
|
177
184
|
"_queue_instance",
|
|
178
185
|
"_wal_initialized",
|
|
@@ -211,6 +218,7 @@ class AiosqliteConnectionPool:
|
|
|
211
218
|
self._connection_registry: dict[str, AiosqlitePoolConnection] = {}
|
|
212
219
|
self._wal_initialized = False
|
|
213
220
|
self._warmed = False
|
|
221
|
+
self._pool_id = uuid4().hex[:8] # Short ID for logging
|
|
214
222
|
|
|
215
223
|
self._queue_instance: asyncio.Queue[AiosqlitePoolConnection] | None = None
|
|
216
224
|
self._lock_instance: asyncio.Lock | None = None
|
|
@@ -246,6 +254,12 @@ class AiosqliteConnectionPool:
|
|
|
246
254
|
"""
|
|
247
255
|
return self._closed_event_instance is not None and self._closed_event.is_set()
|
|
248
256
|
|
|
257
|
+
@property
|
|
258
|
+
def _database_name(self) -> str:
|
|
259
|
+
"""Get sanitized database name for logging."""
|
|
260
|
+
db = self._connection_parameters.get("database", "unknown")
|
|
261
|
+
return str(db).split("/")[-1] if db else "unknown"
|
|
262
|
+
|
|
249
263
|
def size(self) -> int:
|
|
250
264
|
"""Get total number of connections in pool.
|
|
251
265
|
|
|
@@ -298,7 +312,14 @@ class AiosqliteConnectionPool:
|
|
|
298
312
|
self._wal_initialized = True
|
|
299
313
|
|
|
300
314
|
except Exception:
|
|
301
|
-
|
|
315
|
+
log_with_context(
|
|
316
|
+
logger,
|
|
317
|
+
logging.WARNING,
|
|
318
|
+
"pool.connection.configure.error",
|
|
319
|
+
adapter=_ADAPTER_NAME,
|
|
320
|
+
pool_id=self._pool_id,
|
|
321
|
+
database=self._database_name,
|
|
322
|
+
)
|
|
302
323
|
await connection.execute("PRAGMA foreign_keys = ON")
|
|
303
324
|
await connection.execute("PRAGMA busy_timeout = 30000")
|
|
304
325
|
await connection.commit()
|
|
@@ -353,14 +374,30 @@ class AiosqliteConnectionPool:
|
|
|
353
374
|
reason: Optional reason for retirement
|
|
354
375
|
"""
|
|
355
376
|
if reason:
|
|
356
|
-
|
|
377
|
+
log_with_context(
|
|
378
|
+
logger,
|
|
379
|
+
logging.DEBUG,
|
|
380
|
+
"pool.connection.retire",
|
|
381
|
+
adapter=_ADAPTER_NAME,
|
|
382
|
+
pool_id=self._pool_id,
|
|
383
|
+
connection_id=connection.id,
|
|
384
|
+
reason=reason,
|
|
385
|
+
)
|
|
357
386
|
async with self._lock:
|
|
358
387
|
self._connection_registry.pop(connection.id, None)
|
|
359
388
|
|
|
360
389
|
try:
|
|
361
390
|
await asyncio.wait_for(connection.close(), timeout=self._operation_timeout)
|
|
362
391
|
except asyncio.TimeoutError:
|
|
363
|
-
|
|
392
|
+
log_with_context(
|
|
393
|
+
logger,
|
|
394
|
+
logging.WARNING,
|
|
395
|
+
"pool.connection.close.timeout",
|
|
396
|
+
adapter=_ADAPTER_NAME,
|
|
397
|
+
pool_id=self._pool_id,
|
|
398
|
+
connection_id=connection.id,
|
|
399
|
+
timeout_seconds=self._operation_timeout,
|
|
400
|
+
)
|
|
364
401
|
|
|
365
402
|
async def _try_provision_new_connection(self) -> "AiosqlitePoolConnection | None":
|
|
366
403
|
"""Try to create a new connection if under capacity.
|
|
@@ -375,7 +412,16 @@ class AiosqliteConnectionPool:
|
|
|
375
412
|
try:
|
|
376
413
|
connection = await self._create_connection()
|
|
377
414
|
except Exception:
|
|
378
|
-
|
|
415
|
+
log_with_context(
|
|
416
|
+
logger,
|
|
417
|
+
logging.WARNING,
|
|
418
|
+
"pool.connection.create.error",
|
|
419
|
+
adapter=_ADAPTER_NAME,
|
|
420
|
+
pool_id=self._pool_id,
|
|
421
|
+
database=self._database_name,
|
|
422
|
+
pool_size=len(self._connection_registry),
|
|
423
|
+
max_size=self._pool_size,
|
|
424
|
+
)
|
|
379
425
|
return None
|
|
380
426
|
else:
|
|
381
427
|
connection.mark_as_in_use()
|
|
@@ -428,7 +474,16 @@ class AiosqliteConnectionPool:
|
|
|
428
474
|
if connections_needed <= 0:
|
|
429
475
|
return
|
|
430
476
|
|
|
431
|
-
|
|
477
|
+
log_with_context(
|
|
478
|
+
logger,
|
|
479
|
+
logging.DEBUG,
|
|
480
|
+
"pool.warmup.start",
|
|
481
|
+
adapter=_ADAPTER_NAME,
|
|
482
|
+
pool_id=self._pool_id,
|
|
483
|
+
database=self._database_name,
|
|
484
|
+
connections_needed=connections_needed,
|
|
485
|
+
min_size=self._min_size,
|
|
486
|
+
)
|
|
432
487
|
tasks = [self._create_connection() for _ in range(connections_needed)]
|
|
433
488
|
results = await asyncio.gather(*tasks, return_exceptions=True)
|
|
434
489
|
|
|
@@ -436,7 +491,14 @@ class AiosqliteConnectionPool:
|
|
|
436
491
|
if isinstance(result, AiosqlitePoolConnection):
|
|
437
492
|
self._queue.put_nowait(result)
|
|
438
493
|
elif isinstance(result, Exception):
|
|
439
|
-
|
|
494
|
+
log_with_context(
|
|
495
|
+
logger,
|
|
496
|
+
logging.WARNING,
|
|
497
|
+
"pool.warmup.connection.error",
|
|
498
|
+
adapter=_ADAPTER_NAME,
|
|
499
|
+
pool_id=self._pool_id,
|
|
500
|
+
error=str(result),
|
|
501
|
+
)
|
|
440
502
|
|
|
441
503
|
async def _get_connection(self) -> AiosqlitePoolConnection:
|
|
442
504
|
"""Run the three-phase connection acquisition cycle.
|
|
@@ -495,7 +557,14 @@ class AiosqliteConnectionPool:
|
|
|
495
557
|
return
|
|
496
558
|
|
|
497
559
|
if connection.id not in self._connection_registry:
|
|
498
|
-
|
|
560
|
+
log_with_context(
|
|
561
|
+
logger,
|
|
562
|
+
logging.WARNING,
|
|
563
|
+
"pool.connection.release.unknown",
|
|
564
|
+
adapter=_ADAPTER_NAME,
|
|
565
|
+
pool_id=self._pool_id,
|
|
566
|
+
connection_id=connection.id,
|
|
567
|
+
)
|
|
499
568
|
return
|
|
500
569
|
|
|
501
570
|
try:
|
|
@@ -503,7 +572,15 @@ class AiosqliteConnectionPool:
|
|
|
503
572
|
connection.mark_as_idle()
|
|
504
573
|
self._queue.put_nowait(connection)
|
|
505
574
|
except Exception as e:
|
|
506
|
-
|
|
575
|
+
log_with_context(
|
|
576
|
+
logger,
|
|
577
|
+
logging.WARNING,
|
|
578
|
+
"pool.connection.reset.error",
|
|
579
|
+
adapter=_ADAPTER_NAME,
|
|
580
|
+
pool_id=self._pool_id,
|
|
581
|
+
connection_id=connection.id,
|
|
582
|
+
error=str(e),
|
|
583
|
+
)
|
|
507
584
|
connection.mark_unhealthy()
|
|
508
585
|
await self._retire_connection(connection)
|
|
509
586
|
|
|
@@ -530,4 +607,12 @@ class AiosqliteConnectionPool:
|
|
|
530
607
|
|
|
531
608
|
for i, result in enumerate(results):
|
|
532
609
|
if isinstance(result, Exception):
|
|
533
|
-
|
|
610
|
+
log_with_context(
|
|
611
|
+
logger,
|
|
612
|
+
logging.WARNING,
|
|
613
|
+
"pool.close.connection.error",
|
|
614
|
+
adapter=_ADAPTER_NAME,
|
|
615
|
+
pool_id=self._pool_id,
|
|
616
|
+
connection_id=connections[i].id,
|
|
617
|
+
error=str(result),
|
|
618
|
+
)
|
|
@@ -5,11 +5,15 @@ from typing import TYPE_CHECKING, Any
|
|
|
5
5
|
from sqlspec.core import DriverParameterProfile, ParameterStyle, StatementConfig, build_statement_config_from_profile
|
|
6
6
|
from sqlspec.exceptions import (
|
|
7
7
|
CheckViolationError,
|
|
8
|
+
ConnectionTimeoutError,
|
|
8
9
|
DatabaseConnectionError,
|
|
9
10
|
DataError,
|
|
11
|
+
DeadlockError,
|
|
10
12
|
ForeignKeyViolationError,
|
|
11
13
|
IntegrityError,
|
|
12
14
|
NotNullViolationError,
|
|
15
|
+
PermissionDeniedError,
|
|
16
|
+
QueryTimeoutError,
|
|
13
17
|
SQLParsingError,
|
|
14
18
|
SQLSpecError,
|
|
15
19
|
TransactionError,
|
|
@@ -38,10 +42,27 @@ __all__ = (
|
|
|
38
42
|
"resolve_rowcount",
|
|
39
43
|
)
|
|
40
44
|
|
|
45
|
+
# MySQL error codes for constraint violations
|
|
41
46
|
MYSQL_ER_DUP_ENTRY = 1062
|
|
42
47
|
MYSQL_ER_NO_DEFAULT_FOR_FIELD = 1364
|
|
43
48
|
MYSQL_ER_CHECK_CONSTRAINT_VIOLATED = 3819
|
|
44
49
|
|
|
50
|
+
# MySQL error codes for permission/access errors
|
|
51
|
+
MYSQL_ER_DBACCESS_DENIED = 1044
|
|
52
|
+
MYSQL_ER_ACCESS_DENIED = 1045
|
|
53
|
+
MYSQL_ER_TABLEACCESS_DENIED = 1142
|
|
54
|
+
|
|
55
|
+
# MySQL error codes for transaction errors
|
|
56
|
+
MYSQL_ER_LOCK_WAIT_TIMEOUT = 1205
|
|
57
|
+
MYSQL_ER_LOCK_DEADLOCK = 1213
|
|
58
|
+
|
|
59
|
+
# MySQL error codes for connection errors
|
|
60
|
+
MYSQL_CR_CONNECTION_ERROR = 2002
|
|
61
|
+
MYSQL_CR_CONN_HOST_ERROR = 2003
|
|
62
|
+
MYSQL_CR_UNKNOWN_HOST = 2005
|
|
63
|
+
MYSQL_CR_SERVER_GONE_ERROR = 2006
|
|
64
|
+
MYSQL_CR_SERVER_LOST = 2013
|
|
65
|
+
|
|
45
66
|
|
|
46
67
|
def _bool_to_int(value: bool) -> int:
|
|
47
68
|
return int(value)
|
|
@@ -104,7 +125,7 @@ def build_profile() -> "DriverParameterProfile":
|
|
|
104
125
|
return DriverParameterProfile(
|
|
105
126
|
name="AsyncMy",
|
|
106
127
|
default_style=ParameterStyle.QMARK,
|
|
107
|
-
supported_styles={ParameterStyle.QMARK
|
|
128
|
+
supported_styles={ParameterStyle.QMARK},
|
|
108
129
|
default_execution_style=ParameterStyle.POSITIONAL_PYFORMAT,
|
|
109
130
|
supported_execution_styles={ParameterStyle.POSITIONAL_PYFORMAT},
|
|
110
131
|
has_native_list_expansion=False,
|
|
@@ -171,6 +192,12 @@ def create_mapped_exception(error: Any, *, logger: Any | None = None) -> "SQLSpe
|
|
|
171
192
|
raising. This pattern is more robust for use in __exit__ handlers and
|
|
172
193
|
avoids issues with exception control flow in different Python versions.
|
|
173
194
|
|
|
195
|
+
Mapping priority:
|
|
196
|
+
1. Specific error codes (most reliable for MySQL)
|
|
197
|
+
2. SQLSTATE codes (where available)
|
|
198
|
+
3. Generic error code ranges
|
|
199
|
+
4. Default SQLSpecError fallback
|
|
200
|
+
|
|
174
201
|
Args:
|
|
175
202
|
error: The AsyncMy exception to map
|
|
176
203
|
logger: Optional logger for migration warnings
|
|
@@ -179,13 +206,16 @@ def create_mapped_exception(error: Any, *, logger: Any | None = None) -> "SQLSpe
|
|
|
179
206
|
True to suppress expected migration errors, or a SQLSpec exception
|
|
180
207
|
"""
|
|
181
208
|
error_code = error.args[0] if len(error.args) >= 1 and isinstance(error.args[0], int) else None
|
|
182
|
-
|
|
209
|
+
sqlstate_attr = error.sqlstate if has_sqlstate(error) else None
|
|
210
|
+
sqlstate = sqlstate_attr if sqlstate_attr is not None else None
|
|
183
211
|
|
|
212
|
+
# Migration-specific errors to suppress
|
|
184
213
|
if error_code in {1061, 1091}:
|
|
185
214
|
if logger is not None:
|
|
186
215
|
logger.warning("AsyncMy MySQL expected migration error (ignoring): %s", error)
|
|
187
216
|
return True
|
|
188
217
|
|
|
218
|
+
# Integrity constraint violations
|
|
189
219
|
if sqlstate == "23505" or error_code == MYSQL_ER_DUP_ENTRY:
|
|
190
220
|
return _create_mysql_error(error, sqlstate, error_code, UniqueViolationError, "unique constraint violation")
|
|
191
221
|
if sqlstate == "23503" or error_code in {1216, 1217, 1451, 1452}:
|
|
@@ -198,20 +228,44 @@ def create_mapped_exception(error: Any, *, logger: Any | None = None) -> "SQLSpe
|
|
|
198
228
|
return _create_mysql_error(error, sqlstate, error_code, CheckViolationError, "check constraint violation")
|
|
199
229
|
if sqlstate and sqlstate.startswith("23"):
|
|
200
230
|
return _create_mysql_error(error, sqlstate, error_code, IntegrityError, "integrity constraint violation")
|
|
231
|
+
|
|
232
|
+
# Permission/access errors (check specific codes first)
|
|
233
|
+
if error_code in {MYSQL_ER_DBACCESS_DENIED, MYSQL_ER_ACCESS_DENIED, MYSQL_ER_TABLEACCESS_DENIED}:
|
|
234
|
+
return _create_mysql_error(error, sqlstate, error_code, PermissionDeniedError, "access denied")
|
|
235
|
+
if sqlstate and sqlstate.startswith("28"):
|
|
236
|
+
return _create_mysql_error(error, sqlstate, error_code, PermissionDeniedError, "authorization error")
|
|
237
|
+
|
|
238
|
+
# Transaction errors (deadlock vs lock wait timeout)
|
|
239
|
+
if error_code == MYSQL_ER_LOCK_DEADLOCK:
|
|
240
|
+
return _create_mysql_error(error, sqlstate, error_code, DeadlockError, "deadlock detected")
|
|
241
|
+
if error_code == MYSQL_ER_LOCK_WAIT_TIMEOUT:
|
|
242
|
+
return _create_mysql_error(error, sqlstate, error_code, QueryTimeoutError, "lock wait timeout")
|
|
243
|
+
if sqlstate and sqlstate.startswith("40"):
|
|
244
|
+
return _create_mysql_error(error, sqlstate, error_code, TransactionError, "transaction error")
|
|
245
|
+
|
|
246
|
+
# SQL syntax errors
|
|
201
247
|
if sqlstate and sqlstate.startswith("42"):
|
|
202
248
|
return _create_mysql_error(error, sqlstate, error_code, SQLParsingError, "SQL syntax error")
|
|
249
|
+
if error_code in range(1064, 1100):
|
|
250
|
+
return _create_mysql_error(error, sqlstate, error_code, SQLParsingError, "SQL syntax error")
|
|
251
|
+
|
|
252
|
+
# Connection errors
|
|
203
253
|
if sqlstate and sqlstate.startswith("08"):
|
|
204
254
|
return _create_mysql_error(error, sqlstate, error_code, DatabaseConnectionError, "connection error")
|
|
205
|
-
if
|
|
206
|
-
return _create_mysql_error(error, sqlstate, error_code,
|
|
255
|
+
if error_code == MYSQL_CR_SERVER_LOST:
|
|
256
|
+
return _create_mysql_error(error, sqlstate, error_code, ConnectionTimeoutError, "connection lost")
|
|
257
|
+
if error_code in {
|
|
258
|
+
MYSQL_CR_CONNECTION_ERROR,
|
|
259
|
+
MYSQL_CR_CONN_HOST_ERROR,
|
|
260
|
+
MYSQL_CR_UNKNOWN_HOST,
|
|
261
|
+
MYSQL_CR_SERVER_GONE_ERROR,
|
|
262
|
+
}:
|
|
263
|
+
return _create_mysql_error(error, sqlstate, error_code, DatabaseConnectionError, "connection error")
|
|
264
|
+
|
|
265
|
+
# Data errors
|
|
207
266
|
if sqlstate and sqlstate.startswith("22"):
|
|
208
267
|
return _create_mysql_error(error, sqlstate, error_code, DataError, "data error")
|
|
209
|
-
|
|
210
|
-
return _create_mysql_error(error, sqlstate, error_code, DatabaseConnectionError, "connection error")
|
|
211
|
-
if error_code in {1205, 1213}:
|
|
212
|
-
return _create_mysql_error(error, sqlstate, error_code, TransactionError, "transaction error")
|
|
213
|
-
if error_code in range(1064, 1100):
|
|
214
|
-
return _create_mysql_error(error, sqlstate, error_code, SQLParsingError, "SQL syntax error")
|
|
268
|
+
|
|
215
269
|
return _create_mysql_error(error, sqlstate, error_code, SQLSpecError, "database error")
|
|
216
270
|
|
|
217
271
|
|